图像的边缘检测.ppt
Lecture 14 Image Edge Detection,Detection of Discontinuities,边缘检测算子,边缘的定义:图像中像素灰度有阶跃变化或屋顶变化的那些像素的集合边缘的分类阶跃状阶梯状脉冲状屋顶状,阶跃状:理想的数字边缘模型,这个模型生成的完美边缘是一组相连的像素的集合,每个象素都处在灰度级跃变的一个垂直的台阶上。阶梯状:边缘被模拟成具有“类斜面”的剖面,斜坡部分与边缘的模糊程度成比例。在这个模型中,不再有细线(一个像素宽的线条)。阶梯状边缘处于图像中两个具有不同灰度值的相邻区域之间。脉冲状:主要对应细条状的灰度值突变区域屋顶状:边缘上升下降沿都比较缓慢,阶跃状,屋顶状,边缘检测算子,基本思想:计算局部微分算子,一阶微分(First derivative):用梯度算子来计算用途:用于检测图像中边的存在二阶微分(Second derivation):通过拉普拉斯算子来计算用途:1)二次导数的符号,用于确定边上的像素是在亮的一边,还是暗的一边。2)0跨越,确定边的准确位置,图像,剖面,一阶导数,二阶导数,边缘检测算子,几种常用的边缘检测算子梯度算子Roberts算子Prewitt算子Sobel算子Kirsch算子Laplacian算子Marr算子,梯度算子,函数f(x,y)在(x,y)处的梯度为一个向量:f=f/x,f/y计算这个向量的大小为:G=(f/x)2+(f/y)21/2近似为:G|fx|+|fy|或 G max(|fx|,|fy|)梯度的方向角为:(x,y)=tan-1(fy/fx)可用下图所示的模板表示,特点:仅计算相邻像素的灰度差,对噪声比较敏感,无法抑止噪声的影响。,Roberts算子,公式:模板:特点:与梯度算子检测边缘的方法类似,对噪声敏感,但效果较梯度算子略好,Prewitt算子,公式模板:特点:在检测边缘的同时,能抑止噪声的影响,Sobel算子,公式模板特点:对4邻域采用带权方法计算差分能进一步抑止噪声但检测的边缘较宽,Kirsch算子(方向算子),模板,特点在计算边缘强度的同时可以得到边缘的方向各方向间的夹角为45 分析 取其中最大的值作为边缘强度,而将与之对应的方向作为边缘方向;如果取最大值的绝对值为边缘强度,并用考虑最大值符号的方法来确定相应的边缘方向,则考虑到各模板的对称性,只要有前四个模板就可以了。,Sobel,Prewitt,Kirsch,拉普拉斯算子,定义:二维函数f(x,y)的拉普拉斯是一个二阶的微分定义为:2f=2f/x2,2f/y2离散形式:模板:可以用多种方式被表示为数字形式。对于一个3x3的区域,经验上被推荐最多的形式是:,拉普拉斯算子,定义数字形式的拉普拉斯的基本要求是,作用于中心像素的系数是一个负数,而且其周围像素的系数为正数,系数之和必为0。,拉普拉斯算子,拉普拉斯算子的分析:优点:各向同性、线性和位移不变的;对细线和孤立点检测效果较好。缺点:对噪音的敏感,对噪声有双倍加强作用;不能检测出边的方向;常产生双像素的边缘。,由于梯度算子和Laplacian算子都对噪声敏感,因此一般在用它们检测边缘前要先对图像进行平滑。,Marr算子Laplacian of a Gaussian(LOG),Marr算子是在Laplacian算子的基础上实现的,它得益于对人的视觉机理的研究,有一定的生物学和生理学意义。由于Laplacian算子对噪声比较敏感,为了减少噪声影响,可先对图像进行平滑,然后再用Laplacian算子检测边缘。平滑函数应能反映不同远近的周围点对给定像素具有不同的平滑作用,因此,平滑函数采用正态分布的高斯函数,即:,其中是方差。用h(x,y)对图像f(x,y)的平滑可表示为:*代表卷积。令r是离原点的径向距离,即r2=x2+y2。对图像g(x,y)采用Laplacian算子进行边缘检测,可得:这样,利用二阶导数算子过零点的性质,可确定图像中阶跃边缘的位置。称为高斯拉普拉斯滤波算子,也称为LOG滤波器,或“墨西哥草帽”。,Marr算子,一维LOG函数及其变换函数,二维LOG函数,Marr算子,由于的平滑性质能减少噪声的影响,所以当边缘模糊或噪声较大时,利用 检测过零点能提供较可靠的边缘位置。在该算子中,的选择很重要,小时边缘位置精度高,但边缘细节变化多;大时平滑作用大,但细节损失大,边缘点定位精度低。应根据噪声水平和边缘点定位精度要求适当选取。下面是10时,Marr算子的模板:,Marr算子,(a)原图(b)2h结果(c)正值为白,负值为黑(d)过零点,利用2h检测过零点,线的检测(Line Detection),通过比较典型模板的计算值,确定一个点是否在某个方向的线上,线的检测,R1=-6+30=24R2=-14+14=0R3=-14+14=0 R4=-14+14=0,Hough变换检测法,问题的提出Hough变换的基本思想算法实现Hough变换的扩展,Hough变换检测法,问题的提出在找出边界点集之后,需要连接,形成完整的边界图形描述,Hough变换基本原理,Hough变换的实现,设一条直线距原点的距离为,为原点到直线的垂线与x轴之间的夹角。,基本思想对于边界上的n个点的点集,找出共线的点集和直线方程。对于直角坐标系中的一条直线l,可用、来表示该直线,且直线方程为:其中,为原点到该直线的垂直距离,为垂线与x轴的夹角,这条直线是唯一的。构造一个参数的平面,从而有如下结论:,Hough变换检测法,对应一条直线,直角坐标系中的共线点集对应极坐标系中交于点(i、j)的正弦曲线,这种线到点的变换就是Hough变换,Hough变换检测法,基本思想,Hough变换检测法,算法实现:使用交点累加器,或交点统计直方图,找出相交线段最多的参数空间的点,然后找出该点对应的xy平面的直线线段。,算法步骤:1在、的极值范围内对其分别进行m,n等分,设一个二维数组的下标与i、j的取值对应;2对图像上的所有边缘点作Hough变换,求每个点在j(j0,1,n)Hough变换后的i,判断(i、j)与哪个数组元素对应,则让该数组元素值加1;3比较数组元素值的大小,最大值所对应的(i、j)就是这些共线点对应的直线方程的参数。,Hough变换检测法,算法特点:对、量化过粗,直线参数就不精确,过细则计算量增加。因此,对、量化要兼顾参数量化精度和计算量。Hough变换检测直线的抗噪性能强,能将断开的边缘连接起来。此外Hough变换也可用来检测曲线。,