【论文阅读笔记】4篇Disentangled representation learning用于图像分割的论文

4篇应用解耦表示学习的文章,这里只关注如何解耦,更多细节不关注,简单记录一下。

1.Robust Multimodal Brain Tumor Segmentation via Feature Disentanglement and Gated Fusion

Chen C, Dou Q, Jin Y, et al. Robust multimodal brain tumor segmentation via feature disentanglement and gated fusion[C]//Medical Image Computing and Computer Assisted Intervention–MICCAI 2019: 22nd International Conference, Shenzhen, China, October 13–17, 2019, Proceedings, Part III 22. Springer International Publishing, 2019: 447-456.

【核心思想】

通过特征解耦门控融合技术,提高了在部分成像模态缺失时的分割准确性。方法是将输入的多种成像模态解耦为模态特定的外观代码模态不变的内容代码,然后将它们融合为一个共享表示。这种方法增强了面对缺失数据时分割过程的鲁棒性,并在多种缺失模态的场景中显示出显著的改进。论文还使用了BRATS挑战数据集来验证方法的有效性,并展示了与当前最先进方法相比的竞争性能。

这篇文章中的解耦在于对不同模态使用各自独立的encoder编码为内容编码和样式编码

【网络结构】

image-20240116154208633

模型关键在于它采用了创新的特征解耦和门控融合技术,这里只关注特征解耦,另外的部分在我另外一篇博客中有记录。

  • 特征解耦部分:负责将不同成像模态(如MRI)的数据分解为模态特定的外观特征和跨模态的内容特征。

    对于外观代码,并将其设置为8位向量,假设其先验分布是中心各向同性高斯 N ( 0 , I ) N(0, I) N(0,I),使用KL散布逼近。

    对于模态不变性的内容编码,将它们融合成表达肿瘤基本语义内容的集成表示。为保证解耦是有效性,所获得的内容表示 z z z 应该能够在给定某种模态的任何外观代码的情况下重建原始图像。为了鼓励这种重建能力,论文通过引入一组特定于模态的解码器来设计伪循环一致性损失(使用 L1-Norm 来减轻生成的图像变得模糊的情况。

    为了模拟缺失模态,使用了modality 级别的dropout,也就是图中的 δ i \delta_{i} δi,这种思路在后续很多的论文中被采用,如mmFormer(MICCAI,2022),MMMViT(Biomedical Signal Processing and Control,2024)…

2.Disentangle domain features for cross-modality cardiac image segmentation

Pei C, Wu F, Huang L, et al. Disentangle domain features for cross-modality cardiac image segmentation[J]. Medical Image Analysis, 2021, 71: 102078.

本文的核心思想是提出一种新的跨模态医学图像分割方法,它通过特征分离技术解决了源域和目标域数据之间的差异。这种方法将图像特征分为领域不变特征(DIFs)和领域特定特征(DSFs),通过创新的零损失函数和自注意力模块来增强特征的表现力。文章通过在心脏图像分割任务上的实验验证了其有效性,展示了在处理不同成像模式的医学图像时的优越性能。

image-20240116174503834

源域的有标签数据集表示为 $ X_s = {(x_{si}, y_{si}) | i = 1, \ldots, n} $,目标域的无标签数据集表示为 $ X_t = {x_{tj} | j = 1, \ldots, m}$。作者提出了一种特征分离的方法,以学习两个域的领域不变特征(DIFs)和领域特定特征(DSFs)该框架首先使用四个编码器将每个域的特征分离为DIFs和DSFs(其中style也是从标准正态分布中采样的8bits向量)。然后,它们交换DIFs并将其解码为具有保持解剖结构和交换风格(域/成像方式)的特定于域的图像。作者对生成的图像进行重复的编码和解码操作,形成了CycleGAN的改进版本。为了增强特征分离操作,作者进一步采用了零损失,迫使从源域图像中提取的目标域特定特征的值为零,反之亦然(背后的假设是,如果编码器只能从源域中提取 DSF,那么它将从目标域的图像中提取零信息)。成功分离特征后,可以使用DIFs和相应的标签来训练分割模型。为了实现更准确的分割,作者引入了一个额外的判别器,以限制生成分割的解剖形状。为了模拟图像区域间的长距离、多层次依赖关系,作者引入了自注意力模块。

3.Unsupervised domain adaptation via disentangled representations: Application to cross-modality liver segmentation

Yang J, Dvornek N C, Zhang F, et al. Unsupervised domain adaptation via disentangled representations: Application to cross-modality liver segmentation[C]//Medical Image Computing and Computer Assisted Intervention–MICCAI 2019: 22nd International Conference, Shenzhen, China, October 13–17, 2019, Proceedings, Part II 22. Springer International Publishing, 2019: 255-263.

本论文的核心思想是提出了一种无监督领域适应方法,通过使用解离表示来处理跨模态医学图像(如CT和MRI)之间的转换。这个方法通过将图像分解到一个共享的、与域无关的内容空间一个特定于域的风格空间,实现了在不同医学成像模态之间有效适应。这样的设计旨在维护不同领域间复杂的语义信息,同时在具体的医学图像分割任务,如肝脏分割上,展现出卓越的性能和泛化能力。

image-20240117103458061

  • 解耦表示学习模块:该模块由两个主要组件组成,一个用于重建的变分自动编码器(VAE)和一个用于对抗训练的生成对抗网络(GAN)。训练 VAE 组件进行域内重建,其中重建损失最小化,以鼓励编码器和生成器彼此相反。用于跨域翻译的 GAN 组件经过训练,可以鼓励潜在空间的解开,将其分解为内容和风格子空间。模块由几个联合训练的编码器 E c 1 E_{c1} Ec1 E c 2 E_{c2} Ec2 E s 1 E_{s1} Es1 E s 1 E_{s1} Es1,生成器 G 1 G_1 G1 G 2 G_2 G2和判别器 D 1 D_1 D1 D 2 D_2 D2组成。生成器试图通过使用交换样式代码成功的跨域生成来欺骗鉴别器。由于解开的样式代码 si ∈Si,底层映射被假定为多对多。收敛时有 p ( c 1 ) = p ( c 2 ) p\left(c_{1}\right)=p\left(c_{2}\right) p(c1)=p(c2),这是保存解剖信息的共享内容空间。
  • 纯内容图像的域适应:一旦学习到解离的表示后,可以仅使用内容代码ci而不使用风格代码si来重建仅包含内容的图像。对于CT和MR,它们的内容代码都嵌入在一个共享的潜在空间中,该空间包含解剖结构信息并排除模态外观信息。论文在来自CT领域的仅包含内容的图像上训练一个分割模型,并直接将其应用于来自MR领域的仅包含内容的图像。

4.Disentangled representation learning in cardiac image analysis

Chartsias A, Joyce T, Papanastasiou G, et al. Disentangled representation learning in cardiac image analysis[J]. Medical image analysis, 2019, 58: 101535.

核心思想是开发一种新的医学影像处理方法,特别是针对心脏影像。该方法通过空间解剖网络(SDNet)将医学影像分解为两个组成部分:一个空间解剖因子和一个非空间方式因子。这种方法使得医学影像的分析更为有效,适用于半监督分割、多任务分割和回归、以及影像到影像的合成。这种解耦表示不仅提高了分割任务的性能,而且为医学影像分析提供了更具解释性和多样性的方法。

image-20240117100202820

首先使用解剖编码器 f a n a t o m y f_{anatomy} fanatomy 将输入图像编码为多通道空间表示,即解剖因子 s s s 。然后 s s s 可以用作分割网络 h h h 的输入,以生成多类分割掩码(或某些其他特定于任务的网络)。模态编码器 f f f 模态使用因子 s s s 和输入图像来生成表示成像模态的潜在向量 z z z。将两个表示 s s s z z z 组合起来,通过解码器网络 g g g 重建输入图像。

  • 解剖编码器:U-Net。空间表示是一个由相同空间尺寸的多个二进制通道组成的特征图。一些通道包含单独的解剖(心脏)子结构,而其他对重建必要的结构则自由分布在剩余通道中,而其余通道包含了周围的图像结构(尽管更混合,解剖上不那么明显)。空间表示是通过使用softmax激活函数得到的,以强制每个像素在通道间的激活值之和为一。
  • 模态表示:输入解剖因子和原始图像,学习后验分布。论文采用VAE 学习低维潜在空间,使得学习到的潜在表示与设置为各向同性多元高斯 p ( z ) = N ( 0 , 1 ) p(z)=\mathcal{N}(0,1) p(z)=N(0,1) 的先验分布匹配。

基于以上四篇论文可以对Disentangled representation learning简要总结如下:

Disentangled representation learning 是一种机器学习方法,旨在从复杂数据集中学习出表示,这些表示能够揭示数据中的基础结构和变化因素。该领域的关键思想是将真实世界数据中的变化因素(如物体的位置、大小、颜色、纹理、解剖结构等)分离出来,并以一种方式表示,使得这些因素相互独立。以下是该领域的一些常见做法和应用:

常见做法

  1. 变分自编码器(VAEs): 通过潜在空间的学习来表示数据。在这个潜在空间中,不同的维度尝试捕捉数据的不同特征。
  2. 生成对抗网络(GANs): 在GANs中,可以进行修改以鼓励潜在空间的不同维度表示不同的数据特征。
  3. 信息瓶颈(Information Bottleneck): 这种方法通过限制模型可以访问的信息量,迫使模型学习更有效的数据表示。
  4. 约束优化: 在模型训练过程中引入特定的约束,例如正则化项,以鼓励表示的分离。
  5. 监督或半监督学习: 使用带标签的数据来引导学习过程,确保潜在空间中的不同维度对应于特定的、有意义的变化。

应用

  1. 图像处理: 在图像编辑、风格转换、面部表情生成等领域,分离表示学习使得可以独立地操纵图像的不同特征。
  2. 数据压缩: 通过学习数据的有效表示,可以实现更高效的数据压缩。
  3. 强化学习: 在强化学习中,分离表示可以帮助更好地理解环境状态和决策因素。
  4. 异常检测: 分离的表示可以用于识别数据中的异常或偏差,因为它们可能不遵循正常数据的分布。
  5. 生物医学数据分析: 在这个领域,分离表示可以用于识别不同的生物标志物或疾病特征。

这些方法和应用展示了分离表示学习在理解和操作复杂数据方面的潜力。通过这种方法,可以更容易地识别和利用数据中的关键特征,从而在各种任务中实现更好的性能

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

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

相关文章

写点东西《最佳 Web 框架不存在 》

写点东西《🥇最佳 Web 框架不存在 🚫》 TLDR;您选择的 Web 应用程序框架并不重要。嗯,它很重要,但并不像其他人希望您相信的那样重要。 2024 年存在如此多的库和框架,而且最好的库和框架仍然备受争议&…

瑞_Java开发手册_(四)安全规约

🙊前言:本文章为瑞_系列专栏之《Java开发手册》的安全规约篇。由于博主是从阿里的《Java开发手册》学习到Java的编程规约,所以本系列专栏主要以这本书进行讲解和拓展,有需要的小伙伴可以点击链接下载。本文仅供大家交流、学习及研…

Kafka 的架构

实验过程 1.三个虚拟机中解压kafka软件包 tar -zxvf kafka_2.11-1.1.1.tgz 2.修改 3 个节点配置文件 在 zookeeper 节点,进入 kafka_2.11-1.1.1/config 目录下,编辑 server.properties 文件 [rootdb1 ~]# cd kafka_2.11-1.1.1/config [rootdb1 con…

使用斐波那契(Fibonacci)数列来测试各大语言的性能

笔者使用最多的语言是C,目前项目中在使用Go,也使用过不少其它语言,像Erlang,Python,Lua,C#等等。最近看到C#夺冠,首次荣获 TIOBE 年度编程语言,同时也看到网上有不少Java与C#之争的文…

Ubuntu 22.04安装使用easyconnect

EasyConnect 百度百科,EasyConnect能够帮助您在办公室之外使用公司内网的所有系统及应用。在您的公司部署深信服远程应用发布解决方案后,您的公司所有业务系统及应用都可以轻松迁移至移动互联网上。您可以通过手机、PAD等智能移动终端随时随地开展您的业…

现代工程科技杂志现代工程科技杂志社现代工程科技编辑部2023年第21期目录

能源科技 配网故障停电原因及改进对策研究 上官安琪 110kV变电站电气自动化技术及应用策略 陈祥 变电运维误操作事故预控措施分析 高翔;韦婉 智能变电站变电运维安全与设备维护探究 温亮亮;覃万全 110kV变电站电气设计及其防雷保护案例研析 谢旭平 变电运维…

Kafka系列(四)

本文接kafka三,代码实践kafkaStream的应用,用来完成流式计算。 kafkastream 关于流式计算也就是实时处理,无时间概念边界的处理一些数据。想要更有性价比地和java程序进行结合,因此了解了kafka。但是本人阅读了kafka地官网&#…

探索 Python:发现有趣的库——第 1 章:数据可视化之旅

在一个充满活力的科技世界中,数据分析专家“算法仙”和编程爱好者“代码侠”相遇了,决定一起踏上数据可视化的探险之旅。他们将运用 Matplotlib 和 Seaborn 这两个强大的 Python 库,将枯燥的数据转化为生动的图形。 算法仙:你好&…

利用先进的条形码识别和 OCR 技术改善机场行李处理

机场每年处理数百万件行李,主要航空公司每家运输超过 1 亿件行李。每年有 2500 万件行李被错误处理,正确处理至关重要。使用最好的技术是关键,首先是从机场到飞机的正确转乘。 行李分拣 Dynamsoft 的客户是一家机场行李分拣解决方案提供商。…

【Linux 内核源码分析】RCU机制

RCU 基本概念 Linux内核的RCU(Read-Copy-Update)机制是一种用于实现高效读取和并发更新数据结构的同步机制。它在保证读操作不被阻塞的同时,也能够保证数据的一致性。 RCU的核心思想是通过延迟资源释放来实现无锁读取,并且避免了…

Go新项目-配置文件的选取及区别和写法(1)

先说结论:我们选型TOML yaml,toml,json,ini 实际业务都有用 实际栗子是:我们想要把Go的切片作为配置文件,YAML写起来比较吃力,TOML就很容易了。 配置文件是用于配置计算机程序的参数、初始化设…

FPGA设计时序约束十六、虚拟时钟Virtual Clock

目录 一、序言 二、Virtual Clock 2.1 设置界面 三、工程示例 3.1 工程设计 3.2 工程代码 3.3 时序报告 3.4 答疑 四、参考资料 一、序言 在时序约束中,存在一个特殊的时序约束,虚拟时钟Virtual Clock约束,根据名称可看出时钟不是实…

自动化测试——Python基础

文章目录 前言一、Python的基础语法1.标识符2.注释 二、Python中常见的数据类型1.Number(数字)1.1.int(整数数据类型)1.2.float(浮点型)1.3.bool(布尔类型) 2.String(字符…

Redis 消息队列和发布订阅

文章目录 基本模式生产者消费者原理&模型redis实现java实现 发布者订阅者原理&模型redis实现java实现 stream模式原理&模型工作原理redis实现Java实现 选型外传 基本模式 采用redis 三种方案: ● 生产者消费者:一个消息只能有一个消费者 ●…

canvas绘制美队盾牌

查看专栏目录 canvas示例教程100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…

Architecture Lab:预备知识2【汇编call/leave/ret指令、CS:APP练习4.4】

chap4的练习4.4(page.255)让用Y86-64实现rsum(递归求数组元素之和),提示为:先得到x86-64汇编代码,然后转换成Y86-64的 这是rsum的c实现: long rsum(long *start, long count) {if …

1.环境部署

1.虚拟机安装redhat8系统 这个其实很简单,但是有一点小细节需要注意。 因为我的电脑是 16核心的,所以选择内核16,可以最大发挥虚拟机的性能 磁盘选择SATA,便于后期学习 将一些没用的设备移除 选择安装redhat 8 时间选择上海 选择…

php反序列化之pop链构造(基于重庆橙子科技靶场)

常见魔术方法的触发 __construct() //创建类对象时调用 __destruct() //对象被销毁时触发 __call() //在对象中调用不可访问的方法时触发 __callStatic() //在静态方式中调用不可访问的方法时触发 __get() //调用类中不存在变量时触发(找有连续箭头的…

前端远原生js爬取数据的小案例

使用方法 注意分页的字段需要在代码里面定制化修改,根据你爬取的接口,他的业务规则改代码中的字段。比如我这里总条数叫total,人家的不一定。返回的数据我这里是data.rows,看看人家的是叫什么字段,改改代码。再比如我这…

【面试合集】说说微信小程序的发布流程?

面试官:说说微信小程序的发布流程? 一、背景 在中大型的公司里,人员的分工非常仔细,一般会有不同岗位角色的员工同时参与同一个小程序项目。为此,小程序平台设计了不同的权限管理使得项目管理者可以更加高效管理整个团…