mage Processing and Multimedia Technology 医学图像边缘检测算法的研究 李靖宇,穆伟斌,沈焕泉 (齐齐哈尔医学院医学技术学院,黑龙江齐齐哈尔161006) 摘 要:边缘检测是医学图像处理中非常重要的一个环节,通过对几种经典边缘检测算法的分 析,提出了一种基于Canny算子的改进算法。该算法以图像增强法代替原算法中的高斯滤波,以去除 图像中的计算噪声,达到更好的边缘检测效果。仿真结果表明,该算法边缘检测定位精度得到较大的 提高。 关键词:医学图像;边缘检测;算法 中图分类号:TP301.6 文献标识码:A 文章编号:1674—7720(2010)10—0039—03 Medical image edge detection algorithm LI Jing Yu,MU Wei Bin,SHEN Huan Quan (Dept.of Medical and Technology Institute,Qiqihar Medical University,Qiqihar 161006,China) Abstract:Edge detection is a very important part in medical image processing.There is a algorithm which is based on canny operator by several classics analysis of edge detection algorithm.The algorithm instead of the original algorithm in the Gaussian filter by imaging enhancement method to used to remove the image in the calculation of noise,to achieve a better edge detection results,simulation results also show that the positioning accuracy of edge detection algorithm is to be greatly improved. Key words:medical image;edge detection;algorithm 边缘检测就是要检测出图像中灰度变化的非连续 从本质上讲,边缘检测并不只是简单地进行梯度运 性,提取图像中不连续部分的特征,根据闭合的边缘确 算来决定像素是否为边缘点,在决定一个像素是否为当 定区域,同时确定它们在图像中的精确位置。边缘检测 前边缘点时,需要考虑其他像素的影响;它也不是简单 是图像分析过程中非常基础的研究领域,为后面的图像 的边界跟踪,在寻找边缘点时,需要根据当前像素及前 处理提供信息。边缘是位置的标志,对灰度的变化不敏 面处理过的像素来进行判断,它把边缘检测问;题转换为 感,因此边缘也是图像匹配的重要特征。边缘提取的好 检测函数极大值的问题。评价分割质量的好坏,主要包 坏将直接影响后续处理的准确性和难易程度。由于自然 含3个部分: 景物和人类世界的复杂性,以及各种噪声源的干扰,图 (1)错误率低,即要求即使将边缘像素漏掉,也要尽 像大多非常复杂,在这种情况下,想要检测出实际的边 可能少地将非边缘点误判为边缘点; 缘轮廓十分困难…。 (2)检测位置精度高,即检测出的边缘点位于真正的 1边缘检测算法 边界上; 边缘检测的实质是采用某种算法来提取图像中物 (3)每个边缘点的响应是唯一的,即得到的边缘宽度 体和背景间的交接线。图像灰度的变化情况可以用图像 为单像素。 灰度分布的梯度来描述,因此可以用局部图像微分来获 1。1 Roberts算子 得边缘检测算子,其过程如图1所示。 Roberts提出利用局部差分算子寻找边缘,在2x2邻 域上计算对角导数 平滑 一阶或二阶一阈值 困 g(x,y):V f(x,y)-f( +1,),+1)]+【7 ,),+1)_厂( +1,y)】 (1) g( ,Y)又称为Roberts交叉算子。在实际应用中,为 了简化计算,用梯度函数的Roberts绝对值来近似 《微型机与应用》2010年第10期 欢迎网上投稿WWW.pcachina.com 39 mage Processing and Multimedia Technology g( ,),)= ,),)_厂( +1,),+1)l+}厂( ,y+1)_厂( +1,Y)I (2) 或者用Robeits最大值算子来计算梯度函数 g( ,y)=max( I ,),)_厂( +1, +1)I,【厂( , +1)_厂( +1,Y)I) f 值作为算子的输出值P(i,j),就可将边缘像素检测出来【2_ 。 Prewitt算子利用像素点上、下、左、右邻点灰度差, 在边缘处达到极值检测边缘。Prewitt算子对噪声具有平 滑作用,定位精度不够高。 2.1 Canny算子 ,, (3) Robeits边缘检测算子对图像运算后,代入Robeits绝 对值近似式,可求得图像的梯度幅度值g(x,Y),然后选 2 Canny算子及改进的Canny’ 算子 Canny边缘检测算子是一阶算子,其实质是用一个 准高斯函数作平滑运算,然后以带方向的一阶微分算子 定位导数最大值,它可用高斯函数的梯度来近似,在理 论上它很接近4个指数函数的线性组合形成的最佳边 缘算子。算法实现主要包括图像滤波 计算图像梯度、抑 制梯度非最大点、搜索边界的起点、跟踪边界,具体描述 如下: 取适当门限TH并进行判断。若g(x,y)>TH,则( √)为阶 跃状边缘点,{g( √)}为一个二值图像,即为图像的边缘。 Robeits算子采用对角线方向相邻两像素之差近似 梯度幅值检测边缘。检测水平和垂直边缘的效果好于斜 向边缘,定位精度高,对噪声敏感。 1.2 Sobel算子 由于Robeits算子在计算方向差时对噪声敏感,So. bel提出一种将方向差运算与局部平均相结合的方法, (1)用3X3高斯滤波器对图像滤波,以去除图像中 的噪声。 即Sobel算子。该算子是在以f(x,Y)为中心的3×3邻域 上计算 和Y方向的偏导数,即: (2)对每个像素计算其梯度的大小Ⅳ和方向 。为此 要使以下2×2大小的模板作为对 和Y方向偏微分的 =D +1,y一1)+ ..( +1,),) 厂( +1,y+1)} 一If(x一1,y-1)+2f(x一1, ) 厂( 一1, +1)} 一(4) 一阶近似: p= 一×Sy=【,^( 一1,y+1)+Z ,y十1) 厂( +1,y+1)} 一1,Y一1)+2/ ,Y一1) 厂( +1,y-1)) [:::1,g: 一×[一 — ] (8) (9) 实际上,式(4)利用了f(x,Y)邻域图像强度的加权平 均差值。其梯度大小为: 由此得到梯度的大小Ⅳ和方向 N=spit xp+gxq) g(x,y)=VX2S ̄+S?或g( ,y)=l I+Is,I (5) O=arctan(q/p) (3)对梯度进行“非极大抑制”,梯度的方向可以被定 义为属于4个区域之一(水平、45。、竖直、135。),各个区 域有不同的邻近像素用来进行比较,以决定局部极大 两个卷积算子对图像运算后,代入g( ,Y)=ISxI+I I, 可求得图像的梯度值g( ,Y),然后选取适当门限刑并 进行判断。若( √)为阶跃状边缘点,则{g(ij)}为一个二值 图像,即为图像的边缘。Sobel算子利用像素上、下、左、 右相邻点的灰度加权算法,根据在边缘点处达到极值进 行边缘检测。 Sobel算子对噪声具有平滑作用,提供较为精确的边 值。例如,如果中心像素 的梯度方向属于第3区,则把 的梯度值与其左上和右下相邻像素的梯度值进行比 较,看 的梯度值是否是局部极大值,如果不是,就把像 素 的灰度设为0。这个过程叫作“非极大抑制”。 缘方向信息,但边缘定位精度不够高。当对精度要求不 是很高时,Sobel算子是一种较为常用的边缘检测方法。 1.3 Prewitt算子 Prewitt提出了类似于计算偏微分估计值的方法: =(4)用双阈值算法检测和连接边缘,使用累积直方图 计算两个阈值,大于高阈值的为边缘,小于低阈值则不 是边缘;如果检测结果在两者之间,则要看这个像素的 邻接像素中有没有超过高阈值的边缘像素,如果有它就 是边缘,否则就不是边缘[5】。 2.2改进的Canny算子 Lf( +1,Y一1) 厂( +1,y) 厂( +1,),+1)} 一f(x一1,Y一1)f(x一1,y) 厂( 一1, +1)} = 一1,y+1) 厂( ,y+1) 厂( +1,y+1)} (6) Canny边缘检测首先要对图像进行滤波,以消除噪 声的影响。传统的Canny边缘检测采用的是高斯平滑, 用于去除图像中的计算噪声,这种去噪方法虽然对抑制 【7^(x一1,Y一1)f(x,Y一1) 厂( 一1,y+1)l 其梯度大小为: 一g(x,,,)=、/ + 或g(x,y)=Ipxl+IPyI (7) 高斯噪声效果较好,但对脉冲噪声等的去除并不理想。 根据医学图像的特点,本文采用如图2所示的图像增强 算法,该算法能够很好地消除噪声对图像的影响。改进 当用两个掩模板组成边缘检测器时,一种方法是取 较大的幅度作为输出值,这使得它们对边缘的走向敏 感,取其平方和的开方可以获得性能更一致的全方位响 应,更接近真实的梯度值;另一种方法是将Prewitt算子 的Canny边缘检测使用图像增强算法进行滤波,以代替 高斯滤波。 扩展到8个方向 ,即边缘算子模板,这些算子模板由理 想的边缘子图像构成,依次用边缘模板去检测图像,由 与被检测区域最为相似的模板给出最大值,用这个最大 在算法上对传统的Canny算子的梯度运算时不仅 考虑水平和垂直分量的影响,还考虑了45。和135。方向 的影响,并对不同方向给予不同的权值。 ( ,y)代表x,Y) 点的像素值,其梯度为: 《微型机与应用》2010年第1O期