画像の比較方法について

6 ビュー (過去 30 日間)
Ibuki Takahashi
Ibuki Takahashi 2021 年 8 月 23 日
コメント済み: Ibuki Takahashi 2021 年 8 月 23 日
matlabを用いて、部品の検品を行いたいと考えております。
黒い板に穴が開いている部品を検品しようと考えております。
元画像と比較して、穴が開いていない部分や多く空きすぎている部分を赤い丸で囲いたいと考えております。
どのような関数を用いるのが適切でしょうか。
よろしくお願いします。

採用された回答

Hernia Baby
Hernia Baby 2021 年 8 月 23 日
imfindcirclesを使用してみるのはいかがでしょうか?
白黒にして比較し絶対値をとると穴が開いてない部分はわかるはずです。
そこにサークルを当てはめるイメージですかね
以下は例の部分を少し書き換えました
A = imread('coins.png');
imshow(A)
B = zeros(size(A));
imshow(B)
[centers, radii, metric] = imfindcircles(A,[15 30]);
centersStrong5 = centers(1:5,:);
radiiStrong5 = radii(1:5);
metricStrong5 = metric(1:5);
viscircles(centersStrong5, radiiStrong5,'EdgeColor','r');
  1 件のコメント
Ibuki Takahashi
Ibuki Takahashi 2021 年 8 月 23 日
ご回答ありがとうございました。
この方法で、プログラムを書かせていただきましたが、穴が小さすぎてサークルとして判定することができませんでした。
ほかの方法がもしあれば教えていただけますと幸いです。
お時間いただき、ありがとうございました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeイメージのフィルター処理と強調 についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!