U-Net及其变体在医学图像分割中的应用研究综述

U-Net及其变体在医学图像分割中的应用研究综述

论文来自:中国生物医学工程学报 2022

摘 要: 医学图像分割可以为临床诊疗和病理学研究提供可靠的依据,并能辅助医生对病人的病情做出准确的判断。 基于深度学习的分割网络的出现解决了传统自动分割方法鲁棒性不强、准确率低等问题。 U-Net凭借其出色的性能在众多的分割网络中脱颖而出,研究者以U-Net为基础相继提出了多种改进变体。 以U-Net网络及其变体为主线,首先详细介绍U-Net的网络结构及常用改进方法;然后根据分割对象的不同,将U-Net变体网络进一步划分为泛用型分割网络及特定型分割网络,并就其在医学图像分割中的研究进展进行论述;最后,分析了目前研究中工作尚存在的难点与问题,并对今后的发展方向进行展望。

主要是基于Unet的变体研究

基本介绍UNet模型

在这里插入图片描述
2015年提出的UNet模型是我们学习语义分割必学的一个优秀模型,它兼具轻量化与高性能,因此通常作为语义分割任务的基线测试模型,至今仍是如此,其优秀程度可见一斑。UNet从本质上来说也属于一种全卷积神经网络模型,它的取名来源于其架构形状:模型整体呈现"U"形。它的出生是为了解决医疗影像语义分割问题的,但之后几年的发展,也证实了它是语义分割任务中的全能选手,或许这就是优秀网络架构的优异之处。
或许可以从以下三点解释为什么UNet在医疗影像上表现突出:

1.UNet的U形网络结构密集融合了浅层特征与深层特征
2. 医疗影像数据量与UNet模型体量上相匹配,有效避免了过拟合
3. 医疗影像结构简单且固定,具有较低语义信息

U-Net网络改进
虽然 U-Net 在医学图像分割方面取得了重大突破,但还是存在着网络可延展性不理想训练小数据集时容易过拟合等方面的不足。 根据目标对象的特性、图像模态和应用场景等因素的不同,研究人员通常在原网络的基础上有针对性地选择合适的改进方法来提高网络分割的性能。

改进方向

1. 修改跳跃连接
跳跃连接不仅能融合高低层级特征,并且有助于加快网络收敛,不同形式跳跃连接的组合能让网络不需要额外的后端处理也能取得理想的分割效果。

2. 引入新技术
提出新的注意力模块、融合模块等
在这里插入图片描述

3. 融合其他网络
将resNet 与U-Net结合等融合网络。

4. 网络级联
在这里插入图片描述

基于U-Net及其改进变体的医学图像分割

在这里插入图片描述

总结与展望

文中回顾了U-Net及以U-Net为基础的改进型网络在医学图像分割中的应用。 研究进展表明U-Net及其变体网络在医学图像分割中有着广阔的应用前景,分割结果优于传统方法,然而也要看到所存在的问题

1) 医学图像数据集的规模相较于其他语义分割的数据集来说,因涉及病人隐私,采样较为困难,因而规模较小。 而 U-Net网络参数量大,在数据集规模较小时容易产生过拟合,因此需要选择合适的改进方式对网络结构进行调整。

2)== 医学图像成像和一般图像相比更为复杂,可能会存在伪影==,从而影响分割效果,需要选择恰当的预处理算法以减少伪影对分割的影响。

3) 医学图像中不乏血管、细胞等需要精细化分割的目标,可以使用密集连接、注意力机制等优化方法,从而突出对有利于分割任务的特征

4) 上述的分割模型虽已在准确率、Iou 和 DSC等指标上均达到了较高的水平,但这毕竟是基于实验室的数据,U-Net等深度学习模型要走到实际诊疗环境中还面临着许多困难。 如训练测试所使用的数据都是经过精心挑选的,这些图像数据过于“干净”;深度学习模型对图像注解的依赖性极强,但即便是经验丰富的注解师也会在标注过程中出现主观误差。 这些问题都会对学习模型的准确率产生潜在的影响。

5) 许多网络模型结构复杂、参数量巨大,在实际的应用环境中可能难以复现。 因此,今后的工作方向应该是在保证实验室高准确率的条件下对模型做适当调整,让深度学习从理论走向临床应用之中。未来U-Net的发展会在保持编码-译码结构和
跳跃连接的基础上
,与其他神经网络相结合以进一步提高医学图像分割的准确率,如:
1)图神经网络(GNN)在处理 3D数据时有着天然的优势,已有实验使用门控图神经网络实现了交互式的 3D医学图像分割,因此 U-Net可结合 GNN来更好地提取 3D特征;
2) 生成对抗网络 (GAN)能生成质量较高的图像,已有实验证明,使用GAN生成额外的训练图像对网络进行训练能在一定程度上提高分割性能。 因此,在使用 U-Net 或其变体网络分割前,使用GAN生成相应的医学图像对训练集进行扩充,可以在一定程度上解决数据集规模较小的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/195542.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Git——Git应用入门

将会介绍以下知识: 搭建Git环境和创建Git版本库(init、clone)。文件添加、状态检查、创建注释和查看历史记录。与其他Git版本库交互(pull、push)。解决合并冲突。创建分支列表、列表切换和合并。创建标签。 1、版本控…

sqli-labs靶场详解(less17-less22)

目录 less-17 less-18 less-19 less-20 less-21 less-22 less-17 修改密码关卡 服务器后端 账号密码都存在数据库中 使用UPDATE进行修改密码 尝试username处 尝试好久尝试不出来应该是对用户名进行了过滤 于是对password进行注入 判断注入点 passwdadmin 报错&#xff1a…

vue3中的customRef创建一个自定义的 ref对象

customRef 创建一个自定义的 ref&#xff0c;并对其依赖项跟踪和更新触发进行显式控制 小案例: 自定义 ref 实现 debounce <template><div style"font-size: 14px;"><input v-model"text" placeholder"搜索关键字"/><…

智能优化算法应用:基于郊狼算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于郊狼算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于郊狼算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.郊狼算法4.实验参数设定5.算法结果6.参考文献7.MATLAB…

深思:C与C++相互调用问题

背景 上周&#xff0c;偶然看到同事愁眉苦脸的样子&#xff0c;便善意咨询了下发生了什么。简单沟通下&#xff0c;才知道他遇到了一个工程编译的问题&#xff0c;一直无法编译通过&#xff0c;困扰了他快一天时间。出于个人的求知欲和知识的渴望&#xff0c;我便主动与他一同分…

PHP中关于func_get_args()方法

首先呢这个函数出现的是比较早的,大致应该是PHP4出现的, func_get_args — 返回一个包含函数参数列表的数组 说明 func_get_args(): array 获取函数参数列表的数组。 该函数可以配合 func_get_arg() 和 func_num_args() 一起使用&#xff0c;从而使得用户自定义函数可以接…

基于C#实现块状链表

在数据结构的世界里&#xff0c;我们会认识各种各样的数据结构&#xff0c;每一种数据结构都能解决相应领域的问题&#xff0c;当然每个数据结构&#xff0c;有他的优点&#xff0c;必然就有它的缺点&#xff0c;那么如何创造一种数据结构来将某两种数据结构进行扬长避短&#…

【数据结构/C++】栈和队列_循环队列

牺牲一个存储单元来判断队满。 #include<iostream> using namespace std; // 循环队列 #define MaxSize 10 typedef int ElemType; typedef struct {ElemType data[MaxSize];int front, rear; } SqQueue; // 初始化队列 void InitQueue(SqQueue &Q) {// 判断队空 Q.…

微服务知识大杂烩

1.什么是微服务? 微服务(Microservices)是一种软件架构风格,将一个大型应用程序划分为一组小型、自治且松耦合的服务。每个微服务负责执行特定的业务功能,并通过轻量级通信机制(如HTTP)相互协作。每个微服务可以独立开发、部署和扩展,使得应用程序更加灵活、可伸缩和可…

Milvus入门手册1.0

一、window环境搭建&#xff08;单机&#xff09; 1、docker安装 略 2、milvus安装 参考文档&#xff1a;https://milvus.io/docs/install_standalone-docker.md tips: &#xff08;1&#xff09;compose.yaml下载比较慢&#xff0c;可以在网络上找一份。 &#xff08;2&…

2023-11-26 LeetCode每日一题(统计子串中的唯一字符)

2023-11-26每日一题 一、题目编号 828. 统计子串中的唯一字符二、题目链接 点击跳转到题目位置 三、题目描述 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符&#xff0c;并返回唯一字符的个数。 例如&#xff1a;s “LEETCODE” &#xff0c;则其…

Python字典合并

合并两个有部分key相同的字典&#xff0c;相同key保留两个字典中对应key的较大值。 (笔记模板由python脚本于2023年11月27日 18:12:15创建&#xff0c;本篇笔记适合熟悉Python字典的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Fr…

通过预定义颜色查找表上色_vtkLookupTable_vtkColorTransferFunction

开发环境&#xff1a; Windows 11 家庭中文版Microsoft Visual Studio Community 2019VTK-9.3.0.rc0vtk-example demo解决问题&#xff1a;通过颜色查找表给vtkPlaneSource上色 第一种技术是使用预定义颜色的查找表vtkLookupTable。这包括创建一个查找表并为其分配一组已命名的…

攻关眼科难题!第一届爱尔眼科-四川大学科研基金完成立项

当前我国眼科患者数量不断增长&#xff0c;人民群众对高质量的眼健康的需要不断攀升&#xff0c;而目前国内眼科医疗资源远不能满足需求&#xff0c;疑难眼病诊疗能力及学术科研体系建设仍有较大进步空间。基于此&#xff0c;爱尔眼科携手四川大学共同设立爱尔眼科-四川大学科研…

js moment时间范围拿到中间间隔时间

2023.11.27今天我学习了如何对只返回的开始时间和结束时间做处理&#xff0c;比如后端返回了&#xff1a; [time:{start:202301,end:202311}] 我们需要把中间的间隔渲染出来。 [202301,202302,202303,202304,202305,202306,202307,202308,202309,202310,202311] 利用moment…

搭建你自己的网盘-个人云存储的终极解决方案-nextcloud AIO(二)

今天接着上篇&#xff0c;我们继续来玩nextcloud AIO. 当我们看到这个页面的时候&#xff0c;则证明AIO已经安装好了&#xff0c;登录账号和密码在图上已经标注了。点击open your nextcloud 即可跳转到我们的域名的登录页。 输入用户名和密码后登录即可。 打开前台页面&#x…

【Dockerfile】将自己的项目构建成镜像部署运行

目录 1.Dockerfile 2.镜像结构 3.Dockerfile语法 4.构建Java项目 5.基于Java8构建项目 1.Dockerfile 常见的镜像在DockerHub就能找到&#xff0c;但是我们自己写的项目就必须自己构建镜像了。 而要自定义镜像&#xff0c;就必须先了解镜像的结构才行。 2.镜像结构 镜…

element table滚动条失效

问题描述:给el-table限制高度之后滚动条没了 给看看咋设置的&#xff1a; <el-table:data"tableData"style"width: 100%;"ref"table"max-height"400"sort-change"changeSort">对比了老半天找不出问题&#xff0c;最后…

上门预约互联网干洗店洗鞋店小程序开发

很多时候可能大家的衣服鞋子需要干洗&#xff0c;但又不想出门送去店里&#xff0c;大家就可以使用手机线上下单预约取货&#xff0c;会有专门的人上门来取衣服&#xff0c;让你能够轻松的进行洗护。 闪站侠洗衣洗鞋小程序&#xff0c;提供了足不出户就能预约人员上门去 衣送洗…

解决ansible批量加入新IP涉及known_hosts报错的问题

我们把一批新的IP加入到ansible的hosts文件&#xff0c;比如/etc/ansible/hosts&#xff0c;往往会有这样的提示&#xff0c; 因为本机的~/.ssh/known_hosts文件中并有fingerprint key串&#xff0c;使用ssh连接目标主机时&#xff0c;一般会提示是否将key字符串加入到~/.ssh/…