Hi for the past 2 days i am working on a code to get a binary image of my rice samples through edge detection technique.I have used Sobel and Canny but the problem that i face is that at some points the edges are not that sharp kindly help me.

5 ビュー (過去 30 日間)
Hi for the past 2 days i am working on a code to get a binary image of my rice samples through edge detection technique.I have used Sobel and Canny but the problem that i face is that while using canny filter as it provide a better result over Sobel, at some points the edges are not that sharp and due to that some grains are missing in the final binary image kindly help me. Result that i get

採用された回答

Matt J
Matt J 2018 年 1 月 31 日
編集済み: Matt J 2018 年 1 月 31 日
This seems to work
A=double(rgb2gray(imread('ricesam6.jpg'))); A=A/max(A(:));
B=imtophat((entropyfilt(A,ones(11))) ,strel('disk',21));
C=(medfilt2(double(B>.8),[1,1]*11));
result=bwpropfilt(C>0,'MajorAxisLength',[120,inf]);
  4 件のコメント
Matt J
Matt J 2018 年 2 月 25 日
You're welcome, but please click "Accept" to certify that it solved your problem.

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

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by