画像認識における突出した部分の検出および削除方法について
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
HanaHana
el 9 de Ag. de 2024
Comentada: HanaHana
el 22 de Ag. de 2024
下のような画像の赤斜線部のみを削除する方法はありますでしょうか?
データはバイナリイメージで2値化されています。
認識している画像は基本的には左のような図のため、bwareafiltで、最大構造を抽出することで対応できます。
しかし、ときに右のような画像が出てきます。毎回がくっついているわけではありません。
2つの物体のくっつき具合(クビレ具合)も変化するため、閾値(あまりにくっついていれば1つとして認識)できればベストです。
ご教示いただけますと幸いです。
0 comentarios
Respuesta aceptada
Hiroshi Iwamura
el 19 de Ag. de 2024
Image Processing Toolbox をお持ちであれば、モルフォロジーを使って色々試してみるとできるかとは思います。
以下は例です。
中段は上記画像をそのまま使うための背景除去とかなので、なくても大丈夫かもしれません。
I = imread("https://www.mathworks.com/matlabcentral/answers/uploaded_files/1750279/image.png");
BW = rgb2gray(I);
BW = imbinarize(BW);
imshow(BW)
CC = bwconncomp(BW);
p = regionprops(CC,"Area");
[maxArea,maxIdx] = max([p.Area]); % background image area
idx = setdiff(1:CC.NumObjects,maxIdx);
BW2 = cc2bw(CC,ObjectsToKeep=idx); % clear background
imshow(BW2)
se = strel('disk',25);
BW3 = imopen(BW2, se);
imshow(BW3)
Más respuestas (0)
Ver también
Categorías
Más información sobre ビッグ データの処理 en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!