刘佳 濮清岚 李鹏 周巧云 许维馨 李勇
早产儿视网膜病变(Retinopathy of prematurity,ROP)是一种发生在早产儿和低出生体质量儿的增生性视网膜血管病变[1],是目前导致婴幼儿视功能受损或失明的主要原因之一[2]。对ROP进行准确的诊断,并在时间窗内进行及时的干预是挽救患儿视力的关键。
目前临床上对于ROP 的诊断,主要由临床医师根据国际分类标准(International Committee for the Classification of Retinopathy of Prematurity,ICROP)[3],通过双目眼底镜或数字化广域眼底成像系统采集的眼底图片进行判读给出诊断。有研究表明,包括ROP在内的眼底疾病的诊断过程和结果存在专家内和专家间的一致性水平差异[4]。为了解决诊断结果的不一致性问题,有研究者开发了半自动的图像处理分析工具[5-7],以便更客观诊断眼底图像。但是这些工具需要人为指定特征和切点。近年来专家们致力使用深度卷积神经网络(Deep convolutional neural network,DCNN)来协助眼科医师诊断眼底相关疾病[8-11]。DCNN不需要手动输入特征,并且展现了比半自动的分析工具更好的性能指标。
目前ROP相关的自动辅助诊断研究主要集中在识别“Plus病变”[12-14],也有部分专家对于ROP病变分期的诊断进行研究[15-16]。在本研究中,我们基于DCNN开发了1个端到端的自动辅助诊断系统,该系统使用从感兴趣区域(Regions of interest,ROI)中提取的病灶特征,对ROP 1~3 期病变进行自动诊断。
纳入标准:①出生体质量<2 000 g或胎龄<37周的早产儿;②屈光介质透明;③无ROP外的器质性眼病。排除标准:①各种原因的屈光介质混浊,瞳孔无法散大,眼底窥不入导致无法进行眼底照相;②存在中枢神经性或循环系统等危及生命的并发症。收集2019年1月至2020年12月在嘉兴市妇幼保健医院眼科进行眼底筛查的早产儿共1 885例(2 331 眼)。本研究经嘉兴市妇幼保健医院机构审查委员会批准[批号:2018(伦)-26],所有患儿家属均签署了ROP眼底筛查知情同意书。
所有的早产儿眼底图像均由专业眼科医师使用广域数字化视网膜摄像系统(RetcamIII)采集。对眼底的5个标准视场(后极部、鼻部、颞部、上部和下部)进行采集图像。去除漏光、拍摄模糊、曝光不足等所致的3 624张低质量图片,共纳入12 219张眼底图像构建了早产儿视网膜图像数据集,图像尺寸(像素)均为1 600×1 200。
将早产儿视网膜图像数据集分为训练数据集和测试数据集。如表1所示,纳入早产儿视网膜图像数据集中的视网膜图像9 754张(1 506例早产儿,1 861眼)构建了训练数据集,用于训练DCNN的分类器。从训练集中选择了1 642张视网膜图像(184例早产儿,293眼)和2 190张视网膜图像(245例早产儿,391眼),分别用于训练2个Retina U-Net图像分割网络。同时纳入2 465张图像(379例早产儿,470 眼)构建了测试数据集,用于测试DCNN分类器的性能指标。训练数据集和测试数据集之间纳入的视网膜图像均相互独立。
表1.早产儿训练数据集和测试数据集的特征Table 1.Characteristics of the training data set and test data set in preterm infants
由1 位专业眼科医师使用医学标注软件Pair,手工标注图像分割网络所用的视网膜图像。训练集和测试集图像的诊断标准(ROP 1期、ROP 2期、ROP 3 期及无ROP)由3名资深小儿眼科医师依据诊断共识结果确定。
本系统由图像分割网络、ROI区域确定及系统分类器这3 个部分组成。如图1 所示,视网膜图像作为输入(Input),在A图中被2个深度神经网络分别分割出视网膜血管和分界线或嵴的分割图;根据图像处理算法在B图计算出了感兴趣区域(红色方框),并分割了感兴趣区域;从感兴趣区域提取特征训练分类器后,最终在C图中分类器输出自动诊断结果。
图1.早产儿视网膜病变自动辅助诊断系统结构图Figure 1.Structure of the automatic diagnosis system of retinopathy of prematurity
1.3.1 图像分割网络及训练 图像分割网络,使用了2个开源的Retina U-Net[17]分别分割视网膜血管以及分界线或嵴。在训练过程中,通过修改程序使用了整张眼底图像,不对图像进行切片或裁剪。通过将图像水平翻转、垂直翻转、平移以及进行不同角度的旋转等方法达到数据增强的目的。
1.3.2 ROI区域确定 使用大津法[18]将输入的分割图像二值化后,对分界线或嵴的分割图使用了opencv4.5.2(Open Source Computer Vision Library,Inter,Santa Clara,CA,USA)cv2.CHAIN_APPROX_SIMPLE函数从而获得病变区域的轮廓,继而使用cv2.minAreaRect函数,求得包含点集最小面积的矩形,即分界线或嵴的最小外接矩形。将2张分割图融合后,使用cv2.contourArea函数,计算外接矩形两侧的像素点面积比,为了方便研究分界线或嵴附近的血管增生情况,以最小外接矩形的长度和1.5倍宽度作为参数,并向像素面积更大区域(血管区)进行了偏移,以此获得了1个矩形感兴趣区域(ROI)。将ROI区域内的分割图像进行剪切,作为分类器网络的输入。
1.3.3 系统分类器及训练 使用了DenseNet网络[19]将眼底图像分为无ROP以及ROP 1~3 期图像这4 个类别。使用接受者操作特性曲线(Receiver operating characteristic curver,ROC)的曲线下面积(Area under curve,AUC)的得分来衡量分类器训练性能的优劣。为了避免过拟合和欠拟合状态发生,将训练数据集划分为5 份,随机选择4 份数据作为训练集,剩余1 份作为测试集。交叉验证重复5 次(五折交叉验证),根据分类器在有4 个分类任务中的AUC得分,选择表现最好的分类器模型。
所有的网络都在Tensorflow1.10 中实现,并在1 台安装有Nvidia Titan XP 12G显存显卡的电脑上进行了评估,所有的图像分析都是通过使用Python3.6.5(Python软件基金会,Wilmington,DE,USA)编程语言开发脚本进行。在训练过程中,我们应用随机梯度(SGD)优化器,动量为0.9,学习率为0.000 1,梯度裁剪设置为5.0。Retina U-NET的批处理大小设置为32 幅图像,DenseNet的批处理大小为16 幅图像。Retain U-NET从高斯分布N(0,0.01)进行初始化,DenseNet使用COCO数据集(Microsoft,Raymond,Seattle,Washington,USA)的迁移学习进行初始化。
回顾性研究。采用SPSS 26.0统计软件对数据进行分析。采用Cohen's Kappa 检验对深度学习模型预测与临床诊断结果进行一致性分析,由Kappa值的大小代表一致性的程度。深度学习模型在测试集上的性能评估,采用深度学习模型预测与临床诊断结果构建的混淆矩阵,计算敏感度和特异性等性能参数。
2 个Retina U-Uet[17]图像分割网络分别对输入眼底图像中的视网膜炎血管和病变区域进行了分割,其中血管分割的敏感度为0.864 2,特异性为0.994 6;病变区域中分界线或嵴分割的灵敏度为0.916 3,特异性为0.992 4。
对输入的视网膜图像,DCNN 通过2 个RetinaU-NET[17]网络,分别分割出了视网膜血管(见图2B)和分界线或嵴(见图2C)。我们根据病灶的最小外接矩形(见图2D),确定了带有ROI区域(见图2E)的分割图融合图,最后将ROI区域内的融合图进行分割(见图2F)作为深度学习模型分类器的输入图像。当第2行输入为无ROP病变的眼底图像时,系统无法生成ROI,输出为1张黑色二值图像,见图2。
图2.早产儿视网膜分割图和ROI分割图A:输入的早产儿眼底视网膜图像;B:血管分割图;C:分界线或嵴的分割图;D:确定最小外接矩形的分割图;E:分割图融合后带有ROI的分割图;F:分类器的输入图像Figure 2.Segmented retinal images and segmented ROI imagesA: Input retinal images;B: Segmented images of vascular;C: Segmented images of demarcation lines or ridge;D: Segmented images with external rectangle;E:Segmented images with ROI;F: Input images for classifier.ROI,regions of interest.
使用从训练数据集的ROI分割图中提取的特征,进行五折交叉验证(超参设置cv=5)后,系统分类器在4 种类别上的训练曲线见图3。相对于ROP 1~3期,分类器识别为无ROP眼底图像的AUC平均得分为0.955 6(见图3A);识别为ROP 1 期图像的AUC平均得分为0.922 2(见图3B);识别为ROP 2期图像的AUC平均得分0.986 6(见图3C);识别为3期图像的AUC得分0.984 2(见图3D)。
如图3所示,蓝色曲线在除了无ROP外的所有分类上均获得了最高AUC分,因此我们选择了最佳的参数配置(蓝色曲线)。根据深度学习模型在测试集上的诊断结果与临床参考诊断结果构建的混淆矩阵(见表2),计算了系统分类器在测试数据集上的性能指标(见表3)。
表2.深度卷积神经网络预测结果与临床诊断结果Table 2.Deep convolutional neural networks predictions and clinic diagnosis
表3.深度卷积神经网络在测试集上的性能表现Table 3.Performance of the DCNN on the test set
图3.早产儿分类器五折交叉验证训练曲线A:无ROP图像分类的AUC得分;B:ROP 1期图像分类的AUC得分;C:ROP 2期图像分类的AUC得分;D:ROP 3期图像分类的AUC得分Figure 3.Training curve for the classifier's five-fold cross-validationA: AUC score for non-ROP;B: AUC score for stage 1;C: AUC score for stage 2;D: AUC score for stage 3.AUC,area under curve;ROP,retinopathy of prematurity.
分类器对4个类别2 465幅图中的2 377幅图像进行了正确的诊断(平均正确率98%)。在诊断无ROP图像时,其敏感度和特异性达到了0.975 7 和0.975 6;对ROP 1~3期图像的诊断,敏感度分别为0.922 1、0.933 1和0.910 2,特异性则分别为0.983 7、0.988 6和0.992 8。通过混淆矩阵,系统对ROP 1~3期的诊断,与临床医师诊断结果的Kappa一致性为0.905 9。
本研究使用2个Retina U-Net分别分割出早产儿眼底图像的视网膜血管和分界线或嵴,并从ROI分割图中提取特征,训练分类器,对ROP 1~3期病变进行自动诊断。临床工作中对ROP 1~3期病变的诊断,可以让临床医师在该疾病的治疗窗内给出及时的治疗及随访建议[3],以避免其发展至产生视网膜脱离的4~5期病变。同时,根据指南[3]中视网膜分界线或嵴的有无以及病灶附近区域的新生血管增生情况,可以区分ROP 1~3期病变分期,这适合使用DCNN分割区域,提取特征进行自动诊断。在类似的研究中,Hu等[15]使用Inception模型作为分类器,从视网膜图像中直接提取特征来对ROP病变分期进行诊断。本研究使用Dense Net作为分类器,从ROI分割图中提取特征。Dense Net是一个优秀的分类网络,对于每一层,其输入的特征是之前所有的层,而它自己的特征图作为之后所有层的输入,具有缓解梯度消失问题、加强特征传播、鼓励特征复用以及极大减少了参数量等优点。Hu等[15]在正常和ROP图像的二元分类中,获得了97%的正确率,在1~2期和3~4期之间达到了84%的正确率。本研究在早产儿视网膜图像的诊断中获得了98%的平均正确率。由于使用数据集不一样,我们无法简单地对性能指标进行比较。
本研究使用视网膜血管以及分界线或嵴的ROI分割图训练系统,其优势在于ROI区域尺寸(像素)更小,可以在处理视网膜图像的过程中,增大每批次处理的图像数量(Batch_size=32,每批次处理32副图)。而使用整幅分割图(1 600像素×1 200像素,Batch_size=8,每批次处理8幅图)。因此,在大批量处理视网膜图像的时候,对ROI区域分割图进行诊断,效率明显高于使用整幅分割图,这对于远程诊疗的实现尤为重要[20]。我们从更小尺寸的ROI区域分割图中提取病变特征并训练分类器,也获得了较高准确率的诊断结果。这说明从ROI中提取的特征,对于ROP 1~3期病变分期有鉴别作用。通过ROI突出DCNN的学习范围,这可能有助于增强DCNN结果的“可解释性”。
本研究也存在一定的局限性:仅选择了嘉兴市妇幼保健医院眼科在2019年1月至2020年12月采集的早产儿眼底图像,这不利于模型的泛化性。因此,与更多地区更多医院进行合作,整合多医院数据,建立更大、更广泛的ROP眼底图像数据集,提升算法性能是今后努力的方向。
本研究利用DCNN对ROP诊断分期中1~3期病变进行自动分类诊断,并取得了较高的准确性。有望为临床医师的ROP筛查诊疗工作提供辅助,同时提高临床诊断的速度及精确率。
利益冲突申明本研究无任何利益冲突
作者贡献声明刘佳:收集数据;参与选题、设计及资料分析和解释;撰写论文;根据编辑部的修改意见进行修改。濮清岚:参与选题、设计和资料分析和解释。李鹏:参与研究的设计及程序实现,根据编辑部的修改意见进行论文修改。周巧云、许维馨、李勇:参与了选题、设计和临床数据的收集