FusionDiff:第一个基于扩散模型实现的多聚焦图像融合的论文

文章目录

    • 1. 论文介绍
    • 2. 研究动机
    • 3. 模型结构
      • 3.1 网络架构
      • 3.2 前向扩散过程
      • 3.3 逆向扩散过程
      • 3.4 训练和推理过程
    • 4. 小样本学习
    • 4. 实验结果

1. 论文介绍

题目:FusionDiff: Multi-focus image fusion using denoising diffusion probabilistic models

作者:Mining Li,中国科学技术大学

录用期刊:Expert Systems with Applications 2023

论文地址:paper

开源代码地址:code

论文主要创新点:提出了第一个基于扩散模型 (Diffusion) 实现的多聚焦图像融合模型,并实现了小样本学习,将训练集降低为以往算法的 2% 以内。

2. 研究动机

目前多聚焦图像融合领域中,深度学习方法的效果明显优于传统算法,深度学习方法可以分为基于决策图的方法和端到端的方法。在基于决策图的方法中,学者们致力于提高聚焦/散焦像素的分类精度。在端到端的方法中,学者们致力于尽可能多的从源图像中提取特征并重建出高质量的融合图像。

目前多聚焦图像融合(MFIF)领域缺乏复杂场景的测试集。单考虑 Lytro 和 MFFW 等公开的多聚焦图像融合数据集,这些数据集中图像的结构非常简单,聚焦和散焦区域的分布也不复杂;因此目前达到 SOTA 水平的方法已经能够取得非常好的融合效果了。

但要想在这些简单的数据集上做出更好的效果,就需要使用更复杂的网络结构。因此越来越多的论文致力于使用更复杂的网络模型和结构,使用更多的损失函数来提高融合性能;但这样的工作实现或复现起来是很困难的,其给读者的启发性也比较有限。

本文另辟蹊径,从图像生成的角度考虑图像融合,将其建模为一个条件图像生成任务,并取得了 SOTA 效果。

3. 模型结构

任何基于 Diffusion 实现的算法都高度依赖于对 Diffusion 的理解,这里就不讲解 Diffusion 了。关于 Diffusion 的介绍和数学原理的推导可以参考书籍 《生成式深度学习的数学原理》

3.1 网络架构

FusionDiff 是一个简单的 Conditional Diffusion Model(条件扩散模型)网络,其图像融合示意图如下:

        

FusionDiff 以两张源图像 { S 1 , S 2 } \{ S_1,S_2 \} {S1,S2} 作为条件输入到噪声预测网络中,将预测的噪声通过 Eq(7) 转换为融合图像的隐变量 F t − 1 F_{t-1} Ft1,随着迭代步骤 t t t 增加, F t − 1 F_{t-1} Ft1 变得越来越清晰(与 ground-truth 越来越接近),将 F 0 F_{0} F0 输入作为最终的融合结果。

FusionDiff 的噪声预测网络是一个 U-Net 网络:

        

3.2 前向扩散过程

对于 { S 1 , S 2 , F } \{ S_1,S_2,F \} {S1,S2,F} 的训练集图像对,对真实的融合图像 (ground-truth) F F F 逐步加噪,直到变成纯噪声。示意图如下:

          

文中设置 T = 2000 T=2000 T=2000,采用 cos 形式的噪声方差变化函数。

3.3 逆向扩散过程

DDPM 的逆向扩散过程为 Eq(6):

  F t − 1 = 1 ϕ t ( F t − 1 − ϕ t 1 − ϕ ‾ t ε θ ( F t , t ) ) + Σ θ ϵ , w h e r e   ϵ ∼ N ( 0 , I ) \ {F_{t - 1}} = \frac{1}{{\sqrt {{\phi _t}} }}\left( {{F_t} - \frac{{1 - {\phi _t}}}{{\sqrt {1 - {{\overline \phi }_t}} }}{\varepsilon _\theta }\left( {{F_t},t} \right)} \right) + \sqrt {\Sigma _\theta }{{\epsilon}},where \ {\epsilon}\sim N\left( {0, I} \right)  Ft1=ϕt 1 Ft1ϕt 1ϕtεθ(Ft,t) +Σθ ϵ,where ϵN(0,I)

作者认为多聚焦图像融合是一个相对确定性的过程,“在MFIF中,观察者很容易区分每个源图像的哪些像素被聚焦,从而大致确定融合图像中应该包含哪些区域。也就是说,对于一系列源图像,FusionDiff 生成的结果应该与观察者预期的融合结果一致,而不是随机生成的。因此 FusionDiff 在图像生成过程中不添加任何随机噪声,以避免融合图像的随机性。”

与 DDIM 相似,FusionDiff 的逆向扩散过程不包含高斯随机噪声项,即 Eq(7):

  F t − 1 = 1 ϕ t ( F t − 1 − ϕ t 1 − ϕ ‾ t ε θ ( S 1 , S 2 , F t , t ) ) \ {F_{t - 1}} = \frac{1}{{\sqrt {{\phi _t}} }}\left( {{F_t} - \frac{{1 - {\phi _t}}}{{\sqrt {1 - {{\overline \phi }_t}} }}{\varepsilon _\theta }(S_1, S_2, {F_t}, t)} \right)  Ft1=ϕt 1 Ft1ϕt 1ϕtεθ(S1,S2,Ft,t)

为了验证基于 Eq(7) 的融合过程是否比基于 Eq(6) 更有效,作者进行了重复性实验:

在这里插入图片描述
可以看到基于 Eq(7) 的融合结果取得了更高的评价指标得分和更低的误差(即更高的确定性/稳定性)。

3.4 训练和推理过程

训练过程:

          

推理过程:

          

4. 小样本学习

FusionDiff 实现了小样本学习,仅仅采用了 100 对多聚焦图像进行训练就取得了 SOTA 的融合结果。以往的 MFIF 算法需要 5000 对图像以上,Table 1 列举了一些代表性的方法的训练集规模:

          

小样本学习的性能使得 FusionDiff 可能适用于样本稀缺的多聚焦图像融合领域,如显微和生物成像场景。

4. 实验结果

作者对比了当前所有类型的代表性的 MFIF 方法:

          

FusionDiff 在 Lytro 和 MFFW 两个公开数据集上取得了 SOTA:

                     

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

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

相关文章

ARPG----C++学习记录05 Section9 动画蓝图,腿部ik

这节课比较难懂,我也不是很理解 动画蓝图 新建一个动画蓝图。首先新建一个人物蓝图的变量用来获取人物的属性,使用第一行蓝图来初始化,当人物为Echo时获取它的movement组件,存为变量。然后动画的每一帧都从movement组件里拿出xy的速度用作后边…

软件外包的需求整理技巧

在软件开发中,整理需求是确保项目成功的重要步骤之一。以下是一些整理需求的技巧,这些技巧有助于确保需求的清晰性、完整性和可行性,为项目的成功打下坚实的基础。北京木奇移动技术有限公司,专业的软件外包开发公司,欢…

有什么方法可以改善CRM实施投资回报?

数据统计显示,几乎70%以上CRM客户管理系统项目的投资回报是负数。这意味着超过半数的CRM项目的结果是失败的。那么我们有什么方法可以改善CRM实施投资回报吗?当然有,下面我们就来说一说。 如何改善CRM实施投资回报 首先,您选择的…

新品 | 飞凌嵌入式FCU2601工商业储能EMS能量控制单元发布

FCU2601嵌入式控制单元是飞凌嵌入式为锂电池储能行业设计的EMS能量控制单元产品,设计兼具高性能,多接口,低功耗,广泛满足各类储能系统的本地能源管理应用需求。 FCU2601嵌入式控制单元综合考虑到了储能行业不同场景的差异化需求&…

RT1170的ITM SWO配置,实现printf输出及PC指针的采样分析

最近公司准备启动一个新的项目,使用NXP的MIMXRT1170芯片作为主控,在熟悉芯片的过程中发现RT1176具备ITM和SWO功能模块,于是针对之前项目中因工程庞大导致调试困难的问题,决定使用SWO输出调试信息,这样既可以节省硬件的…

Python生成随机数插件Faker的用法

目录 引言 一、Faker库的安装 二、Faker库的基本用法 1、导入Faker类 2、创建Faker对象 3、使用Faker对象生成随机数据 三、Faker库的高级用法 1、自定义数据生成规则 2、使用子模块进行特定领域的数据生成 3、与其他库结合使用 四、Faker库的应用场景 1、单元测试…

虚拟化加密磁盘密钥设置方案浅析 — TKS1

虚拟化加密磁盘密钥设置方案浅析 前言密钥设置方案密钥管理服务-KMS密钥设置方案-TKS1 两级加密设计弱熵密码派生密钥切分存储 前言 虚拟化组件可以使用多种加密算法对虚拟机磁盘的原始内容进行加解密,比如AES、RSA、SM2/SM3/SM4等,用户写入的数据经过加…

医院安全(不良)事件管理系统源码 不良事件报告全套源码

不良事件管理系统是一种专为企业或组织设计的软件工具,用于跟踪、记录和管理不良事件。该系统可以有效地整合不良事件的收集、分类、分析和报告,帮助企业及时识别和处理不良事件,从而降低风险和损失。通过实时监控和自动化报告,该…

富文本组件vue-quill-editor使用

版本:"vue-quill-editor": "^3.0.6", 1.全局引入 import VueQuillEditor from vue-quill-editor import quill/dist/quill.core.css import quill/dist/quill.snow.css import quill/dist/quill.bubble.cssVue.use(VueQuillEditor) 2.使用&am…

轻量封装WebGPU渲染系统示例<30>- 绘制线段(源码)

原理说明: WebGPU提供了绘制基本线条非机制,只要render pipeline primitive对应的 topology属性指定为line-list或者line-strip即可绘制对应的线条。 当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/feature/rendering/src/voxg…

移远EC600U-CN开发板 11.14

控件探索-仪表(lv.meter) 1. 显示一个简单的仪表盘 def set_value(indic, v):meter.set_indicator_value(indic, v)# # A simple meter # meter lv.meter(scr) meter.center() meter.set_size(200, 200)# Add a scale first scale meter.add_scale()…

电机应用-编码器

目录 编码器 增量式编码器 绝对式编码器 混合式绝对式编码器 旋转编码器原理 增量式编码器原理 绝对式编码器原理 编码器基本参数 分辨率 精度 最大响应频率 信号输出形式 编码器 用来测量机械旋转或位移的传感器,能够测量机械部件在旋转或直线运动时的…

Ubuntu 24.04发布日期以定

导读Ubuntu 的下一个长期支持 (LTS) 版本 Ubuntu 24.04 的最终发布日期已确定,计划于 2024 年 4 月 25 日发布。 Ubuntu 的下一个长期支持 (LTS) 版本 Ubuntu 24.04 的最终发布日期已确定,计划于 2024 年 4 月 25 日发布。 除此之外,Ubuntu…

听我的,日志还是得好好打!

大家好,我是老三,不知道大家有没有经历过这样的场景,线上出了问题,着急火燎地去排查: 唉,问题可能出在这个地方,捞个日志看下,卧槽,怎么找不到……哪个**不打日志&#…

Mac M2/M3 芯片环境配置以及常用软件安装-前端

最近换了台新 Mac,所有的配置和软件就重新安装下,顺便写个文章。 一、环境配置 1. 安装 Homebrew 安装 Homebrew【Mac 安装 Homebrew】 通过国内镜像安装会比较快 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Ho…

如何定制开发软件 App?|小程序网站搭建

如何定制开发软件 App?|小程序网站搭建 随着移动互联网的快速发展,定制开发软件 App 成为了许多企业和个人的需求。无论是为了满足特定业务需求,还是为了提升用户体验,定制开发软件 App 都可以帮助我们实现目标。下面,…

管理类联考——数学——汇总篇——知识点突破——代数——函数、方程——记忆——一元二次函数

——一元二次函数——【图像→交点】 ——【 a x 2 b x c y ax^2bxcy ax2bxcy二次函数核心在于“图像”:整体可以由: 图像(形状,上下,交点) ⟹ \Longrightarrow ⟹ △ △ △ ⟹ \Longrightarrow ⟹ 抛…

知识蒸馏学习

这里写目录标题 1. 知识蒸馏学习2. 参考链接 1. 知识蒸馏学习 知识蒸馏把一个大的东西变成一个小的东西,纯的东西,一个大的教师神经网络交给了小的学生神经网络。 把大的模型压缩到小的模型上。 2. 参考链接 知识蒸馏算法和代码&a…

npm封装插件打包上传后图片资源错误

问题: npm封装插件:封装的组件页面涉及使用图片资源,在封装的项目里调用图片显示正常;但是打包上传后,其他项目引入使用报错找不到图片资源;图片路径也不对 获取图片的base64方法 解决方案: 将…