昇思25天学习打卡营第22天|Pix2Pix实现图像转换

打印 上一主题 下一主题

主题 560|帖子 560|积分 1680


Pix2Pix图像转换学习总结

概述

Pix2Pix是一种基于条件生成对抗网络(cGAN)的深度学习模型,旨在实现不同图像风格之间的转换,如从语义标签到真实图像、灰度图到彩色图、航拍图到地图等。这一模型由Phillip Isola等人在2017年提出,广泛应用于图像到图像的翻译任务,具有生成器和辨别器两个主要构成部分。
基本原理

cGAN的核心在于生成器和辨别器的相互作用:


  • 生成器:根据输入图像生成“假”图像,试图使其看起来像真实图像。生成器通过不停迭代学习,从输入图像中提取特征并生成相应的输出。
  • 辨别器:负责判断图像的真实性,评估生成的图像与真实图像之间的差异。辨别器的目标是正确区分真实图像和生成图像。
二者通过博弈过程优化,生成器盼望最大化辨别器判断错误的概率,而辨别器则尽力进步正确判断的概率。最终,模型通过这种竞争关系到达平衡,使生成图像的质量逐步进步。
数学目标

cGAN的目标可以用丧失函数表示:
                                                    L                                           c                                  G                                  A                                  N                                                 (                            G                            ,                            D                            )                            =                                       E                                           (                                  x                                  ,                                  y                                  )                                                 [                            l                            o                            g                            (                            D                            (                            x                            ,                            y                            )                            )                            ]                            +                                       E                                           (                                  x                                  ,                                  z                                  )                                                 [                            l                            o                            g                            (                            1                            −                            D                            (                            x                            ,                            G                            (                            x                            ,                            z                            )                            )                            )                            ]                                  L_{cGAN}(G,D) = E_{(x,y)}[log(D(x,y))] + E_{(x,z)}[log(1-D(x,G(x,z)))]                     LcGAN​(G,D)=E(x,y)​[log(D(x,y))]+E(x,z)​[log(1−D(x,G(x,z)))]


  • 其中,                                        G                                  G                     G为生成器,                                        D                                  D                     D为辨别器,                                        x                                  x                     x为输入图像,                                        y                                  y                     y为真实图像,                                        z                                  z                     z为随机噪声。
该公式的简化形式为:
                                         arg                                                   min                                  ⁡                                          G                                                             max                                  ⁡                                          D                                                 L                                           c                                  G                                  A                                  N                                                 (                            G                            ,                            D                            )                                  \text{arg}\min_{G}\max_{D}L_{cGAN}(G,D)                     argGmin​Dmax​LcGAN​(G,D)
这表明生成器和辨别器的目标是相互对立的。
环境准备

在举行Pix2Pix学习之前,需要准备符合的盘算环境。该项目支持在GPU、CPU和Ascend平台上运行。使用的训练数据集为颠末处置惩罚的外墙(facades)数据,能够直接通过MindSpore框架读取。
数据准备


  • 设置环境:确保安装必要的依靠库和MindSpore框架。
  • 数据集下载:从指定链接下载所需的数据集,数据集已举行预处置惩罚,适合直接用于训练。
网络构建

网络构建主要包罗生成器和辨别器的设计。
生成器

生成器接纳U-Net结构,特点如下:


  • 结构特点:U-Net由压缩路径和扩张路径构成,压缩路径通过卷积和下采样操纵提取特征,扩张路径则通过上采样规复图像的空间分辨率。
  • Skip Connections:通过连接压缩路径和扩张路径的特征图,U-Net能够保留不同分辨率下的细节信息,改善生成图像的质量。
辨别器

辨别器使用PatchGAN结构,工作原理为:


  • 局部判断:将输入图像划分为多个小块(patch),并使用卷积操纵评估每个小块的真实性。
  • 输出:生成的矩阵中每个值代表对应小块的真实性概率,这种方式进步了辨别的精度。
网络初始化

在模型构建完成后,需要对生成器和辨别器举行初始化,以确保模型的有效学习:


  • 使用不同的初始化方法(如正态分布、Xavier等)为卷积层的权重赋值。
  • 为批归一化层的参数设置初始值。
训练过程

训练分为两个主要部分:

  • 训练辨别器:目标是进步其对真实和生成图像的辨别能力。通过最大化真实图像的概率和最小化生成图像的概率来优化。
  • 训练生成器:目标是生成更高质量的图像,通过最小化辨别器的判断丧失来实现。
训练步调



  • 每个训练周期纪录辨别器和生成器的丧失值,以监控模型的学习进程。
  • 在每个epoch结束后,可视化训练效果,分析生成图像的质量。
推理

训练完成后,使用生存的模型权重举行推理:


  • 加载模型:通过load_checkpoint和load_param_into_net将训练得到的权重导入模型。
  • 执行推理:对新数据举行推理,展示生成效果。可以根据需求调整训练的epoch数量,以到达更好的生成效果。
通过这些步调,Pix2Pix模型能够有效地实现不同图像风格之间的转换,广泛应用于图像处置惩罚和盘算机视觉范畴。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

圆咕噜咕噜

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表