Matlab版本:7.8.0(R2009a)
我在Matlab中使用Canny边缘检测器来查找边缘,但对于我的问题,我需要一些X量的边缘。我需要更多不。然后通过将阈值设置为0来返回它。
例如,在下图中:bw = edge(lena,'canny',0); imshow(bw)
我仍然得到一些黑色区域。我希望在这些地区获得更多优势。那么,canny可以采取什么样的阈值最小值?我已经给了零。
注意:有趣的是,Matlab没有给出阈值的负值错误。但它仍然给予相同的优势。 [bw1 t]= edge(j(:,:,2),'canny',-7577908988800);
给出了-3.0312 -7.5779
答案 0 :(得分:0)
edge
的{{3}}指定
thresh
是双元素vector
,其中第一个元素是低阈值,第二个元素是高阈值。如果您为scalar
指定thresh
,则此scalar
值将用于高阈值...
尝试明确设置下限阈值,而不仅仅是高阈值:
[bw1 t]= edge(j(:,:,2),'canny',[-inf SomethingBig])