MATLAB图像处理---特征提取

来源:互联网 发布:10年nba总决赛数据 编辑:程序博客网 时间:2024/03/29 08:56

1.图像的边缘检测 edge 

图像的边缘是指其周围像素灰度急剧变化的那些像素的集合,它是图像最基本的特征。边缘是位置的标志,对灰度的变化不敏感,因此,边缘也是图像匹配的重要特征。而边缘检测基本思想是先检测图像中的边缘点,再按照某种策略将边缘点连接成轮廓,从而构成分割区域,边缘检测的目的是标识数字图像中亮度变化明显的点,图像边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。

2.Prewitt算子

Prewitt算子是一种一阶微分算子的边缘检测,利用像素点上下、左右邻点的灰度差,在边缘处达到极值检测边缘,去掉部分伪边缘,对噪声具有平滑作用 。其原理是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个检测水平边缘,一个检测垂直边缘。

 对数字图像f(x,y),Prewitt算子的定义如下:

G(i)=|[f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)]-[f(i+1,j-1)+f(i+1,j)+f(i+1,j+1)]|

G(j)=|[f(i-1,j+1)+f(i,j+1)+f(i+1,j+1)]-[f(i-1,j-1)+f(i,j-1)+f(i+1,j-1)]|

P(i,j)=max[G(i),G(j)]或 P(i,j)=G(i)+G(j)

经典Prewitt算子认为:凡灰度新值大于或等于阈值的像素点都是边缘点。即选择适当的阈值T,若P(i,j)≥T,则(i,j)为边缘点,P(i,j)为边缘图像。这种判定是欠合理的,会造成边缘点的误判,因为许多噪声点的灰度值也很大,而且对于幅值较小的边缘点,其边缘反而丢失了。

Prewitt算子对噪声有抑制作用,抑制噪声的原理是通过像素平均,但是像素平均相当于对图像的低通滤波,所以Prewitt算子对边缘的定位不如Roberts算子。

因为平均能减少或消除噪声,Prewitt梯度算子法就是先求平均,再求差分来求梯度。

3.Canny算子

Canny算子是一个具有滤波,增强,检测的多阶段的优化算子,在进行处理前,Canny算子先利用高斯平滑滤波器来平滑图像以除去噪声,Canny分割算法采用一阶偏导的有限差分来计算梯度幅值和方向,在处理过程中,Canny算子还将经过一个非极大值抑制的过程,最后Canny算子还采用两个阈值来连接边缘。

Canny边缘检测算法

(1): 用高斯滤波器平滑图象;

(2): 用一阶偏导的有限差分来计算梯度的幅值和方向;

(3): 对梯度幅值进行非极大值抑制

(4): 用双阈值算法检测和连接边缘

图象边缘检测必须满足两个条件:一能有效地抑制噪声;二必须尽量精确确定边缘的位置。根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny边缘检测算子。

4.对所输入的图像进行边缘检测



 


0 0
原创粉丝点击