news 2026/2/4 2:29:46

结合深度学习与众包学习的医学图像多专家标注分割研究【附代码】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
结合深度学习与众包学习的医学图像多专家标注分割研究【附代码】

博主简介:擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导,毕业论文、期刊论文经验交流。

✅成品或者定制,扫描文章底部微信二维码。


(1) 本研究针对医学图像分割中专家间标注差异导致的训练数据不一致性问题,创新性地设计了众包标注流程并构建了多标注数据集。通过招募并培训非医学背景的标注人员,在专业眼科医生指导下对炫彩眼底图像进行视杯和视盘的像素级标注,实现了标注流程的标准化与高效化。培训过程包括理论讲解、案例示范和实时质量反馈,确保标注者快速掌握关键标注规则,同时引入多轮标注校验机制,有效控制标注偏差。最终构建的众包数据集包含1200张眼底图像,每张图像由5至7名标注者独立完成标注,生成了丰富的多标注样本。该数据集不仅大幅降低了传统专家标注的成本(从数月缩短至数周),还通过群体智慧捕获了更广泛的标注模式,为深度学习模型提供了多样化的训练数据,显著提升了模型在实际临床场景中的适应性与鲁棒性。数据集已开源,为医学图像分割领域的数据集构建提供了新范式,有效缓解了专家资源稀缺带来的瓶颈问题。

(2) 为解决多标注数据的复杂性,本研究提出了一种基于迹正则化与分段损失函数的多专家标注分割深度网络模型。该模型包含标注者可靠性评估网络和主分割网络,两者在训练中通过端到端联合优化。可靠性评估网络动态计算每个标注的权重,依据标注间的差异性自适应调整学习强度,避免了错误标注对模型的干扰;分段损失函数则根据标注一致性自适应调整损失权重,使模型更关注高置信度标注区域。在训练过程中,模型能够自动学习标注者偏见模式,例如某些标注者倾向于过度分割视盘边界,而另一些则忽略微小结构。实验表明,该模型在炫彩眼底图像数据集上达到了93.75%的DICE系数,比单专家模型高出4.2%,在RIGA数据集上分割准确率提升至93.92%。该方法不仅有效处理了专家间差异,还通过正则化网络建模标注者可靠性,使模型在训练中自动过滤噪声标注,显著提升了分割精度与泛化能力。

(3) 本研究进一步开发了软标签学习策略,将多标注的不确定性量化为类间方差,并通过局部一致性正则化引导模型学习。具体而言,模型在训练时计算每个像素位置上不同标注的方差,将高方差区域视为不确定性较高的区域,并在损失函数中加入局部平滑约束,使分割边界更加连续。该策略有效解决了医学图像中常见的边界模糊和细节丢失问题,尤其在视杯视盘分割任务中,显著提升了微小结构的识别能力。在前列腺分割数据集QUBIQ-Prostate上,该方法达到了87.07%的分割准确率,比传统方法高出5.1%;在肾脏分割数据集QUBIQ-Kidney上,准确率提升至70.39%。此外,该方法与弱监督学习策略结合,减少了对精确标注的依赖,为标注资源有限的医疗场景提供了可行方案。

import torch import torch.nn as nn import torch.nn.functional as F class MultiExpertSegmentation(nn.Module): def init(self, num_classes=2): super(MultiExpertSegmentation, self).init() self.encoder = nn.Sequential( nn.Conv2d(3, 64, 3, padding=1), nn.ReLU(), nn.MaxPool2d(2), nn.Conv2d(64, 128, 3, padding=1), nn.ReLU(), nn.MaxPool2d(2) ) self.reliability_net = nn.Sequential( nn.Linear(128 * 56 * 56, 256), nn.ReLU(), nn.Linear(256, num_classes) ) self.segmentation_head = nn.Sequential( nn.Conv2d(128, num_classes, 1) ) def forward(self, x, annotations): features = self.encoder(x) batch_size, _, h, w = features.shape reliability = self.reliability_net(features.view(batch_size, -1)) soft_labels = torch.var(annotations, dim=1) local_smooth = F.avg_pool2d(soft_labels, kernel_size=3, padding=1) segmentation = self.segmentation_head(features) return segmentation, local_smooth if name == "main": model = MultiExpertSegmentation() input_image = torch.randn(4, 3, 224, 224) annotations = torch.randint(0, 2, (4, 5, 224, 224)).float() seg, smooth = model(input_image, annotations) print(seg.shape) print(smooth.shape)


如有问题,可以直接沟通

👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/3 18:12:00

基于深度学习的乳腺影像分割与分类研究【附代码】

✅ 博主简介:擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导,毕业论文、期刊论文经验交流。✅成品或者定制,扫描文章底部微信二维码。(1) 本研究针对乳腺钼靶图像分类中特征提取的挑战,提出了一种融合CNN和Tr…

作者头像 李华
网站建设 2026/2/3 8:15:14

医疗器械注册包装测试:国标GB/T 4857的核心地位

医疗器械注册进程中,包装运输测试是保障产品流通安全的关键环节,而测试标准的选择直接影响注册效率与合规性。近期北京药监局针对二类医疗器械注册的回复明确:GB/T 4857系列是国内包装运输测试的基础性、强制性标准。该标准聚焦国内物流环境特…

作者头像 李华
网站建设 2026/2/4 2:02:59

leetcode 868. Binary Gap 二进制间距-耗时100

Problem: 868. Binary Gap 二进制间距 解题过程 耗时100%&#xff0c;二进制位运算&#xff0c;前一个1的索引和后一个1的索引相减的绝对值的最大值 Code class Solution { public:int binaryGap(int n) {bitset<32> se(n);if(n < 2 || se.count() 1) return 0;int …

作者头像 李华
网站建设 2026/2/3 11:58:44

机器人日志系统十年演进

下面给你一条专门针对机器人系统的 「机器人日志系统十年演进路线&#xff08;2025–2035&#xff09;」。 这里的“日志系统”不是简单的 log 收集&#xff0c;而是机器人如何记住自己做过什么、为什么这么做、出了问题如何复盘、未来如何避免重犯。 一、核心判断&#xff08;…

作者头像 李华