眼底图像生成新 SOTA:GeCA模拟生物细胞的演变过程

眼底图像生成新 SOTA:GeCA模拟生物细胞的演变过程

    • 提出背景
    • GeCA 框架
    • 生成元胞自动机:从单细胞到生物体的过程
      • 生物体从单个像素细胞开始
      • 细胞扩散:从细胞演变为生物体
      • 通过基因遗传改进逆向采样
      • 视网膜疾病分类
      • GeCA 逻辑拆解
        • 子解法1:神经元胞自动机基本框架
        • 子解法2:扩散过程优化
        • 子解法3:时间调度机制
        • 子解法4:基因遗传引导机制

 


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

代码:https://github.com/xmed-lab/GeCA

 


提出背景

生成建模旨在逼近真实数据的统计属性,从而合成与原始分布高度相似的新数据。

生成对抗网络(GANs)和去噪扩散概率模型(DDPMs)分别借鉴了博弈论和热力学的思想,在生成建模方面取得了显著进展。

然而,通过生物进化的视角来探索生成建模的研究仍然很少。

在本文中,我们介绍了一种新的模型家族,称为生成元胞自动机(GeCA),其灵感来源于从单细胞进化到生物体的过程。

GeCA 被评估为视网膜疾病分类的有效增强工具,跨越了两种成像方式:眼底图像和光学相干断层扫描(OCT)。

在OCT成像中,数据稀缺且类别分布本质上不平衡的情况下,GeCA显著提升了对11种不同眼科疾病的表现,平均F1分数相比于传统基线提升了12%。

GeCA 生成图像:

效果对比:
在这里插入图片描述

GeCA 框架

在这里插入图片描述

生成元胞自动机:从单细胞到生物体的过程

生物体从单个像素细胞开始

  • 像素细胞的概念:我们将图片中的每一个小格子称为“像素细胞”。

    这些像素细胞会像生物体的细胞一样,随着时间变化。

  • 像素细胞的组成:每个像素细胞包含四个部分:输入值、位置编码、输出值和隐藏状态。

    输入值是图像的初始值,位置编码帮助像素细胞知道自己在图像中的位置,输出值是像素细胞目标状态,而隐藏状态则反映像素细胞的内部状态。

  • 像素细胞的演变:像素细胞会随机更新,意味着并不是所有细胞都同时变化。

    更新时,输入值和位置编码保持不变,只更新隐藏状态和输出值。

细胞扩散:从细胞演变为生物体

  • 训练模型:我们使用一种扩散过程来训练模型。在这个过程中,除了位于图像中心的一个像素细胞外,所有像素细胞的初始值都设为零。

    中心的像素细胞初始化为随机值。

  • 前向扩散:图像中的每个像素细胞逐渐加入噪声,这样到最后所有像素细胞都变得像噪声一样。

  • 逆向采样:通过减少噪声,我们可以一步一步地从随机噪声中生成新的图像。这个过程类似于“去噪”。

通过基因遗传改进逆向采样

  • 基因遗传引导:在图像生成过程中,我们利用像素细胞的隐藏状态来保持长期信息,就像遗传物质一样。

    这有助于在生成图像时保持一致性。

  • 改进去噪:在去噪过程中,我们利用隐藏状态来指导逆向生成,使图像生成更加平滑和自然。

视网膜疾病分类

  • 数据稀缺的挑战:由于OCT图像的数据很少,使用这些图像来分类视网膜疾病非常困难。

    我们通过生成建模来扩展数据集,即用生成的合成图像来增加训练数据。

  • 保持数据分布:我们确保生成的合成数据集在类别分布上与原始数据集一致,这样可以避免数据偏差,并提高分类模型的准确性。

我们的方法是通过模拟生物细胞的演变过程,生成更多的OCT图像,帮助改进视网膜疾病的分类精度。

GeCA 逻辑拆解

解法:GeCA = 神经元胞自动机基本框架 + 扩散过程优化 + 时间调度机制 + 基因遗传引导机制

子解法1:神经元胞自动机基本框架
  • 因为:它可以模拟生物细胞的生长和演化过程,适合于处理图像生成中的复杂模式和结构。
  • 之所以使用神经元胞自动机基本框架,是因为它可以将图像的每个像素看作一个像素细胞,通过局部自注意力机制和随机更新规则,使图像逐步演变成目标状态。
  • 例如,在模拟皮肤细胞生成的研究中,可以通过调整细胞间的相互作用规则来模拟不同类型的皮肤纹理。
子解法2:扩散过程优化
  • 因为:扩散过程可以模拟从随机噪声到详细图像的逐步精化过程,适用于生成复杂的医学图像。
  • 之所以使用扩散过程优化,是因为它通过逐步增减噪声层,精确控制图像的生成过程,逐步接近目标图像。
  • 例如,在生成OCT图像时,扩散过程能够从基本的噪声背景逐步细化出视网膜层次结构。
子解法3:时间调度机制
  • 因为:合理的时间调度可以优化生成过程中的计算资源使用,提高模型的运行效率。
  • 之所以使用时间调度机制,是因为它允许模型在生成过程中根据需要动态调整更新频率和优先级,从而更加高效地处理图像的不同区域。
  • 例如,在生成较为复杂的中央区域时,可能需要更频繁的更新。
子解法4:基因遗传引导机制
  • 因为:它能够利用已有的生成样本特征来引导新样本的生成,提高生成质量和一致性。
  • 之所以使用基因遗传引导机制,是因为这种方法能够在生成过程中保持特征的连续性和一致性,特别是在涉及长期依赖的图像特征时。
  • 例如,在生成具有连续病变特征的视网膜图像时,遗传引导可以帮助模型记忆和再现病变区域的特定特征。

GeCA 逻辑链是链条式的,因为每个子解法都依赖于前一步的结果,形成一个依次递进的过程:

  • 神经元胞自动机 NCA 提供了基础的像素细胞演变机制。
  • 基因遗传引导 GHG 在NCA的基础上,利用隐藏状态进行逆向采样,保留长程依赖性。
  • 扩散过程 将NCA和GHG结合,提供了一种通过噪声生成图像的机制。
  • 选择性通道维度采样 在生成过程中优化图像的细节和质量。
  • 更新的时间调度 提高了生成过程的效率和连贯性。

GeCA模型生成图像的过程与OCT(光学相干断层扫描)图像生成的过程:

  1. 神经元胞自动机 NCA — 基础图像采集

    • 就像OCT图像生成的初步扫描,神经元胞自动机(NCA)为图像生成提供基础框架。
    • 在OCT中,这一步骤涉及获取眼底的初始扫描图像,提供关于眼部结构的基本信息。
    • NCA通过为每个像素(视为单个细胞)定义初始状态和演化规则来模拟这一过程。
  2. 基因遗传引导 GHG — 详细层次增强

    • 基因遗传引导(GHG)在图像生成过程中增加细节层次,类似于OCT在初步图像基础上通过精细的层次调整来增强图像细节。
    • GHG使用隐藏状态来保持图像特征的长期依赖性,确保图像生成的连贯性和精确性,类似于OCT中使用高级成像技术来增强图像的清晰度和分辨率。
  3. 扩散过程 — 噪声处理和图像优化

    • 在OCT图像生成中,需要通过软件处理来消除噪声并优化图像质量。
    • 类似地,GeCA中的扩散过程通过逐步添加和去除噪声来细化生成图像。
    • 这一步骤确保最终图像在保持真实性的同时,也具有高质量和清晰度。
  4. 选择性通道维度采样 — 局部图像细节调整

    • 选择性通道维度采样可以看作是OCT在图像处理中对特定区域进行焦点调整,以突出重要结构或细节。
    • 这在GeCA中通过针对性地调整图像的特定通道来实现,优化整体图像的表现。
  5. 更新的时间调度 — 成像过程的效率优化

    • 在OCT中,扫描过程的时间效率至关重要。
    • 同样,GeCA中的更新时间调度确保图像生成过程不仅质量高,也高效。
    • 这一步骤管理了各个生成阶段的时间分配和优先级,确保图像生成既快速又准确。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Go高级库存照片源码v5.3

GoStock – 免费和付费库存照片脚本这是一个免费和付费共享高质量库存照片的平台,用户可以上传照片与整个社区和访客分享,并可以通过 PayPal 接收捐款。此外,用户还可以点赞、评论、分享和收藏您最喜欢的照片。 下载 特征: 使用Laravel 10构建订阅系统Stripe 连接渐进式网页…

【Python机器学习】模型评估与改进——分层k折交叉验证

在k折分层验证中,将数据集划分为k折时,从数据的前k分之一开始划分,这可能并不总是一个好主意,例如iris数据集中: from sklearn.datasets import load_irisirisload_iris() print(Iris labels:\n:{}.format(iris.targe…

2.Python学习:数据类型和变量

1.标识符命名规则 只能由数字、字母、下划线组成不能以数字开头不能是关键字(如class等python内部已经使用的标识符)区分大小写 查看关键字: print(keyword.kwlist)2.数据类型 2.1常见数据类型 2.1.1Number数值型: 整数int&a…

13 - Python网络编程入门

网络编程入门 计算机网络基础 计算机网络是独立自主的计算机互联而成的系统的总称,组建计算机网络最主要的目的是实现多台计算机之间的通信和资源共享。今天计算机网络中的设备和计算机网络的用户已经多得不可计数,而计算机网络也可以称得上是一个“复…

自定义isdate函数,判定日期字符串有效性

自定义isdate函数,按日期“属性”,判定字符串日期有效性。 (笔记模板由python脚本于2024年07月05日 15:28:04创建,本篇笔记适合喜欢探究python内建模块的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.o…

One day for Chinese families

周围生活中的普通家庭的一天流程: 【上班的一天】 【放假的一天】 有家庭的人,上班流程: 01)准备早餐,牛奶,面包 02)叫娃娃起床,一般要蛮久的;沟通交流 -- 哄娃娃 -- 生气…

2-5 softmax 回归的简洁实现

我们发现通过深度学习框架的高级API能够使实现线性回归变得更加容易。 同样,通过深度学习框架的高级API也能更方便地实现softmax回归模型。 本节如在上节中一样, 继续使用Fashion-MNIST数据集,并保持批量大小为256。 import torch from torc…

Linux操作系统的引导过程

系统初始化进程与文件、systemd概述、单元类型、切换运行级别、查看系统默认默认运行、永久切换、常见的系统服务(centos)-CSDN博客 centos 7系统升级内核(ELRepo仓库)、小版本升级、自编译内核-CSDN博客 ss命令详细使用讲解文…

微积分-导数4(三角函数的导数)

证明 f ( x ) sin ⁡ x f(x) \sin x f(x)sinx的导数为 f ′ ( x ) cos ⁡ x f(x) \cos x f′(x)cosx 已知函数 f ( x ) sin ⁡ x f(x) \sin x f(x)sinx 画出 f ( x ) f(x) f(x)图像以及 f ′ ( x ) f(x) f′(x)的图像 因此,我们可以合理的猜测:…

每日一题~ (判断是否是合法的出栈序列)

大概的题意: 将 1-n 按照顺序进栈,问 输入的序列是否是合法的出栈序列。 遍历序列,如果当前这个值a小于 栈顶的值,说明它还未进栈(因为我们是按照顺序进栈的),所以我们将 一些元素进栈&#xff…

最短路:Dijkstra

原始模板&#xff1a; 时间复杂度O() 使用于图很满的情况 struct Node{int y,v;Node(int _y,int _v){y_y;v_v;} };vector<Node> edge[N1]; int n,m,dist[N1]; bool b[N1];int Dijistra(int s,int t){memset(b,false,sizeof(b));memset(dist,127,sizeof(dist));dist[s]…

Linux开发讲课33---线程实现与线程控制步骤简析

线程概述 进程是系统中程序执行和资源分配的基本单位。 每个进程都拥有自己的数据段、代码段和堆栈段&#xff0c;这就造成了进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理机的空转时间支持多处理器和减少上下文切换开销&#xff0c;进程在演…

第5章 认证授权:需求分析,Security介绍(OAuth2,JWT),用户认证,微信扫码登录,用户授权

1 模块需求分析 1.1 什么是认证授权 截至目前&#xff0c;项目已经完成了课程发布功能&#xff0c;课程发布后用户通过在线学习页面点播视频进行学习。如何去记录学生的学习过程呢&#xff1f;要想掌握学生的学习情况就需要知道用户的身份信息&#xff0c;记录哪个用户在什么…

工作手机怎么做好业务员工作微信的监控管理

什么是工作手机管理系统&#xff1f; 工作手机管理系统是专为企业管理设计的员工微信管理&#xff0c;它通过监控通讯记录、保障数据安全、自动检测敏感行为、永久保留客户信息等功能&#xff0c;帮助企业提升销售效率、维护客户资源安全&#xff0c;并确保业务流程的合规性。…

自动化设备上位机设计 三

目录 一 设计原型 二 后台源码 一 设计原型 二 后台源码 using SqlSugar;namespace 自动化上位机设计 {public partial class Form1 : Form{SqlHelper sqlHelper new SqlHelper();SqlSugarClient dbContent null;bool IsRun false;int Count 0;public Form1(){Initializ…

奇景光电战略投资Obsidian,共筑热成像技术新未来

5月29日,业界领先的IC设计公司奇景光电宣布,将对热成像传感器解决方案制造商Obsidian进行战略性投资,并以主要投资者的身份,参与到Obsidian的可转换票据融资活动中。虽然奇景光电并未公开具体的投资金额,但这一举动无疑向市场传递了一个明确的信号:奇景光电对Obsidian的技…

深度学习:为什么说英伟达A100或RTX A6000等专业GPU比RTX 4090更适合深度学习呢?

目录 一、关键术语 CUDA cores&#xff08;CUDA内核&#xff09;&#xff1a; memory bandwidth&#xff08;内存带宽&#xff09;&#xff1a; 二、深度学习的显卡硬件要求 三、NVIDIA显卡A100、RTX A6000和RTX 4090对比 1、NVIDIA A100 2、NVIDIA RTX A6000 3、NVIDI…

方法引用 异常 file

一.方法引用 1.方法引用概述 eg: 表示引用run1类里面的sxxxx方法 把这个方法当做抽象方法的方法体 &#xff1a;&#xff1a;是方法引用符 //方法引用Integer[] arr{4,3,1,6,2,7,8,5};Arrays.sort(arr,run1::subtraction);System.out.println(Arrays.toString(arr));}publi…

AI老照片生成视频

地址&#xff1a;AI老照片 让你的图片动起来, 老照片修复与动态化

HTTP-概述

概念 :Hyper Text Transfer Protocol&#xff0c;超文本传输协议&#xff0c;规定了浏览器和服务器之间数据传输的规则。 原始数据格式 特点 1. 基于TCP协议:面向连接&#xff0c;安全&#xff08;三次握手&#xff09; 2. 基于请求-响应模型的:一次请求对应一次响应&#xf…