0

0

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)

絕刀狂花

絕刀狂花

发布时间:2025-07-13 09:36:14

|

857人浏览过

|

来源于php中文网

原创

▊ 研究背景介绍

由于深度学习任务通常依赖大量标注数据,医疗图像的标注需要专业知识,标注人员需精确判断病灶的大小、形状、边缘等信息,甚至需要经验丰富的专家进行多次评估,这增加了深度学习在医疗领域应用的难度。

目前,尽管有一些公开数据集(如LIDC-IDRI、LUNA等)可供使用,但这些数据集的图像数量有限且存在偏倚性,导致模型容易过拟合。为了解决这一问题,通常采用迁移学习,使用ImageNet等大规模数据集的预训练参数来加速模型收敛。然而,对于3D医学图像(如CT、MRI等),缺乏有效的3D模型预训练参数。

本文介绍了一项针对3D医学影像中病灶检测的研究,该研究提出了一种新框架,能够有效利用3D上下文信息进行2D病灶检测,并提出了一种预训练3D卷积神经网络的新方法。

该研究发表于MICCAI 2020 [1],在迄今为止最大的CT图像数据集NIH DeepLesion上进行实验,取得了SOTA的病灶检测结果。在Sensitivity@0.5FPs上,比现有SOTA方法提升了3.48%,而相比2.5D的基线方法,提升高达4.93%。

此外,实验表明文中提出的有监督预训练方法能有效提高3D模型的训练收敛速度,并在小数据集上提升模型精度。研究者在四个基准3D医学数据集上进行了大规模实验,结果显示对我们的预训练3D模型进行微调不仅显著优于从头训练的3D模型,并且在多数任务上也优于现有的最先进的自监督和全监督预训练模型。

预训练相关的代码以及基于ResNet3D-18的预训练模型已公开,链接为:

https://www.php.cn/link/9c2cc80894bbd442867697b3e4a4656f

▊ 文章信息

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)Shu Zhang, Jincheng Xu, Yu Chun Chen, Jiechao Ma, Zihao Li, Yizhou Wang, and Yizhou Yu.

"Revisiting 3D Context Modeling with Supervised Pre-training for Universal Lesion Detection on CT Slices." In International Conference on Medical Image Computing and Computer-Assisted Intervention(MICCAI), pp. 542-551. Springer, Cham, 2020。

论文:https://www.php.cn/link/f6ae7ed0c6df83e4bada48b9c9f2b5ff

一、Revisiting 3D Context Modeling with Supervised Pre-training for Universal Lesion Detection in CT Slices.1. CT关键层面中病灶检测中的3D上下文建模对于自然图像,通常采用2D CNN解决相关问题。但对于医学图像,尤其是3D医学图像(如CT、MRI等),不同层面上的影像展示了同一病灶或器官的不同切面,这些信息具有高度的相关性和互补性。仅在单个层面进行图像检测会浪费大量信息,并可能导致诊断结果偏差。

对于CT影像关键层面的2D病灶检测,一个直接的解决方案是将连续的三层CT影像拼接成一个3通道二维图像,输入2D网络进行病灶检测。这种方法能利用2D自然图像的预训练模型提升特征表达能力,但缺乏对多层面之间相关信息的处理和解释能力,难以进行3D上下文建模,因此效果有限。

当前许多研究意识到3D上下文建模的重要性,如MVP-Net[2]等工作采用2.5D方法来提升3D上下文建模能力,通过构造多通道2D网络融合更多连续层面(如9层或27层)的2D特征,实验结果显示这种方法比单纯的2D方法有较大性能提升。

本文针对3D上下文建模问题提出了一种更直接的解决方案,即直接对连续多层CT图像使用3D卷积进行特征提取,这样能更好地提取连续层面之间的结构和纹理特征。同时,为解决3D卷积计算量大和训练收敛慢的问题,我们提出了针对性的模型结构改进和3D预训练方法。

  1. 3D上下文信息增强网络(MP3D)本研究针对CT图像关键层面中的病灶检测问题,开发了一个通用且高效的网络框架,用于增强3D上下文信息建模。首先,我们提出一种改进的伪3D框架来对连续多层输入进行高效的3D上下文特征提取,并通过一个组卷积变换模块,将3D特征转换为2D特征,以适配2D目标检测任务。

为了提高普通三维ResNet的计算和参数存储效率,我们采用伪3D残差网络(P3D ResNet)作为我们的原型骨干网络。伪3D卷积模拟的是3 × 3 × 3卷积在轴向视图切片上使用1 × 3 × 3卷积核加上3 × 1 × 1卷积核来构建相邻CT上的上下文信息(如图1所示)。

此外,在关键层面病灶检测这种问题设定中,通常我们输入的图像层数(文中n=9)远小于轴位上的图像尺寸(通常是512*512)。我们在整个特征提取过程中,只对XY方向进行降采样,保持Z方向的尺寸不变,从而确保模型始终具有3D上下文建模的能力。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)图1:MP3D网络框架

  1. 基于变维度转换的3D模型预训练我们发现,在NIH DeepLesion这种较大数据量的数据集中,使用3D backbone进行建模时,尽管从头训练也能得到较好的模型效果,但其收敛时间通常是微调模式的3倍以上。在数据量较小的情况下,即便训练足够长的轮次,其收敛效果也难以与微调模式相比。

为此,我们设计了一种有监督的预训练方法来增强MP3D的训练及收敛性能(图2)。本工作提出了一种基于变维度转换的3D模型预训练方法:具体地,我们将2D空间中的通道数(channel维度)转换为3D空间中的层面数(depth维度),将原始具有色彩信息的RGB三通道二维图像转化为三维空间中的三个连续层面。

通过变维度转换,丰富的二维空间颜色信息以3D结构信息的形式被保存下来。基于这些伪3D数据学习的3D卷积核则具有表达3D医学图像中复杂3D结构和纹理信息的能力。

使用变维度转换模块得到的伪3D图像进行3D模型预训练时,与上文中介绍的检测模型类似,需要注意不要在Z方向进行降采样操作,确保Z方向始终保持depth=3,从而可以不断学习3D上下文信息。预训练的代理任务根据使用的数据集不同,可以是基于ImageNet的分类任务、基于COCO的检测任务或基于分割数据集的分割任务等。

最终,通过该方法学习到的3D网络参数可用于下游医学任务的微调及优化,其迁移学习能力远超于在下游3D医学数据上从头训练的实验效果。同时,由于可以利用现有2D数据集进行3D模型预训练,相比其他预训练方法,该方案避免了采集大规模医疗数据的需要,更不用做新的数据标注。

千问APP
千问APP

阿里最强大模型官方AI助手

下载

值得注意的是,在本文之前,将三个连续层面的3D医学图像合并成RGB图像,并使用在自然图像领域预训练好的2D模型进行特征表达已成为处理医学影像的标准流程。本文提出的变维度转换可以认为是上述过程的一个逆变换。基于该逆变换,我们则可以有效利用2D自然图像进行3D模型的预训练。后面的实验结论证明了这种变维度转换模块的有效性。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)图2:基于变维度转换的3D模型预训练

  1. 关键层面病灶检出问题的实验设计与结果分析该研究采用NIH DeepLesion数据集作为模型的对比,模型的效果评价方法使用每幅图像在不同误报(FPs)下的灵敏度以及MAP@0.5。从表1中可以看出,与之前的SOTA方法相比较,我们的模型在不同的灵敏度上都超过了其他所有方法,展示了三维模型的优越性,以及MP3D网络对上下文信息的建模能力。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)表1: 在DeepLesion测试集上,每幅图像在不同FPs下的灵敏度(%)

为了进一步证明预训练方法的效果,表2中的定量结果可以看出,使用所提预训练方法可以在仅训练1/3的轮次(2x vs 6x的lr-schedule)的条件下取得与从头开始训练网络相同的效果。在同样使用1x和2x的训练时长条件下,使用预训练模型的结果远好于从头开始训练的模型。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)表2: 在DeepLesion测试集上,预训练方法的消融实验效果

  1. 预训练效果的实验设计与结果分析本节对上一工作中的预训练参数方法的有效性进行了全面分析验证,相关实验细节请参考我们arXiv上的最新技术报告[3](Advancing 3D Medical Image Analysis with Variable Dimension Transform based Supervised 3D Pre-training:https://www.php.cn/link/96e215fcdd3532d140b8af71e4c73931

目前在医学图像的预训练参数生成任务中,由于缺乏大规模标注数据集,一般采用自监督学习的方法,对未标注的数据使用对比学习的方法来学习预训练参数。然而,对于一些通用的医学任务,由于缺少一定程度的监督信息(语义不变性和判别性),会导致这些判别特征难以被挖掘。

本研究为了全面比较不同预训练方法在不同数据集上不同任务上的效果,分别在LIDC-IDRI数据集、LITS肝脏数据集、NIH DeepLesion数据集上进行分类、分割以及检测任务。并且与这些任务上的SOTA方法进行比较,我们的方法在不同数据集上均能取得较大提升。同时,在图3对肝脏器官分割的可视化中,所提方法能够完整地分割出相应的区域,证明了该方法的有效性和临床应用价值。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)表3:LIDC以及LITS分割数据集效果

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)表4:LIDC分类数据集效果

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)表5: NIH DeepLesion检测数据集效果

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)图3:LITS可视化

为了进一步验证我们的预训练方法在有限数据场景下的模型效果,我们基于20%、40%、60%、80% 以及100% NIH DeepLesion数据分别微调了预训练模型,用来比较使用我们提出的预训练模型做迁移学习与直接从头训练之间的性能差异。

图4的每一幅图展示了在某一种具体指标上的效果对比,其中最后一幅图展示的meanFROC是对检测模型整体效果的一个描述。可以看出在同样的训练轮次,我们的预训练模型在每一种数据量下都可以取得比从头训练更好的效果,而且随着数据量的缩小,这个效果的差距会被不断地放大。

这说明预训练模型对于小数据量的场景具有更突出的优化效果。此外,从最后一幅图可以看出,在使用不到40%的总数据量时,基于我们提出的预训练模型训练的模型效果好于在全量数据上从头训练的模型效果。因此,相对于从头开始训练的方法,该预训练模型可以节省大约60%的数据标注成本。

MICCAI 2020 | 基于3D监督预训练的全身病灶检测SOTA(预训练代码和模型已公开)图4:预训练模型在不同数据量下的效果对比

代码:https://www.php.cn/link/9c2cc80894bbd442867697b3e4a4656f

参考文献:

[1] Shu Zhang, Jincheng Xu, Yu Chun Chen, Jiechao Ma, Zihao Li, Yizhou Wang, and Yizhou Yu. "Revisiting 3D Context Modeling with Supervised Pre-training for Universal Lesion Detection on CT Slices." In International Conference on Medical Image Computing and Computer-Assisted Intervention(MICCAI), pp. 542-551. Springer, Cham, 2020.

[2] Li, Zihao, Shu Zhang, Junge Zhang, Kaiqi Huang, Yizhou Wang, and Yizhou Yu. "Mvp-net: Multi-view fpn with position-aware attention for deep universal lesion detection." In International Conference on Medical Image Computing and Computer-Assisted Intervention, pp. 13-21. Springer, Cham, 2019.

[3] Shu Zhang, Zihao Li, Hong-Yu Zhou, Jiechao Ma and Yizhou Yu. "Advancing 3D Medical Image Analysis with Variable Dimension Transform based Supervised 3D Pre-training"arXiv preprint arXiv: 2201.01426 2022 Jan 6.

END

相关专题

更多
go语言 数组和切片
go语言 数组和切片

本专题整合了go语言数组和切片的区别与含义,阅读专题下面的文章了解更多详细内容。

46

2025.09.03

golang map内存释放
golang map内存释放

本专题整合了golang map内存相关教程,阅读专题下面的文章了解更多相关内容。

75

2025.09.05

golang map相关教程
golang map相关教程

本专题整合了golang map相关教程,阅读专题下面的文章了解更多详细内容。

36

2025.11.16

golang map原理
golang map原理

本专题整合了golang map相关内容,阅读专题下面的文章了解更多详细内容。

59

2025.11.17

java判断map相关教程
java判断map相关教程

本专题整合了java判断map相关教程,阅读专题下面的文章了解更多详细内容。

38

2025.11.27

Golang channel原理
Golang channel原理

本专题整合了Golang channel通信相关介绍,阅读专题下面的文章了解更多详细内容。

246

2025.11.14

golang channel相关教程
golang channel相关教程

本专题整合了golang处理channel相关教程,阅读专题下面的文章了解更多详细内容。

342

2025.11.17

CSS position定位有几种方式
CSS position定位有几种方式

有4种,分别是静态定位、相对定位、绝对定位和固定定位。更多关于CSS position定位有几种方式的内容,可以访问下面的文章。

81

2023.11.23

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

3

2026.01.19

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Django 教程
Django 教程

共28课时 | 3.2万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.2万人学习

Sass 教程
Sass 教程

共14课时 | 0.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号