-2
複数のファイルには、多くの円で囲まれた画像があります。 私の仕事は、円で囲まれた画像を自動的に検出して抽出し、別々のファイルとして保存することです。 誰かがMatlabsや他のソフトウェアを使って、同じものの例やコードを提供することはできますか?画像から円を検出して抽出する
複数のファイルには、多くの円で囲まれた画像があります。 私の仕事は、円で囲まれた画像を自動的に検出して抽出し、別々のファイルとして保存することです。 誰かがMatlabsや他のソフトウェアを使って、同じものの例やコードを提供することはできますか?画像から円を検出して抽出する
MATLABのImage Processing Toolboxには、あなたが探している機能を実現する関数imfindcircles
があります。
汎用コードの例:
[img] = imread('my_img.tiff');
radius_range = [10, 40] % range of radii from 10 to 40 pixels
[centres, radii] = imfindcircles(img, radius);
...以上のパラメータを指定して(docを参照)
[centres, radii, metric] = imfindcircles(img, ....
[10, 40], ... % range of radii from 10 to 40 pixels
'ObjectPolarity','bright', ... % are objects bright or dark?
'Method','TwoStage', ... % algorithm: TwoStage or PhaseCode
'Sensitivity', 0.96 ... % the higher the more circular objects it'll find
);
が結果を可視化するためにあなたが行うことができます:
imshow(img); hold on;
plot(centres(:,1), centres(:,2), 'r*'); % plot circle centers
viscircles(centres, radii, 'EdgeColor', 'b'); % plot circles
缶あなたはサンプル画像を提供しますか? – m7913d