论文阅读笔记:A Three-Stage Deep Learning Model for Accurate Retinal Vessel Segmentation
A Three-Stage Deep Learning Model for Accurate Retinal Vessel Segmentation
摘要
视网膜血管自动分割是眼相关疾病诊断的基础步骤,其中厚血管和薄血管都是症状检测的重要特征。所有现有的深度学习模型都试图使用统一的像素损失来同时分割这两种类型的血管,所有的血管像素都同等重要。由于粗血管与细血管比例高度不平衡(即大部分血管像素属于粗血管),像素上的损失主要由粗血管引导,细血管的影响相对较小,往往导致细血管的分割精度较低。为了解决这一问题,本文提出了一种三阶段的深度学习模型,分别对厚血管和薄血管进行了分割。血管分割任务分为粗血管分割、细血管分割和血管融合三个阶段。由于对厚血管和薄血管的分割可以获得更好的鉴别特征,因此这一过程最大限度地减少了它们的比例高度不平衡所带来的负面影响。最后的血管融合阶段通过进一步识别非血管像素和改善血管整体厚度一致性来细化结果。在公共数据集DRIVE、STARE和CHASE_DB1上的实验清楚地表明,提出的三阶段深度学习模型优于目前最先进的血管分割方法。
1.Introduction
与非监督方法相比,监督方法从带注释的训练图像中学习血管特征或血管像素分类器进行分割。现有的监督方法可以进一步分为传统的基于机器学习的方法和基于深度学习的方法。传统的基于机器学习的方法主要依赖手工特征,利用典型的分类器进行分割,包括k近邻分类器(KNN)[20]及支持向量机(SVM)。与传统的基于机器学习的方法不同,基于深度学习的方法[27][30]具有较强的自动学习特征的能力,可以进行准确的血管分割。Orlando等人[31]提出了一种经过鉴别训练的全连通条件随机场模型用于血管分割。Fu等人[32]、[33]提出了基于全卷积神经网络和全连通条件随机域(CRFs)的血管分割问题。Li等人将血管分割任务重构为一个跨模态数据转换问题,并通过训练一个深度学习模型对其进行建模。Dasgupta[35]提出了一种深度学习模型,对眼底图像中的每个像素进行迭代分类。在[36]中,已经测试了几种用于血管分割的深度学习架构。
所有现有的深度学习模型都采用统一的像素级损失进行训练,同时对粗血管和细血管进行分割。在像素方面的损失,所有的血管像素都同等重要。但是,由于眼底图像中的大多数血管像素都属于较厚的血管,因此在较厚的血管上像素方向的损失比较薄的血管要受到更多的惩罚,这反过来又可以指导深度学习模型对较厚的血管进行更好的分割,最大限度地减少整体像素损失。因此,经过训练的深度学习模型能够学习粗血管分割的鲁棒特征,而对细血管的分割能力相对有限。在本文中,我们建议将血管分割任务进一步划分为三个子任务:粗血管分割、细血管分割和血管融合。通过分离的深度学习模型实现厚血管和薄血管的子任务,可以分别对厚血管和薄血管获得更好的鉴别特征。通过采用深度学习模型自动融合被分割的粗血管和细血管,提出的三阶段深度学习模型能够实现两类血管的精确分割。在多个公共数据集上的实验结果表明,三阶段深度学习模型在性能上大大优于目前最先进的方法。
2.问题分析
在视网膜血管分割中,厚血管和薄血管都是诊断眼相关疾病的重要特征。然而,由于以下原因,同时精确分割厚血管和薄血管是一个挑战:
1)不平衡: 在眼底图像中,大部分血管像素属于厚血管。根据图1中的人工标注,如果将厚度小于3个像素的血管标注为薄血管,其余标注为厚血管,则近77%的血管像素属于厚血管,而薄血管仅占23%。由于现有的深度学习模型都是通过像素损失来训练的,每个像素的损失都是同等重要的,因此训练后的模型在最小化整体损失的同时,往往能够更准确地分割粗血管,而细血管的分割则不像[37]中分析的那样重要。因此,使用像素损失同时分割厚血管和薄血管将使薄血管处于不利地位。
2)特征差异: 从图1中两个放大的斑块和相应的加注的厚薄血管可以看出,厚血管的对比度和信噪比(SNR)通常比薄血管高得多。因此,厚血管的分割特征可能不适用于薄血管的有效分割。
图1 视网膜血管分割问题分析。第1行:从左至右依次为眼底图像和放大后的patch,以及手动标注和两个眼底图像patch的标注。第二行:从左至右分别为两个眼底图像斑块中手工标注的厚血管和标注的厚血管,以及两个眼底图像斑块中手工标注的薄血管和标注的薄血管
基于上述两个原因,利用像素损失同时对厚血管和薄血管进行分割,厚血管比薄血管的分割性能更好。
3.方法论
图2 三阶段深度学习框架的概述。该框架由三个独立的模型组成,分别是用于粗血管分割的ThickSegmenter、用于细血管分割的ThinSegmenter和用于血管融合的FusionSegmenter
图3所示。手动注释,用黑色表示,用于训练不同的模型。红色像素代表的是未被计入损耗计算和反向传播的血管像素。从左至右:(a)标注的用于ThickSegmenter的厚血管;(b)标注的用于ThinSegmenter的薄血管;©用于训练FusionSegmenter的注释血管
图4所示。用ThickSegmenter获得的厚血管分割的范例结果。从左至右:(a)训练ThickSegmenter的输入眼底图像,(b)完整的人工标注(有厚薄血管),© ThickSegmenter预测的厚血管。
图2展示了所提出的三阶段深度学习模型的总体框架,该模型由三个独立的模型组成,分别是用于粗血管分割的ThickSegmenter、用于细血管分割的ThinSegmenter和用于血管融合的FusionSegmenter。对三个模型(ThickSegmenter、ThinSegmenter、FusionSegmenter)分别进行顺序训练,训练不同模型所需的注释如图3所示。训练策略的细节如下:
1)训练ThickSegmenter: 训练ThickSegmenter模型时,仅使用图3(a)中黑色标注的厚血管作为训练的ground truth。即忽略薄血管产生的loss,只利用厚血管的loss进行反向传播。训练ThickSegmenter的输入为每个眼底图像的绿色通道(如图4(a)所示),输出为预测的厚血管(如图4©所示)。
2)训练ThinSegmenter:要训练ThinSegmenter,仅将那些标注的细血管(如图3(b)中的黑色所示)用作ground truth。即,忽略了由粗血管产生的损失,仅将细血管的损失用于反向传播。 训练ThinSegmenter的输入是每个眼底图像的绿色通道与ThickSegmenter预测的厚血管的concatenation, 输出是预测的细血管。
3)训练FusionSegmenter:对于FusionSegmenter模型,所有标注的血管都用于训练,如图3(c)所示。 训练FusionSegmenter的输入是ThickSegmenter预测的粗血管和ThinSegmenter预测的细血管的concatenation。 FusionSegmenter的输出是最终的预测概率图。
我们采用了广泛使用的像素级交叉熵损失函数来训练提出的三阶段工作中的每个模型。
A.ThickSegmenter
基于厚血管通常比薄血管具有更高的对比度和信噪比(如第二节所述),我们直接采用只有一个池化层的模型来提取鲁棒的局部特征,如图2所示。 如图4所示的ThickSegmenter,我们发现简单的模型可以成功地分割几乎所有的粗血管,但很少的细血管,这表明分割粗血管的功能可能不适用于分割细血管
B.ThinSegmenter
对于细血管分割,我们采用简化的FCN模型[28],该模型包含多个池化层,用于全局特征提取。除了眼底图像外,我们进一步利用ThickSegmenter分割出的粗血管作为另一个训练的输入。这是因为薄血管多与厚血管相连,如图5的人工标注所示,以分割后的厚血管为导向,可以将薄血管与非血管像素区分开。在这里,将眼底图像和由ThickSegmenter预测的厚血管连接在一起作为输入来训练ThinSegmenter。因此,由ThinSegmenter生成的概率图非常清晰,如图5所示,这意味着血管像素和非血管像素得到了有效的分离。将生成的概率图与相应的人工标注进行对比,我们发现大部分的薄血管都被成功检测到,唯一的问题是分段薄血管与标注薄血管的厚度不一致。厚度不一致性问题主要是由于眼底图像分辨率的限制。此外,在生成的概率地图在图5中,只有部分厚血管ThinSegmenter探测到,这进一步验证这一事实厚血管和薄血管具有不同的功能特性,因此特性分段薄的血管可能并不适用于厚血管的分割。
C.FusionSegmenter
FusionSegmenter改进了结果以进一步改善总体血管厚度一致性,因为ThinSegmenter生产的分段细血管通常比带注释的血管要厚。 将FusionSegmenter在最终概率图中的分割血管与图6中ThickSegmenter和ThinSegmenter先前分割的血管进行比较,融合后的血管的确与手动注释的血管具有更好的厚度一致性。
4.评估
A.数据集
DRIVE、SATRE、CHASE_DB1
B.预处理
为了降低训练复杂度,通过提取绿色通道将训练集中每个眼底图像转换为灰度图像。然后,将每个眼底图像裁剪成128*128patch,将背景像素(位于FOV掩模外的像素)比例大于50%的patch进一步丢弃。为了扩大训练集,使用了多种数据扩充策略,包括翻转、旋转、调整大小和增强对比度。
为了分离出粗血管和细血管以训练不同的模型,我们首先使用骨架化方法[40]对相应的骨架进行人工标注。然后,对于每个骨架像素,我们计算以完全被血管像素覆盖的像素为中心的最小内接圆,并以直径作为其血管厚度。对于血管厚度小于固定阈值的骨架像素,最小内接圆覆盖的所有像素均表示为薄血管像素。其余的血管像素归为粗血管像素。
C.实现细节
基于开源深度学习库Caffe[41]实现了三阶段深度学习模型。初始学习率设置为10-4,每20000次迭代减少10倍,直到达到10 -6。对于质量评价,我们采用与[34]相同的方法,从给定的概率图中选择阈值,生成相应的二值分割图,其中最优阈值作为训练集整体精度最大化的阈值。
D.评估指标
SE、SP、ACC、AUC