当前位置: 首页 > news >正文

【论文阅读】(CVPR2023)用于半监督医学图像分割的双向复制粘贴

目录

  • 前言
  • 方法
    • BCP
      • Mean-teacher and Traning Strategy
      • Pre-Training via Copy-Paste
      • Bidirectional Copy-Paste Images
      • Bidirectional Copy-Paste Supervisory Signals
    • Loss Function
    • Testing Phase
  • 结论

在这里插入图片描述
先看这个图,感觉比较清晰。它整个的思路就是把有标签的图片和无标签的图片拼在一起,送入学生网络,输出 Q o u t Q^{out} Qout Q i n Q^{in} Qin。把无标签的图片送入教师网络得到输出 Y ~ p u \tilde{Y}^{u}_{p} Y~pu Y ~ q u \tilde{Y}^{u}_{q} Y~qu Y ~ p u \tilde{Y}^{u}_{p} Y~pu Y ~ q u \tilde{Y}^{u}_{q} Y~qu与GT与输入一样拼接得到 Y o u t Y^{out} Yout Y i n Y^{in} Yin作为监督信号,监督模型训练。student网络的参数经过EMA滑动移动平均得到的参数来更新teacher模型。
问题:

  1. 怎么选择拼接的区域的?
  2. label图像是否得到了充分利用?因为只使用了label image的一部分。
  3. 这样做的原理是什么?是假设labeled的image和unlabeled的image在同一个分布下吗?
  4. 损失函数有没有改进?
  5. 之前没有学习过teacher-student model,参数是怎么更新的用的什么函数?
  6. 这样做与原来半监督的方法相比,优势是什么?

前言

问题:半监督医学图像分割,有标记数据分布与无标记数据分布之间存在经验失配的问题。如果将有标签数据和无标签数据分开处理或以不一致的方式处理,从有标签数据中学习到的只是可能被大量丢弃。
方法:BCP在一个简单的Mean Teacher架构下,鼓励未标记数据从有标记的数据中向内和向外两个方向学习综合的共同语义。
对标记和未标记的数据一直学习过程可以在很大程度上减少经验分布差距。
具体:将标记图像(前景)中的随机裁剪复制粘贴到未标记图像(背景)中,未标记图像(前景)随机裁剪粘贴到标记图像(背景)中。
效果:在有5 %标注数据的ACDC数据集上, Dice性能提升超过21 %。足够好。

方法

在这里插入图片描述
这个图是给我们展示半监督倾斜设置下的失配问题。我们假设训练数据是从(a)这个分布中获得的,但是有标签的和没有标签的样本的分布分别为(b)和©。很难有很少的标记数据来构建整个数据集的精确分布。(d)通过使用BCP,标记和未标记的经验分布是对齐的,但是其他方法例如SSNet或交叉未标记的数据复制粘贴无法解决经验分布不匹配的问题。
在这里插入图片描述
可以看出BCP在标记数据和未标记数据性能差距小。

在这里插入图片描述
具体的数学表达式大家看原文吧。
这里简单介绍一下思想和方法。

BCP

Mean-teacher and Traning Strategy

首先使用标记的数据来预训练模型,然后使用预训练模型作为teacher network,给伪标记的图像生成伪标签。每次迭代中首先通过随机梯度下降来优化学生网络参数Θs。最后,我们使用学生参数 Θs 的 EMA 更新教师网络参数 Θt。最后测试使用的Θs。

Pre-Training via Copy-Paste

对标记数据进行了复制粘贴增强以训练监督模型,监督模型将在自我训练期间为未标记的数据生成伪标签。效果:增强了分割性能。

Bidirectional Copy-Paste Images

长话短说,是由一个0中心标签的M矩阵,这个M矩阵中间部分是0,四周是1(指示体素来自前景图片还是背景图片)。
x i n = x j l ⊙ M + x p u ⊙ ( 1 − M ) x^{in}=x^{l}_j\odot M+x^{u}_p\odot (1-M) xin=xjlM+xpu(1M)
M是0中心,所以点乘M是得到的边界,点乘(1-M)得到的是中心。和图上的情况一样 x j l x^{l}_j xjl中间部分复制粘贴到 x p u x^{u}_p xpu图像上。

Bidirectional Copy-Paste Supervisory Signals

监督信号也通过BCP生成。伪标签是通过在 P u P_u Pu上使用公共阈值0.5来确定的,对于二进制分割任务,或者在 Pu 上对多类分割任务采用 argmax 操作来确定。最终的伪标签 ̃ Yu 是通过选择 ̂ Yu 的最大连接分量获得的,这将有效地去除异常体素。
将伪标签和真实标签和student network输入的图片一样进行BCP。

Loss Function

标记图像的GT比未标记图像的伪标签准确,所以有一个系数 α \alpha α来控制标记图像的体素和未标记图像的体素对loss的贡献大小。
损失函数计算也用到 M M M。损失函数是Dice loss和Cross-entropy loss的线性组合。
预测是用student network预测的。
计算完loss,经过梯度反向传播和优化器更新,更新student network的参数,之后通过EMA更新teacher network。

Testing Phase

Qtest = F(Xtest; ̂ Θs)
其中̂ Θs是训练良好的学生网络参数。最终的标签图可以通过Qtest轻松确定,进行后处理即可。

后面讲了一些参数的选择,一些实验结果。
在这里插入图片描述

结论

总结:我们使用BCP,这减少了标记和未标记数据之间的分布差距。获得了很好的性能。
局限:我们没有专门设计一个模块来增强局部属性学习。虽然性能优于所有竞争对手,对比度极低的目标部件仍然难以很好地细分。

相关文章:

【论文阅读】(CVPR2023)用于半监督医学图像分割的双向复制粘贴

目录 前言方法BCPMean-teacher and Traning StrategyPre-Training via Copy-PasteBidirectional Copy-Paste ImagesBidirectional Copy-Paste Supervisory Signals Loss FunctionTesting Phase 结论 先看这个图,感觉比较清晰。它整个的思路就是把有标签的图片和无标…...

[Linux 基础] 一篇带你了解linux权限问题

文章目录 1、Linux下的两种用户2、文件类型和访问权限(事物属性)2.1 Linux下的文件类型2.2 基本权限2.3 文件权限值的表示方法(1)字符表示方法(2)8进制数值表示方法 2.4 文件访问权限的相关设置方法(1) chm…...

FPGA project :HDMI

实验目标:驱动HdMI显示十色等宽彩条。 本实验的重点是: 1掌握TMDS通信协议。 2rgb565转rgb888。 3编写HDMI驱动程序。 4学会看流程图编写代码。 值得注意的事情 1注意数据与解析数据的信号(比如传入的数据中0或者1的个数)&…...

基于微信小程序的物流快递信息查询平台同城急送小程序(亮点:寄件、发票申请、在线聊天)

文章目录 前言系统主要功能:具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…...

idea插件推荐

目录 一、插件安装方式 file->settings->plugins->macketplace 各个版本IDE插件界面略有不同,不一一赘述 二、常用插件 1、Background Image Plus 推荐指数:★★★★☆ 这款插件并不能直接提高你的开发效率,但是可以让你面对的ID…...

Arcgis快速计算NDVI

Arcgis快速计算NDVI 一、问题描述 如何使用Arcgis像ENVI一样波段计算NDVI的值,事实上,Arcgis更快速一些。 二、操作步骤 首先准备好影像 打开窗口-影像分析 点击左上角 点击确定 (发现自己使用的遥感影像不对劲,是计算好了…...

SpringCloud Alibaba - 基于 FeignClient 整合 Sentinel,实现“线程隔离”和“熔断降级”

目录 一、FeignClient 整合 Sentinel 1.1、整合原因 1.2、实现步骤 1.2.1、修改 OrderService 中的 application.yml 文件 1.2.2、给 FeignClient 编写失败后的降级逻辑 二、线程隔离 2.1、线程隔离的两种方式 2.1.1、线程池隔离 2.1.2、信号量隔离(Sentin…...

Acwing 906. 区间分组

Acwing 906. 区间分组 知识点题目描述思路讲解代码展示 知识点 贪心 题目描述 思路讲解 这段代码是用来维护一个最小堆,以确保右边界不相交的区间被正确地保留在堆中。让我详细解释这段代码: heap.empty():这个条件检查最小堆 heap 是否为…...

阿里云 Oss 权限控制

前言 最近公司的私有 Oss 服务满了,且 Oss 地址需要设置权限,只有当前系统的登录用户才能访问 Oss 下载地址。一开始想着用 Nginx 做个转发来着,Nginx 每当检测当前请求包含特定的 Oss 地址就转发到我们的统一鉴权接口上去,但是紧…...

CSS详细基础(六)边框样式

本期是CSS基础的最后一篇~ 目录 一.border属性 二.边框属性复合写法 三.CSS修改表格标签 四.内边距属性 五.外边距属性 六.其他杂例 1.盒子元素水平居中 2.清除网页内外元素边距 3.外边距的合并与塌陷 4.padding不会撑大盒子的情况 七.综合案例——新浪导航栏仿真 …...

支持向量机SVM:从数学原理到实际应用

目录 一、引言背景SVM算法的重要性 二、SVM基础线性分类器简介什么是支持向量?超平面和决策边界SVM的目标函数 三、数学背景和优化拉格朗日乘子法(Lagrange Multipliers)KKT条件核技巧(Kernel Trick)双重问题和主问题&…...

【办公自动化】在Excel中按条件筛选数据并存入新的表(文末送书)

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…...

第三章:最新版零基础学习 PYTHON 教程(第十一节 - Python 运算符—Python 中的any与all)

Any 和 All 是 python 中提供的两个内置函数,用于连续的与/或。Any如果任何一项为 True,则返回 true。如果为空或全部为 false,则返回 False。Any 可以被认为是对所提供的可迭代对象进行 OR 操作的序列。它会短路执行,即一旦知道结果就停止执行。 句法: any(iterable) 函…...

Pytorch单机多卡分布式训练

Pytorch单机多卡分布式训练 数据并行: DP和DDP 这两个都是pytorch下实现多GPU训练的库,DP是pytorch以前实现的库,现在官方更推荐使用DDP,即使是单机训练也比DP快。 DataParallel(DP) 只支持单进程多线程…...

asp.net coremvc+efcore增删改查

下面是一个使用 EF Core 在 ASP.NET Core MVC 中完成增删改查的示例&#xff1a; 创建一个新的 ASP.NET Core MVC 项目。 安装 EF Core 相关的 NuGet 包。在项目文件 (.csproj) 中添加以下依赖项&#xff1a; <ItemGroup><PackageReference Include"Microsoft…...

Java基础面试,什么是面向对象,谈谈你对面向对象的理解

前言 马上就要找工作了&#xff0c;从今天开始一天准备1~2道面试题&#xff0c;来打基础&#xff0c;就从Java基础开始吧。 什么是面向对象&#xff0c;谈谈你对面向对象的理解&#xff1f; 谈到面向对象&#xff0c;那就不得不谈到面向过程。面向过程更加注重的是完成一个任…...

Ubuntu系统初始设置

更换国内源 安装截图工具 安装中文输入法 安装QQ 参考&#xff1a; 安装双系统win10Ubuntu20.04LTS&#xff08;详细到我自己都害怕&#xff09; 引导方式磁盘分区方法UEFIGPTLegancyMBR 安装网络助手 sudo apt install net-tools 安装VS Code 使用从官网下载.deb安装包…...

焕新古文化传承之路,AI为古彝文识别赋能

目录 1 古彝文与古典保护 2 古文识别的挑战 2.1 西文与汉文OCR 2.2 古彝文识别难点 3 合合信息&#xff1a;古彝文保护新思路 3.1 图像矫正 3.2 图像增强 3.3 语义理解 3.4 工程技巧 4 总结 1 古彝文与古典保护 彝文指的是云南、贵州、四川等地的彝族人使用的文字&am…...

毛玻璃动画交互效果

效果展示 页面结构组成 从上述的效果展示页面结构来看&#xff0c;页面布局都是比较简单的&#xff0c;只是元素的动画交互比较麻烦。 第一个动画交互是两个圆相互交错来回运动。第二个动画交互是三角绕着圆进行 360 度旋转。 CSS 知识点 animationanimation-delay绝对定位…...

Audio2Face的工作原理

预加载一个3D数字人物模型(Digital Mark),该模型可以通过音频驱动进行面部动画。 用户上传音频文件作为输入。 将音频输入馈送到预训练的深度神经网络中。 Audio2Face加载预制的3d人头mesh 3D数字人物面部模型由大量顶点组成,每个顶点都有xyz坐标。 深度神经网络输入音频特征,…...

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周&#xff0c;有很多同学在写期末Java web作业时&#xff0c;运行tomcat出现乱码问题&#xff0c;经过多次解决与研究&#xff0c;我做了如下整理&#xff1a; 原因&#xff1a; IDEA本身编码与tomcat的编码与Windows编码不同导致&#xff0c;Windows 系统控制台…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...