基于区域建议策略的视盘定位方法

2019-03-18 08:58汤一平王丽冉袁公萍
中国生物医学工程学报 2019年1期
关键词:视盘置信度定位

汤一平 王丽冉 何 霞 陈 朋 袁公萍

(浙江工业大学信息工程学院,杭州 310023)

引言

眼底视网膜检查在糖尿病视网膜病变、青光眼、老年性黄斑病变等眼科疾病的预防、诊断和治疗中得到了广泛应用。眼底图像包括视盘、黄斑、血管等主要结构,对这些结构进行特征分析是判断眼底疾病的基础。视盘作为眼底图像的重要结构之一,其大小和形态是判断各种眼科疾病的主要辅助参数,常被用作判定视网膜病变的指标。视盘也是检测其他视网膜结构的关键部分。视盘与黄斑区的距离一般是固定的,因此视盘中心位置信息可作为先验知识来辅助黄斑区的选择;视盘是眼底血管的起始点,其中的血管可作为血管跟踪算法的起始种子点;视盘也可辅助眼底图像坐标系的建立,用来确定其他视网膜异常的位置,如微动脉瘤、出血点、硬性渗出和玻璃膜疣等。因此,快速、准确地定位视盘区域尤为重要。

由于个体差异、视盘界限模糊、病变等干扰因素的影响,实现高效、准确、鲁棒的视盘定位有一定的难度。

目前的视盘定位算法大体上可分为两类,一类利用外观信息如亮度、对比度等,对视盘进行定位。文献[1]设计了一种线性描述算子来检测图像中的高亮圆形区,进而通过计算候选区域多个方向亮度的变化来定位视盘。文献[2]首先对眼底图像进行裁剪,排除边缘高亮环对视盘定位的干扰,再提取亮度最大区域来定位视盘。这类算法处理效率高,但对于病变的眼底图像视盘定位效果不佳。另一类是基于血管特征实现视盘的检测。文献[3]通过模糊集计算血管段的汇聚度,将汇聚度最大的点作为视盘坐标。文献[4]利用两条方向相反的抛物线来模拟血管在视盘左右两边的走向,根据这两条抛物线的公共顶点位于视盘区域中这一先验知识对视盘进行定位。这类算法虽然在一定程度上提高了定位准确率,但血管提取本身就非常复杂耗时,导致整体算法复杂度高,不能满足视盘定位的实时性。近年来,研究者们也提出将这两类方法相结合,实现视盘的定位。文献[5]同时提取视盘的亮度及其附近的血管特征,并利用投影法降低特征维度,从而提升算法处理速度;文献[6]先借助血管方向匹配滤波器,分析血管像素点的分布得到视盘的候选区域,再利用视盘的形状及灰度信息进一步确定视盘区域。

综上所述,现有的视盘定位算法需要人工提取视盘的亮度、血管等特征。特征选取的优劣在很大程度上决定了定位结果的好坏。人工进行特征提取的方法经验依赖性强、耗时耗力,也很难提取到具有完整表达力的视盘特征。目前的视盘定位取得了很大进展,但仍然存在一些关键问题,无法很好地兼顾视盘定位的准确性、快速性和鲁棒性。且现有文献多是直接对视盘进行定位,事先并未考虑视盘不可见这一情况,不利于实现视盘定位的自动化。

近几年深度学习在计算机视觉领域得到广泛应用,这得益于卷积神经网络的快速发展[7-8]。卷积神经网络是模仿人脑的感知系统进行构建的。人脑对信息的处理是层层传递,从具体到抽象的一个过程,低层神经元对输入信息进行处理和提取,得到数据的本质信息,进而形成大脑能够理解的高层抽象信息,这种阶层式的结构保留了物体的本质信息,并降低了人脑处理的数据量。模拟人脑的阶层式结构进行信息传递,使得深度卷积神经网络的一个重要优点就是从像素级原始数据到抽象的语义概念逐层提取信息,这些特征在大量的任务中被证实比传统的手工提取特征具有更强的表征能力,能够更完整地描述图像的整体结构。

基于深度学习的方法在一些医学图像的处理中也得到了成功的应用[9],但目前鲜有结合深度学习方法实现视盘定位的报道[10]。鉴于其对图像强大的特征表达及自主学习能力,本研究提出一种基于卷积神经网络的视盘定位方法,同时考虑视盘定位与视盘可见性两个问题。在视盘定位上,采用区域建议策略生成视盘的初始候选区域,并对候选区域进行位置精修使结果更准确;在视盘可见性上,将其转化为视盘、背景二分类问题,利用Softmax分类器对视盘定位结果的置信度进行量化,将置信度作为可见性判断的重要指标。最后,将网络的定位结果与置信度这两个方面相结合,通过设置置信度阈值确定视盘的可见性及其所在区域,将预测的视盘区域中心作为视盘坐标,从而对视盘进行定位。本文方法兼顾了视盘定位的准确性、快速性和鲁棒性,在多个公开数据库上均取得了较好的定位结果。

1 方法

近年来,区域卷积神经网络从R-CNN[11]、Fast R-CNN[12]发展到 Faster R-CNN[13],逐渐成为目标检测领域性能最好的方法。尤其是Faster R-CNN提出的RPN网络,采用区域建议策略替代了以往的选择性搜索策略,使得Faster R-CNN在精度和速度上都得到了明显的提升。鉴于RPN网络在目标预选区域生成上优越的表现力,本研究构建了一种基于RPN的两阶段视盘定位网络。通过两个阶段实现对视盘区域的准确定位,且能够以端到端的方式进行训练和测试,在提升视盘定位准确率的同时,也能够满足实时性的需求。

1.1 网络结构

所提出的视盘定位网络结构如图1所示,可分为3个子结构。结构1如图中阴影区域所示,主要由卷积层和池化层组成,输入为任意尺寸的眼底图像,对其进行特征提取得到特征图F;结构2为RPN网络,以特征图F作为输入,生成目标的初始候选区域;结构3由金字塔池化层 (ROI pooling)及全连接层组成,对候选区域进行位置精修。

图1 视盘定位网络结构Fig.1 Network structure diagram of optic disc localization

表1为网络的具体结构和参数,其中RPN网络部分与文献[13]一致,这里不再做详细描述。

表1本研究网络结构及参数设置

Tab.1Thestructureandparametersofproposednetwork

网络层输出数目核大小步长填充Conv 196723Pool 1(max)-321Conv 2256522Pool 2(max)-321Conv 3384311Conv 4384311RPN网络----ROI pooling----Fc2 048---Fc-score2---Fc-box8---

1.2 训练过程

本研究提出的视盘定位网络是一种有监督的学习模型,即在训练过程中视盘的所在位置是已知的。网络的训练具体包括前向传播和反向传播两个过程。前向传播时,从训练数据集中取出样本X,将X作为图1所示网络的输入,逐层进行特征提取,传输至输出层,计算出网络的实际输出。反向传播时,利用损失函数衡量实际输出与已知的真实值Y之间的误差,以极小化误差为目标反向传播调整网络参数,使得网络的预测值更接近于真实值,从而实现对视盘的准确定位。

1.2.1初始候选区域

如图1所示,阴影区域的网络首先将输入的眼底图像从像素域映射到特征域,得到多张特征图。通过卷积操作,自动提取所需特征;通过池化操作,利用图像局部相关性的原理,对图像的局部感受域进行最大值输出,在保留有用信息的基础上减少数据的处理量,实现降维的同时也增强了特征的平移不变性。接着,将这些特征图作为RPN网络的输入,生成目标的候选区域信息,包括目标类别、置信度、位置信息。RPN网络的具体操作如下:首先在特征图上进行多尺度卷积操作,以图中的每个点为中心点,生成3种尺度(128,256,512)和3种长宽比(1∶1,2∶1,1∶2)的候选区域(Anchor),并将这些候选区域映射在原图中,即特征图上的每个点在原图中都对应9个候选区域。

如图2所示,黑色框为给定的真实视盘区,红色框是生成的部分候选框,且置信度均为0.8以上。可以看出,此时视盘定位的效果并不十分理想,故需要对目标框进行微调,使得微调后的目标框与真实视盘区更接近,视盘定位更准确。

图2 初次定位结果Fig.2 First positioning results

1.2.2视盘区域微调

视盘区域占整个图像的比例较小,第一阶段生成的候选区域中包括了大量的背景区域框,若全部作为训练集送入第二阶段的网络,则可能会因样本不平衡而不利于对视盘区域的学习。故在此根据一定的准则对其进行筛选,组成新的训练样本集送入下一阶段的网络进行视盘区域位置的精修。

对于新训练集的建立,首先以候选区域与真实标注框(ground truth,GT)的重叠率来进行正负属性的判断。重叠率IoU的计算可表示为

(1)

由经验设置[13],将重叠率大于一定阈值(0.7)的候选区域视为正样本,小于一定阈值(0.3)的视为负样本,其余候选区域进行舍弃。这些正样本即为视盘的可能性区域。接下来对正负样本进行随机采样,采样数目设为128,采样比例设为1∶1。在后续的网络中正负样本一同参与训练,以增强视盘区与非视盘区的区分度。

(2)

其中,视盘置信度的损失函数可表示为

(3)

视盘位置回归损失采用smoothL1损失函数进行计算,即

(4)

根据式(2)计算预测值与给定真实值之间的误差,并利用反向传播算法将误差层层回传,利用随机梯度下降法对每层的参数进行调整和更新,可表示为

(5)

式中,w和w′分别为更新前后的参数值,E为损失函数层计算得到的误差值,η为学习率。

通过损失函数的约束,寻找一种映射f,使得式(6)、(7)成立,从而实现对视盘的正确定位,有

1.3 实验验证

1.3.1实验环境

实验环境如表2所示。

表2 实验环境Tab.2 Experimental environment

1.3.2实验数据

为验证所提出方法的有效性,在不同的眼底图像公开数据库上进行了实验,包括DRIVE[14]、MESSIDOR[15]和STARE[16]等3个数据库,每个数据库的图像分布情况如表3所示。

表3不同眼底图像数据库图像分布

Tab.3Differentfundusimagedatabasesimagedistribution

数据库正常图像病变图像总图像DRIVE33740MESSIDOR5466541 200STARE42358400STARE81315081STARE2569247256

DRIVE是Niemeijer团队在2004年根据荷兰糖尿病视网膜病变筛查工作建立的。从453名25~90岁的不同个体拍摄图像中随机选取了40幅,图像的分辨率为565像素×584像素。

MESSIDOR是法国国防研究部在2004年资助的TECHNO-VISION项目中建立的。它是目前最大的公开眼底图像数据库,其中的1 200幅眼底图像来自于3个不同的眼科机构,图像分辨率分别为1 440像素×960像素、2 240像素×1 488像素和2 304像素×1 536像素。该数据库包含正常和多种病变(如眼底出血、微动脉瘤、糖尿病视网膜病变)的眼底图像,是视盘定位的常用数据库。

STARE是Michael Goldbaum在1975年发起的Structured Analysis of the Retina项目中建立的数据库,共400幅图像,图像分辨率为700像素×605像素。其中视盘可见的眼底图像共337张,Hoover等从中选取了81幅图像[16],其分布情况如表2中第5行所示。在50幅病变图像中,其中14幅图像视盘处于边缘仅部分可见,5幅图像的视盘几乎完全被出血斑掩盖,或是亮斑比视盘更大更亮,甚至完全遮盖了视盘。因此,STARE数据库中的这81幅图像视盘定位难度较大,成为视盘定位算法的通用测试样本集,本研究简称STARE81。剩余的256张视盘可见图像分布情况如表2中第6行所示,简称STARE256。

训练集与测试集的分配如下:对于每个数据库,将库中眼底图像随机平均分为3组,每次选择两组数据构成训练集,剩余一组作为测试集。分别进行3次训练和测试,对所有结果进行统计,即可得到该数据库的视盘定位结果。

此外,考虑到STARE81数据库中病变眼底图像数量较多,且存在多种病灶、病变形态差异大(见图3),而目前深度学习方法的训练依赖于大量的样本。故在每次训练中,额外加入了STARE256数据库中的247张病变眼底图像来扩充训练数据。每个数据库的训练和测试集图像数目如表4所示。

图3 STARE81部分眼底图像。(a)大面积病灶;(b)视盘区病变;(c)存在亮斑;(d)视盘部分可见Fig.3 Partial fundus images of STARE81. (a)Large area lesions; (b)Optic neuropathy; (c) Bright speck; (d) Part visible

数据库训练集数据量测试集数据量DRIVE27/27/2613/13/14MESSIDOR800400STARE8130127

1.3.3评价指标

若算法定位的坐标位于视盘内,则视为定位正确,否则为定位失败。如图4所示,红色曲线表示视盘区域的真实边界,黑色标记表示检测到的视盘坐标位于实际边界内,定位正确;白色标记表示检测到的视盘坐标位于实际边界外,定位失败。

1.3.4定位的阶段性判断

通过对视盘定位的置信度进行统计,确定置信度阈值为0.8。在进行测试时,若图像中存在置信度超过阈值的候选区域,则认为该眼底图像中视盘可见;然后按照置信度对候选区域进行排序,选择拥有最大置信度的候选区域作为视盘区域,该区域的中心点即为视盘的定位坐标。如图5所示,3行图像分别代表了3种可能情况,5(a)~(c)这3列图像分别显示了预测到的候选区域及相应的置信度、对置信度进行判断及视盘区域的选择结果,以及对选择的视盘区域进行计算所得的视盘坐标。

图4 视盘定位评价标准示意Fig.4 Schematic diagram of OD positioning evaluation

图5 视盘定位的阶段性判断(每列上中下分别代表3种可能情况,即网络只定位出一个、多个置信度高于阈值的候选区域,以及定位的候选区域置信度低于阈值。图中红框表示视盘的候选区域,数字表示置信度,黑点表示定位的视盘坐标)。(a)网络预测的视盘区域;(b)视盘区域选定结果(由置信度确定);(c)视盘坐标Fig.5 Stage judgment of optic disc localization. (The top, middle and bottom of each column represent three possible situations respectively. That is, the network locates one and more than one candidate areas that is higher than the threshold. And the candidate area of the location is lower than the threshold. The red boxes represent the candidate areas of OD in the image, and the numbers indicate the confidence, and the black dots represent the coordinates of OD.) (a) The OD areas of the network prediction; (b) The selection results of OD areas (determined by confidences); (c) OD coordinates

2 结果

2.1 网络结构的确定

视盘位置的精修结果取决于网络中全连接层的结构,故本研究先对全连接层结构(层数和每层的输出特征维度)进行分析,从而确定最终的网络结构。STARE81数据的定位难度较大,随机选取其中一组数据进行训练及测试,实验结果如表5所示。

表5中,网络结构中包含该层用√表示,其后的数值表示该层的输出个数,×表示网络中不包含该层。第3行和第6行所示网络的正确率一致,但第3行的网络结构更简单,参数量更少,故确定网络只利用一个全连接层进行视盘位置的精修,其输出向量维度为2048维。

表5 网络结构对比Tab.5 Comparison of network structures

表6不同眼底图像数据库的定位结果

Tab.6Localizationresultsofdifferentfundusimagedatabases

数据库定位精度/%处理时间/(s/张)训练时间/hDRIVE1000.040.67MESSIDOR99.90.092.00STARE8198.80.050.83

2.2 定位与对比结果

本研究算法在上述3个数据库中进行实验,对不同数据库眼底图像视盘定位的结果进行定量统计,结果如表6所示。对于DRIVE数据库中的40幅图像,本研究算法均可以定位正确,正确率为100%;对于MESSIDOR数据库中的1 200幅图像,算法可正确定位到其中的1 199幅图像,正确率为99.9%;对于STARE81库中的81幅图像,算法能正确定位其中的80幅,正确率为98.8%。

表6中的第4列给出了每个数据库训练所需的时间,但对于深度学习方法而言,更重要的是测试时间。如表6第3列所示,本研究算法在3个数据库上测试时的处理速度都较快,且从表中可以发现,测试数据的尺寸与所耗时间成正比。

为验证训练集不同对同一张眼底图像的定位结果是否有明显影响,选取STARE81数据库,随机生成3组训练、测试集进行实验。图6选取了测试集中共有的3张图像进行展示, 每行表示1张图像在3组实验中的结果。从图6可以看出,3组实验中,模型定位的红框及其中心黑点几近重合,说明以随机的方式生成训练集对同一张眼底图像的视盘定位结果影响较小,验证了随机生成数据集的可行性及实验结果的可靠性。

为进一步验证本研究算法的有效性,在不同数据库上与其他方法进行了对比,结果如表7~9所示。其中Faster R-CNN方法的训练及测试数据与本研究相同。

从表7~9可以看出,在DRIVE和MESSIDOR数据库中,大多算法定位精度都较高。这是由于库中数据较为统一,病变图像较少,视盘区域较为明显,容易定位。STARE81数据库的定位精度较前两个数据库明显偏低,这是由于库中包含了多种严重病灶图像,信息多变,定位难度大。在3个数据库中,无论是在精度上还是速度上,本研究都取得了最优结果,结果表明,本研究算法对视盘形状、亮度、病灶等干扰信息都有较强的鲁棒性。

3 讨论

STARE81数据库中图像大多病变严重或干扰信息多,情况复杂。表9展示了不同方法在该数据库上的定位结果,文献[18,21,23-24]的处理速度在可接受范围内,但过于依赖外观特征,易受病变信息的干扰,因此算法定位准确率不高,未能取得鲁棒的定位结果。文献[6,25]除了考虑视盘自身特性外,也同时融入了血管特性,血管特征相对稳定,两种特征的融合使得这类算法取得了较好的定位结果。由于算法需要精确提取和分析血管特征,导致计算复杂度高,耗时较长,文献[25]处理一张图像用时120 s,文献[6]处理一张图像用时210 s,不能满足应用的实时性要求。

表7不同算法在DRIVE数据库上视盘定位结果

Tab.7ODlocalizationresultsofdifferentmethodsinDRIVEdatabases

方法定位精度/%处理时间/(s/张)基于置信度和多特征[17]97.50.04基于CNN[10]98.0-基于投影[18]100-Faster R-CNN1000.10本研究算法1000.04

表8不同算法在MESSIDOR数据库上视盘定位结果

Tab.8ODlocalizationresultsofdifferentmethodsinMESSIDORdatabases

方法定位精度/%处理时间(s/张)基于置信度和多特征[17]98.80.26基于方向滤波和水平集[19]99.14.70基于投票[20]98.30.25基于结构特征[21]99.8-基于视觉注意[22]950.21基于局部搜索[23]98.65.80Faster R-CNN99.80.15本算法99.90.09

表9不同算法在STARE81数据库上视盘定位结果

Tab.9ODlocalizationresultsofdifferentmethodsinSTARE81databases

方法定位精度/%处理时间(s/张)基于投影[18]91.413.20基于结构特征[21]93.83.00基于局部搜索[23]93.86.30基于定向对比度[24]90.1-基于血管几何模型[25]97.5120.00基于方向匹配滤波[6]98.821.00Faster R-CNN97.50.10本算法98.80.05

深度卷积神经网络利用多个网络层从输入的样本中自动学习所需的特征[9,13],并根据损失函数的约束进行参数的调整,经过层层映射,提取的特征逐层转化为具有强大表征能力的高层抽象特征。借助卷积神经网络提取特征,本研究算法能够取得较高的定位正确率。训练是端到端的,结合了特征提取和视盘定位两个过程,网络可以根据定位结果及时地进行参数更新,自动选取到最优特征实现视盘定位。而深度学习算法可以利用GPU进行加速计算,大大降低了算法所需时间,在算法效率上相较于传统方法具有明显优势,且本研究所提网络结构简单,参数量少,使得算法效率得到进一步提高。

除了视盘定位,本研究也同时考虑到视盘可见性这一问题,将Softmax分类器对视盘定位结果的置信度进行量化,利用置信度预先对视盘的可见性进行判断,这也更符合实际应用的要求。

图7展示了本研究算法在3个数据库上的部分定位结果。图7(a)~(c)分别从DRIVE、MESSIDOR和STARE81数据库中选取不同病灶、背景复杂、定位难度较大的眼底图像;而7(d)为本研究算法未能准确定位的两幅眼底图像,从上到下依次来自于MESSIDOR和STARE81数据库。定位失败的两幅图像较为特别,上图病变严重且数据库中缺乏类似病变图像,使得算法未检测到视盘区;下图视盘界限过于模糊,导致定位稍有偏移。

图7 定位结果(前3列每列上下两张图像均来自同一数据库,第4列两张图像分别为MESSIDOR和STARE81定位失败图像)。(a)DRIVE图像; (b)MESSIDOR图像; (c)STARE81图像; (d)定位失败的图像Fig.7 Localization results. (The top and bottom of the first three columns are images from the same database, and the two images of the fourth column are failure positioned images from MESSIDOR and STARE81.) (a)DRIVE images; (b)MESSIDOR images; (c)STARE81 images; (d)localization failed images

为进一步分析数据对本研究算法定位结果的影响,对STARE81数据库进行训练时,去掉了额外增加的247张病变眼底图像,结果如表10所示。可以明显看出,当训练数据量较少且数据复杂多变时,基于深度学习的本研究算法不能充分发挥效果,容易陷入过拟合,测试效果较差。因此,在实际应用中,训练数据越多、类型越多,算法的鲁棒性、准确性、泛化性能会越好。

表10 训练数据对定位结果的影响Tab.10 The Effect of training data on location results

4 结论

视盘是眼底图像的重要结构之一,视盘的定位在眼底图像分析中起着重要的作用。考虑到视盘可见性及视盘定位两个问题,本研究提出一种基于区域建议策略的视盘定位方法。一方面,对眼底图像进行初步特征提取,采用区域建议策略生成视盘的初始候选区域,随后利用全连接层的深层特征提取及损失函数的约束对候选区域进行微调进而实现位置精修;另一方面,将视盘可见性的判断转化为视盘置信度的计算,通过置信度阈值的过滤确定视盘的可见性,若视盘可见,则将置信度最大的候选区域中心作为该眼底图像中视盘的坐标,从而实现视盘的定位。

本研究算法依赖于大量的数据,训练集包括的数据类型越多,越有利于实现视盘的鲁棒定位。实验结果表明,在现有的公开数据库中,数据量基本能够满足算法的需要,能够实现视盘的快速、准确、鲁棒定位。优于传统的视盘定位方法,且预先对视盘的可见性进行判断更符合实际应用的要求,适合用于计算机辅助诊疗。

猜你喜欢
视盘置信度定位
置信度辅助特征增强的视差估计网络
定位的奥秘
一种基于定位置信度预测的二阶段目标检测方法
硼铝复合材料硼含量置信度临界安全分析研究
视盘水肿患者频域光学相干断层扫描测量结果分析
伴视盘出血的埋藏性视盘玻璃疣患者的临床特点和眼底影像特征陈秀丽
《导航定位与授时》征稿简则
Smartrail4.0定位和控制
银行业对外开放再定位
正负关联规则两级置信度阈值设置方法