GAN 用于图像增强

工程需求,临时学一下gan的原理和基于图像增强的实现

原理

论文链接

Generative Adversarial Nets

我们提出了一个通过对抗过程来估计生成模型的新框架,其中我们同时训练两个模型:捕获数据分布的生成模型G和估计样本来自训练数据而不是G的概率的 判别模型D。G的训练过程是最大化D犯错的概率。这个框架对应于一个min-max two-player game。在任意函数G和D的空间中,存在一个唯一解,G恢复训练数据分布,D处处等于1/2。在G和D由mlp定义的情况下,整个系统可以通过反向传播进行训练。在训练或生成样本过程中,不需要任何马尔可夫链或展开近似推理网络。通过对生成的样本进行定性和定量评估,实验证明了该框架的潜力。

之前的方法总是想构造一个分布函数,然后提供参数给函数学习,把分布学出来,但是计算量巨大;Gernerative machine就是学模型来近似想要的结果,虽然算起来容易,但是不知道想要的结果

组件

  1. 生成器 (Generator)(是MLP)

    • 输入是随机噪声(通常是从Gaussian Distribution或均匀分布中采样的向量)。
    • 输出是与真实数据分布尽可能接近的生成样本(如图像、音频、文本等)。
    • 目标是“欺骗”判别器,使其无法分辨生成样本和真实样本。
  2. 判别器 (Discriminator)(是MLP)

    • 输入是生成器的输出样本和真实样本。
    • 输出是样本为真实数据的概率(通常在 [0, 1] 之间)。
    • 目标是正确区分真实样本和生成样本。

任务

Gernerative fake,Discriminative 判断,二者互相对抗,最后期望G赢

判别器目标:最大化区分真实样本和生成样本的能力

判别器的目标是 最大化 上述公式,即:

  • 提高对真实数据 x 的识别准确度(log⁡D(x))。
  • 提高对生成数据 G(z)的拒绝能力(log⁡(1−D(G(z)))

 鼓励判别器在面对真实数据 x 时输出高概率,即更准确地判断数据为真实。

鼓励判别器在面对生成样本 G(z)时输出低概率,即更准确地判断数据为生成的。

生成器目标:最小化被判别器正确区分生成样本为假的概率

生成器希望“欺骗”判别器,让判别器认为生成样本 G(z)是真实的

拟合过程↑ 绿色是z映射的均值,蓝色线是辨别器,总之就是把随机分布映射成真实分布的一个过程

 命题

论文中的命题和证明,这里暂时不展开

统计意义是 two-sample test

迭代过程

先更新Discriminator再更新Generator

总体来说这一版收敛不太稳定

降噪任务

参考视频第1.1节-GAN与图像降噪-基础篇_哔哩哔哩_bilibili

cnn--encoder-decoder, residual learninig 需要成对的训练数据,真实数据难以获得

GAN-CNN based blind denoiser GCBD,无监督上采样模型

看了一下效果还可以

经典应用

DANet*

  • 任务类型:分割任务中的特征增强
  • DANet 实际上是一种用于语义分割任务的注意力机制网络,而非纯粹的 GAN。
  • 引入了空间注意力 (Spatial Attention)通道注意力 (Channel Attention) 机制,旨在增强特征表达,关注目标区域的细节。

EnlightenGAN

  • 任务类型:低光照图像增强
  • EnlightenGAN 是一种用于增强低光照图像的生成对抗网络。
  • 它可以改善图像在低光照条件下的亮度和对比度,同时保留细节和自然感

SRGAN*

  • SRGAN 是一种用于图像超分辨率(Super Resolution)的 GAN,目的是从低分辨率图像生成高分辨率图像。
  • 它通过生成器网络提高图像分辨率,并通过对抗判别器保证生成的高分辨率图像更自然、更逼真。

Generator 

前面是残差模块不改变图像分辨率

Pixelshuffer 是基于亚像素卷积的上采样模块

亚像素卷积

用channel换space

Discriminator

通道数不断增加的卷积层每次特征通道数增加一倍时,特征分辨率降低为原来的一半

内容损失也叫感知损失

训练心得

就是说还是吃数据集的,在通用数据集作为预训练权重的情况下针对医学图像表现并不好

通用数据集表现↑

医学数据集表现↑ 

以及discriminator经常比generator强很多...大概就能对应文中的收敛不稳定吧

改进:ESRGAN

Esrgan:Enhanced super-resolution gene!ative adversaria networks

--引入Residual-in-Residual Dese Block(RRDB)增强生成器能力

--使用激活前的VGG特征来改善感知损失

(激活之后的特征过于稀疏)

--RaGAN模型相对判别器,relativistic average discriminatol

others

CycleGAN:如果需要对某一领域图像(如医学图像)进行特定增强,也可以使用无监督训练方式。

DeblurGAN

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习】傅里叶变换

[toc]深度学习中的傅里叶变换 傅里叶变换 傅里叶变换在深度学习中有着广泛的应用,尤其是在信号处理、图像处理和自然语言处理等领域。 1. 傅里叶变换基础 傅里叶变换是一种将信号从时域转换到频域的数学工具。对于连续信号,傅里叶变换定义为&#xf…

免费的数据标注工具

1. LabelImg(图像标注工具) 推荐理由:LabelImg 是一个开源、跨平台的图像标注工具,广泛用于物体检测任务。支持对图像进行框选标注,支持多种文件格式(如Pascal VOC、YOLO格式)。它非常轻量&…

sqlfather笔记

这里简单记录写学习鱼皮sqlfather项目的笔记,以供以后学习。 运行 将前后端项目clone到本地后,修改对应配置文件运行项目。 后端 1.配置好mysql后运行这个sql文件建立对应的表。 2.修改数据库密码 3.修改完后运行启动类即可 4. 启动结果 5.查看A…

【大数据】机器学习------支持向量机(SVM)

支持向量机的基本概念和数学公式: 1. 线性可分的支持向量机 对于线性可分的数据集 ,其中(x_i \in R^d) 是特征向量 是类别标签,目标是找到一个超平面 ,使得对于所有 的样本 ,对于所有(y_i -1) 的样本,…

《AI与鸿蒙Next:建筑设计可视化的革新力量》

在建筑设计领域,可视化对于呈现设计理念、与客户沟通以及指导施工等环节都至关重要。人工智能与鸿蒙Next图形渲染技术的发展,为建筑设计可视化带来了前所未有的变革与机遇。 人工智能在建筑设计可视化中的作用 快速生成设计方案:人工智能可以…

Android系统开发(一):AOSP 架构全解析:开源拥抱安卓未来

引言 当我们手握智能手机,流畅地滑动屏幕、切换应用、欣赏动画时,背后其实藏着一套庞大且精密的开源系统——Android AOSP(Android Open Source Project)。这套系统不仅是所有安卓设备的根基,也是系统开发者的终极 pl…

mono3d汇总

lidar坐标系 lidar坐标系可以简单归纳为标准lidar坐标系和nucense lidar坐标系&#xff0c;参考链接。这个坐标系和车辆的ego坐标系是一致的。 标准lidar坐标系 opendet3d&#xff0c;mmdetection3d和kitt都i使用了该坐标系 up z^ x front| /| /left y <------ 0kitti采…

java实现word转html(支持docx及doc文件)

private final static String tempPath "C:\\Users\\xxx\\Desktop\\Word2Html\\src\\test\\";//图片及相关文件保存的路径public static void main(String argv[]) {try {JFileChooser fileChooser new JFileChooser();fileChooser.setDialogTitle("Select a …

linux下springboot项目nohup日志或tomcat日志切割处理方案

目录 1. 配置流程 2. 配置说明 其他配置选项&#xff1a; 3. 测试执行 4. 手动执行 https://juejin.cn/post/7081890486453010469 通常情况下&#xff0c;我们的springboot项目部署到linux服务器中&#xff0c;通过nohup java -jar xxx.jar &指令来进行后台运行我们…

[Python学习日记-78] 基于 TCP 的 socket 开发项目 —— 模拟 SSH 远程执行命令

[Python学习日记-78] 基于 TCP 的 socket 开发项目 —— 模拟 SSH 远程执行命令 简介 项目分析 如何执行系统命令并拿到结果 代码实现 简介 在Python学习日记-77中我们介绍了 socket 基于 TCP 和基于 UDP 的套接字&#xff0c;还实现了服务器端和客户端的通信&#xff0c;本…

内联变量(inline variables):在多个文件中共享全局常量

在 C17 中&#xff0c;引入了 内联变量&#xff08;inline variables&#xff09; 的概念&#xff0c;可以用于在多个文件中共享全局常量。内联变量允许在头文件中定义变量&#xff0c;而不会导致链接错误&#xff08;如重复定义&#xff09;。这种方式非常适合用于定义跨多个文…

lvm快照备份技术详细知识点

一、LVM 简介 LVM&#xff08;Logical Volume Manager&#xff09;即逻辑卷管理器&#xff0c;是 Linux 系统中用于管理磁盘存储的关键技术。在传统磁盘管理方式下&#xff0c;磁盘分区一旦确定&#xff0c;其大小调整往往较为复杂&#xff0c;且难以灵活应对业务变化。LVM 则…

多种vue前端框架介绍

学如逆水行舟&#xff0c;不进则退。 在现今的软件开发领域&#xff0c;Vue.js凭借其高效、灵活和易于上手的特性&#xff0c;成为了前端开发的热门选择。对于需要快速搭建企业级后台管理系统的开发者而言&#xff0c;使用现成的Vue后台管理系统模板无疑是一个明智之举。 本文…

opencv3.4 ffmpeg3.4 arm-linux 交叉编译

一些依赖安装&#xff1a; sudo apt-get install pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev 交叉编译工具链准备&#xff1a;gcc-linaro-6.3.1 1、下载 https://github.com/FFmpeg/FFmpeg 解压后新建目录&#xff1a;Fmpeg-n3.4.13/ffmpeg…

使用SIPP发起媒体流性能测试详解

使用SIPP发起媒体流性能测试详解 一、SIPP工具简介二、测试前的准备三、编写测试脚本四、运行测试五、分析测试结果六、总结SIPP(SIP Performance Protocol)是一个开源工具,专门用于SIP(Session Initiation Protocol)协议的性能测试和基准测试。SIP是一种用于控制多媒体通…

SDL2:Android APP编译使用 -- SDL2多媒体库使用音频实例

更多内容&#xff1a;XiaoJ的知识星球 SDL2&#xff1a;Android APP编译使用 3. SDL2&#xff1a;Android APP编译使用3.1 Android Studio环境准备&#xff1a;3.2 构建Android APP&#xff08;1&#xff09;方式一&#xff1a;快速构建APK工程&#xff08;2&#xff09;方式二…

macOS 安装JDK17

文章目录 前言介绍新特性下载安装1.下载完成后打开downloads 双击进行安装2.配置环境变量3.测试快速切换JDK 小结 前言 近期找开源软件&#xff0c;发现很多都已经使用JDK17springboot3 了&#xff0c;之前的JDK8已经被替换下场&#xff0c;所以今天就在本机安装了JDK17&#…

重温STM32之环境安装

缩写 CMSIS&#xff1a;common microcontroller software interface standard 1&#xff0c;keil mdk安装 链接 Keil Product Downloads 安装好后&#xff0c;开始安装平台软件支持包&#xff08;keil 5后不在默认支持所有的平台软件开发包&#xff0c;需要自行下载&#…

vue3+ts+uniapp 微信小程序(第一篇)—— 微信小程序定位授权,位置信息权限授权

文章目录 简介一、先看效果1.1 授权定位前&#xff0c;先弹出隐私协议弹框1.2 上述弹框点击同意&#xff0c;得到如下弹框1.3 点击三个点&#xff0c;然后点设置 1.4 在1.2步骤下&#xff0c;无论同意或者拒绝 二、manifest.json 文件配置三、微信公众平台配置3.1 登录进入微信…

迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-编写内核 LED HDF 驱动程序

接下来编译 LED 驱动&#xff0c;该驱动用于在基于华为设备框架&#xff08;HDF&#xff09;的系统中控制 LED 灯的开关&#xff0c;完整代码如下所示&#xff1a; 更多内容可以关注&#xff1a;迅为RK3568开发板篇OpenHarmony