摘要
为了预防烟雾病引发的并发症威胁患者生命,需要对烟雾病进行及时有效的诊断。本文提出了一种改进的Faster RCNN算法用于烟雾病检测。首先,提取颈内动脉数字减影血管造影(Digital subtraction angiography,DSA)图像,并进行数据增强,训练集、验证集和测试集之比为6∶2∶2。使用ResNet101网络作为特征提取网络,避免血管特征在卷积和池化过程中产生模糊或丢失;结合区域生成网络(Region proposal network, RPN),定位烟雾病病灶的位置;再将Faster RCNN模型中的ROI Pooling替换为ROI Align进行特征映射,避免由量化带来的误差影响。本文采用平均精度(Average precision,AP)作为算法检测性能的评估指标,所用方法对正常样本和烟雾病样本检测的AP分别为99.23%和89.39%。实验结果表明,该方法可以实现烟雾病的快速有效检测,可在复杂的血管网中准确检测烟雾病病灶的位置,为烟雾病辅助诊断提供一定的技术支持。
脑血管病的危害性极高,对我国国民健康造成了巨大威胁,具有高致残率和高致死率的特
近年来,以深度学习为代表的人工智能技术迎来了研究与应用的高潮,也为烟雾病疾病转归预测提供了新的途径与思路。Tackeun
与传统机器学习方法相比,卷积神经网络(Convolutional neural network,CNN)具有更强大的特征学习和特征表达能
烟雾病影像表现为大脑前、中动脉存在一定程度的狭窄、闭塞,颈内动脉末端毛细血管增多,出现异常的烟雾状血管网。由于血管特征较小,原始的Faster RCNN采用VGG16作为特征提取模块不易捕捉细小的血管特征,且使用ROI Pooling进行特征映射难以保留小血管的完整度。因此,本文在原有的Faster RCNN网络上做了改进,选取ResNet10
改进的Faster RCNN网络结构分为特征提取模块、RPN和分类回归模块3个部分。输入图像经过特征提取模块提取血管特征,得到特征图,然后进入RPN,根据目标框与人工标定标记框的交并比(Intersection over union,IOU)筛选正负样本进行回归训练,得到建议区域,并和特征图一起输入分类回归模块,ROI Align将特征图的建议区域转化为固定尺寸的特征图,输入分类、回归分支,得到最终的检测结果。改进的Faster RCNN架构如

图1 改进的Faster RCNN架构
Fig.1 Improved Faster RCNN architecture
对于烟雾病检测任务来说,主要检测对象为脑血管,其经过VGG16网络的池化操作后容易丢失细微的特征信息,且VGG16网络参数量大,需要的存储空间大,部署难度大。为了更好地提取复杂血管的特征信息,本文使用ResNet101网络替代原始模型所用的VGG16网络作为Faster RCNN的基础骨架。ResNet101网络采用跳跃连接方式,利用恒等映射不断学习新的特征,大大提升了模型学习特征的性能。ResNet101网络在ResNet50网络的基础上加深了第4层卷积层,能够在深层的特征图中获得丰富的图像特征,避免血管特征在卷积和池化过程中产生模糊或丢失,并且模块的参数量也适中,能够降低小样本数据集可能出现的过拟合风险。本文采用pre‑training+fine‑tune训练策略,载入了在公开的分类数据集ImageNet下预训练好的参数模型,能够提高模型的初始性能,在此基础上对模型进行训练,可以有效提取特征信息,并且能够共享网络权重,减少需要学习的自由变量的个数和训练网络所需的时间。在烟雾病数据集上微调参数,提升了模型的收敛速度,增加了模型的泛化能力和鲁棒性,更适合部署于算力一般的平台,更加适用于临床的应用。
区域生成网络RPN是Faster RCNN模型的核心模块,主要作用是生成建议区域。它采用3×3的滑动窗口遍历特征图,来生成候选区域,取滑动窗口中心点为锚点,以128、256、512为尺度,1∶1、1∶2、2∶1为尺度比,每个锚点共得到9个锚框。通过卷积层后,再由Softmax对锚框进行分类,9个锚框进行二分类,将其分为目标类和背景类,卷积核通道数为9×2。同时计算对于锚框的边框回归偏移量,修正锚框,卷积核通道数为9×4,纳入9个锚框及各自的4个坐标位置参数,最后获得较为精确的建议区域。RPN的输出层共有(4+2)×9维通道,较其他网络维数更少,大大降低了参数的数量,更适合用于小样本数据的检测。
由于烟雾病检测不存在多目标重叠情况,因此选取非极大值抑制(Non‑maximum suppression,NMS)去除冗余的锚框,提高检测速度。对于RPN生成的锚框,将置信度分数最大的目标框作为基准框,若目标框与其IOU大于0.7,则将该目标框的置信度置为零,即去除该目标框。
当剩余的目标框与人工标定的标记框的IOU大于0.7时,认为该框为正样本,当IOU小于0.3时,则认为其为负样本,当IOU位于0.3~0.7之间时,不纳入损失函数中计算。
RPN网络中的损失函数定义为
(1) |
式中:i表示第i个锚框,pi表示锚框是目标框的概率,ti为锚框的位置坐标,p
分类损失Lcls和回归损失Lreg可分别定义为
(2) |
(3) |
R为稳健损失函数
(4) |
锚框的坐标计算如下
(5) |
(6) |
(7) |
(8) |
式中:x、y、w和h分别为候选区域框的中心坐标、宽度和高度;xa、ya、wa和ha为锚框的坐标及宽度和高度;
ROI Pooling可以从候选框中截取ROI特征,映射到特征图的相应位置,对映射后的区域进行划分,得到相同大小的区域特征图,经过最大池化(Max pooling)操作后输出,保证了大小不同的候选区域输出结果都是固定大小。这样处理的好处是能够共享权重,使全连接层能够利用预训练的参数,减少训练模型的时间。但是候选区域框的坐标通常是浮点数,ROI Pooling在映射过程中直接将其做最近邻插值操作,会产生量化偏差,尤其血管的特征比较细微,如果产生严重的偏差,就会造成重要特征消失。
为了解决这个问题,在本实验中采用ROI Align来代替ROI Pooling。ROI Align首次在Mask RCN

图2 ROI Pooling和ROI Align的映射过程对比
Fig.2 Comparison of mapping process between ROI Pooling and ROI Align
本实验所采用的数据来自复旦大学附属华山医院,共收到2017年8月至2020年12月间的433例烟雾病病例和75例正常脑血管病病例的DSA数据。选取动脉期的DSA序列,此时造影剂流经动脉供血干,烟雾病病灶显影清晰,从中提取出长宽都为512个像素的颈内动脉正位图像,并存储为JPG格式。考虑到血管造影技术存在一定的放射性,会对人体产生伤害,因此本实验不将正常人样本纳入其中,而是选取其他脑血管病病例的正常一侧图像作为正常样本。由于存在极小部分显影不清和伪影过强的图像,因此经过筛选将其去除,保留正常情况下伴有伪影及血管显影较淡的DSA图像,来提高模型在实际应用中的鲁棒性。为了防止正常样本数量偏少产生而过拟合,对原始图像进行随机调节亮暗、水平翻转处理及截取原始图像的一部分,以保证样本的多样性。同时保证样本数量均衡,确保模型的有效性,共得到烟雾病样本319张,正常样本316张,以6∶2∶2的比例划分为训练集、验证集和测试集。
在目标检测任务中,需要对ROI进行标注,根据其轮廓勾画出标注框。采用LabelImg软件对DSA图像颈内动脉末端大脑前、中动脉分支处进行标注。正常样本的颈内动脉及大脑前、中动脉血管壁平滑,血管结构完整,呈现“T”形的分叉,见

图3 样本标记示意图
Fig.3 Schematic diagrams of marking
本实验使用Intel(R) Xeon(R) CPU E5‑2640 v4 @ 2.40 GHz处理器,内存为128 GB,NIVDIA Tesla V100显卡,显存为16 GB,在Linux操作系统、anaconda3.7、cuda10.0、python3.6环境下,基于Pytorch深度学习框架实现。
在实际的临床应用中,检测的精度与速度缺一不可。本文将平均精度(Average precision, AP)作为烟雾病样本和正常样本检测的评价指标。AP的计算需要同时考量精确率(Precision)以及召回率(Recall),精确率定义为识别正确的物体数占总识别数量的比例,召回率定义为识别正确的物体数占样本总体数量的比
(9) |
式中:rn和rn+1分别表示第n和第n+1个Recall值,p为第n和n+1个Recall值区间内的Precision值。假设N个样本中有M个正样本,则得到M个Recall值和Precision值。
对于每个Recall区间,取该区间内最大的Precision值,并与区间长度(两个Recall值之差)相乘作为该区间的AP值,直到遍历所有区间,将每段AP值相加得到最后的AP值。AP值越接近1,检测效果越好,再对两种类别的平均精度取均值得到平均精度均值mAP(Mean average precision, mAP),作为模型的整体性能评价指标。
不同的标注区域所包含的特征信息不同,因此不同大小的标注区域会对实验结果产生不同影响。为了确定可以达到最佳模型效果的标注区域大小,对比了缩小标注区域1.5倍、本文所选标注区域与扩大标注区域1.5倍的实验结果,如
标注区域 | AP/% | mAP/% | |
---|---|---|---|
Normal | MMD | ||
缩小标注区域1.5倍 | 92.48 | 80.26 | 86.37 |
本文所选标注区域 | 99.23 | 89.39 | 94.31 |
扩大标注区域1.5倍 | 87.21 | 76.57 | 81.89 |
由
为了提高模型的检测精度,需要调整网络超参数。针对ResNet101+Align组合设置超参数。权重衰减速率为0.000 5,学习率(Learning rate,LR)衰减速率为0.1,动量为0.9,迭代次数为10 000次。对模型的批大小进行调整来减少所需的训练时间,对模型的初始学习率进行调整使损失函数收敛效果更好,进一步提高精度。初始学习率为0.001时,批大小调整结果如
批大小 | AP/% | mAP/% | 训练时间/min | |
---|---|---|---|---|
Normal | MMD | |||
1 | 95.31 | 86.59 | 90.95 | 33.37 |
2 | 95.45 | 86.91 | 91.18 | 24.38 |
4 | 87.93 | 76.24 | 82.085 | 20.85 |
8 | 82.68 | 73.53 | 78.105 | 17.76 |
由
批大小为2时,初始学习率调整结果如
初始学习率 | AP/% | mAP/% | |
---|---|---|---|
Normal | MMD | ||
0.001 0.003 |
95.45 96.52 |
86.91 87.31 |
91.18 91.915 |
0.005 | 99.23 | 89.39 | 94.31 |
0.007 | 97.48 | 88.05 | 92.765 |

图4 不同初始学习率下的损失函数变化曲线
Fig.4 Variation curves of loss function under different initial learning rates
由
因此,本实验采用的批大小为2 ,初始学习率为0.005。
在RPN中,如果NMS的IOU阈值设得过大就会造成目标框数量冗余,如果IOU阈值过小则容易出现误检的问题。因此不同的IOU阈值会影响到最终的检测效果,对比不同IOU阈值下的检测精度,选取最优的IOU阈值进行训练。
根据
IOU阈值 | AP/% | mAP/% | |
---|---|---|---|
Normal | MMD | ||
0.5 | 86.20 | 79.06 | 82.63 |
0.6 | 91.63 | 81.94 | 86.785 |
0.7 | 99.23 | 89.39 | 94.31 |
0.8 | 93.56 | 82.08 | 87.82 |
0.9 | 87.94 | 76.50 | 82.22 |
为了验证网络的性能,本实验对ResNet101及VGG16特征提取网络和ROI Pooling、ROI Align特征映射方法进行组合,测试它们的检测效果,并且对正常样本和烟雾病样本进行测试,得到最终的实验结果,如
模型 | AP/% | mAP/% | 训练时间/min | |
---|---|---|---|---|
Normal | MMD | |||
VGG16+ROI Pooling | 88.85 | 86.22 | 87.535 | 25.115 8 |
VGG16+ROI Align | 89.52 | 86.66 | 88.09 | 25.322 2 |
ResNet101+ROI Pooling | 89.02 | 77.86 | 83.44 | 22.979 5 |
ResNet101+ROI Align | 99.23 | 89.39 | 94.31 | 23.342 8 |
实验结果表明,使用ResNet101+ROI Align组合时,模型的检测效果最好,mAP为94.31%,其中对于正常样本的AP达到了99.23%,这是由于正常样本的特征较为明显。烟雾病样本AP较正常样本AP低的原因是因为烟雾病的血管形态较为多样,且血管较细,不易区分。但是该方法对于烟雾病样本的AP在4种方法中也是最好的,这是由于残差网络使用了跳跃连接的残差块,使特征信息易于在各层间流动,同时ROI Align方法减小了在特征映射过程中产生的误差。对于ResNet101+ROI Pooling组合,两种样本的准确率都和ResNet101+ROI Align组合相差10个百分点以上,这是因为ResNet101网络提取细小血管特征能力较好,但是ROI Pooling的量化操作对小特征的影响较大,产生了严重误差。当使用VGG16作为特征提取网络时,使用ROI Align方法对最终的AP和mAP有小幅提高。在训练时间上,可以看出采用ResNet101比VGG16训练速度稍快,因为ResNet101较VGG16的参数更少,所以运算速度有一定的提高,同时采用ROI Pooling比ROI Align更快,这是由于双线性插值比最近邻插值计算更为复杂,因此需要更多的计算时间。
改进Faster RCNN模型识别举例如

图5 改进Faster RCNN模型识别样例
Fig.5 Identification examples of improved Faster RCNN model
Faster RCNN是一个两阶段模型,为了验证改进的Faster RCNN模型的检测性能,将其结果与经典的单阶段模型YOLOv
方法 | 单张检测时间/s | mAP/% |
---|---|---|
改进的Faster RCNN | 0.195 | 94.31 |
YOLOv3 | 0.064 | 87.37 |
SSD | 0.078 | 85.61 |
由实验结果可知,YOLOv3和SSD模型虽然可以实现血管的检测与定位,并且检测时间较短,但由于该算法直接跳过了生成建议区域的部分,直接将提取到的特征用于检测,省略了对标定框的回归,因此其检测区域存在一定偏差且检测精度较低。虽然本文模型的单张检测耗时较长,但其mAP分别比YOLOv3和SSD的mAP高出6.94%和8.70%,检测精度得到了较大的提升。因此,改进的Faster RCNN可以更加准确有效地检测烟雾病。
为了实现烟雾病的自动辅助检测,结合烟雾病DSA图像血管特点,本文在传统Faster RCNN模型的基础上,主要完成了以下几点工作:
(1)提出了用于烟雾病检测的Faster RCNN改进模型,采用ResNet101提取小血管特征,RPN定位烟雾病病灶,并且使用ROI Align方法保留小血管特征的完整度,从而实现了烟雾病的自动检测与定位。
(2)使用数据增强方法扩充现有数据,使其满足用于深度学习模型训练的需求,降低过拟合的风险,然后通过对比确定了适用于烟雾病检测的图像标注区域大小、模型超参数和IOU阈值。
(3)将不同特征提取网络和特征映射方法进行组合,并且和其他两种目标检测算法进行对比。
实验结果表明,改进的Faster RCNN模型具有良好的检测能力,优于对比算法,mAP达到94.31%。该模型可以在复杂的血管图像中较为精准地诊断出烟雾病,能够较好地鉴别出烟雾血管及周边结构的特征,为以后的预测研究提供可靠的基础,而且本文模型参数量较少,易于在临床平台部署,可以提高检测效率,降低人力成本,具有实际的应用价值。随着日后样本数的增多、血管造影技术的升级及模型结构的优化,其检测精度还有待进一步的提升。
参考文献
贺国华,王振.急性缺血性脑血管病血管内治疗进展[J].中国实用神经疾病杂志,2020,23(13): 1193-1197. [百度学术]
HE Guohua, WANG Zhen. Progress in endovascular treatment of acute ischemic cerebrovascular disease[J]. Chinese Journal of Practical Nervous Diseases, 2020, 23(13): 1193-1197. [百度学术]
宋晓雯,张谦,赵继宗.烟雾病流行病学研究进展[J].中华脑血管病杂志(电子版),2021,15(1): 9-15. [百度学术]
SONG Xiaowen, ZHANG Qian, ZHAO Jizong. Research progress in the epidemiology of moyamoya disease[J]. Chinese Journal of Cerebrovascular Diseases(Electronic Edition) , 2021, 15(1): 9-15. [百度学术]
Research Committee on the Pathology and Treatment of Spontaneous Occlusion of the Circle of Willis, Health Labour Sciences Research Grant for Research on Measures for Infractable Disease. Guidelines for diagnosis and treatment of moyamoya disease (spontaneous occlusion of the circle of Willis)[J]. Neurologia Medico Chirurgica, 2012, 52(5): 245-266. [百度学术]
徐佳丽,李思颉,吉训明.烟雾病的治疗进展[J].中风与神经疾病杂志,2018,35(11): 1049-1052. [百度学术]
XU Jiali, LI Sijie, JI Xunming. Advances in the treatment of moyamoya disease[J]. Journal of Apoplexy and Nervous Diseases, 2018, 35(11): 1049-1052. [百度学术]
TACKEUN K, HEO J, JANG D K, et al. Machine learning for detecting moyamoya disease in plain skull radiography using a convolutional neural network[J]. EBioMedicine, 2019, 40(2): 636-642. [百度学术]
AKIYAMA Y, MIKAMI T, MIKUNI N. Deep learning-based approach for the diagnosis of moyamoya disease[J]. Journal of Stroke and Cerebrovascular Diseases, 2020, 29(12): 1-8. [百度学术]
卢宏涛,张秦川.深度卷积神经网络在计算机视觉中的应用研究综述[J].数据采集与处理,2016,31(1): 1-17. [百度学术]
LU Hongtao, ZHANG Qinchuan. Applications of deep convolutional neural network in computer vision[J]. Journal of Data Acquisition and Processing, 2016, 31(1): 1-17. [百度学术]
REN S, HE K, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149. [百度学术]
CHEN K B, XUAN Y, LIN A J, et al. Esophageal cancer detection based on classification of gastrointestinal CT images using improved Faster RCNN[J]. Computer Methods and Programs in Biomedicine, 2021, 207: 106172. [百度学术]
徐一舫,卓一瑶,孙海洋,等.基于Faster R-CNN的乳腺肿块辅助检测[J].电脑知识与技术,2019,15(18): 217-220. [百度学术]
XU Yifang, ZHUO Yiyao, SUN Haiyang, et al. Assisted detection of breast masses based on Faster R-CNN[J]. Computer Knowledge and Technology, 2019, 15(18): 217-220. [百度学术]
石珂珂,杨恒,肖炜平,等.基于Faster-RCNN的正常数字减影血管造影脑血管检测与时相分期研究[J].中国临床神经科学,2020,28(4): 379-387. [百度学术]
SHI Keke, YANG Heng, XIAO Weiping, et al. Normal cerebrovascular detection and time series classification based on Faster-RCNN[J]. Chinese Journal of Clinical Neurosciences, 2020, 28(4): 379-387. [百度学术]
MA S L, HUANG Y, CHE X J, et al. Faster RCNN‐based detection of cervical spinal cord injury and disc degeneration[J]. Journal of Applied Clinical Medical Physics, 2020, 21(9): 235-243. [百度学术]
HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. [S.l.]:IEEE, 2016: 770-778. [百度学术]
HE K, GKIOXARI G, DOLLÁR P, et al. Mask R-CNN[C]//Proceedings of IEEE Transactions on Pattern Analysis & Machine Intelligence. [S.l.]:IEEE, 2017: 2961-2969. [百度学术]
房靖晶,成金勇.基于Faster R-CNN的办公用品目标检测[J].计算机与现代化,2019(1): 40-44. [百度学术]
FANG Jingjing, CHENG Jinyong. Office supplies target detection based on Faster R-CNN[J]. Computer and Modernization, 2019(1): 40-44. [百度学术]
黄宁霞,张荣芬,刘宇红.改进深度学习框架Faster RCNN的人行道障碍物目标检测[J].机械设计与研究,2021,37(2): 7-12. [百度学术]
HUANG Ningxia, ZHANG Rongfen, LIU Yuhong. Sidewalk obstacle target detection based on improved Faster RCNN framework of deep learning[J]. Machine Design & Research, 2021, 37(2): 7-12. [百度学术]
REDMON J, FARHADI A. YOLOv3: An incremental improvement[EB/OL].(2018-04-08)[2021-12-19]. https://arxiv.org/abs/1804.02767. [百度学术]
LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single shot multibox detector [C]//Proceedings of European Conference on Computer Vision. [S.l.]: Springer, 2016: 21-37. [百度学术]