APP下载

基于YOLOv3的硅藻电子显微镜图像识别模型的构建及应用

2022-06-21陈吉刘晓荣杨佳雯陈冶秋王诚欧梦媛吴嘉仪俞尤嘉李开陈鹏陈峰

法医学杂志 2022年1期
关键词:置信度阈值阳性

陈吉,刘晓荣,杨佳雯,陈冶秋,王诚,欧梦媛,吴嘉仪,俞尤嘉,李开,陈鹏,陈峰

1.南京医科大学法医学系,江苏 南京 211166;2.南京市公安局水上分局,江苏 南京 210036

硅藻检验是溺死诊断的重要手段[1]。通过对水中尸体进行硅藻检验,可判断其死亡原因,并可推断入水地点[2-4]。硅藻检验方法有消化法、化学元素法、分子生物学检验法等,其中强酸消化-光学显微镜检验法因操作简单、设备要求低,是基层法医学鉴定实践中常用的硅藻检验方法,但是此方法具有杂质消化不全、离心损失大、检出率低、开放操作易污染等问题[5]。

近年来兴起的微波消解-真空抽滤-扫描电子显微镜法[6]因具有杂质消化完全、操作污染少、硅藻富集率高、阳性检出率高等优势,已在部分公安检案中开展应用。然而扫描电子显微镜产生的图像数据量庞大,不含硅藻的阴性图像多,人工从上千甚至上万张图像中精确识别硅藻需要耗费大量的时间和精力。硅藻电子显微镜图像的快速、准确自动化识别已成为一个亟待解决的问题。

随着人工智能技术的不断发展,基于深度学习进行图像识别已在多领域应用,与人工识别相比显著提升了识别速度并可取得与人工识别相当的准确率[7-9]。深度学习是模拟人脑信号传导机制构建人工神经网络,通过大量数据训练提取数据特征,从而完成从特征到目标任务的映射。卷积神经网络(convolutional neural network,CNN)是深度学习中的一种重要模型,特点是利用多层卷积运算实现特征提取、降维和结果预测,已广泛应用于计算机视觉领域。

目前已有相关研究涉及人工智能硅藻图像自动识别[10-12],但识别模型较少,识别速度和性能均有待提升。为更好地解决硅藻电子显微镜图像识别问题,提高识别速度和自动识别性能,本研究基于深度学习CNN 中的YOLOv3 模型开展硅藻电子显微镜图像自动化识别模型的构建,并在实际硅藻检验案例中进行应用,探讨该模型的优势和可待改进之处。

1 材料与方法

1.1 硅藻图像来源

本研究使用的所有硅藻电子显微镜图像均由南京市公安局水上分局刑事警察大队提供,图像通过微波消解-真空抽滤-扫描电子显微镜法采集于长江流域溺死者的肺、肝、肾组织。图像采集设备为Phenom XL G2 台式扫描电子显微镜、DiatomScope 软件(荷兰PhenomWorld 公司),设置扫描半径8.0 mm(涵盖整个样本区域)、放大倍数1 500×、图像分辨率1 024×1024,形成的每个视场大小为0.176mm×0.176mm,完整扫描一个样本所有视场生成的图片总数为6 392 张。

本研究在上述所有样本采集图像中选取25 000张经2 名法医病理学专家肉眼确认含完整硅藻数量大于1 的硅藻电子显微镜图像,作为建立数据集所使用的样本图像集。同时选取样本图像集以外8例溺死者的肺、肝、肾组织的106 272 张硅藻电子显微镜图像,以检验模型实际应用效果。

本研究仅对南京市公安局水上分局刑事警察大队提供的相关硅藻电子显微镜图像进行处理和使用,符合医学伦理学相关条款规定。

1.2 数据集构建

由硅藻检验经验丰富的2名法医病理学专家使用LabelImg v1.4.3 软件(Tzutalin 开发;http://tzutalin.github.io/labelImg/)共同对样本图像集中的硅藻进行标注(标注时所有完整硅藻和碎片硅藻均视为硅藻)。为了让模型达到更好的训练效果,将标注所得图像数据进行归一化处理,另外使用旋转、平移、缩放、裁剪、变形等方式进行数据增强,从而扩大训练图像样本量。

1.3 模型训练与测试

选取CNN 中的YOLOv3 模型作为识别模型的基础。YOLOv3 模型是一种使用“端对端”方式训练的单阶段目标检测模型[13-15](图1)。输入的图像经过全卷积网络(Darknet-53)进行特征提取和特征融合后,输出3 种依据不同张量划分的特征图[15],特征图中涉及目标对象的每一个网格根据模型先前有监督学习的训练结果预测存在对象的3 个边界框的相应信息,包括位置和大小(中心坐标、框的宽度和高度)、置信度以及对象类别数。对于同一个目标对象对应的各边界框按照各自的置信度进行排序,以置信度最高的边界框作为该目标对象所在的位置。以识别硅藻电子显微镜图像为例,模型将待识别的图像转化为416×416 个网格,经过特征提取后输出包括13×13、26×26、52×52 这3 种张量的特征图。特征图中涉及硅藻的每一个网格将预测3 个可能存在硅藻的边界框,所有边界框中置信度最高者为该硅藻在所属图像中的位置,该置信度即为模型预测边界框内对象为硅藻的可能性。

图1 YOLOv3 模型原理示意图Fig.1 The schematic diagram of the YOLOv3 model

模型识别时可设置不同的阈值,该阈值是模型最终判定是否为目标对象的置信度标准,若识别对象置信度高于该阈值,则判定该对象为目标对象硅藻,并显示相应的边界框和置信度,阈值越高,识别结果是真正硅藻的可能性越大。

以7∶2∶1 的比例将1.2 节中构建的数据集样本划分为训练集、验证集和测试集,基于python 3.6.8 进行YOLOv3 框架搭建和模型训练。设置初始学习率为5×10-4,最小学习率为5×10-7;每次训练批次大小为2;每迭代200 次评估1 次训练总损失值——总损失值是对象类别、置信度、边界框中心坐标以及边界框宽和高4 项数值损失值的总和,体现模型误差大小。最后根据模型收敛情况和损失值的最低值确定模型最终训练的迭代次数。

根据训练模型在验证集、测试集上的查准率(precision rate,PR)和召回率(recall rate,RR)和各阈值下的F1 分数实时评价模型训练效果(阈值取值范围为0~1,以0.05 递增)。PR是指在所有被预测为正例(即模型检测的目标对象)的样本中,实际为正例的样本比例;RR是指所有实际为正例的样本中,被预测为正例的样本比例;F1 分数是PR和RR的加权平均,体现了模型在各阈值下的识别效能。最后结合模型在不同阈值下的RR和PR计算平均精度均值(mean average precision,mAP)评价模型性能。公式如下:

式中,TP为真阳性,即模型预测为硅藻而实际也为硅藻的数量;FP为假阳性,即模型预测为硅藻而实际非硅藻的数量;FN为假阴性,即模型预测为非硅藻而实际为硅藻的数量;AP为平均精度,即模型在每个阈值下的PR的加权平均值,权重为RR的增加值,平均精度相当于某一类别PR-RR曲线(P-R曲线)下的面积,k为总类别数。

由公式可得,当RR越高,模型识别硅藻的敏感性越高;当PR越高,模型识别硅藻的假阳性率越低,模型特异性越高;当mAP越高时,模型检测性能越好。

1.4 模型应用

从1.1 节中选取的8例溺死者的肺、肝、肾组织的106 272 张硅藻电子显微镜图像用于测试该模型的实际应用效果。其中,肝、肾组织样本由于含硅藻数量较少(整个样本中可少至个位数),需要对完整扫描整个样本所得的所有电子显微镜图像进行人工识别,因此本研究对每例肝、肾组织样本扫描所得的6 392 张图像进行识别研究;肺组织样本由于含硅藻数量较多(整个样本中可达几千至几万个),在实际检案中通常在6 392 个视场中随机选取200~300 个视场扫描图像进行人工识别,在本研究中为了更好地探究模型识别肺组织硅藻的RR和PR,对每例肺组织样本扫描所得的500 张电子显微镜图像进行识别研究。

该识别模型的运行流程如图2 所示,使用者只需选择硅藻电子显微镜图像所在的文件夹,并设置筛选阈值,模型会将识别出硅藻置信度大于阈值的目标对象框出并显示相应的置信度,有目标对象和没有目标对象的图像将被分别存放至相应的文件夹。

图2 硅藻电子显微镜图像识别模型运行流程图Fig.2 The flow chart of the diatom identification model of scanning electron microscope images

由于随着阈值设定的改变,模型的RR和PR会相应地改变,通常设定的阈值越高,RR越低、PR越高。为了确定能够使模型取得最佳性能的阈值大小,选取0.4、0.6、0.8 3 种阈值进行识别效果评价。每例样本的硅藻电子显微镜图像分别接受2 名法医病理学专家的肉眼确认和该识别模型的自动识别,记录识别速度和识别结果,并将人工识别和模型识别的结果相对比,计算模型识别在实际应用中的RR和PR。

模型识别将完整硅藻和碎片硅藻统一识别为硅藻,实际应用中人工统计时需要将两者区分开。对于碎片硅藻的识别,采用如下规则:面积大于50%的不完整硅藻视为完整硅藻,面积小于50%的不完整硅藻视为碎片硅藻,完整硅藻和碎片硅藻分2 类计数。由于模型识别出的假阳性硅藻无法判断是对于完整硅藻还是碎片硅藻的假阳性,故分别计算完整硅藻、碎片硅藻和总体PR时将所有假阳性硅藻数包括在内。

1.5 统计分析

人工识别和模型识别所得的硅藻阳性图像数、不同组织中不同阈值下模型识别的RR、PR和F1 分数用均数±标准差()表示,采用SPSS 22.0软件(美国IBM公司)进行t检验,检验水准α=0.05。

2 结果

2.1 模型训练情况和性能评价

图3 为训练过程中总损失值的收敛曲线。图中随着迭代次数增加,模型迅速收敛并将损失值保持在0.2 以下,当迭代次数为128 600 次(即红线标注处)时总损失值达到最低,以此作为模型的最大迭代次数以取得理想的训练效果。

图3 模型训练的收敛曲线Fig.3 Convergence curve of model training

训练完成后的模型在验证集和测试集上各阈值的RR、PR及F1 分数见表1。模型在验证集和测试集的mAP分别为94.8%和94.3%;各阈值下的平均RR分别为81.2%和81.5%。

表1 各阈值下识别模型的RR、PR 和F1 分数Tab.1 The precision rate,recall rate and F1 score of the identification model under different thresholds

2.2 模型应用效果

2.2.1 识别速度和硅藻阳性图像检出量

对于每例肝、肾组织样本的硅藻电子显微镜图像,人工对6 392 张图像逐一识别,需要花大于3 h,而使用该模型约15 min 内完成,且不同的设定阈值下所用的识别时间相同,每个样本模型识别和人工复核的时间总和不超过20 min,图像识别速度可达0.143 s/张,所用时间是人工识别的1/9。人工识别每例肝、肾组织样本6 392 张电子显微镜图像检出的硅藻阳性图像(即含有硅藻的图像)均值分别为(4.3±1.7)、(9.0±8.6)张,模型在0.4、0.6 和0.8 阈值下检出肝组织硅藻阳性图像均值分别为(269.4±197.8)、(218.5±165.9)、(110.4±85.6)张,检出肾组织硅藻阳性图像均值分别为(289.8±103.8)、(202.6±60.3)、(117.0±29.4)张,t检验显示与人工识别检出图像数之间差异均有统计学意义(P<0.05)。

对于肺组织硅藻电子显微镜图像,模型对每张图像的识别速度与肝、肾组织相同。人工识别每例肺组织样本的500 张电子显微镜图像检出的硅藻阳性图像均值为(368.5±176.5)张。模型在0.4、0.6 和0.8 阈值下检出硅藻阳性图像均值分别为(355.5±179.2)、(330.4±176.9)、(310.0±188.2)张,t检验显示与人工识别检出图像数之间差异均无统计学意义(P>0.05)。

2.2.2 不同阈值下模型的检测效能

从表2 可见,在0.4 阈值下,8例案例各组织的大部分硅藻(包括碎片硅藻)都能被正确检出,并且肝、肾组织的硅藻RR达到了100%。随着阈值的增加,硅藻RR在各组织均有所下降。从图4 可见,当阈值从0.4 上升至0.6 时,相同视野识别出的硅藻个数下降。

图4 设定不同阈值时肺组织的硅藻识别结果Fig.4 Diatom identification results under different thresholds

表2 不同组织中不同阈值下模型识别的RR、PR 和F1 分数Tab.2 The recall rate,precision rate,and F1 score of the identification model under different thresholds in different tissues (n=8,)

表2 不同组织中不同阈值下模型识别的RR、PR 和F1 分数Tab.2 The recall rate,precision rate,and F1 score of the identification model under different thresholds in different tissues (n=8,)

在各阈值下,肺组织的PR均较高;肝、肾组织的PR均较低,假阳性率高。随着阈值的增加,PR在各组织呈上升趋势。

从各组织各阈值的RR均值和PR均值综合计算所得的F1 分数来看,肺组织高于肝、肾组织,模型在肺组织的F1 分数随着阈值升高而降低,在肝、肾组织的F1 分数随着阈值升高而升高。

3 讨论

硅藻检验是目前溺死诊断的金标准。近年来快速发展的微波消解-真空抽滤-扫描电子显微镜法有着一系列的优势:微波消解使杂质消化得更为彻底,真空抽滤技术提高了硅藻的富集率,电子显微镜的高放大倍数使硅藻图像分辨率大大提高,更利于分辨硅藻和进行种属分类,然而电子显微镜图像数量庞大、阴性图像多、人工识别耗时耗力。

为解决硅藻电子显微镜图像识别问题,本研究训练了一个基于深度学习YOLOv3 模型的识别模型。YOLO 是REDMON 等[13]于2016 年提出的一个单阶段目标检测模型,该模型将目标检测变为一个回归问题,比起传统的二阶段目标检测算法的先定位再分类,YOLO 仅经过一个CNN 就能实现多个目标的定位和识别,大大提升了识别速度,其检测速度是R-CNN的1 000 倍、Fast R-CNN 的100 倍[9]。早期的YOLO 和YOLOv2 在识别精度上与二阶段检测器相比稍显不足[14],而2018 年推出的YOLOv3 大幅度提高了检测的精度,并且在准确率相当的情况下其检测速度是其他模型的3~4 倍[15]。此外,该模型将图像作为整体输入特征提取网络进行训练,能够学习到背景与目标对象之间的更多信息,更适于复杂背景下小物体的目标检测。

本研究显示,该模型在验证集和测试集上取得了94%以上的mAP和81%以上的平均RR,具有良好的性能。实际应用中,在识别速度方面,该模型识别硅藻电子显微镜图像的速度可达0.143 s/张,与人工识别相比显著缩短了识别时间。在识别所用图像数量和硅藻阳性图像检出量方面,肝、肾组织样本由于硅藻数量少,需对所有扫描电子显微镜图像进行识别,识别模型检出的硅藻阳性图像数为300 张以下,显著减少了需要人工复核的可能存在硅藻的图像数;对于肺组织,人工识别和模型识别硅藻阳性图像检出量差异无统计学意义,但由于各样本硅藻含量不同,不同案例肺组织检出硅藻阳性图像数有较大差异,因此识别肺组织硅藻所用图像数量需要根据样本实际硅藻含量决定,若样本硅藻含量较少,则需要识别更多的图片。

在识别RR方面,模型在0.4 的识别阈值下各组织的硅藻RR均较高,随着识别阈值的增加,各组织的硅藻RR均有所下降。在识别PR方面,模型在0.4 的识别阈值下肺组织硅藻PR均值达87.8%,肝、肾组织PR均值不到5%,这可能是由于肝、肾组织实际含硅藻数量少,模型预测出的假阳性硅藻数量多,导致计算出的PR数值偏低。随着阈值的增加,各组织硅藻PR均有所升高。

从F1 分数看,模型在肺组织的识别效能显著高于肝、肾组织,这可能是由于肝、肾组织硅藻含量较少,而肺组织硅藻含量较多,使得模型训练时所用的硅藻样本图像大多来自肺组织,导致模型识别肝、肾组织时预测的假阳性硅藻多,使模型在肝、肾组织的查准率低、综合识别效能低。F1 分数显示,模型在肺组织的识别效能随着阈值增高而降低,结合RR和PR的变化来看,这可能是由于随着阈值的升高,肺组织的PR较高,无太多上升空间,而肺组织RR下降明显,使总体识别效能下降;模型在肝、肾组织的识别效能则随着阈值增高而升高,这可能是由于肝、肾组织每张图像上的硅藻数量少,模型预测每个目标对象的置信度都较高,所以适当提高阈值对真正硅藻的RR影响较小,并且能降低假阳性率,提高PR,取得更好的识别效能。

综合以上应用效果,笔者认为,目前该模型应用达到最佳效果需要注意以下几点:(1)对于肺组织硅藻电子显微镜图像识别,应选择较低的阈值(如0.4),在此阈值下硅藻RR和PR都能保持在较高水平。(2)对于肝、肾组织硅藻电子显微镜图像识别,应选择中高阈值(如0.6、0.8),以在保持高RR的基础上提高PR,取得更好的识别效能。(3)若肝、肾组织样本硅藻含量极低,为避免漏检,识别阈值设置为0.4较为适宜。

本研究构建的模型能够快速识别硅藻电子显微镜图像并在0.4 阈值时取得各器官较高的硅藻RR和肺组织较高的硅藻PR,对于碎片硅藻也能很好地检出。人工识别和模型识别肺组织硅藻阳性图像检出量差异无统计学意义,结合RR及PR可知,模型对于肺组织硅藻的泛化能力较好。虽然模型在肝、肾组织的硅藻PR不高,但由于肝、肾组织硅藻含量较低,电子显微镜图像大多为无硅藻的图片,模型能够在尽量不遗漏肝、肾组织所有真正硅藻的情况下大量减少需要人工复核的图片数量,使人工识别量从6 392 张降至300 张以下,很大程度上节省了识别时间。

然而,该模型也存在一些不足,值得改进:(1)该模型对于肝、肾组织的PR不高,虽然已大大减少了待识别的图像数量但仍需要硅藻检验经验丰富的专家进行复核。这与模型训练使用的样本图像集中肺组织图像较多有关,后续将加入大量肝、肾图像样本,使模型提高该类组织的PR,降低假阳性率,使没有硅藻检验经验的人员也能使用该模型进行识别。(2)目前该模型仅支持硅藻检出,并不支持硅藻种属分类识别。后期也将在训练图像集中增加硅藻种属类别标签进行训练,尝试利用该模型进行硅藻种属自动识别研究。

近年来,利用数字化方法识别硅藻越来越受人们关注,有多项研究已涉及基于深度学习的硅藻图像识别。ZHOU 等[10]基于GoogLeNet 模型建立了强酸消化-光学显微镜检验法的硅藻自动识别模型,模型受试者操作特征(receiver operator characteristic,ROC)曲线的曲线下面积(area under the curve,AUC)达0.982,并在实际案例应用中取得了92.45%的总体PR[11]。YU 等[12]利用RetinaNet 模型实现了硅藻电子显微镜图像的自动识别,模型在0.5 阈值下的PR为0.82、RR为0.88。在实际应用中,YOLOv3 模型识别能够达到较高的RR,并大幅降低了需要人工复核的硅藻阳性图像数量,对于肺、肝、肾组织的完整硅藻和碎片硅藻都能有效检出,在微波消解-真空抽滤-扫描电子显微镜法检案中具有应用可行性。

目前利用深度学习模型进行硅藻种属识别的研究也在不断进行[16-19],相信未来基于深度学习模型进行硅藻识别与分类的研究将会更加成熟与完善,该技术将逐渐应用于法医学实践中提升硅藻检验的效率。

综上所述,本研究基于深度学习中的YOLOv3 模型构建了一个硅藻电子显微镜图像识别模型,模型在训练阶段取得了良好的性能,并在实际案例应用中展现了可行性。该模型能以极快的速度进行识别,并在一定的阈值下取得良好的硅藻RR和肺组织硅藻PR,显著降低了人工识别硅藻的工作量。未来计划进一步提高模型在肝、肾组织中的硅藻PR,完善硅藻种属识别功能,扩展该模型的应用前景。

猜你喜欢

置信度阈值阳性
早期HR阳性/HER2阳性乳腺癌的治疗选择与思考
基于数据置信度衰减的多传感器区间估计融合方法
胃复春胶囊辅助治疗初治幽门螺杆菌阳性伴功能性消化不良的临床观察
食品核酸阳性情况为何突然变多
非平稳声信号下的小波变换去噪方法研究
一种基于定位置信度预测的二阶段目标检测方法
土石坝坝体失稳破坏降水阈值的确定方法
一种改进小波阈值去噪法及其仿真
一种小波阈值函数构建的图像去噪算法研究
抛开“阳性之笔”:《怕飞》身体叙事评析