ERDUnet: An Efficient Residual Double-codingUnet for Medical Image Segmentation
ERDUnet:一种用于医学图像分割的高效残差双编码单元
摘要
医学图像分割在临床诊断中有着广泛的应用,基于卷积神经网络的分割方法已经能够达到较高的准确率。然而,提取全局上下文特征仍然很困难,而且参数太大,无法临床应用。为此,我们提出了一种新的网络结构来改进传统的编码器-解码器网络模型,在保持分割精度的同时节省了参数。通过构造一个能够同时提取局部特征和全局连续性信息的编码器模块,提高了特征提取效率。设计了一种新的注意力模块,在优化分割边界区域的同时提高训练效率。改进了解码部分的特征传递结构,充分融合了不同层次的特征,更精细地还原了空间分辨率。我们在7个不同的医学分割数据集上评估了我们的模型,这些数据集分别是2018年数据科学碗挑战赛(DSBC2018)、2018年病变边界分割挑战赛(ISIC2018)、结肠组织学图像中的腺体分割挑战赛(GlaS)、KvasirSEG、CVC-ClinicDB、Kvasir-Instrument和polygen。大量的实验结果表明,我们的模型在保持较少的参数和计算量的情况下,可以获得良好的分割性能,进一步促进理论方法在临床实践中的推广。
我们的代码将在https://github.com/caijilia/ERDUnet上发布。
1 介绍
医学图像分析是现代临床疾病诊断的一项基础性工作。分割结果可以从医学图像提供的大量病理信息中识别出疾病诊断所需的病变区域,便于医生进一步对病变进行评估。准确的分割可以帮助医生获得可靠的形态学统计数据,用于疾病诊断。例如,在染色组织切片图像中检查不同组织学分级腺体的形态,判断腺体组织是否癌变[1]。及时诊断可以帮助医生及早干预治疗,避免病情恶化,降低死亡率。例如,皮肤癌可以通过皮肤镜来识别
早期及时诊断可使95%的患者平均生存率提高5年[3]。
目前,大多数医院依靠经验丰富的医疗专业人员用肉眼进行视觉识别。这是一项耗时费力的任务。与此同时,人工分割带来的另一个问题是缺乏统一的标准和指南,往往只依靠临床经验,不同的人在处理同一目标时可能产生不同的分割结果[4]。医疗资源分布不均将加剧这一现象的后果。由于缺乏高水平的医生进行诊断,即使患者可以使用显像机获得足够的病理图像,也可能错过最佳的治疗时机。
计算机辅助诊断(CAD)系统是解决这一问题的重要途径,它利用计算机视觉技术协助医疗专业人员进行高质量的临床诊断。医学图像分割技术是计算机辅助设计的重要组成部分。它负责从医学图像中自动分割病变区域,用于后续的诊断和分析。在实际的医学场景中,用于诊断的病理图像的模态是不均匀的。病灶区域的形状往往不规则,分割目标与背景的对比度差异往往不是很明显[5]。此外,更具体的一点是,病变区域的大小可以根据个体患者的差异而有很大差异。
医学图像中这些目标特征给分割算法的设计带来了很大的挑战。
为了克服这些挑战,基于深度学习的医学图像分割方法正发挥着越来越重要的作用[6]-[9]。然而,这些方法通常具有大量的参数和较高的计算负荷[10]-[13],使得理论模型难以推广到临床实践。因此,我们的研究动机是在保持分割精度的同时降低模型复杂度,从而设计出一种适合临床实践的高精度、高效的分割网络模型。
因此,我们提出了一种新的分割网络结构。首先,我们在编码部分提出了一种新的上下文增强编码器(Context Enhanced Encoder, CEE)模块,该模块包括两个分支,分别负责提取局部空间细节特征和全局上下文连续性特征。在解码部分,我们提出了一种新的特征重用融合解码器(FFD)模块,该模块使用多个跳过连接构建密集连接的模式。这种方法融合了编码部分的浅层特征,提高了编码效率
网络使用效率和解码精度。为了消除编码和解码子网之间的语义差距,我们设计了一个接收域聚合(MRA)模块作为转换链路。最后,我们利用这些模块设计了两个相互独立的小参数编解码器网络。为了实现分割性能的进一步突破,我们构建了一种新的两层网络范式,允许两个独立的网络协同使用,以提高最终的分割性能。根据平衡模型性能和计算负荷的设计原则,我们最终实现了一个学习效率高、节约资源的双网络模型。我们提出的分割模型可以准确分割困难的病变区域,其准确率与经验丰富的医生手工分割的准确率相当,甚至在一些不明显的样本上也能取得更好的效果。同时,深度学习方法可以更好地提取不同患者之间个体独立的疾病一致性特征。因此,它可以为诊断结果的形成提供可靠的数据支持,帮助医生做出更准确的诊断,设计更有针对性的治疗方案。同时,基于该模型可以形成一个自动化的分割流程,减少医生的工作量。本文的主要贡献如下:1)设计了一种差分区域注意机制,该机制侧重于根据不同阶段特征中的不同区域提取高级语义,从而优化分割结果中的边界区域,提高模型学习效率。
2)从特征提取和融合的角度对经典u型结构进行综合改进,提高了编码效率和解码信息量,从而在降低模型参数尺度的同时提高了分割性能。
3)本文提出了一种新的双网络模型,以获得更精细的分割结果。在七个公开的医疗数据集上进行的大量实验显示了非常好的性能,验证了模型的有效性和鲁棒性。
2 相关工作
A.基于卷积神经网络的医学图像分割
基于卷积神经网络的方法广泛应用于医学图像分割领域,其中Unet[6]是最经典的方法,被广泛用作各种分割任务的主干。基于该编码器-解码器框架,开发了一系列改进模型,其中提出了各种改进。Unet++[10]提出在原有结构上增加一系列嵌套的跳过连接,克服编码部分和解码部分之间的语义差距,提高性能。
Unet3+[11]延续了这一思路,提出了全尺寸密集连接,以充分挖掘特征图的细节
不同尺度,提高了对不同尺度器官的分割效果。ResUnet++[14]利用残差块解决了网络深度加深时容易出现的退化问题,在数据集较少的情况下可以很好地应用。MSRF-Net[4]综合利用多尺度融合和残差块,对编码部分输出的浅层特征设计了信息交换模块,以捕获不同目标的可变性。Double-Unet[12]从整体层面考虑,提出将两个Unet结构叠加组合,以更有效地提取更有效的信息。
然而,所有这些基于卷积的模型都存在感知场有限的问题。我们通过在特征编码中引入特征嵌入方法来解决这一问题,以实现卷积操作感知领域的进一步扩展。
B.基于Transformer的医学图像分割
基于变压器的模型由于具有较好的全局特征提取能力而得到了广泛的应用。其中,TransUnet[15]将变压器模块作为卷积层编码输出的补充,丰富了编码结果的全局上下文信息。Transfuse[16]将传统的u型结构扩展为两支路并行结构,通过将基于卷积的路径和基于变压器的路径并行融合,提高分割性能,为原变压器方法提供空间诱导偏置信息。为了降低模型的复杂性,Colonformer[17]引入了轻量级Mix变压器[18]模块,最终在计算负荷和精度上取得了很好的折衷。swwin -transformer是对Visiontransformer的改进。SwinUnet[19]利用该模块实现了一个完全基于变压器的分割网络,实现了从局部到全局的自关注编码,能够更好地适应目标尺度的变化。SSFormer[5]提出以原有的Swin Transformer为主干构建分层架构,通过图像patch的合并和位移窗口的使用实现参数约简,通过集成Multilayer Perceptron (MLP)作为解码器完成分割任务,最终实现整体模型的轻量化。
尽管基于transformer的方法已经显示出良好的结果,但是它需要大量带注释的数据来保持训练的有效性,这是非常劳动密集型的,并且很难实现。因此,我们的模型仍然是基于卷积运算实现的,但其中设计了一种补偿机制,可以增强全局上下文信息的特征学习。本设计提高了性能,打破了对数据的要求,使其更适合医学图像分割任务。
C.注意机制
注意机制是深度神经网络中一种常用的优化技术,它可以提高特征提取的效率。CBAM[20]提出了通道注意[21]与空间注意相结合的方法,得到了广泛的应用
用于各种视觉任务。SLSM-CA[22]提出为背景区域设计两个注意分支&
相关文章:
ERDUnet: An Efficient Residual Double-codingUnet for Medical Image Segmentation
ERDUnet:一种用于医学图像分割的高效残差双编码单元 摘要 医学图像分割在临床诊断中有着广泛的应用,基于卷积神经网络的分割方法已经能够达到较高的准确率。然而,提取全局上下文特征仍然很困难,而且参数太大,无法临床应用。为此,我们提出了一种新的网络结构来改进传统的…...
vue响应式基础
声明响应式状态 ref() 在组合式 API 中,推荐使用 ref() 函数来声明响应式状态: import { ref } from vueconst count ref(0) ref() 接收参数,并将其包裹在一个带有 .value 属性的 ref 对象中返回: const count ref(0)c…...
每天上万简历,录取不到1%!阿里腾讯的 offer 都给了哪些人?
三月天杨柳醉春烟~正是求职好时节~ 与去年秋招的冷淡不同,今年春招市场放宽了许多,不少企业纷纷抛出橄榄枝,各大厂的只差把“缺人”两个字写在脸上了。 字节跳动技术方向开放数10个类型岗位,研发需求占比60%,非研发新增…...
外包干了20天,技术退步明显.......
先说一下自己的情况,大专生,21年通过校招进入杭州某软件公司,干了接近2年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了2年的功能测试…...
4核8G云服务器,阿里云要多少钱?
阿里云4核8G服务器优惠价格955元一年,配置为ECS通用算力型u1实例(ecs.u1-c1m2.xlarge)4核8G配置、1M到3M带宽可选、ESSD Entry系统盘20G到40G可选,CPU采用Intel(R) Xeon(R) Platinum处理器,阿里云活动链接 aliyunfuwuq…...
数学分析复习:振荡型级数的收敛判别
文章目录 振荡型级数的收敛判别 本篇文章适合个人复习翻阅,不建议新手入门使用 振荡型级数的收敛判别 直观上,振荡型级数说的是级数各项有正有负,求和的时候可以相互抵消,故可能收敛 命题:Abel求和公式 设复数列 { …...
阿里CICD流水线Docker部署,将阿里镜像私仓中的镜像部署到服务器中
文章目录 阿里CICD流水线Docker部署,将阿里镜像私仓中的镜像部署到服务器中一、CICD流水线的初步使用可以看我之前的两篇文章二、添加部署任务,进行Docker部署,创建一个阿里的试用主机1、选择主机部署,并添加服务主机2、创建免费体…...
并发VS并行
参考文章 面试必考的:并发和并行有什么区别? 并发:一个人同时做多件事(射击游戏队友抢装备) 并行:多人同时处理同一件事(射击游戏敌人同时射击对方)...
C语言经典例题(8) --- 进制A+B、网购、及格分数、最高分数、计算一元二次方程
文章目录 1.进制AB2.网购3.及格分数4.最高分数5.计算一元二次方程 1.进制AB 题目描述: 输入一个十六进制数a,和一个八进制数b,输出ab的十进制结果(范围-231~231-1)。 输入描述: 一行,一个十六…...
两区域二次调频风火机组,麻雀启发式算法改进simulink与matlab联合
区域1结果 区域2结果 红色曲线为优化后结果〔风火机组二次调频〕...
自动驾驶国际标准ISO文件
Coordinate system:Road vehicles — Vehicle dynamics and road-holding ability — Vocabulary...
【数据结构】双向奔赴的爱恋 --- 双向链表
关注小庄 顿顿解馋๑ᵒᯅᵒ๑ 引言:上回我们讲解了单链表(单向不循环不带头链表),我们可以发现他是存在一定缺陷的,比如尾删的时候需要遍历一遍链表,这会大大降低我们的性能,再比如对于链表中的一个结点我们是无法直接…...
【Redis】高频面试题
提供五种常见的数据类型:String(字符串),Hash(哈希),List(列表),Set(集合)、Zset(有序集合) 文章目录 1、为什…...
数据分析基础
数据分析基础 1. 数据加载 使用 Pandas 库可以轻松地加载各种格式的数据,如 CSV、Excel、JSON 等。 import pandas as pd# 从 CSV 文件加载数据 data pd.read_csv(‘data.csv’). 2. 数据探索 一旦数据加载完成,我们可以开始对数据进行探索性分析&a…...
ffmpeg把一个平面视频,做成左右平面视频
要使用FFmpeg将单个平面视频转换为左右(或称为并排)3D格式的视频,你可以使用FFmpeg的filter_complex功能来实现。这种类型的视频通常用于3D视觉效果,其中同一画面的两个版本并排放置,每个版本略有不同的视角࿰…...
Docker搭建LNMP环境实战(02):Win10下安装VMware
实战开始,先安装 VMware 虚拟机。话不多说,上手就干! 1、基本环境检查 1.1、本机Bios是否支持虚拟化 进入:任务管理器- 性能,查看“虚拟化”是否启用,如果已启用,则满足要求,如果未…...
苍穹外卖笔记
苍穹外卖 DAY01nginx反向代理MD5加密yapi进行接口导入Swagger介绍 DAY02新增员工需求分析和设计写相关代码测试(1. 后端文档测试 2. 前后端联调代码完善 员工分页查询DAY01 02涉及到的知识 DAY03阿里云OSS事务注解 Transactional DAY01 nginx反向代理 MD5加密 拓展࿱…...
[医学分割大模型系列] (3) SAM-Med3D 分割大模型详解
[医学分割大模型系列] -3- SAM-Med3D 分割大模型解析 1. 特点2. 背景3. 训练数据集3.1 数据集收集3.2 数据清洗3.3 模型微调数据集 4. 模型结构4.1 3D Image Encoder4.2 3D Prompt Encoder4.3 3D mask Decoder4.4 模型权重 5. 评估5.1 评估数据集5.2 Quantitative Evaluation5.…...
【React】React中将 Props 传递给组件
当使用 React 时,props 是组件之间传递数据的主要方式。以下是针对您提到的五个问题的详细解答: 1. 如何向组件传递 props 在父组件中,你可以通过组件标签的属性(attributes)将 props 传递给子组件。这些属性在子组件…...
JOL工具查看java对象布局
JOL(Java Object Layout)是一个用于分析Java对象在Java虚拟机(JVM)中内存布局的小工具包。以下是如何使用JOL查看Java对象布局的步骤示例: Maven项目中添加依赖: 首先,在Maven项目中引入JOL工…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
