一种基于局部特征的视盘边缘检测方法与流程

文档序号:20833600发布日期:2020-05-22 16:35阅读:199来源:国知局
一种基于局部特征的视盘边缘检测方法与流程

本发明涉及一种基于局部特征的视盘边缘检测方法,属于计算机图像处理技术领域。



背景技术:

视神经盘简称视盘,是眼底图像中最重要的组成部分,视盘的准确提取是有效进行眼底疾病诊断和眼底特征提取的基础。视盘在眼底图像中表现为近似圆形的浅红色或浅黄色区域,但是由于拍摄环境、个人差异与眼底疾病等因素会导致常用边缘检测算法的检测效果不佳。因而,必须针对眼底图像的特殊性,提出一种适合的视盘边缘检测方法。

针对此问题,目前的研究中提出了一些相应的解决方法,但普遍存在着对图像质量要求高、病变图像准确率低的问题。大多数方法通过将彩色图像变换为灰度图像或g通道图像,进而进行视盘边缘检测。现有的检测技术分为两大类:基于视盘与视网膜血管关系定位的方法、基于视盘形态特征分析的方法。由于图像变换过程降低了数据维度,造成了边缘检测准确度降低的问题,同时存在算法复杂度与鲁棒性不能兼顾的问题。另外,现有技术均通过在整张图像上检测确定视盘边缘,处理数据量大,过程复杂。



技术实现要素:

本发明克服现有技术存在的不足,所要解决的技术问题为:提供一种基于局部特征的视盘边缘检测方法,以提高视盘边缘提取的准确性,并且降低运算量。

为了解决上述技术问题,本发明采用的技术方案为:1、一种基于局部特征的视盘边缘检测方法,其特征在于,包括以下步骤:

s1、采用高斯滤波器平滑待处理的彩色眼底图像,记为图像grap;

s2、对图像grap进行以下处理:通过加权平均法进行灰度变换得到每像素点的灰度值;通过hsv空间变换得到每像素点的亮度值;将灰度值和亮度值的均值作为特征值e得到新的图像grap’;

s3、以图像grap’左上角为原点建立以像素为单位的直角坐标系x-y;

s4、依次求出图像grap’中每一行各个像素点的特征值e的平均值avgy,并求出avgy的最大值所对应的值y0,即为视盘的水平初值行;

s5、求y0行每个像素点特征值e的一阶导数,y0行上横坐标为i的像素点的一阶导数dx计算公式为:dx=e(i,y0)-e(i-1,y0),其中e(i,y0)表示y0行上横坐标为i的像素点的特征值,e(i-1,y0)表示y0行上横坐标为i-1的像素点的特征值;找到一阶导数的最大值和最小值对应的横坐标xmax和xmin,两者的中点坐标记为x0,以o1(x0,y0)为中心,确定局部待处理区域s;

s6、在区域s中,利用图像修复的方法去除血管,并利用sobel算子依次计算待处理区域s中每一点的梯度g;在y0行找出梯度值变化最大的两个峰值点,记为peakl与peakr;同时,将像素点m(peakl,y0)与n(peakr,y0)记为视盘图像在y0行的两个边界点,其中,peakl<peakr;

s7、以m点为起点,按照顺时针或逆时针旋转方向,逐一查找与m相邻的边界点m’,找到后,置m=m’,重复查找,直到与n点重合,将所有边界点连接即成为位于y0上部或下部的视盘边缘;同样,以n点为起点,按相同的旋转方向,逐一查找与n相邻的边界点n’,找到后,置n=n’,重复查找,直到与m点重合,将所有边界点连接即成为位于y0下部或上部的视盘边缘;

其中,查找相邻边界点的具体方法为:设定梯度阈值t和特征值阈值,将特征值大于特征值阈值的像素点,归为视盘内部,将特征值小于特征值阈值的像素点,归为视盘外部,从起点逐一查找其相邻点是否满足以下条件:已确定边界点的8个邻域像素点中,某点的梯度值大于梯度阈值,且该点的邻域像素点中至少有一个像素点位于视盘内部,若满足,则将其作为下一个边界点。

所述步骤s7中,以m点为起点时,若最终找到的边界点与n点不重合,则以n为起点,反方向查找相邻的边界点,直到找到边界点与从m点出发找到的边界点重合或到达y0行,将两次找到的边界点的中心像素点作为最终找到的边界点;同样,以n点为起点时,若最终找到的边界点与m点不重合,则以m为起点,反方向查找相邻的边界点,直到找到的边界点与从m出发找到的边界点重合或达到y0行,将两次找到的边界点的中心像素点作为最终找到的边界点。

所述步骤s7中,以顺时针旋转方向逐一查找与m相邻的边界点m’时,以右上、右侧、右下的优先顺序进行查找,以顺时针旋转方向逐一查找与n相邻的边界点n’时,以左下、左侧、左上的优先顺序进行查找。

所述步骤s6中,梯度阈值t的取值范围为梯度峰值peakl与peakr均值的60~80%,所述特征值阈值为上一个边界点的特征值。

所述步骤s6中,计算待处理区域s中每一点的梯度g的计算公式为:

其中,

gx=(ei-1,j+1+2ei,j+1+ei+1,j+1)-(ei-1,j-1+2ei,j-1+ei+1,j-1);

gy=(ei-1,j-1+2ei-1,j+ei-1,j+1)-(ei+1,j-1+2ei+1,j+ei+1,j+1);

ei,j表示坐标为(i,j)的像素点的特征值。

所述步骤s5中,局部待处理区域s的高和宽为图像高和宽的1/3。

本发明与现有技术相比具有以下有益效果:

(1)本发明把灰度值与亮度值结合,弥补了灰度图像中不能体现亮度信息的欠缺,而视盘的亮度信息又表现突出,故采用在灰度图像上叠加亮度信息后取中值的方法可以使下一步的边缘提取更加准确。

(2)本发明将对整张眼底图像的边缘提取过程进行简化,通过初步定位的方法确定局部待处理范围,缩小了处理范围。此外,通过在最大平均特征值行找梯度极值的方法确定两个边缘点,进而利用视盘形态特征通过8邻域节点的特征值分析方法依次进行边缘提取,有效的降低了运算量。

附图说明

图1是原始图像grap及预处理后的图像;

图2是灰度图像、亮度图像与组合图像grap’的对比示意图;

图3是图像grap’的坐标系x-y及局部待处理区域s示意图;

图4是局部待处理区域s的确定示意图;

图5是水平初值行即y0行在图像中的位置及其特征值曲线和梯度值曲线的示意图;

图6是视盘示意图;

图7是像素点m的8邻域节点特征分析示意图;

图8是从点m出发找到的10个边缘点m’的示意图;

图9是视盘边缘快速检测结果示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种基于局部特征的视盘边缘检测方法,包括以下7个步骤:

s1、采用高斯滤波器平滑取待处理彩色眼底图像grap。

本实施例中,待处理图像彩色眼底图像grap大小为3048*2432,图像过大,为方便处理,将图像大小调整为600*800。采用高斯滤波器平滑图像,降低噪声影响。待处理图像grap及其平滑后的图像如图1所示。

s2、对图像grap进行以下处理:通过加权平均法进行灰度变换得到每像素点的灰度值;通过hsv空间变换得到每像素点的亮度值;对灰度值和亮度值求均值后得到新的图像grap’。

本实施例中,灰度图像、亮度图像与组合图像grap’对比如图2所示。通过把灰度值与亮度值结合,弥补了灰度图像中不能体现亮度信息的欠缺,而视盘的亮度信息又表现突出,故采用在灰度图像上叠加亮度信息后取中值的方法可以使下一步的边缘提取更加准确。

s3、以图像grap’左上角为原点建立以像素为单位的直角坐标系x-y。如图3所示。

s4、依次求出图像grap’中每一行各个像素点的特征值e的平均值avgy,并求出avgy的最大值所对应的值y0,即为视盘的水平初值行;

s5、以j=1为初始值,j=600为最大值,依次求出y0行每个像素点特征值e的一阶导数,y0行上横坐标为i的像素点的一阶导数dx计算公式为:dx=e(i,y0)-e(i-1,y0),其中e(i,y0)表示y0行上横坐标为i的像素点的特征值,e(i-1,y0)表示y0行上横坐标为i-1的像素点的特征值;找到一阶导数的最大值和最小值对应的横坐标xmax和xmin,两者的中点坐标记为x0,以o1(x0,y0)为中心,确定局部待处理区域s,如图3所示。

具体地,本实施例中,局部待处理区域s的高图4中用矩形标出了区域s。

s6、在区域s中,利用图像修复的方法去除血管,并利用sobel算子依次计算待处理区域s中每一点的梯度g;在y0行找出梯度值变化最大的两个峰值点,记为peakl与peakr;同时,将像素点m(peakl,y0)与n(peakr,y0)记为视盘图像在y0行的两个边界点,其中,peakl<peakr。m点和n点在局部待处理区域s中的位置如图5中(1)所示。y0行的特征值曲线和梯度值曲线如图5中(2)和(3)所示,从图中可以看出,y0行的梯度值曲线具有两个非常突出的峰值点,这两个点对应于视盘边缘。

其中,已知sobel算子中,

设像素点(i,j)的特征值为ei,j,其8邻域的像素值为:

则:gx=(ei-1,j+1+2ei,j+1+ei+1,j+1)-(ei-1,j-1+2ei,j-1+ei+1,j-1);(3)

gy=(ei-1,j-1+2ei-1,j+ei-1,j+1)-(ei+1,j-1+2ei+1,j+ei+1,j+1);(4)

像素点(i,j)的梯度值计算公式为:

因此,通过式(5)即可以计算得到待处理区域s中每一点的梯度g。

s7、如图6所示,以m点为起点,按照顺时针旋转方向,逐一查找与m相邻的边界点m’,找到后,置m=m’,重复查找,直到与n点重合,将所有边界点连接即成为位于y0上部的视盘边缘;同样,以n点为起点,按相同的旋转方向,逐一查找与n相邻的边界点n’,找到后,置n=n’,重复查找,直到与m点重合,将所有边界点连接即成为位于y0下部的视盘边缘。

其中,查找相邻边界点的具体方法为:首先设置特征值阈值e和梯度阈值t,将边界点两侧点分为两类:边界点的一侧,像素点的特征值大于特征值阈值,归为视盘内部,边界点的另一侧,像素点的特征值小于边界点特征值阈值,归为视盘外部,然后从起点逐一查找其相邻点是否满足以下条件:已确定边界点的8邻域内,某点的梯度值大于梯度阈值,且该点的邻域至少有一个像素点位于视盘内部,若满足,则将其作为下一个边界点。其中,梯度阈值t可以取梯度峰值点peakl与peakr均值的60~80%,而特征值阈值e可以取上一个边界点的特征值。

具体地,以m点为起点时,若最终找到的边界点与n点不重合,则以n为起点,反方向查找相邻的边界点,直到找到边界点与从m点出发找到的边界点重合或到达y0行,将两次找到的边界点的中心像素点作为最终找到的边界点;同样,以n点为起点时,若最终找到的边界点与m点不重合,则以m为起点,反方向查找相邻的边界点,直到找到的边界点与从m出发找到的边界点重合或达到y0行,将两次找到的边界点位置在y方向上取中值,即将同一横坐标上两次找到的像素点的中心像素点作为最终找到的边界点。

具体地,如图7所示,像素点m的8邻域节点特征分析示意图,图7中位于视盘边缘及视盘内部像素点以灰色标记,位于视盘外部像素点以白色标记。根据视盘特点,若某像素点为视盘边界点,则其梯度值应该是明显增加的,而且,其8个邻域像素点必同时满足以下特征:至少有一个像素点位于视盘内部。

在m点的右侧方向,按顺时针方向(即按照右上、右侧、右下的优先顺序)逐一查找其邻域像素点中满足边界点条件的像素点m’,记录m’的位置。置m=m’,重复步骤上述查找过程,直到与n重合。如图8所示,为从点m出发找到的10个边缘点示意图。若与n不重合,则以n为起点,反方向查找满足上述全部特征的像素点,找到特征值最接近或相同的像素点,将此像素点至n点之间的所有像素点位置在y方向上取中值。此时,y0上部的边缘找出。

类似的方法,可以从n出发找到y0下部的边缘。其中,由于视盘具有圆形或椭圆形特征,以顺时针旋转方向逐一查找与m相邻的边界点m’时,以右上、右侧、右下的优先顺序进行查找,以顺时针旋转方向逐一查找与n相邻的边界点n’时,以左下、左侧、左上的优先顺序进行查找。

进一步地,本实施例中,也可以分别从m点和n点出发,沿顺时针方向进行边界点的查找,从m出发查找时,以右上、右侧、右下的优选顺序查找,从n点出发寻找时,以左下、左侧、左上的优先顺序查找。

如图9所示,为本发明实施例的执行结果,其中显示了由所有找到的边界点绘制而成的边缘曲线。可以看到本发明准确地检测到了视盘的边缘。由此亦可证明本发明是准确的、有效的。因此,本发明将对整张眼底图像的边缘提取过程进行简化,通过初步定位的方法确定局部待处理范围,缩小了处理范围。此外,通过在最大平均特征值行找梯度极值的方法确定两个边缘点,进而利用视盘形态特征通过8邻域节点的特征值分析方法依次进行边缘提取,有效的降低了运算量。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1