计算机视觉原理(2--图像预处理、边缘提取及图像分割)
一、图像滤波及预处理
1. 图像平滑——平均滤波
➢在一个小区域内(通常3*3)像素值平均
2. 图像平滑——加权平均滤波
➢在一个小区域内(通常3*3)像素值加权平均
3. 图像平滑——中值滤波
(1)确定窗口及位置(含有奇数个像素);
(2)窗口内像素按灰度大小排序;
(3)取中间值代替原窗口中心像素值
图像形态学基本操作——膨胀
图像形态学基本操作——腐蚀
二、图像边缘检测
图像边缘检测——基本算子
图像边缘检测——Laplace算子
Canny算子 :
Canny算子核心优点:边缘可自动连通
算法步骤:
- 平滑图像同时计算微分;
- 计算梯度(幅值和方向);
- 梯度幅值进行非极大值抑制;
- 自动边缘连接
Canny算子计算步骤1:同时平滑与微分
- 使用高斯函数的一阶导数同时完成平滑和微分
Canny算子计算步骤2:梯度计算
- 进一步可得梯度幅值和方向:
-
方向离散化:离散化为上下左右和斜45°共4个方向
Canny算子计算步骤3:梯度幅值非极大值抑
- 细化梯度幅值图像中的屋脊带,只保留幅值局部变化最大的点
- 使用一个3*3邻域作用于幅值阵列的所有点。在每一点上, 邻域的中心像素与沿梯度方向的两个梯度幅值的插值结果进行比较,仅保留极大值点。
Canny算子计算步骤4:边缘连接
边缘检测 算子结果 比较:
二、直线检测
Hough变换:
核心思想:直线 每一条直线 y = kx + b ,对应一个k, b,极坐标下对应一个点
直角坐标系的一点(x,y),对应极坐标系下 的一条正弦曲线:
同一条直线上的多个点,在极坐标系下必 相交于一点:
- 将极坐标空间量化成许多小格
- 根据x-y平面每一个直线点代入θ的量化值, 算出各个ρ,将对应格计数累加;
- 当全部点变换后,对小格进行检验。设置 累计阈值T,计数器大于T的小格对应于共 线点,其可以用作直线拟合参数。小于T 的反映非共线点,丢弃不用
三、直方图与阈值分割
通过灰度直方图看到图像的照明效果
灰度阈值分割
大津(Otsu)算法
- 确定最佳阈值,使背景和目标之间的类间方差最大 (因为二者差异最大)
四、图像特征描述
-
简单描述符
区域面积:区域包含的像素数
区域重心:
-
形状描述符
一般化描述
- 最小包围矩形(MER)
-
方向和离心率
- 椭圆拟合
椭圆拟合演示: