扩散视觉反事实算法 DVC:对抗性鲁棒分类器 + 扩散模型,跨模态对比原始的 fundus 图 VS 生成的 OCT 图

本文主要是介绍扩散视觉反事实算法 DVC:对抗性鲁棒分类器 + 扩散模型,跨模态对比原始的 fundus 图 VS 生成的 OCT 图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对抗性鲁棒分类器 + 扩散模型:为 正常的 fundus 和 OCT 图,生成更多病症图

    • 解决问题
      • 创新点
    • 效果
    • 调参技巧
    • 总结
      • Fundus 转 OCT(只是猜想,不一定)
        • 1. 疾病特征模拟
        • 2. 数据增强
        • 3. 疾病进展模拟
        • 4. 跨模态学习

 


解决问题

论文:https://arxiv.org/pdf/2311.11629.pdf

代码:https://github.com/berenslab/retinal_image_counterfactuals

  • 裁剪眼底图:https://github.com/berenslab/fundus_circle_cropping

 
问题: 如何生成视网膜底片和OCT扫描图像的病症图?

解法: 使用基于扩散模型和对抗性鲁棒分类器的反事实图像生成方法(DVC),生成具有或没有特定疾病标记的视网膜图像。

假设有一张健康人的视网膜底片,我们想知道如果这个人患有糖尿病视网膜病变(DR),他的视网膜底片可能会是什么样子。

  1. 输入: 真实的健康人视网膜底片,或OCT(光学相干断层扫描)图像。
  2. 处理: 使用对抗性鲁棒分类器确定糖尿病视网膜病变的特征,并使用扩散模型根据这些特征生成图像。
  3. 输出: 展示了如果患者患有某种眼科疾病(例如糖尿病视网膜病变或黄斑变性)时,其视网膜图像可能呈现的样子。

通过这种方法,医生可以更好地理解不同疾病状态下的视网膜变化,帮助诊断和治疗计划的制定。

 

a. 原始的视网膜底片图像显示在计算机屏幕上。

b. 两种类型的反事实图像:

  • 一种是标记为“健康”的,意味着疾病特征被移除;
  • 另一种是标记为“DR”(糖尿病视网膜病变)的,意味着疾病特征被增强或添加。

c. 展示了扩散过程的视觉化,从原始图像(\x_0)开始,通过逐步增加噪声(\x_1, x_2, …),直到达到一个完全随机的噪声状态(x_T)。

  • 然后,展示了逆向扩散过程,从噪声状态( x T / 2 x_{T/2} xT/2)开始,逐步减少噪声,直到恢复为一个清晰的反事实图像(x_T)。

  • 上半部分描绘了一个健康眼底图像的正向和逆向扩散,而下半部分则是DR眼底图像的扩散过程。

d. 示意图显示了如何使用扩散模型和对抗性鲁棒分类器生成反事实图像。

  • 左侧是扩散过程的起始图像,然后是中间几个扩散步骤的示例,最右侧是经过半个扩散周期后的图像。
  • 这个过程涉及利用来自对抗性鲁棒分类器的梯度来指导逆向扩散过程,生成反映特定病理特征的图像。

图中还包含了一个小框图,解释了如何将对抗性鲁棒分类器的梯度(标记为R,棕色)投影到围绕简单模型梯度(标记为P,浅橙色)的一个锥形区域中,以引导图像生成过程。

 

创新点

扩散模型

  • 特征: 扩散模型通过在前向过程中向图像加入噪声,并在逆向过程中逐步去除这些噪声,生成高质量、现实感强的图像。

假设我们有一张健康人的眼底图像,我们想要生成这个人如果患有糖尿病视网膜病变(DR)的图像。

扩散模型首先在原始健康图像上加入噪声,使其变得模糊不清。

然后,在逆向过程中,模型逐渐去除噪声并引入糖尿病视网膜病变的特征,如微血管异常和出血点,最终生成一张逼真的、展现疾病特征的反事实图像。

 
对抗性鲁棒分类器

  • 特征: 对抗性鲁棒分类器经过训练,能够抵抗对抗性攻击,并产生与特定类别特征对齐的强大梯度,有助于引导扩散模型生成具有目标类别特征的图像。

设想一个任务,其中需要将健康眼底图像转换成显示糖尿病视网膜病变特征的图像。

对抗性鲁棒分类器能识别出,健康眼底图像中应该如何修改以展现糖尿病视网膜病变的特征,例如在哪些区域增加出血点或微血管异常。

这些针对性的梯度信息被用来指导扩散模型,在逆向过程中准确地引入这些病变特征。

 
结合扩散模型和对抗性鲁棒分类器

  • 方法: 结合扩散模型的图像生成能力和对抗性鲁棒分类器的特征引导能力,创建既现实又准确的反事实图像。

假设一个研究项目旨在生成展现糖尿病视网膜病变进展的图像序列。

研究者首先使用对抗性鲁棒分类器确定哪些特征是糖尿病视网膜病变的关键指标,如血管异常的程度和出血点的分布。

然后,他们使用扩散模型,根据这些指标从健康眼底图像,生成一系列反映病变进展的图像。

这个过程结合了两种技术:对抗性鲁棒分类器提供了对疾病特征的深刻洞察,而扩散模型则负责生成逼真的图像。

不仅能生成逼真的图像,还能在图像中引入或去除特定的疾病特征。

 

效果


直接上结论,表明 DVC 技术能够生成比SVC技术更逼真的图像,更好地移除或引入与疾病相关的特征,而不会产生不自然的伪影

直接上结论。从这张图可以看出,对抗性鲁棒模型和锥投影模型生成的反事实图像在视觉上更加逼真,并且能够引入更明显的疾病相关变化,与普通模型相比,它们在模拟糖尿病视网膜病变方面更为有效


图中展示了光学相干断层扫描(OCT)图像,其中包含了一系列使用扩散视觉反事实(DVCs)技术生成的图像。

这些图像展示了当健康眼底图像被转换为具有某种疾病特征的图像,以及当有疾病特征的图像被转换回健康状态时的变化。

箭头指向了在图像生成过程中添加或移除的特定特征,蓝色箭头指示添加的特征,绿色箭头指示移除的特征。

这些图像证明了DVC技术能够在OCT图像上准确地模拟出疾病的特定视网膜变化,这对于疾病诊断和治疗规划具有潜在的价值。

调参技巧

正则化参数 λ 的不同值影响了生成图像的真实性和病变特征的准确性。

一般来说,中等正则化强度(如 λ = 0.5)可能提供了最佳平衡,既保留了健康图像的结构,又能添加足够的病变特征以改变分类器的决策。

调参:

  1. 疾病的严重程度:

    • 对于轻微的病变,可能需要较小的正则化参数(高λ值),以便生成图像的变化更为微妙。
    • 对于严重的病变,可能需要较大的正则化参数(低λ值),以生成更显著的病变特征。
  2. 保持原始图像结构:

    • 需要一个平衡的正则化参数(中等λ值),以保持原始图像结构的同时引入或去除特定病变特征。
  3. 生成图像的现实性:

    • 正则化参数应该调整到足以生成现实且准确反映病变特征的图像,但又不会引入不自然的伪影。
  4. 分类器的决策改变:

    • 参数调整应该确保生成的图像能够改变分类器的决策,从健康到疾病状态或反之。
       

总结

问题: 如何生成视网膜底片和OCT图像的现实反事实图像?

解法: 使用 扩散模型 结合 对抗性鲁棒分类器 生成。

  • 为什么使用扩散模型: 扩散模型能够生成高质量、现实感强的图像,适用于处理复杂的医学影像数据。

  • 为什么使用对抗性鲁棒分类器: 这些分类器通过对抗性攻击的训练,能产生与特定类别特征对齐的强大梯度,有助于引导扩散模型生成具有目标类别特征的图像。

特征组成:

  1. 高质量图像生成: 扩散模型提供了生成逼真图像的能力。
  2. 现实感强的视觉输出: 扩散模型在去除加入的噪声的过程中维持图像的现实感。
  3. 疾病特征的准确描绘: 对抗性鲁棒分类器确保生成图像中包含准确的疾病特征。
  4. 图像数据预处理: 对原始视网膜图像进行标准化裁剪,确保输入数据的一致性。
  5. 数据增强: 使用额外的数据集加强模型对疾病样本的学习。

 

Fundus 转 OCT(只是猜想,不一定)

1. 疾病特征模拟

示例: 模拟糖尿病视网膜病变在OCT图像中的表现。

初始步骤是选取健康的fundus图像。

使用扩散模型,逐步引入与糖尿病视网膜病变相关的特征,如视网膜层的增厚或微血管异常。

这个过程中,对抗性鲁棒分类器帮助模型识别和模拟OCT图像中这些特征应该如何展现。

最终生成的图像展现了假设情况下的病变特征,供医生分析和学习。

2. 数据增强

示例: 为OCT图像数据集添加更多样化的病变样本。

在OCT图像数据稀缺的情况下,从已有的fundus图像出发,

利用扩散模型生成不同阶段和类型的视网膜病变OCT图像。

这些生成的图像被加入到现有的数据集中,提高了数据集的多样性和丰富性,有助于提升后续模型训练的质量和效果。

3. 疾病进展模拟

示例: 预测视网膜疾病在OCT图像上的进展。

选取初始阶段的糖尿病视网膜病变 fundus 图像,运用扩散模型逐步展现疾病从初期到晚期在 OCT 图像上的变化。

模型通过对抗性鲁棒分类器的引导,模拟出疾病的各个阶段特征,如视网膜液体积聚或层次结构改变,生成一系列图像来展示疾病的预期进展路径。

4. 跨模态学习

示例: 理解 fundus 和 OCT 图像在视网膜疾病表现上的关联。

分析在 fundus 图像上表现出的特定视网膜疾病特征,如血管异常,并使用扩散模型在 OCT 图像上模拟相应的变化,如视网膜层次的改变。

结合对抗性鲁棒分类器和扩散模型的步骤:

  1. 数据收集和准备:

    • 收集 fundus 和 OCT 图像的数据集。
    • 对两种图像进行预处理以保证输入数据的一致性和质量。
  2. 特征识别与标注:

    • 使用对抗性鲁棒分类器分析 fundus 图像,标注出病变特征,如血管异常等。
    • 对OCT图像执行同样的过程,标注出疾病相关的变化,如视网膜层次结构的改变。
  3. 使用扩散模型进行图像生成:

    • 训练扩散模型,使其学会从一个模态(如fundus)到另一个模态(如OCT)的特征转换。
    • 在训练扩散模型时,可以使用对抗性鲁棒分类器提供的梯度信息来指导图像生成过程。
    • 这样,扩散模型不仅学会了从一种模态转换到另一种模态的特征,而且这些特征的表现会更加精确,更接近真实病变的表现。
  4. 跨模态对比分析:

    • 生成的 OCT 图像与原始的 fundus 图像进行对比,验证病变特征是否准确转换。
    • 对抗性鲁棒分类器可以再次用于验证生成的图像是否保持了与原始病变相同的分类信心度。
  5. 专家验证:

    • 眼科专家参与评估AI生成的 OCT 图像的准确性,确保其临床可用性。
    • 在这个过程中,对抗性鲁棒分类器的主要作用是提供关于病变特征的精确信息,帮助扩散模型理解在 fundus 图像上标注的病变特征应如何在 OCT 图像上呈现。
    • 而扩散模型的作用是利用这些信息生成具有对应病变特征的 OCT 图像。

这篇关于扩散视觉反事实算法 DVC:对抗性鲁棒分类器 + 扩散模型,跨模态对比原始的 fundus 图 VS 生成的 OCT 图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/650714

相关文章

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

Python使用qrcode库实现生成二维码的操作指南

《Python使用qrcode库实现生成二维码的操作指南》二维码是一种广泛使用的二维条码,因其高效的数据存储能力和易于扫描的特点,广泛应用于支付、身份验证、营销推广等领域,Pythonqrcode库是... 目录一、安装 python qrcode 库二、基本使用方法1. 生成简单二维码2. 生成带 Log

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南

《Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南》在日常数据处理工作中,我们经常需要将不同Excel文档中的数据整合到一个新的DataFrame中,以便进行进一步... 目录一、准备工作二、读取Excel文件三、数据叠加四、处理重复数据(可选)五、保存新DataFram

SpringBoot生成和操作PDF的代码详解

《SpringBoot生成和操作PDF的代码详解》本文主要介绍了在SpringBoot项目下,通过代码和操作步骤,详细的介绍了如何操作PDF,希望可以帮助到准备通过JAVA操作PDF的你,项目框架用的... 目录本文简介PDF文件简介代码实现PDF操作基于PDF模板生成,并下载完全基于代码生成,并保存合并P

锐捷和腾达哪个好? 两个品牌路由器对比分析

《锐捷和腾达哪个好?两个品牌路由器对比分析》在选择路由器时,Tenda和锐捷都是备受关注的品牌,各自有独特的产品特点和市场定位,选择哪个品牌的路由器更合适,实际上取决于你的具体需求和使用场景,我们从... 在选购路由器时,锐捷和腾达都是市场上备受关注的品牌,但它们的定位和特点却有所不同。锐捷更偏向企业级和专

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

TP-LINK/水星和hasivo交换机怎么选? 三款网管交换机系统功能对比

《TP-LINK/水星和hasivo交换机怎么选?三款网管交换机系统功能对比》今天选了三款都是”8+1″的2.5G网管交换机,分别是TP-LINK水星和hasivo交换机,该怎么选呢?这些交换机功... TP-LINK、水星和hasivo这三台交换机都是”8+1″的2.5G网管交换机,我手里的China编程has

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt