人眼主要由角膜、虹膜、瞳孔、玻璃体和视网膜等组织构成,这些组织结构中的任何一个出现异常都可能导致视力缺陷甚至失明。因此,对视网膜结构及其血管的研究意义重大[1]。许多眼底疾病发生病变的部位在血管,而视网膜具有丰富的血管组织特征。视网膜是唯一不需伤害人体可直接观察较深层次微血管结构的组织[2]。视网膜的主要解剖结构有黄斑、血管和视盘。多种眼底疾病会改变血管树的形态,出现微动脉瘤、血管弯曲等病变。对视网膜血管的提取以及形态学特性的描述,如直径、形状、变形和分叉可以预防和治疗眼底疾病,以及高血压等其他心血管疾病[3-4]。例如,视网膜血管的宽度变化可以评估高血压疾病,血管分叉点和迂回性可以辅助识别心血管疾病和糖尿病型视网膜病变[5]。在临床上,视网膜图像主要通过眼底照相机或扫描激光眼底镜(SLO)获得[6]。从大量的眼底图像中,手动分割血管结构不仅过程繁琐、耗时,而且容易出错,尤其是对大规模人群筛查时。为了减少医生的工作量,提高分割的速度以及降低主观因素对结果的影响,利用深度学习的方法实现视网膜血管的精准分割。
视网膜血管分割任务使用的方法主要分为两种类型:监督学习和无监督学习。监督学习将医生手工分割的图片输入网络模型,使其可以通过学习标签图自动提取血管特征实现血管分割。这种方法需要海量的人工标注数据,训练时间比其他方法要长,但是有很好的泛化效果,得到的网络模型可以应用于其他同类型的图像。无监督学习是基于阈值化[7]、滤波[8]、数学形态运算或血管跟踪技术[9]对现有数据进行分析和处理。但是当分割图像存在过多的干扰信息时,传统的无监督学习分割图像的效果不佳,同时传统的神经网络模型有局限性。
近年来,深度学习算法在图像分割中取得优越的研究结果。2015年,U-net模型[18]在MICCAI会议上被提出后,U-net模型凭借自身优秀的分割效果以及适用于数据量不大的数据库,在医学图像中得到广泛应用。许多研究人员也提出了各种基于U-net的改进方法,不断提升视网膜血管分割的效果和性能。Alom等[19]提出U-net和Residual U-net的链式级联结构,先通过U-net网络提取较为粗略模糊的血管特征,然后将其特征的解码信息作为Residual U-net的编码信息进行二次编码,寻找图片更加精细的特征,提高对细小血管的分割效果。Guo等[10]在SAU-net网络中引入了一种注意力机制,将注意力特征图和编码阶段底层特征图相乘,让模型更加关注血管特征的重点区域和位置,改善最终的分割性能。Xiao等[11]提出了残余连接的卷积网络和一个新的加权注意力模型,利用眼部轮廓生成加权注意力,让模型专注于更感兴趣的区域。Soomro等[12]提出了一个用于视网膜血管分割的深度卷积神经网络(CNN),显著提高了分割微小血管的精细度。Shelhamer等[13]提出一个全卷积网络(FCN)来实现视网膜血管分割,该网络模型可以接受任意大小的输入并产生相应大小的输出,并具有高效的推理和学习能力,改善了图片分割效果并提高了速度。Badrinarayanan等[14]提出了SegNet网络,使用最大集合指数代替全值从编码器传输到解码器,提高了图像分割的速度。上述神经网络模型在视网膜血管分割中都可以获得比较好的结果。但随着模型训练的加深,多次池化操作和跳过连接层,会出现图像细节丢失、梯度爆炸等问题,因此,这些神经网络模型在精细血管检测分割上有一定的不足。
本文针对视网膜图像血管细小,细节特征丢失、梯度下降、模型退化等导致分割效果差的问题,提出了一种改进的U-net网络模型实现视网膜血管分割。由于DRIVE数据集图片数量有限,通过使用剪裁、反转和旋转等几何变换,扩充数据集,增强模型的鲁棒性。原始的彩色图片对比度有限,亮度不均匀等问题都会影响模型提取特征的精度,通过提取绿色通道并使用对比度受限的自适应直方图均衡化和伽马变换增强对比度,去除部分噪声点。在U-net网络中引入残差模块和注意力机制,有效地解决了梯度退化问题并获取到更多重要的特征信息。
1 算法原理 1.1 残差模块在实现视网膜血管分割的任务中,随着神经网络的不断加深,趋于饱和后,模型出现性能下降问题。简单的增加网络层数不一定会提高网络的精确度。为了解决这一问题,He等[16]提出引入残差模块训练神经网络,可以有效地避免梯度退化问题。
浅层网络的输入–输出可以用一个非线性变化函数表征,即恒等映射函数H(x)=x,网络深度达到一定程度后,梯度很难训练。因此,Resnet提出将网络设计为H(x)=F(x)+x,经过转化得到残差函数F(x)=H(x)−x,当残差为0,就得到一个恒等映射。F(x)通常包括使用卷积和激活函数对输入数据处理。图1(a)是U-net网络中的传统卷积层,(b)是引入残差模块的卷积层。残差模块可以将卷积前的浅层特征与卷积后的特征相结合,得到更全面的特征信息。在残差模块中特征矩阵相加时需注意数据的维度是否一致,若维度相同可以直接相加;若维度不同,需要对特征进行zero padding增加维度或使用1×1的卷积调整后再相加。
|
图 1 残差模块示意图 Figure 1 Schematic diagram of the residual module |
U-net网络通过连续卷积扩大了感受野,但重复的卷积层会增加网络的参数,降低了计算效率。在进行视网膜血管分割时,毛细血管与粗血管的尺寸存在差异,可能会被网络当成噪声处理。通过插入非局部注意力机制模块[17],可以增强网络对毛细血管的识别率,并且代替部分卷积层,提高网络计算速度。非局部注意力机制原理图如图2所示,图中X为输入图像矩阵,Z代表最终输出结果,θ、φ和g分别代表1×1×1的卷积,
|
图 2 非局部注意力机制的工作原理图 Figure 2 Schematic diagram of the nonlocal attention mechanism |
| $ {y}_{i}=\frac{1}{C\left(x\right)}\sum _{\forall j}f({x}_{i},{x}_{j})g\left({x}_{j}\right) $ | (1) |
式中:i为计算响应的输出空间位置;j为响应所有可能出现的位置;x为输入图像;y为输出图像。函数是输入与输出之间的相关性,一元函数g(x)计算输入信号在处的特征值进行的信息交换,C(x)为归一化函数,保证变换前后信息的整体不变性。
为了将非局部注意力机制嵌入网络中,将其封装成模块,具体的表达式为
| $ {z}_{i}={W}_{z}{y}_{i}+{x}_{i} $ | (2) |
式中:
本文改进的模型是以U-net网络为基础,使用残差连接和非局部注意力机制提高了特征提取性能,减少模型的参数以提高计算效率。网络包括下采样和上采样以及连接模块。下采样部分使用残差模块代替原来的卷积模块,残差模块内部包括两个连续的3×3的卷积块和一个恒等变换组成,每个卷积包含Batch Normalization层,ReLU层和卷积层,恒等映射连接输入和输出部分。每进行一次下采样,特征图片的通道数量扩大一倍,特征尺寸缩小一半,卷积核的数量分别为32、64和128,最终得到64×64的特征图。网络的右半部分进行上采样,通过2×2的转置卷积进行上采样,并将特征图片的通道数减半后与上采样的特征图相连接,再使用残差模块提取特征。在编码器和解码器之间插入注意力模块NoL - Block,并在最后一层做1×1卷积来改变通道维度。sigmoid激活函数产生与输入尺寸一样大小的血管分割图,如图3所示。
|
图 3 改进的残差U-net网络 Figure 3 Improved residual U-net |
实验以Windows10为操作系统,1.61 GHz Intel(R)Core(TM)i7-10710U为中央处理器,NVIDIA GeForce MX350为显卡,在32 GB内存的计算机平台上运行。算法的操作环境为pytorch1.11.0,CUDA11.3。本文网络模型利用GPU加速,在保证分割精度的同时也提升了速度。
在训练过程中,通过调试参数以及以往的训练经验,选择使用交叉熵作为损失函数衡量模型的精度,并使用Adam优化器优化网络模型,初始学习率为0.0001,迭代次数为200,每次输入样本数量为4,并且使用Xavier技术初始化权重。
2.2 数据集实验使用了DRIVE数据集验证本文提出的方法。DRIVE[15]包含40幅眼底图像,分辨率为565 × 584,使用佳能CR5免散瞳3CCD相机拍摄所得,视场角FOV为45°,其中训练集20幅,测试集20幅。每张图像都有经专家手动分割的血管轮廓图,可作为视网膜血管分割任务的黄金标准图。DRIVE数据集是衡量视网膜血管分割方法性能的常用数据库。
2.3 数据扩充与图像预处理在视网膜血管分割过程中,网络模型因为数据集数量不足出现过拟合问题。本文选择通过随机剪裁、旋转、平移的方法扩充数据,得到4200张分辨率为512×512像素的图像。原始视网膜图片呈平坦红色,血管与背景对比度不明显。为了获取更清晰准确的图像特征,需要进行图片预处理。首先,提取输入图片的RGB颜色三通道,通过对比发现绿色通道血管和背景的对比度最高。因此,选择绿色通道图片,归一化灰度图后,使用对比度受限的自适应直方图均衡化(CLAHE)增强视网膜图像。该算法在被处理的像素周围的矩阵区域进行直方图均衡化,扩大局部对比度并显示平滑的细节。并且CLAHE算法可以有效地限制对比度扩展过程中产生的噪声放大,如图像分块、分块线性插值等。最后使用伽马变换算法在不影响亮度较高部分的图像质量的同时,增强了亮度较低部分的血管结构。
2.4 评价指标本文使用准确率(Acc)、特异性(Sp)、灵敏性(Se)和Dice系数等评价指标评估所提分割算法的性能。像素准确率是所有分类中正确的像素数占全部像素的比例;特异性为图像背景被正确分割的指数;灵敏度为血管被正确分割的指数。Dice系数,也称索伦森–骰子系数是一种集合相似性度量函数,通常计算两个样本之间的相似性。各项指标具体定义为
| $ Acc=\frac{TP+TN}{TP+TN+FP+FN} $ | (3) |
| $ Sp=\frac{TN}{TN+FP} $ | (4) |
| $ Se=\frac{TP}{TP+FN} $ | (5) |
| $ Dice=\frac{2TP}{2TP+FP+FN} $ | (6) |
式中:TP为被正确分割的血管像素数量;FP为错误分割的血管像素数量;TN为正确分割的背景像素数量,FN为错误分割的背景像素数量。
2.5 实验结果与分析实验使用DRIVE数据集训练网络模型,得到的分割示例如图4所示。其中第一列是预处理后的输入图片,第二列是专家手工标注分割结果,第三列是本文模型的预测结果。从图中可以看出,本文模型的预测效果与专家手工标注一致,即使面对复杂的血管形态也能取得不错的分割效果,并且对微小血管也能获得精确的分割结果。
|
图 4 分割结果对比图。 Figure 4 Comparison of segmentation results |
图5是视网膜血管分割局部对比图,图像分为主干血管、对比度低的微小血管以及病变区域。从分割结果可以看出,本文所提的算法将残差模块以及非局部注意力机制引入U-net网络,可以保留大部分的血管特征,特别是避免了对比度低的微小血管特征丢失,并且能够克服外界噪声和病变区域对血管分割的影响。实验结果表明,本文所提方法可以精准的预测出血管的结构,特别是对细小的毛细血管部分也有较为清晰的分割,并且对于血管不连续的部分和错误分割的问题也有明显改善,具有较好的分割效果以及较高的稳定性。
|
图 5 局部血管区域分割图 Figure 5 Segmentation of partial vascular area |
为了进一步说明所提的算法具有一定的优势,本文先在基础的U-net网络中进行血管分割测试,该方法记作A1;然后将U-net与残差网络相结合进行测试,该方法记作A2;再将U-net与非局部注意力机制相结合进行测试,该方法记作A3;在U-net网络中加入残差模块以及注意力机制,即本文所提算法,该方法记作A4。对比结果如表1所示,结果表明本文所提网络模型在数据集中的测试结果明显优于其他网络。
|
|
表 1 基于 U-net的不同结构分割方法的测试结果比较 Table 1 Comparison of results from different structural segmentation methods based on U-Net |
本文通过使用上述的评价指标将测试结果与其他研究人员所提的方法作比较,结果如表2所示。本文所提模型在DRIVE数据集上的结果分别是:准确率0.9679、灵敏度0.8245、特异性0.9896以及Dice系数0.8281。本文所提算法分割结果的各项指标都比原始的U-net模型更优,并且从表中可以看出整体性能明显优于大多数文献所提方法。
|
|
表 2 不同算法在DRIVE数据集的测试结果对比 Table 2 Comparison of results from different algorithms on DRIVE dataset |
本文使用了Resnet残差模块与U-net网络相结合,利用神经网络模型精准分割血管,辅助医生诊疗眼科疾病。然而,传统的彩色视网膜图片有对比度低、亮度不均匀等问题,直接输入神经网络训练得到的分割结果精准度不高。因此,通过图像预处理提高图片的质量,引入了注意力机制来关注重要信息抑制背景特征,并且利用残差网络模块通过跳跃连接,提高了信息的流通,也避免了由于网络层数过多导致的梯度消失和退化问题。本文的改进算法,与原始的U-net网络相比,算法对血管分割的敏感度、特异性、准确率都有明显的提升。
| [1] | YOU X G, PENG Q M, YUAN Y, et al. Segmentation of retinal blood vessels using the radial projection and semi-supervised approach[J]. Pattern Recognition, 2011, 44(10/11): 2314–2324. |
| [2] | 黄琳, 沈建新, 罗煦. 视网膜图像中的血管自适应提取[J]. 中国制造业信息化, 2009, 38(1): 64–67. |
| [3] | BOUKADIDA R, ELLOUMI Y, AKIL M, et al. Mobile-aided screening system for proliferative diabetic retinopathy[J]. International Journal of Imaging Systems and Technology, 2021, 31(3): 1638–1654. DOI:10.1002/ima.22547 |
| [4] | BUDAI A, BOCK R, MAIER A, et al. Robust vessel segmentation in fundus images[J]. International Journal of Biomedical Imaging, 2013, 2013: 154860. |
| [5] | GEETHARAMANI R, BALASUBRAMANIAN L. Retinal blood vessel segmentation employing image processing and data mining techniques for computerized retinal image analysis[J]. Biocybernetics and Biomedical Engineering, 2016, 36(1): 102–118. DOI:10.1016/j.bbe.2015.06.004 |
| [6] | HORIE S, KUKIMOTO N, KAMOI K, et al. Blue widefield images of scanning laser ophthalmoscope can detect retinal ischemic areas in eyes with diabetic retinopathy[J]. Asia-Pacific Journal of Ophthalmology, 2021, 10(5): 478–485. |
| [7] | DASH J, BHOI N. A thresholding based technique to extract retinal blood vessels from fundus images[J]. Future Computing and Informatics Journal, 2017, 2(2): 103–109. DOI:10.1016/j.fcij.2017.10.001 |
| [8] | IMANI E, JAVIDI M, POURREZA H R. Improvement of retinal blood vessel detection using morphological component analysis[J]. Computer Methods and Programs in Biomedicine, 2015, 118(3): 263–279. DOI:10.1016/j.cmpb.2015.01.004 |
| [9] | ZHU C Z, ZOU B J, ZHAO R C, et al. Retinal vessel segmentation in colour fundus images using Extreme Learning Machine[J]. Computerized Medical Imaging and Graphics, 2017, 55: 68–77. DOI:10.1016/j.compmedimag.2016.05.004 |
| [10] | GUO C L, SZEMENYEI M, YI Y G, et al. SA-UNet: spatial attention U-Net for retinal vessel segmentation[C]//Proceedings of the 25th International Conference on Pattern Recognition (ICPR). Milan, Italy: IEEE, 2021: 1236 − 1242. |
| [11] | XIAO X, LIAN S, LUO Z M, et al. Weighted Res-UNet for high-quality retina vessel segmentation[C]//2018 9th International Conference on Information Technology in Medicine and Education (ITME). Hangzhou, China: IEEE, 2018: 327 − 331. |
| [12] | SOOMRO T A, AFIFI A J, GAO J B, et al. Strided fully convolutional neural network for boosting the sensitivity of retinal blood vessels segmentation[J]. Expert Systems with Applications, 2019, 134: 36–52. DOI:10.1016/j.eswa.2019.05.029 |
| [13] | SHELHAMER E, LONG J, DARRELL T. Fully convolutional networks for semantic segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 640–651. DOI:10.1109/TPAMI.2016.2572683 |
| [14] | BADRINARAYANAN V, HANDA A, CIPOLLA R. SegNet: a deep convolutional encoder-decoder architecture for robust semantic pixel-wise labelling[J]. arXiv: 1505.07293. |
| [15] | STAAL J, ABRAMOFF M D, 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. DOI:10.1109/TMI.2004.825627 |
| [16] | HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 770 − 778. |
| [17] | WANG X L, GIRSHICK R, GUPTA A, et al. Non-local neural networks[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 7794 − 7803. |
| [18] | RONNEBERGER O, FISCHER P, BROX T. U-Net: convolutional networks for biomedical image segmentation[C]//18th International Conference on Medical Image Computing and Computer-Assisted Intervention. Munich: Springer, 2015: 234 − 241. |
| [19] | ALOM Z, HASAN M, YAKOPCIC C, et al. Recurrent residual convolutional neural network based on U-Net (R2U-Net) for medical image segmentation[J]. arXiv:, 1802, 06955: 2018. |
| [20] | ALOM Z, YAKOPCIC C, HASAN M, et al. Recurrent residual U-Net for medical image segmentation[J]. Journal of Medical Imaging, 2019, 6(1): 014006. |
| [21] | WANG S L, YIN Y L, CAO G B, et al. Hierarchical retinal blood vessel segmentation based on feature and ensemble learning[J]. Neurocomputing, 2015, 149: 708–717. DOI:10.1016/j.neucom.2014.07.059 |
| [22] | ISKOWSKI P, KRAWIEC K. Segmenting retinal blood vessels with deep neural networks[J]. IEEE Transactions on Medical Imaging, 2016, 35(11): 2369–2380. DOI:10.1109/TMI.2016.2546227 |
| [23] | JIN Q G, MENG Z P, PHAM T D, et al. DUNet: a deformable network for retinal vessel segmentation[J]. Knowledge-Based Systems, 2019, 178: 149–162. DOI:10.1016/j.knosys.2019.04.025 |
| [24] | JIANG Y, TAN N, PENG T T, et al. Retinal vessels segmentation based on dilated multi-scale convolutional neural network[J]. IEEE Access, 2019, 7: 76342–76352. DOI:10.1109/ACCESS.2019.2922365 |
| [25] | MARÍN D, AQUINO A, GEGUNDEZ-ARIAS M E, et al. A new supervised method for blood vessel segmentation in retinal images by using gray-level and moment invariants-based features[J]. IEEE Transactions on Medical Imaging, 2011, 30(1): 146–158. DOI:10.1109/TMI.2010.2064333 |
| [26] | LI Q L, FENG B W, XIE L P, et al. A cross-modality learning approach for vessel segmentation in retinal images[J]. IEEE Transactions on Medical Imaging, 2016, 35(1): 109–118. DOI:10.1109/TMI.2015.2457891 |
| [27] | WANG X H, JIANG X D, REN J F. Blood vessel segmentation from fundus image by a cascade classification framework[J]. Pattern Recognition, 2019, 88: 331–341. DOI:10.1016/j.patcog.2018.11.030 |
2023, Vol. 45
Issue (4): 24-31


