发明内容
本发明旨在解决上述问题,提供一种屈光不正的数字化影像识别方法,该方法和采用一种新的适用于临床与家用的人眼屈光不正诊断技术,该技术基于检影验光原理,具有视频显示眼底影动,影像识别程序辅助检查者(特别针对非专业人士)判断屈光不正诊断,可存储影像信息、传递诊断信息,使检查者更能直观、简准确地诊断人眼屈光不正,特别是针对老人、儿童、残障等沟通有障碍的患者。
为实现上述目的,本发明提出的一种屈光不正的数字化影像识别的方法为:一种屈光不正的数字化影像识别方法,包括步骤:
步骤一,将带状光光源投射到人眼上,驱动带状光光源沿水平方向运动,采用CCD图像采集对人眼拍照,连续获取多帧原始灰度图像数据;
步骤二,对单帧原始灰度图像数据进行眼球反射光带重心识别处理,得到眼球反射光带的重心位置,并放入眼球重心序列,包括以下内容:
对原始灰度图像数据进行图像二值化处理,得到眼球反射光带的二值化图像数据;
对眼球反射光带二值化图像数据进行图像腐蚀处理,得到眼球反射光带二值腐蚀图像;
对眼球反射光带二值腐蚀图像进行图像平滑处理,得到眼球反射光带平滑图像;
对眼球反射光带平滑图像进行图像膨胀处理,得到眼球反射光带膨胀图像;
对眼球反射光带膨胀图像进行图像腐蚀处理,得到眼球反射光带腐蚀图像;
对眼球反射光带腐蚀图像进行最大连通域处理,若最大连通域不存在,则丢弃该帧图像,若最大连通域存在,则可计算出该最大连通域的最小外接矩形,从而计算出该最小外接矩形的重心位置即眼球反射光带的重心位置,并放入眼球重心序列;
步骤三,对单帧原始灰度图像数据进行带状投射光带重心和最小外接矩形识别处理,得到带状投射光带的重心位置和最小外接矩形顶点坐标,并将带状投射光带的重心位置放入光带重心序列,包括以下内容:
对原始灰度图像数据进行图像避位处理,得到带状投射光带避位处理图像数据,避位区域内的所有像素值置为0,避位区域将人眼眼球部分全部覆盖;
对带状投射光带避位处理图像数据进行图像二值化处理,得到带状投射光带的二值化图像数据;
对带状投射光带二值化图像数据进行图像腐蚀处理,得到带状投射光带二值腐蚀图像;
对带状投射光带二值腐蚀图像进行图像平滑处理,得到带状投射光带平滑图像;
对带状投射光带平滑图像进行图像膨胀处理,得到带状投射光带膨胀图像;
对带状投射光带膨胀图像进行图像腐蚀处理,得到带状投射光带腐蚀图像;
对带状投射光带腐蚀图像进行最大连通域处理,若最大连通域不存在,则丢弃该帧图像,若最大连通域存在,则可计算出该最大连通域的最小外接矩形,从而计算出该最小外接矩形的顶点坐标和该最小外接矩形的重心位置即带状投射光带的重心位置,并将带状投射光带的重心位置放入光带重心序列;
步骤四,对单帧原始灰度图像数据进行眼球反射光带角度识别处理,得到眼球反射光带的角度值,包括以下内容:
对原始灰度图像数据进行图像二值化处理,得到眼球反射光带的二值化图像数据;
对眼球反射光带二值化图像进行图像膨胀处理,得到眼球反射光带的膨胀图像数据;
对眼球反射光带膨胀图像数据进行最佳二值化阈值处理,得到眼球反射光带最佳二值化阈值图像;
对眼球反射光带最佳二值化阈值图像进行直线拟合处理,若不存在满足条件的最长线段,则丢弃该帧图像,若存在满足条件的最长线段,则可计算出该最长线段与水平线的夹角即眼球反射光带的角度值;
步骤五,对步骤三处理得到的带状投射光带的最小外接矩形的顶点坐标进行处理,得到带状投射光带的角度值;
步骤六,对步骤四得到的眼球反射光带的角度值和步骤五得到的带状投射光带的角度值进行比较,若眼球反射光带的角度值和带状投射光带的角度值的差值大于预设阈值,则作为散光处理;
步骤七,对经过步骤二处理得到的眼球重心序列进行运动位置识别处理,若判断为不动,作为正视处理,否则,得出眼球重心序列的运动方向,包括以下内容:
对由连续多帧原始灰度图像数据经过步骤二处理后得到的眼球反射光带的重心位置序列进行运动位置识别处理,若任意眼球反射光带的重心位置与眼球反射光带重心位置序列的平均值之间的差值的绝对值小于预设阈值,则可判别为不动,作为正视处理;否则,可得出连续多帧图像中眼球反射光带的运动方向,即眼球重心序列的运动方向;
步骤八,对经过步骤三处理得到的光带重心序列进行运动位置识别处理,若判断为不动,作为错误识别处理,否则,得出光带重心序列的运动方向,包括以下内容:
对由连续多帧原始灰度图像数据经过步骤三处理后得到的带状投射光带的重心位置序列进行运动位置识别处理,若任意带状投射光带的重心位置与带状投射光带重心位置序列的平均值之间的差值的绝对值小于预设阈值,则可判别识别错误;否则,可得出连续多帧图像中带状投射光带的运动方向,即光带重心序列的运动方向;
步骤九,对步骤七得到的眼球重心序列的运动方向和步骤八得到的光带重心序列的运动方向进行比较,两个运动方向一致则可判别为顺动,作为远视处理,两个运动方向不一致则判断为逆动,作为近视处理。
本发明的贡献在于,它提出了一种新的用于诊断人眼屈光不正的数字化影像识别技术,这是一种新的适用于临床与家用人眼屈光不正的诊断技术,该技术基于检影验光原理,采用影像识别技术辅助检查者(特别针对非专业人士)判断屈光不正诊断,可根据影像信息自动获得诊断信息,使检查者更能直观、简易、准确地诊断人眼屈光不正,特别是针对老人、儿童、残障等沟通有障碍的患者,该技术在国内外属于首创,适用于家庭和临床使用。与现有屈光不正诊断方法相比,本发明具有如下的显著特点:
一、提出了一种新的数字化影像识别方法代替人工进行诊断,可以对人眼屈光不正进行有效的诊断;
二、本发明实现人眼屈光不正诊断的方法比较简便,易于实现;
三、本发明具有非常显著的经济效益和社会效益,对于家庭,该技术能方便家庭成员使用,随时观察家庭成员(特别是儿童和青少年)的屈光不正,如有问题可及时就诊,给予矫治,避免屈光性弱视的发生;对于临床工作,该技术能提高眼科医师、验光师以及全科医师检影验光的工作效率和准确率。
具体实施方式
以下结合附图对本发明进行详细说明。
如图1所示,本发明提供的一种屈光不正的数字化影像识别方法,实现步骤如下:
步骤一,将带状光光源投射到人眼上,驱动带状光光源沿水平方向运动,采用CCD图像采集装置对人眼拍照,连续获取多帧原始灰度图像数据;
步骤二,对单帧原始灰度图像数据进行眼球反射光带重心识别处理,得到眼球反射光带的重心位置Peye_ctr(x,y),并放入眼球重心序列;
步骤三,对单帧原始灰度图像数据进行带状投射光带重心和最小外接矩形识别处理,得到带状投射光带最小外接矩形的顶点坐标Rectlight(P0(x,y),P1(x,y),P2(x,y),P3(x,y))和带状投射光带的重心位置Plight_ctr(x,y),并将带状投射光带的重心位置放入光带重心序列;
步骤四,对单帧原始灰度图像数据进行眼球反射光带角度识别处理,得到眼球反射光带的角度值∮eye;
步骤五,对步骤三处理得到的带状投射光带的最小外接矩形的顶点坐标Rectlight(P0(x,y),P1(x,y),P2(x,y),P3(x,y))进行处理,得到带状投射光带的角度值∮light;
步骤六,对步骤四得到的眼球反射光带的角度值∮eye和步骤五得到的带状投射光带的角度值∮light进行比较,若眼球反射光带的角度值∮light和带状投射光带的角度值∮eye的差值大于预设阈值,则作为散光处理;
步骤七,对经过步骤二处理得到的眼球重心序列进行运动位置识别处理,若判断为不动,作为正视处理,否则,得出眼球重心序列的运动方向,包括以下内容:
对由连续n帧(n>1)原始灰度图像数据经过步骤二处理后得到的眼球反射光带的重心位置序列Peye_ctr(xi,yi)(其中i=1…n)进行运动位置识别处理,若任意眼球反射光带的重心位置Peye_ctr(xi,yi)与眼球反射光带重心位置序列的平均值Peye_ctr0=∑Peye_ctr(xi,yi)/n(其中i=1…n)之间的差值的绝对值Diffeye(i)=|Peye_ctr(xi,yi)-Peye_ctr0|小于预设阈值,则可判别为不动,作为正视处理;否则,可得出连续n帧眼球反射光带的运动方向(向左或向右),即眼球重心序列的运动方向(向左或向右);
步骤八,对经过步骤三处理得到的光带重心序列进行运动位置识别处理,若判断为不动,作为错误识别处理,否则,得出光带重心序列的运动方向,包括以下内容:
对由连续n帧(n>1)原始灰度图像数据经过步骤三处理后得到的带状投射光带的重心位置序列Plight_ctr(xi,yi)(其中i=1…n)进行运动位置识别处理,若任意带状投射光带的重心位置Plight_ctr(xi,yi)与带状投射光带重心位置序列的平均值Plight_ctr0=∑Plight_ctr(xi,yi)/n(其中i=1…n)之间的差值的绝对值Difflight(i)=|Plight_ctr(xi,yi)-Plight_ctr0|小于预设阈值,则可判别为识别错误;否则,可得出连续n帧(n>1)带状投射光带的运动方向(向左或向右),即光带重心序列的运动方向(向左或向右);
步骤九,对步骤七得到的眼球重心序列的运动方向和步骤八得到的光带重心序列的运动方向进行比较,两个运动方向一致则判别为顺动,作为远视处理,两个运动方向不一致则判别为逆动,作为近视处理。
如图2所示,是本发明提供的眼球反射光带重心识别处理流程,具体步骤如下:
对单帧灰度图像数据进行图像二值化处理,得到眼球反射光带的二值化图像数据,图像二值化就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果,对于给定阈值T,对图像按照以下方法变换为,变换公式如下:
;
对眼球反射光带二值化图像数据进行图像腐蚀处理,得到眼球反射光带二值腐蚀图像;
对眼球反射光带二值腐蚀图像进行图像平滑处理,得到眼球反射光带平滑图像;
对眼球反射光带平滑图像进行图像膨胀处理,得到眼球反射光带膨胀图像;
对眼球反射光带膨胀图像进行图像腐蚀处理,得到眼球反射光带腐蚀图像;
对眼球反射光带腐蚀图像进行最大连通域处理,若最大连通域不存在,则丢弃该帧图像,若最大连通域存在,则可计算出该最大连通域的最小外接矩形,从而计算出该最小外接矩形的重心位置即眼球反射光带的重心位置Peye_ctr(x,y)。
如图3所示,是本发明提供的眼球反射光带角度识别处理流程,具体步骤如下:
对单帧灰度图像数据进行图像二值化处理,得到眼球反射光带的二值化图像数据;
对眼球反射光带二值化图像进行图像膨胀处理,得到眼球反射光带的膨胀图像数据;
对眼球反射光带膨胀图像数据进行最佳二值化阈值处理,得到眼球反射光带最佳二值化阈值图像;
对眼球反射光带最佳二值化阈值图像进行直线拟合处理,若不存在满足条件的最长线段,则丢弃该帧图像,若存在满足条件的最长线段,则可计算出该最长线段与水平线的夹角即眼球反射光带的角度值∮eye。
如图4所示,是本发明提供的带状投射光带重心和角度识别处理流程,具体步骤如下:
对单帧灰度图像数据进行图像避位处理,得到带状投射光带避位处理图像数据,预先设置避位区域RectA(P0(x,y),P1(x,y),P2(x,y),P3(x,y)),将避位区域RectA中的值全部置为0,避位区域需将人眼眼球区域全部覆盖;
对带状投射光带避位处理图像数据进行图像二值化处理,得到带状投射光带的二值化图像数据;
对带状投射光带二值化图像数据进行图像腐蚀处理,得到带状投射光带二值腐蚀图像;
对带状投射光带二值腐蚀图像进行图像平滑处理,得到带状投射光带平滑图像;
对带状投射光带平滑图像进行图像膨胀处理,得到带状投射光带膨胀图像;
对带状投射光带膨胀图像进行图像腐蚀处理,得到带状投射光带腐蚀图像;
对带状投射光带腐蚀图像进行最大连通域处理,若最大连通域不存在,则丢弃该帧图像,若最大连通域存在,则可计算出该最大连通域的最小外接矩形,从而计算出该最小外接矩形的顶点坐标Rectlight(P0(x,y),P1(x,y),P2(x,y),P3(x,y))和该最小外接矩形的重心位置即带状投射光带的重心位置Plight_ctr(x,y);
根据带状投射光带的最小外接矩形的顶点坐标Rectlight(P0(x,y),P1(x,y),P2(x,y),P3(x,y))进行计算,得到带状投射光带的角度值∮light。
显然,本领域的技术人员可以对本发明中的实施例进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明实施例中的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明中的实施例也意图包含这些改动和变型在内。
综上所述,本发明提出的一种屈光不正的数字化影像识别方法能够代替人工进行诊断,可以对人眼屈光不正进行有效的诊断,易于实现,对于家庭,该技术能方便家庭成员使用,随时观察家庭成员(特别是儿童和青少年)的屈光不正,如有问题可及时就诊,给予矫治,避免屈光性弱视的发生;对于临床工作,该技术能提高眼科医师、验光师以及全科医师检影验光的工作效率和准确率,具有非常显著的社会效益和经济效益。