智能车摄像头循迹图像处理程序设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0
-1 - 2 -1
• 图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。
•
G
G
2 x
G
2 y
• 然后可用以下公式计算梯度方向。
•
arctan
Gy Gx
基本算法讲解
• Prewitt算子
• Prewitt算子是一种一阶微分算子的边缘检测,利用像素点上下、左右邻点的灰度差,在边缘处达到极值 检测边缘,去掉部分伪边缘,对噪声具有平滑作用 。其原理是在图像空间利用两个方向模板与图像进行邻
• 检测水平边沿 横向模板 -1 0 1
Gx -1 0 1 -1 0 1
检测垂直平边沿 纵向模板 -1 -1 -1
Gy
0
0
0
1 1 1
基本算法讲解
• Canny(坎尼 )边缘检测算子 • 该算子功能比前面几种都要好,但是它实现起来较为麻烦,Canny算子是一个具有滤波,增强,检测的多
阶段的优化算子,在进行处理前,Canny算子先利用高斯平滑滤波器来平滑图像以除去噪声,Canny分割算 法采用一阶偏导的有限差分来计算梯度幅值和方向,在处理过程中,Canny算子还将经过一个非极大值抑 制的过程,最后Canny算子还采用两个阈值来连接边缘。 • Canny边缘检测算法: • step1: 用高斯滤波器平滑图象; • step2: 用一阶偏导的有限差分来计算梯度的幅值和方向; • step3: 对梯度幅值进行非极大值抑制 • step4: 用双阈值算法检测和连接边缘 • (1)图象边缘检测必须满足两个条件:一能有效地抑制噪声;二必须尽量精确确定边缘的位置。 • (2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny边缘检测算子。
基本算法讲解
• otsu法(最大类间方差法,有时也称之为大津算法)使用的是聚类的思想,把图像的灰度数按灰度级分成2个部分,使得两个部分 之间的灰度值差异最大,每个部分之间的灰度差异最小,通过方差的计算来寻找一个合适的灰度级别 来划分。 所以 可以在二值 化的时候 采用otsu算法来自动选取阈值进行二值化。otsu算法被认为是图像分割中阈值选取的最佳算法,计算简单,不受图像亮 度和对比度的影响。因此,使类间方差最大的分割意味着错分概率最小。
• [ 此公式计算量较大,可以采用: g = wo *w1* (uo - u1) * (uo - u1) ] • 由于otsu算法是对图像的灰度级进行聚类,所以在执行otsu算法之前,需要计算该图像的灰度直方图。 • 迭代法原理:迭代选择法是首先猜测一个初始阈值,然后再通过对图像的多趟计算对阈值进行改进的过程。重
复地对图像进行阈值操作,将图像分割为对象类和背景类,然后来利用每一个类中的灰阶级别对阈值进行改进。 • 图像阈值分割---迭代算法 • 处理流程: • 1.为全局阈值选择一个初始估计值T(图像的平均灰度)。 • 2.用T分割图像。产生两组像素:G1有灰度值大于T的像素组成,G2有 小于等于T像素组成。 • 3.计算G1和G2像素的平均灰度值m1和m2; • 4.计算一个新的阈值:T = (m1 + m2) / 2; • 5.重复步骤2和4,直到连续迭代中的T值间的差小于一个预定义参数为止。 • 适合图像直方图有明显波谷
基本算法讲解
• Sobel算子
• 其主要用于边缘检测,在技术上它是以离散型的差分算子,用来运算图像亮度函数的梯度的近似值,Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算 子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。Sobel算子对于象素的位置的影响做了加权,与Prewitt算子、Roberts算子相 比因此效果更好。
• 则 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)为边缘图像。这种判定是欠合理的,会造成边缘点的误判,因为许多噪声点的灰度值 也很大,而且对于幅值较小的边缘点,其边缘反而丢失了。
• Sobel算子包含两组3x3的矩阵,分别为横向及纵向模板,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。实际使用中,常用如下两个模板来
检测图像边缘。
1 0 -1
• 检测水平边沿 横向源自文库板 :
Gx 2 0 - 2
•
1 0 -1
• 检测垂直平边沿 纵向模板: •
1 2 1
Gy
0
0
• 设t为设定的阈值。 • wo: 分开后 前景像素点数占图像的比例 • uo: 分开后 前景像素点的平均灰度 • w1:分开后 被景像素点数占图像的比例 • u1: 分开后 被景像素点的平均灰度 • u= w0*u0 + w1*u1 :图像总平均灰度 • 从L个灰度级遍历t,使得t为某个值的时候,前景和背景的方差最大, 则 这个 t 值便是我们要求得的阈值。 • 其中,方差的计算公式如下: • g=w0*(uo - u)*(uo - u) + w1 * (u1 - u) * (u1 - u)
域卷积来完成的,这两个方向模板一个检测水平边缘,一个检测垂直边缘。
• 对数字图像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+1j)+f(i+1,j+1)]|
• G(j)=|[f(i-1,j+1)+f(i,j+1)+f(i+1j+1)]-[f(i-1,j-1)+f(i,j-1)+f(i+1,j-1)]|
基本算法讲解
• 霍夫变换是图像变换中的经典手段之一,主要用来从图像中分离 出具有某种相同特征的几何形状(如,直线,圆等)。霍夫变换 寻找直线与圆的方法相比与其它方法可以更好的减少噪声干扰。 经典的霍夫变换常用来检测直线,圆,椭圆等。
• 霍夫变换是图像变换中的经典手段之一,主要用来从图像中分离 出具有某种相同特征的几何形状(如,直线,圆等)。霍夫变换 寻找直线与圆的方法相比与其它方法可以更好的减少噪声干扰。 经典的霍夫变换常用来检测直线,圆,椭圆等。