作者Mauer (皮革)
看板PCSH91_305
标题Re: [问题] 吴建亿
时间Sat May 8 17:45:04 2010
※ 引述《Habowbow (yo soy guapo)》之铭言:
: Canny运算有四个步骤
: 1. 高斯平滑化 用个高斯滤波器就行了
: 2. 边缘侦测 我是用Sobel
这里应该都是应用局部梯度运算
取最大值作为初步边缘线吧??
没有很熟
不过我看matlab的书
似乎把sobel跟canny,prewitt之类侦测法归类为同一层级
所以整个下来等於侦测了两次边缘线??
: 3. Nonmaximum Suppression 此步骤是为了消除边缘线的厚度
: 就是你要的双线变单线 我不确定MATLAB这一步怎麽做
: 不过他应该是自己就会处理 因为这个跟数值没关系 就是一个作法而已
: 我的作法如下
: A.对每一点C(x, y)选定垂直於梯度方向两个侧边的邻近点,记作
: A和B,A的梯度记为M(A),B的梯度记为M(B),C的梯度记为M(C)。
: B.如果M(A)>M(C)或M(B)>M(C),则C(x,y)不为边缘像元,设定
: M(C(x, y))=0。
这个部分看了一些文献称为非最大值压抑
主要以梯度运算来判定是否为边缘像元
不过跟上一个步骤不就重复了??
感觉好像跟双线单线没什麽相关
因为canny本身就是把梯度大的地方侦测出来
所以等高线线体两侧一定都会被判定为边缘像元而标记
: 4. hysteresis thresholding ,一般采用一个门槛值来界定影像中
: 某像元是否为边缘像元,但是并非每个梯度不为零的像元都是边缘像
: 元,Canny 建议使用hysteresis thresholding,采用两个门槛判断,
: 这应该是MATLAB里可以设定的 不过我不会用
这里主要是设定两个门槛值T1,T2
是对於上面步骤侦测出来的边缘进行二次判断
matlab的设定我已经知道在哪里了
总结以上所有观点
canny是个很好的边缘侦测
不过对於我真正需要的线体侦测反而并不理想??
你有什麽关於等高线线体侦测部分的想法吗??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.120.26.72