APP下载

基于眼底图像层次特征的分类方法

2019-10-31余林芳邓伏虎秦少威秦志光

计算机应用 2019年9期

余林芳 邓伏虎 秦少威 秦志光

摘 要:针对眼底图像中视网膜血管结构的划分问题,提出一种自适应的广度优先搜索算法。首先,基于视网膜血管的结构提出层次特征的概念并进行特征提取;然后,对分割的视网膜血管进行分析及处理,提取得到多个无向图子图;最后,使用自适应的广度优先搜索算法对每个子图中的层次特征进行分类。视网膜血管结构的划分问题被转化为层次特征的分类问题,通过对视网膜血管中的层次特征进行分类,包含这些层次特征的视网膜血管段的层次结构就可以被确定,从而实现视网膜血管结构的划分。该算法运用于公开的眼底图像数据库时具有良好的性能。

关键词:眼底图像;层次特征;结构划分;血管分支;分类算法

中图分类号:TP181

文献标志码:A

Classification Method Based on Hierarchical Features of Fundus Images

YU Linfang, DENG Fuhu*, QIN Shaowei, QIN Zhiguang

College of Information and Software Engineering, University of Electronic Science and Technology of China, Chengdu Sichuan 610054, China

Abstract:

To solve the problem of retinal vascular structure division in fundus images, an adaptive breadth-first search algorithm was proposed. Firstly, based on the structure of retinal vessels, the concept of hierarchical features was proposed and feature extraction was carried out. Then, the segmented retinal vessels were analyzed and processed, and several undirected subgraphs were extracted. Finally, the adaptive breadth-first search algorithm was used to classify the hierarchical features in each subgraph. The division of retinal vascular structure was transformed into the classification of hierarchical features. By classifying the hierarchical features of retinal vessels, the hierarchical structures of retinal vascular segments containing these hierarchical features were able to be determined, thus realizing the division of retinal vascular structures. The algorithm has excellent performance when applied to public fundus image databases.

Key words:

fundus image; hierarchical feature; structure division; bifurcation; classification algorithm

0 引言

近年來,高血压、脑血管硬化等心脑血管疾病的死亡率稳步上升。这些疾病的临床表现主要是从人体微循环系统和微脉管系统的改变开始的。身体中唯一可以直接观察到的深层血管是视网膜血管,人体的某些疾病,如糖尿病、心脑血管疾病等,在一定程度上会引起患者的视网膜病变,而文献[1]中也指出,视网膜病变的严重程度与该病情的病变位置是密切相关的。通常情况下,病变位置越靠近视盘区域,其病变的严重程度往往越高,在后续的治疗及恢复方面也相对困难。视网膜血管的分布情况为这一类会在视网膜中出现病征的疾病的早期诊断提供了重要依据。在眼科的实际治疗和诊断中,医生经常收集多个眼底图像,并根据医学鉴定和分析的指示提出更具针对性的治疗。如果可以根据眼底图像中视网膜的病变情况,在发病的早期诊断出疾病,那将会大幅度降低这一类疾病给人体带来的危害。因此,如何在不进行人工操作的情况下,自动、准确地分析和处理眼底图像,并用有效的方法检测疾病的严重程度成为一个有意义的课题。

针对眼底图像处理和分析的研究,近年来主要集中在对视网膜血管的分割上。文献[2]提出了一种精确分割视网膜血管的新框架,在该框架中,为了获得更好的分割性能,使用一个全新的无限活动轮廓模型来分割每个超像素中的血管。文献[3]通过结合两个高级分类器:卷积神经网络和随机森林,提出了一种有监督的方法来解决视网膜血管的分割问题。文献[4]提出了一种监督分割技术,使用全局对比度归一化、零相位白化、几何变换增强以及伽马校正对样本进行预处理,并使用深度神经网络对40万个样本的数据进行训练,同时还考虑了该方法的几种变体,包括结构的预测。文献[5]提出了一种无监督的迭代血管分割算法,更精确地说,是一种新的终止迭代过程的停止准则,从而提高了血管分割精度。文献[6]将血管分割任务定义为多标签推理任务,利用卷积神经网络结构化预测的隐式优势来处理噪声背景下血管形态的极端变化,其基于卷积神经网络的模型运用于公共数据集时获得了强大的性能。除此之外,在视网膜血管分割的研究基础上,还进行了一些针对血管标志物的检测研究。文献[7]提出一种基于图的血管标志物的自动分类方法,该方法具体包括3个步骤:从中心线图像中生成血管图;修改所提取的血管图以减少误差;将血管标志物分类为分叉和交叉。文献[8]提出使用方向分数来检测分叉和交叉。文献[9-10]通过对视网膜血管分叉结构的检测,进一步实现了眼底图像的配准。

现有的针对眼底图像的研究大多集中在视网膜血管分割、标志物检测以及图像配准上,但对于视网膜血管结构的划分还处在萌芽阶段。人体的某些疾病,如糖尿病等,在一定程度上会引起患者视网膜的病变,而视网膜病变的严重程度与其病变位置是密切相关的。通常情况下,病变位置越靠近视盘区域,其病变的严重程度往往越高。如果可以自动化实现视网膜血管结构的划分,那么视网膜病变的严重程度将可以通过病变部位在视网膜血管中所处的位置来量化。这在计算机辅助诊断中具有重大意义,因此,如何自动化实现眼底图像中视网膜血管结构的划分成为一个有意义的话题。

综合以上考虑,本文定义并提取了眼底图像中视网膜血管的层次特征,即部分血管分叉点,同时提出了一种自适应的广度优先搜索算法对层次特征进行分类,将视网膜血管结构的划分问题转化成血管中层次特征的分类问题。通过对血管中的层次特征进行分类,从而确定包含这些层次特征的视网膜血管的层次结构,实现对视网膜血管结构的划分。当本文所提出的算法运用于眼底图像公开数据集时,具有良好的分类性能。

1 问题定义和数据说明

本文旨在通过对血管中的层次特征进行分类,从而确定包含这些层次特征的视网膜血管段的层次结构,实现对视网膜血管结构的划分。本文着重关注离视盘区域较近的那些层次特征,因为视网膜病变部位离视盘越近,其病变的严重程度往往越高。层次特征的等级被定义为5个级别,分别是:高级、中高级、中级、中低级和低级,具体定义如表1所示。其中根节点指的是视网膜血管与视盘边界的交点。

在针对眼底图像的研究领域中,用于血管提取的数字视网膜图像(Digital Retinal Images for Vessel Extraction, DRIVE)数据库和视网膜结构分析(STructured Analysis of the REtina, STARE)图像数据库得到了广泛的运用。

DRIVE数据库是Niemeijer 团队在2004年根据荷兰糖尿病视网膜病变筛查工作建立的彩色眼底图库[11-12],由40张视网膜眼底图像构成,其中7张是病理图像,其余33张是正常的图像,图像分辨率为768×584。该数据库中的图像被分为训练集和测试集两组,每组有20张图像,且每幅图像对应两个专家的手工分割结果。本文使用第一个专家的分割结果作为标准参考图像,图1展示了训练图像与其手工分割的示例。

STARE数据库[13]是由加州大学圣地亚哥分校的医学博士Goldbaum及其团队建立的。本文采用了其中20张眼底图像进行实验,包括10张病理图像和10张健康图像。图像分辨率为605×700。该数据库提供了两位专家的手工分割结果,本文在进行性能评估时使用第一位专家的结果作为参考。图2展示了一张病理图像与其手工分割的示例。

由于现有的公开数据库中没有基于血管标志物及层次特征类别的标签图像,在实验前本研究针对这一部分进行了手工标注。在眼底图像中,视网膜血管汇聚于视盘中心,因此,视盘区域内的血管结构复杂多变,从中获取的信息可能会不准确。为了解决这一问题,本文引入松弛数字弧这一概念来去除视盘区域的信息[14]。如图3所示,血管标志物被分为分叉点和交叉点,分别被标注为实心圆和空心圆,其中,不同形状的标记代表不同层次特征的类别,从高级到低级分别对应:十字形、V形、三角形、四角星、五角星。

2 方法说明

2.1 视网膜血管的分割

现有的针对视网膜血管的分割技术已经相对成熟,考虑到实际运用中的时间成本以及硬件条件,本文将回归传统的机器学习来进行分割实验,并基于眼底图像的融合相位特征[15]进行视网膜血管的分割。

在分割实验中,本文方法首先提取出眼底图像的绿色分量图并对其进行滤波处理;接着,提取预处理后图像中像素点的四维特征向量,具体包括相位特征、加伯Gabor变换(Gabor transform)、黑塞Hessian矩阵(Hessian Matrix)以及移位滤波器响应组合滤波(Bar-Combination Of Shifted FIlter REsponses, B-COSFIRE);然后,采用支持向量机(Support Vector Machine,SVM)进行像素点的分类;最后,采用连通域度量的方法去除掉孤立噪声点。图4展示了DRIVE数据库中其中一张眼底图像的视网膜血管分割结果,从左到右依次为原图、手工分割图像以及采用本文方法获得的视网膜血管分割图像。从图中不难看出,本文实验中所采用的血管分割方法,较大程度上保留了血管结构的完整性,在血管末端的分割上稍显不足,但这并不会严重影响后续实验的实验结果,因为本研究对于视网膜血管层次结构的划分仅限于离视盘区域较近的那些血管而并非末端血管。

2.2 分割血管的处理及分析

本研究采用分割后的血管图像进行后续实验。分割后的血管需要进行处理并转化成多个血管树,且这些血管树的根节点均匀分布在视盘周围。具体步骤如下:

1)生成初始无向图。生成初始无向图之前,需要先提取视网膜血管的中心线,文献[16]中提出的一种改进的快速并行细化算法被用作血管中心线的提取。图5(a)为使用该算法获得的视网膜血管的中心线,该算法通过去除血管边界像素以实现连续细化的效果,从而获得单像素宽的血管图。在该单像素血管图中,拥有超过2个邻接像素的血管点被定义为无向图的节点;仅有一个邻接像素的血管点被定义为无向图的端点;这些节点和端点之间的血管段被定义为链接,用于邻接关系的表示。由此,单像素的血管图被转化成初始无向图,如图5(b)所示。

2)修正初始无向图。血管中心线的提取在血管分叉和交叉处容易出错,导致初始的无向图在节点和连接处会产生一些逻辑错误。文献[17]描述了典型的两种错误:①节点分裂,在交叉点位置一个节点分裂成两个(图6(b));②错误链接,两个紧挨的节点之间存在虚假链接(图6(e))。因此,本研究需要对图的结构进行修正以增强图的结构。如文献[17]所介绍的方法,本文方法定义两个阈值Tns和Tfl,当两個节点(ni和nj)之间的距离满足条件dij

Tns=1sin(α)(d21+d22+2d1d2cos(α))12(1)

d1=max(Wli1,Wlj2)(2)

d2=max(Wli2,Wlj1)(3)

α=min(∠li1li2,∠lj1lj2)(4)

Tfl=max(Wlipsin(∠lipli3))+max(Wljqsin(∠ljqlj3))(5)

3)分割修正后的无向图。修正后的无向图结构复杂,具有较多的环形结构,不利于后续对血管层次结构的划分。因此,本研究在眼科专家的指导下,按照图5(c)中虚线所示进行分割,将修正后的无向图分割成多个子图,其中不同线条的子图对应一棵血管树,如图5(d)所示。

本文中使用到的图形符号表示如表2所示,图中节点与节点之间的连线被看作一条链接,节点的度就是链接的数量,也就是该节点的邻居节点的数量。同一节点的不同链接之间小于180°的角被定义为两条链接之间的夹角。每条链接的血管口径值是相应血管段的平均口径。

2.3 血管结构层次划分

在本文中,眼部疾病严重程度的判定问题被转化成血管中层次特征的分类问题。如第1章中提到的,层次特征,即分叉点的等级被分为5类:高级、中高级、中级、中低级和低级。为解决层次特征的分类问题,本文提出了一种自适应的广度优先搜索(Adaptive Breadth-First Search, ABFS)算法。

对于每一个单独子图gi∈G,本文算法采用广度优先搜索对其所有节点进行遍历。值得注意的是,遍历的起始点不是随机的。本文算法将分布在视盘周围,离视盘最近的那些端点作为每个子图遍历的起始点,由顶点集合V={v1,v2,…}表示。这样在很大程度上保证了遍历的方向是沿血管形態学方向进行的。变量visited用于标记节点的访问情况,当节点已被访问时,它将被标记为访问状态visited=1,并插入到辅助队列Q中。随后,队列Q中的节点将会被依次删除并访问它们的邻居节点wi∈W,变量Count用于记录邻居节点的个数。对于将被访问的邻居节点,有两种可能的情况:1)邻居节点是分叉点,这些节点在被访问和标记之后,将被插入到队列Q中并继续搜索它们的邻居节点;2)邻居节点是交叉点,这些节点在血管网络的层次划分问题中属于干扰节点,因此本文算法跳过这些交叉点并寻找下一个邻居节点进行访问。最后,所有被访问过的节点按访问顺序被存储在数组Access_Sequence中, 数组Hierarchical_Label用于存储相关的层次特征分类标签。算法1描述了血管分叉点层次特征分类的具体过程。

算法1 自适应的广度优先搜索算法(Adaptive Breadth-First Search Algorithm)。

输入:Separated Subgraph;

输出:Classification of Hierarchical Features。

程序前

Initialization:visited[n] =0, Acces_Sequence [n]=0,

Hierarchical_Label [n] =0,

for i=1 to M do{

if !visited[vi] then{

visit(vi); visited[vi]=1;

Enqueue(Q, vi);}

while !isEmpty(Q) do{

Count=0;

Dequeue(Q, head);

for w=First_Neighbor(g, head);

w≥0; w=Next_Neighbor(g, head) do{

if !visited[w] then{

if w=bifurcation then{

visit(w); visited[w]=1;

Enqueue(Q, w); Acces_Sequence ← w;}

Else{

w=Next_Neighbor(g, w);

visit(w); visited[w]=1;

Enqueue(Q,w); Acces_Sequence ← w;}

}

++Count

}

Hierarchical_Label ← Count;

}

}

程序后

3 实验结果

3.1 评价指标

本文中采用准确率(Acc)、精确率(Pre)、灵敏度(Sens)

和特异性(Spec)作为评价指标来评估本文算法的性能。公式定义如下:

Pre=TPTP+FP(6)

Sens=TPTP+FN(7)

Spec=TNTN+FP(8)

Acc=TP+TNTP+TN+FP+FN(9)

其中:TP、TN、FP、FN分别表示真阳性率、真阴性率、假阳性率和假阴性率。

3.2 实验

本研究对DRIVE和STARE两个公开数据库中眼底血管的交叉点、分叉点以及分叉点的层次特征进行了统计,表3展示了两个数据库中各自5张眼底图像的统计结果,其中第2到6行为DRIVE数据库的统计结果,第7到11行为STARE数据库的统计结果。从表3中可以看出,DRIVE数据库中眼底图像的分叉及交叉点明显多于STARE数据库,此外,5类层次特征的总数约占所有分叉点总数的1/2,在眼底图像中,其分布也覆盖了眼底图像的绝大部分面积。由此可见,这5类层次特征的分类在对视网膜血管的结构划分问题上具有重要意义。

在血管分叉點的层次特征分类实验中,分离后的每个子图被看作一棵树,从起始点开始对节点进行有条件的遍历。表4 是使用本文提出的自适应广度优先搜索算法所获得的层次特征的分类结果。第2到6行和第8到12行分别是两个数据库中不同层次特征的分类结果,

不难看出,本文所提出的算法在对高级和中高级层次特征进行分类时获得了较好的性能。越远离视盘区域,层次特征的分类性能逐渐下降,这是由于较低级层次特征的分类结果会受到较高级特征的影响,较高级层次特征的分类错误会延续到较低层次特征。从两个数据库的分类结果对比来看,DRIVE数据库的分类结果相对稳定,经分析,这可能是由于STARE数据库中眼底图像的分叉点较少所引起的。第7行和第13行两个数据库的最后一行分别是两个数据库五类层次特征的整体分类结果,具有良好的分类性能,其准确率在DRIVE和STARE两个数据库中分别达到了95.27%和93.42%。由于在已知的针对眼底图像的研究中,暂时还没有关于视网膜血管结构划分的研究成果,因此,本文中的实验结果无法与其他研究成果进行比较。

4 结语

本文提出了一种基于眼底图像中视网膜血管层次特征的分类方法,将视网膜血管结构的划分问题转化为层次特征的分类问题,并提出了一种自适应的广度优先搜索算法。通过对层次特征进行分类,包含这些层次特征的视网膜血管段的层次结构就可以被确定,从而实现视网膜血管结构的划分。该分类方法主要包含4个步骤:1) 从分割的血管中提取中心线,并生成初始无向图; 2) 修正初始无向图中的逻辑错误,增强图的结构;3) 将修正后的无向图进一步分割,得到多个拥有树结构的子图;4)使用自适应的广度优先搜索算法对子图中的层次特征(分叉点)进行等级分类。本文基于手工标注的层次特征的分类数据进行实验,其结果显示本文的方法对层次特征的分类预测能够取得良好的分类效果。具体来说,在DRIVE和STARE两个数据库中可以分别达到95.27%和93.42%。当然,未来可对已提出的算法进行改进,设置更多的遍历条件,如通过对血管方向、角度的选择等进行更多实验以求达到更好的实验效果。

参考文献

[1]HUGHES A D, FALASCHETTI E, WITT N, et al. Association of retinopathy and retinal microvascular abnormalities with stroke and cerebrovascular disease [J]. Stroke, 2016, 47(11): 2862-2864.

[2]ZHAO Y, ZHAO J, YANG J, et al. Saliency driven vasculature segmentation with infinite perimeter active contour model [J]. Neurocomputing, 2017, 259: 201-209.

[3]WANG S, YIN Y, CAO G, et al. Hierarchical retinal blood vessel segmentation based on feature and ensemble learning [J]. Neurocomputing, 2015, 149(PB): 708-717.

[4]LISKOWSKI P, KRAWIEC K. Segmenting retinal blood vessels with deep neural networks [J]. IEEE Transactions on Medical Imaging, 2016, 35(11): 2369-2380.

[5]ROYCHOWDHURY S, KOOZEKANANI D D, PARHI K K. Iterative vessel segmentation of fundus images [J]. IEEE Transactions on Biomedical Engineering, 2015, 62(7):1738-1749.

[6]DASGUPTA A, SINGH S. A fully convolutional neural network based structured prediction approach towards the retinal vessel segmentation [C]// Proceedings of  the IEEE 14th International Symposium on Biomedical Imaging. Piscataway, NJ: IEEE, 2017: 248-251.

[7]GHANAEI Z, POURREZA H, BANAEE T. Automatic graph-based method for classification of retinal vascular bifurcations and crossovers [C]// Proceedings of  the 2016 International Conference on Computer and Knowledge Engineering. Piscataway, NJ: IEEE, 2016: 229-234.

[8]ABBASI-SURESHJANI S, SMIT-OCKELOEN I, BEKKERS E, et al. Automatic detection of vascular bifurcations and crossings in retinal images using orientation scores [C]// Proceedings of the 2016 IEEE 13th International Symposium on Biomedical Imaging. Piscataway, NJ: IEEE, 2016: 189-192.

[9]CHEN L, HUANG X, TIAN J. Retinal image registration using topological vascular tree segmentation and bifurcation structures [J]. Biomedical Signal Processing and Control, 2015, 16: 22-31.

[10]PATANKAR S S, KULKARNI J V. Orthogonal moments for determining correspondence between vessel bifurcations for retinal image registration [J]. Computer Methods and Programs in Biomedicine, 2015, 119(3): 121-141.

[11]STAAL J, M.D. ABRAMOFF, NIEMEIJER M, et al. Ridge-based vessel segmentation in color images of the retina [J]. IEEE Transactions on Medical Imaging, 2004, 23(4): 501-509.

[12]NIEMEIJER M, STAAL J, van GINNEKEN B,et al. Comparative study of retinal vessel segmentation methods on a new publicly available database [J]. Proceedings of SPIE - The International Society for Optical Engineering, 2004, 5370: 648-656.

[13]HOOVER A D, KOUZNETSOVA V, GOLDBAUM M. Locating blood vessels in retinal images by piecewise threshold probing of a matched filter response [J]. IEEE Transactions on Medical Imaging, 2000, 19(3): 203-210.

[14]DUTTA T, DUTTA N, BANDYOPADHYAY O. Retinal blood vessel segmentation and bifurcation point detection [C]// Proceedings of  the 2015 International Workshop on Combinatorial Image Analysis, LNCS 9448. Berlin: Springer, 2015: 261-275.

[15]李媛媛,蔡軼珩,高旭蓉.基于融合相位特征的视网膜血管分割算法[J].计算机应用,2018,38(7):2083-2088.(LI Y Y, CAI Y H, GAO X R. Retinal vessel segmentation algorithm based on hybrid phase feature [J]. Journal of Computer Applications, 2018, 38(7): 2083-2088.)

[16]MU S, DU H, SU P, et al. A new improved fast parallel thinning algorithm [J]. Microelectronics and Computer, 2013, 30(1):53-55.

[17]DASHTBOZORG B, MENDONCA A M, CAMPILHO A. An automatic graph-based approach for artery/vein classification in retinal images [J]. IEEE Transactions on Image Processing, 2014, 23(3):1073-1083.

This work is partially supported by the National Natural Science Foundation of China (61672135), the Sichuan Science and Technology Support Plan Program (2018GZ0236, 2017FZ0004).

YU Linfang, born in 1992, Ph.D. candidate. Her research interests include big data processing, medical image processing, data mining.

DENG Fuhu, born in 1984, Ph.D., lecturer. His research interests include information security, big data, network resource management.

QIN Shaowei, born in 1997. His research interests include machine learning, big data analysis.

QIN Zhiguang, born in 1956, Ph.D., professor. His research interests include medical image processing, computer network, information security, cryptography, information management, intelligent traffic, electronic commerce, distribution and middleware.