【数字图像处理】7.0:灰度图像-图像分割 阈值处理综述
【数字图像处理】7.0:灰度图像-图像分割 阈值处理综述

而阈值处理用到的是阈值的不变,也就是把具有相同或相似的灰度的一类像素定义为一个区域,根据这个特点来定义并区分一个区域。而阈值可以理解为一个界限,或者一个划分,超过这个界限的是一个区域,没超过划分为另一个区域,而核心问题式确定这个阈值。

【数字图像处理】6.10:灰度图像-图像分割 霍夫变换(Hough Transform)–直线”
【数字图像处理】6.10:灰度图像-图像分割 霍夫变换(Hough Transform)–直线”

如果按照正常思维,搜索图中的直线,使用穷举的方法,假设图像一共有N个像素任意两点可以构成一条直线,所以过一点应该有(N-1)/2条,所以全图像存在N(N-1)/2条直线,如果要确定一点是否是直线上的点,一共需要至少 $N^2(N-1)/2$ 次计算,这个代价的算法在实际中基本没有价值,于是,Hough提出了一种巧妙的方法

【数字图像处理】6.8:灰度图像-图像分割 Canny边缘检测
【数字图像处理】6.8:灰度图像-图像分割 Canny边缘检测

Canny大名鼎鼎,大家都称之为Canny算子,包括wiki上也是写的Canny detector,但是按照我的理解,我觉得叫做Canny算法比较合适,但如果叫做算子,那也应该叫做复合算子,因为Canny本身并不是一个线性模板(像Sobel那样)或者一个局部比较类的算法(像中值滤波那样的),Canny是一套完整的理论,并实现出了完整的算法。

【数字图像处理】6.7:灰度图像-图像分割 Sobel算子,Prewitt算子和Scharr算子平滑能力比较
【数字图像处理】6.7:灰度图像-图像分割 Sobel算子,Prewitt算子和Scharr算子平滑能力比较

这篇主要想对比下Sobel,Prewitt和Scharr算子的平滑能力,由于一阶微分对噪声响应强,进行微分之前进行降噪是非常必要的,这里我们进行的实验是,以lena图作为实验原图,取其中一行数据作为无噪声的原始信号,分别加上不同的强度的高斯白噪声,对噪声的分类和噪声具体性质的研究将在图像恢复中描述。但这里我们使用不同强度的高斯白噪声。

【数字图像处理】6.6:灰度图像-图像分割 Scharr算子
【数字图像处理】6.6:灰度图像-图像分割 Scharr算子

Scharr作为一阶微分算子,与其他微分算子具有相同的基本特点,即对突变有较强的响应,但缺点也是使用Scharr后处理时,阈值无法很好的分离边缘候选点中边缘点与非边缘点,其优点是速度极快,而且Scharr大小固定,也就是只有$3 \times 3$,第一篇markdown的博客,待续。。。

【数字图像处理】6.5:灰度图像-图像分割 Prewitt算子
【数字图像处理】6.5:灰度图像-图像分割 Prewitt算子

一排1减去另一排1,差分被它体现的淋漓尽致,当然我们观察它的性质还是要看分解形式,也就是前两个小模板,$[1,0,-1]$ 不用解释,差分的形式,为什么不用 $[1,-1]$ 进行差分?首先对于2x3的模板和3x3的模板,我们更倾向于3x3,因为3x3的模板中心落在实数上 ,其次$[1,0,-1]$的差分结果能够在一定程度上减少噪声影响。

【数字图像处理】6.4:灰度图像-图像分割 Sobel算子
【数字图像处理】6.4:灰度图像-图像分割 Sobel算子

我们还要介绍下扩展Sobel算子,Sobel原始模型为标准3x3模板,但可以扩展成5x5到任意奇数x奇数的大小,而模板系数的确定可以根据帕斯卡三角来计算,真的很神奇。Sobel之后延伸出了Scharr算子,这个算子也为3x3算子,但是效果据说比3x3的Sobel好,后面文章将会给出具体对比。