医学图像分割

论文:Medical Image Segmentation Using Deep Learning: A Survey

参考:[医学图像分割综述] Medical Image Segmentation Using Deep Learning: A Survey-CSDN博客

一、背景

  • 特征表示的困难:模糊、噪声、对比度低--->CNN
  • 属于语义分割(对图像进行像素分类)的范畴:
    • 语义分割(Semantic Segmentation):语义分割的目标是将图像中的每个像素分配到一个类别。它关注的是类别,而不区分同一类别中的不同个体。例如,在一幅街景图像中,语义分割会将所有的“车”像素标注为“车”类别,而不区分这些车是不同的个体。

    • 实例分割(Instance Segmentation):实例分割不仅将每个像素分配到一个类别,还要区分同一类别中的不同个体。它结合了目标检测和语义分割的特点。例如,在一幅街景图像中,实例分割不仅会标注出所有的“车”,还会区分这些车是不同的个体,给每辆车一个唯一的标识。

二、监督学习 

1.网络骨干

1)U-Net

参考:U-Net网络结构讲解(语义分割)_哔哩哔哩_bilibili

通过跳跃连接,将低分辨率和高分辨率的特征图结合起来,有效地融合了低分辨率和高分辨率的图像特征。

2)3D-Net

全篇为[医学图像分割综述] Medical Image Segmentation Using Deep Learning: A Survey-CSDN博客的笔记~

3D U-Net仅包含3次下采样,不能有效提取深层图像特征,导致医学图像分割精度有限。与3D-UNet相比,V-Net利用残差连接设计更深层次的网络(4次下采样),从而获得更高的性能。

3)RNN 

  • 图像序列时间依赖性
  • 通过将输入特征图直接添加到经过卷积和激活函数处理后的特征图中,模型可以更有效地传递信息,避免梯度消失问题。
    • 从图中可以看到,卷积层和激活函数的输出会回馈到自身,并且重复进行多次。这种循环结构使得模型可以通过多次迭代来逐步精炼特征,从而提高分割的精度和效果。
    • 残差连接通过直接将输入特征图添加到经过多次卷积和激活后的特征图中,使得梯度在反向传播过程中能够更有效地传递,减轻梯度消失问题,提升深层网络的训练效果。
      • 梯度消失问题会导致在反向传播过程中,梯度变得非常小,以至于模型无法有效地学习和更新参数。
  • RNN可以通过考虑上下文信息关系来捕获图像的局部和全局空间特征。 

4)SKip Connection 

  • 跳跃连接:低分辨率和高分辨率特征之间语义鸿沟较大的问题,导致特征映射模糊
  • MultiResUNet:使编码器特征在与解码器中相应特征融合之前执行一些额外的卷积操作

5)Cascade of 2D and 3D (级联模型)

  • 训练两个或多个模型来提高分割精度
    • 粗-细分割:使用两个2D网络的级联进行分割,其中第一个网络进行粗分割,然后使用另一个网络模型在之前的粗分割结果的基础上实现细分割,这种级联网络利用第一个网络产生的后验概率比普通级联网络能有效地提取更丰富的多尺度上下文信息
    • 混合分割(H-DenseUNet):首先利用简单的ResNet获得粗略的肝脏分割结果,利用二维DenseUNet有效提取二维图像特征,然后利用三维DenseUNet提取三维图像特征,最后设计一种混合特征融合层,对二维和三维特征进行联合优化。
    • 处理模糊噪声边界(Ki-Net):通过在编码器的每一转换层之后加上上采样层来实现。利用Ki-Net的低层精细边缘特征图和U-Net的高层形状特征图,不仅提高了分割精度,而且对小解剖标志和模糊的噪声边界实现了快速收敛。

2.网络块

1)Dense Connection(密集连接)

  • 改进一
    • 每一层的输入来自前面所有层的输出
    • 用密集连接的形式来代替U-Net的每个子块
    • 低了特征表示的鲁棒性,增加了参数的数量
  • 改进二 
    • 优点:允许网络自动学习不同层次特征的重要性
    • 具有不同语义尺度的特征可以在译码器中聚合
    • 增加了参数的数量(剪枝方法)

2)Inception(多种卷积核大小的并行路径)

  • 深度网络:梯度消失、网络收敛困难、内存占用大等
  • 不增加网络深度的情况下并行地合并卷积核,从而获得更好的性能
  • 利用多尺度卷积核提取更丰富的图像特征,并进行特征融合,获得更好的特征表示
  • 比较复杂,导致模型修改困难

3)Depth Separability (深度可分离)

  • 减少对内存的使用需求--->轻量级网络
  • 普通卷积的参数:D_{K},M,N,其中D_{K}为卷积核大小,M为输入特征的维数,N为输出特征的维数:D_{K}\times D_{K}\times M \times N
  • 逐通道卷积、逐点卷积
    • 逐通道卷积:D_{K}\times D_{K}\times 1 \times N
    • 逐点卷积:1\times 1\times M \times N

4)Attention Mechanism(注意力机制)

  • 掩码:设计一个新的层,通过训练和学习,可以从图像中识别关键特征
  • 局部空间注意力(Local Spatial Attention):计算每个像素在空间域中的特征重要性,提取图像的关键信息
    • 通过1 × 1卷积结合Relu和Sigmoid函数,生成一个权值映射,并通过与编码器的输出特征相乘进行校正
    • 个人理解:Q:输入编码器的内容,K/V:编码器的输出特征

  • 通道注意力(Channel Attention):利用学习到的全局信息,选择性地强调有用的特征
    • 压缩操作,对输入特征进行全局平均池化,得到1 × 1 × channel的特征映射
    • 激励操作,通过通道特征的相互作用来减少通道数量,然后将减少的通道特征重构回信道数量
    • 使用sigmoid函数生成[0,1]的特征权重映射,将比例乘回到原始输入特征

  • 混合注意力(Mixture Attention):
    • 空间注意力忽略了不同通道信息的差异,对每个通道都一视同仁
    • 通道注意力直接集中全局信息,而忽略每个通道的局部信息
    • 多种基于混合注意力块的模型
    • 通道为中心的注意力是提高图像分割性能最有效的方法
  • 非局部注意力(Non-local Attention):
    • 等于自注意力机制
    • 与非局部注意相比,传统的注意力机制缺乏挖掘不同目标和特征之间关联的能力

 5)Multi-scale Information Fusion(多尺度信息融合)

  • 目标尺度的大范围变化:中晚期的肿瘤可能比早期的大得多
  • 金字塔池化(Pyramid Pooling)
    • 多尺度池化的并行操作
    • 残差多核池化(RMP):使用四个不同大小的池化核来编码全局上下文信息
      • 上采样操作不能恢复细节信息的丢失,因为池化通常扩大了感受野,但降低了图像分辨率。
  • 空洞空间金字塔池化(Atrous Spatial Pyramid Pooling)
    • ​​​​​​​用空洞卷积
    • 两个问题:局部信息的丢失;这些信息在远距离传播后可能是不相关的

  • 非局部和ASPP(Non-local and ASPP)
    • ​​​​​​​​​​​​​​不同尺度的多个并行空洞卷积来捕获更丰富的信息
    • 非局部操作捕获广泛的依赖关系 

三、损失函数的设计

1.Cross Entropy Loss(交叉熵)

  • 将预测的分类向量与实际的分割结果向量进行像素级的比较
  • 第一项 -plog(\hat{p})

    • 当真实标签 Y 为1时(即 p=1),这项起作用。如果预测概率\hat{p}也接近1,这项的值会很小。
    • 如果\hat{p}远离1,这项的值会增大,表示模型的预测错误较大。
  • 第二项-(1-p)log(1-\hat{p})

    • 当真实标签 Y 为0时(即 p=0),这项起作用。如果预测概率\hat{p}也接近0,这项的值会很小。
    • 如果\hat{p}远离0,这项的值会增大,表示模型的预测错误较大。
  • 公式:

2.Weighted Cross Entropy Loss

  • 交叉熵损失对图像的每个像素都进行同等处理,从而输出一个平均值,忽略了类的不平衡
  • β用于调整正样本和负样本的比例,它是一个经验值,如果β > 1,假阴性数量减少;反之如果β<1,假阳性数量减少

  • 添加距离函数改进交叉熵损失函数的U-Net,改进后的损失函数可以提升类间距离的学习能力
  • 其中 d_{1}(x)d_{2}(x)代表了像素x和前两个最近单元格边界之间的距离


3.Dice Loss 

4.Tversky Loss

5.Generalized Dice Loss

6.Boundary Loss

7.Exponential Logarithmic Loss

8.Loss Improvements

9.Deep Supervision

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web Server项目实战2-Linux上的五种IO模型

上一节内容的补充&#xff1a;I/O多路复用是同步的&#xff0c;只有调用某些API才是异步的 Unix/Linux上的五种IO模型 a.阻塞 blocking 调用者调用了某个函数&#xff0c;等待这个函数返回&#xff0c;期间什么也不做&#xff0c;不停地去检查这个函数有没有返回&#xff0c…

Offline RL : Beyond Reward: Offline Preference-guided Policy Optimization

ICML 2023 paper code preference based offline RL&#xff0c;基于HIM&#xff0c;不依靠额外学习奖励函数 Intro 本研究聚焦于离线偏好引导的强化学习&#xff08;Offline Preference-based Reinforcement Learning, PbRL&#xff09;&#xff0c;这是传统强化学习&#x…

轻量音乐网站程序源码,在线音乐免费听歌

这是一个高品质的音乐共享和流媒体平台&#xff0c;用户可以在这个网站上免费在线听歌。这个轻量级的音乐网站程序源码&#xff0c;是您创建自己的音乐流媒体网站的最佳选择&#xff01;它还支持制作插件&#xff0c;并且在更新后&#xff0c;您可以保留您的自定义设置。 下 载…

操作系统408考研-经典例题

什么是操作系统?答:操作系统,是计算机系统中最基本、最重要的系统软件,是其它软件 的***支撑***。控制和管理计算机系统的硬件和软件资源,合理的组织计算机工 作流程,并为用户使用计算机提供公共和基本的服务 2.多道程序 (multiprogrammming) 和多重处理 (multiprocessi…

Python基于PyQt6制作GUI界面——多选框

QCheckBox 是 PyQt6 中的一个复选框控件&#xff0c;它允许用户通过单击来选择或取消选择某个选项。与 QRadioButton 不同&#xff0c;QCheckBox 控件并不互斥&#xff0c;这意味着用户可以同时选择多个 QCheckBox。示例对应的制作的 ui文件 界面如下所示。 <?xml version…

【MATLAB源码-第215期】基于matlab的8PSK调制CMA均衡和RLS-CMA均衡对比仿真,对比星座图和ISI。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 CMA算法&#xff08;恒模算法&#xff09; CMA&#xff08;Constant Modulus Algorithm&#xff0c;恒模算法&#xff09;是一种自适应盲均衡算法&#xff0c;主要用于消除信道对信号的码间干扰&#xff08;ISI&#xff09;…

Python使用thread模块实现多线程

介绍&#xff1a; 线程&#xff08;Threads&#xff09;是操作系统提供的一种轻量级的执行单元&#xff0c;可以在一个进程内并发执行多个任务。每个线程都有自己的执行上下文&#xff0c;包括栈、寄存器和程序计数器。 在Python中&#xff0c;可以使用threading模块创建和管理…

SQL练习2.3

建表 # 学生表 create table t_student (stu_id varchar(10),stu_name varchar(10),stu_age datetime,stu_sex varchar(10) );# 课程表 create table t_t_course (c_id varchar(10),c_name varchar(10),c_teaid varchar(10) );# 教师表 create table t_t_teacher (tea…

nginx 动静分离、gzip压缩、负载均衡、root/alias

在Nginx中&#xff0c;动静分离、gzip压缩、负载均衡以及root和alias指令是常见的配置和优化点。下面我将分别解释这些概念和如何配置它们。 动静分离 动静分离是指将动态请求和静态请求分开处理&#xff0c;由不同的服务器或Nginx的不同位置来处理。这样可以提高网站的性能和…

SpringBoot 启动报错,EnableConfigurationProperties 注解跳坑记

使用SpringBoot 脚手架搭建的一个简单的 web demo &#xff0c;开启了属性自动注入&#xff0c;配置文件如下&#xff1a; Setter Getter Configuration ConfigurationProperties(prefix "com.ff") EnableConfigurationProperties(FFProperties.class) public clas…

今日刷三题(day14):ISBN号码+kotori和迷宫+矩阵最长递增路径

题目一&#xff1a;ISBN号码 题目描述&#xff1a; 每一本正式出版的图书都有一个ISBN号码与之对应&#xff0c;ISBN码包括9位数字、1位识别码和3位分隔符&#xff0c;其规定格式如“x-xxx-xxxxx-x”&#xff0c;其中符号“-”是分隔符&#xff08;键盘上的减号&#xff09;&…

STM32使用旋转编码开关

一、旋转编码开关如何工作 编码器内部有一个开槽圆盘&#xff0c;连接到公共接地引脚 C。它还具有两个接触针 A 和 B&#xff0c;如下所示。 当您转动旋钮时&#xff0c;A 和 B 按照特定顺序与公共接地引脚 C 接触&#xff0c;具体顺序取决于转动旋钮的方向。 当它们与公共地接…

在 package.json 文件中,版本号前的 ^ 符号含义

在 package.json 文件中&#xff0c;版本号前的 ^ 符号有特定的含义&#xff0c;它控制了包依赖的版本范围。 具体来说&#xff0c;^ 符号表示兼容性范围符号&#xff0c;允许安装与指定版本兼容的更新版本。 例如&#xff0c;“vue”: “^3.0.0” 意味着&#xff1a; 可以安…

Web3 游戏平台 Creo Engine 销毁代币总量的20%,以促进长远发展

Creo Engine 5月16日进行了第三次代币销毁&#xff0c;这次的销毁占代币总量的 20%。一共销毁了2亿 $CERO 代币&#xff0c;市场价值接近 2000 万美元。 Creo Engine 致力于连接世界、为玩家提供一站式游戏中心&#xff0c;并提升 Web3 游戏体验。 Creo Engine 发布于2022年&am…

USB抓包工具:bushound安装及使用

一、环境搭建 下载busbound6.01安装包&#xff0c;安装完成&#xff0c;重启电脑。 二、工具配置 按照下图配置工具&#xff1a; 使能自动识别新设备 2. 设置抓取数据的容量 三、抓包 回到capture选项卡&#xff0c;在页面的右下角有个run的按钮&#xff0c;点击使能&…

RedHat9 | 磁盘管理

硬盘分区类型 MBR分区方案 MBR也被称为主引导记录&#xff0c;它存在0柱面0磁道0扇区内&#xff0c;在磁盘的第一个扇区内&#xff0c;大小为512字节 512字节包含&#xff1a;446字节初始化程序加载器、64字节分区表、2字节校验码由于每个分区为16字节&#xff0c;所以MBR只…

Git配置详解

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

js实现元素根据鼠标滚轮滚动向左右上下滑动着从模糊到清楚显示出来

html代码 <div ref{test} id"animatedElement" className"not-animated"> <div style{{width:"100px",height:"50px",backgroundColor:"red"}}> </div> </div> JS代码 const te…

用智能插件(Fitten Code: Faster and Better AI Assistant)修改好了可以持久保存的vue3留言板

天际 第一修改是选项式&#xff1a; <!-- 模板结构 --> <template><div><textarea placeholder"请输入备注内容" v-model"newItem"></textarea><button click"addItem">添加</button><hr><…

Vue2+Element 封装评论+表情功能

有需要的小伙伴直接拿代码即可&#xff0c;不需要下载依赖&#xff0c;目前是初始版本&#xff0c;后期会进行代码的优化。 评论组件如下&#xff1a; 创建 comment.vue 文件。 表情组件 VueEmoji.vue 在评论组件中使用。 <template><div class"comment"…