视盘分割中霍夫变换和Snake模型的应用

2021-11-17 07:00上海理工大学光电信息与计算机工程学院张雨鹏傅迎华
电子世界 2021年20期
关键词:霍夫视盘边缘

上海理工大学光电信息与计算机工程学院 张雨鹏 傅迎华 陈 杰

在现代医学中,视盘的定位与分割对眼睛疾病诊断有很大的作用。针对现有算法存在的受噪声影响大、分割精度不高等问题,本文提出将霍夫变换和Snake模型结合的方法实现视盘的定位和分割:对原图像,选取红色通道和绿色通道,并用高斯滤波降噪;然后用Canny边缘检测算法检测视盘轮廓;再使用霍夫变换定位视盘;最后使用Snake模型分割视盘。本文在MESSIDOR数据集上进行算法验证,算法的平均重叠率为79.9%。与其他算法相比具有精度高、响应快的优点。

视盘的全称是视神经盘(又名视神经乳头),其是视网膜的重要组成结构。它的形状近似一个椭圆,宽和高分别约为1.8mm和1.9mm。视杯是视盘中的明亮部分,视杯面积与视盘面积之比称为杯盘比。在眼底视网膜图像中,视盘是血管汇聚的地方,由视神经构成的近椭圆形亮黄色区域。

在现代眼科疾病诊断中,计算机软件辅助诊断可以帮助医生进行预筛查,缓解医生压力,提高医生诊断疾病的效率。视盘分割是视网膜图像分析诊断中非常重要的一步。例如:视杯与视盘的面积之比称为杯盘比,杯盘比对诊断青光眼有重要意义,当杯盘比大于0.6时应做青光眼排除检查;在糖尿病视网膜病变的诊断中,检测和分割视盘可以避免其对病灶的干扰,便于更直观的定位和分析病灶,方便做出准确地诊断分析。

分割视盘之前要进行视盘定位,视盘定位可以去除非视盘区域的影响,提高视盘分割的精度。目前常用的视盘定位的方法主要有两大类:第一类是基于视盘的形状和亮度来定位视盘,如Lu等提出了线性算子来找到图像中明亮的圆形,从而定位视盘。Yu等采用模板匹配的方法来定位出视盘。在相关文献中通过找到图像中最亮的像素点来定位视盘。这类方法受到除视盘以外其它亮圆形区域的影响较大。第二类是基于视网膜中视盘和血管的生理结构特点来定位视盘,如郑邵华等利用视盘周围血管特征并找出正确的视盘感兴趣区域来定位视盘,此方法定位出的视盘结果较精确,不过计算方法较为复杂,而且对预处理中血管分割的要求较高。

视盘定位之后进行视盘分割。现有的视盘分割方法有很多。文献中的视盘分割方法基于区域增长,该方法的计算代价大,受噪声影响大。Cheng等提出超像素分类方法来分割视盘,此方法的分割精度不高。杨帆等提出U-Net深度学习法分割视盘,此方法所需样本多且过程复杂,所需时间长。

为了解决视盘分割中受噪声影响大、分割精度不高,监督学习中模型训练时间长、所需样本多等问题。本文采用基于霍夫变换和Snake模型的方法来实现视盘定位与分割。首先选取75%红色和25%绿色通道并采用高斯滤波消除噪声,然后根据视盘占视网膜面积的比例去除其余亮区域,接着进行Canny边缘检测。使用霍夫变换来定位视盘,并用定位好的视盘的位置来让Snake模型进行分割。图1是本文的视盘分割流程。

图1 视盘分割流程

1 预处理

1.1 选择通道和初步筛选

由于红色通道中包含视网膜图像中视盘的绝大部分信息,本文使用红色通道75%和绿色通道25%的组合来对图像进行处理。用自动阈值化处理和连通区域进行初步筛选:因为视盘是视网膜图像中较亮的部分,所以用自动阈值化处理图像,去除图片中较暗部分。由于视盘的像素一般大于100个,故只选取大于100个像素点的连通区域。

1.2 Canny边缘提取

Canny边缘检测算子是John F.Canny于1986年开发的,其实质为多级边缘检测算法,其目标是解出最优的边缘检测算法。如下三个因素制定了Canny检测算子的最优检测标准:不漏掉真实存在的边缘,不检测出虚假的边缘;检测结果与实际结果之间的差异最小;如果检测出多个响应,那么减少为单个边缘响应,检测出的边缘与实际的边缘应该是对应的。Canny边缘检测的步骤如图2。

图2 Canny边缘检测流程

由于待测图像存在噪声,故将高斯函数与所测图像作卷积,使图像更为平滑,消除噪声的影响。高斯函数G如式(1):

式(1)中,σ为标准差,x、y是图像像素点的横纵坐标。图3展示了对图像进行高斯滤波的结果:(a)是原图,(b)是高斯滤波后的结果。可以看出,高斯滤波可使图像更平滑,视盘和血管的边缘都变得模糊,一些噪声被滤除。

图3 高斯滤波结果

接下来计算图像每个像素点的梯度,这里的梯度是矢量,包含大小和方向。梯度大小的计算方法如(2):

再使用非最大抑制来找到局部像素点的最大值,抑制非极大值点信息以突出边缘点。

由于图像中噪声的影响,单个边缘会有虚假响应,造成“纹状”问题。可以通过对边缘检测算法的输出进行阈值化处理来解决这个问题,设置一个低阈值和一个高阈值,这种方法称为滞后阈值化处理。当阈值较高时,得到的线条大部分是不连续的,并且边缘线条很少。当阈值较低时,得到的线条大部分是连续的,边缘线条较多,边缘信息较多。

图4是Canny边缘检测的结果:(a)为原图,(b)为Canny边缘检测后的结果。由(b)图可看出,Canny边缘检测显现出视盘的边缘,去除了毛细血管的影响。

图4 Canny边缘检测结果

2 霍夫变换

霍夫变换可以有效地分割出图像中已知形状和大小的物体。由于视盘是类似一个圆形,加上霍夫变换的分割结果具有很好的鲁棒性,能够消除视盘周围血管的影响,所以使用霍夫变换来检测出视盘的位置。

假设要检测的圆的表达式为(3):

且满足方程:

其中:x是上文中使用Canny算子提取的边缘像素点,a = (a, b, r)是含有圆参数(圆心坐标、半径)的三维向量。

霍夫变换的具体步骤为:量化参数空间,让向量a变为有限个,并让a对应一个三维累加数组A(a),并且将A(a)中的所有元素的初始值置0。在经过Canny边缘检测的图像中,对于每一个像素点(x, y)和含有圆参数的a,逐渐增大A(a),并且A(a)满足 f(x, a) = 0。这个增大的过程相当于一个投票机制,找出A(a)的局部最大值,这时就找出了a=(a, b, r)的值,即圆的解析式。这样就找到了视盘的中心坐标,以此确定视盘的位置。

图5是霍夫变换的结果:(a)为原图,(b)为霍夫变换结果。(b)图中的圆是通过霍夫变换检测而得,红点是检测出的圆心。

图5 霍夫变换结果

3 Snake模型

主动轮廓模型是Kass、Witkin和Terzopoulos于1987年提出的方法,用于解决图像分割等问题。在进行图像处理时,可以将主动轮廓模型看为能量线条,利用曲线演化检测目标的边缘,因此也被称为Snake模型。Snake模型分割图像的过程,可以看作能量线条变形匹配的过程,这是一个动态的过程,Snake模型在这个过程中是活动变形的,不断迭代求出能量函数的最小值,能量函数最小的曲线就是待测轮廓。

内部能量计算方法如式(6):

通过求得Snake模型的能量函数最小值,使轮廓最终收缩于在图像的最大梯度处。而目标的边缘对应的是图像的最大梯度。

图6是最终的分割结果与原图的对比:(a)是原图,(b)是与之对应的分割结果。(b)图中的红色虚线圆是通过霍夫变换而确定的Snake初始形状,其内部的蓝色曲线是其最终分割结果。

图6 视盘分割结果

4 实验及分析

本文在公开数据集MESSIDOR上进行实验,把专家标注的视盘轮廓作为ground truth。图7展示了本文的部分实验结果。这些图片包含有亮病灶、复杂病灶、不均匀光照和光晕等其他干扰。从本实验结果可看出本文方法适用于多种类别的视网膜眼底图像,并有良好的分割精度。

图7 MESSIDOR数据集部分实验结果

4.1 算法性能评估

本文使用计算重叠率的方法来评价算法的性能,如式(9):

其中,OP代表重叠率,值域为[0, 1],OP越大,算法性能越好,分割精度越高。Ar是分割出的视盘,是ground truth。

4.2 实验结果分析

表1是不同算法在MESSIDOR数据集上得出的平均重叠率的比较。文献中是基于超像素特征分类的视盘分割,由于该方法受视盘周围干扰因素的影响较大,所以平均重叠率只有0.747。本文的平均重叠率为0.799,高于基于超像素特征分类的视盘分割方法。

表1 不同方法在MESSIDOR上的平均重叠率

4.3 后续工作

在实验过程中,Snake模型虽然表现出分割速度快、分割精度高等优点,但其还存在一定的缺点:它不可以自己找到待找出轮廓的物体,因此需要人为先标出大概的轮廓,这个初始形状必须包含视盘的全部;待检测物体的周围如果存在干扰,则会对检测结果产生很大影响,如图8中的(a)就是受视盘中血管的干扰导致分割不精确;图像中形状、大小、亮度类似于视盘的区域对Snake分割结果有影响,如图8(b)中视盘内部区域和(c)中的病灶;还有在使用欧拉——拉格朗日公式的过程中,当拉格朗日插值多项式的次数很高时,解值不稳定,会和实际结果有偏差,使分割精度下降。这些问题还需要进一步的研究来解决。

图8 挑战性的结果

结论:本文提出基于霍夫变换和Snake模型来进行视盘的定位和分割。首先通过预处理将有用的通道提取出来,并初步筛选;然后进行Canny边缘检测;再用霍夫变换来定位视盘,找到视盘中心;根据定位好的视盘用Snake模型进行分割。本文在MESSIDOR数据集上验证算法的准确性,并取得了良好的视盘分割效果。

猜你喜欢
霍夫视盘边缘
冰山与气候变化
世界之巅的花园——库肯霍夫
视盘水肿患者频域光学相干断层扫描测量结果分析
伴视盘出血的埋藏性视盘玻璃疣患者的临床特点和眼底影像特征陈秀丽
视盘内出血伴视盘旁视网膜下出血1例
一张图看懂边缘计算
基于霍夫变换的铭牌OCR图像旋转矫正方法
基于霍夫变换的简单手绘表情的智能识别
视盘内与邻近视盘视网膜下出血
在边缘寻找自我