【人工智能图像补全复现】基于GAN的图像补全

这篇具有很好参考价值的文章主要介绍了【人工智能图像补全复现】基于GAN的图像补全。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

摘要:

本文解析和实现论文Globally and Locally Consistent Image Completion中的相关方法。论文亮点在于使用全局(整张图片)和局部(缺失补全部分)两种鉴别器来训练,并运用GAN使生成图像在各个尺度的特征与真实图像匹配。
关键词:GAN;图像补全;多种鉴别器训练
文章来源:SIGGRAPH 2017 Globally and Locally Consistent Image Completion
下载链接:点这里
应用场景:图像补全(Image completion),目标移除(Object remove)
使用的数据集是CelebA人脸数据集这里

本文项目代码 GitHub 地址:这里

本文项目代码 AI Studio 地址:这里

一、引言:

图像补全是深度学习领域的热门应用,本文解析和实现论文Globally and Locally Consistent Image Completion中的相关方法。论文亮点在于使用全局(整张图片)和局部(缺失补全部分)两种鉴别器来训练,该文章完全以卷积网络作为基础,遵循GAN的思路,设计为两部分(三个网络),一部分用于生成图像,即生成网络,另一部分用于鉴别生成图像是否与原图像一致,即全局鉴别器和局部鉴别器。在整个网络中,作者采用ReLU函数,在最后一层采用Sigmoid函数使得输出在0到1区间内。

二、现状和未来发展前景:

1、现状:

我们使用的两个模型最底层是生成对抗网络(GAN),GAN在过去几年中得到了广泛的研究。其中最显着的影响是在计算机视觉领域,在诸如可信图像生成(plausible image generation)、图像到图像转换(image-to-image translation)、面部属性操作(facial attribute manipulation)和类似领域等挑战方面取得了巨大进步。但看了相关的大量文献我们发现 GAN 应用于现实世界的问题仍然存在重大挑战,最新的技术主要研究方向主要为如何高质量图像的生成,如何使图像生成多样性以及稳定训练。

2、具体应用:

2.1 图像和视觉领域

GAN能够生成与真实数据分布一致的图像,用GAN来将一个低清模糊图像变换为具有丰富细节的高清图像。
GAN也开始用于生成自动驾驶场景,利用GAN来生成与实际交通场景分布一致的图像,再训练一个基于RNN 的转移模型实现预测的目的。
基于GAN模型可以利用仿真图像和真实图像实现人眼检测。

2.2 语音和语言领域

Li 等于2017年提出用GAN来表征对话之间的隐式关联性,从而生成对话文本。Zhang等与2016年提出基于GAN 的文本生成。
SeqGAN在语音、诗词和音乐生成方面可以超过传统方法。
Reed 等于2016年提出用GAN基于文本描述来生成图像。

3、未来发展:

GAN虽然解决了生成式模型的一些问题,并且对其他方法的发展具有一定的启发意义,但是GAN并不完美,它在解决已有问题的同时也引入了一些新的问题。GAN 最突出的优点同时也是它最大的问题根源。
后续如何彻底解决崩溃模式并继续优化训练过程是GAN的一个研究方向。另外关于GAN收敛性和均衡点存在性的理论推断也是未来的一个重要研究课题。并且如何根据简单随机的输入,生成多样的、能够与人类交互的数据,是近期的一个应用发展方向。从GAN 与其他方法交叉融合的角度,如何将GAN 与特征学习、模仿学习、强化学习等技术更好地融合,开发新的人工智能应用或者促进这些方法的发展,是很有意义的发展方向。
从长远来看,如何利用GAN 推动人工智能的发展与应用,提升人工智能理解世界的能力,甚至激发人工智能的创造力是值得研究者思考的问题。

三、模型实现:

1、准备工作

(1)对应环境
Pytorch with GPU
numpy
OpenCV
Paddle
(2)下载数据集
图像补全 gan,生成对抗网络,人工智能,神经网络

2、具体步骤

(1)数据预处理

1)解压数据压缩包:
图像补全 gan,生成对抗网络,人工智能,神经网络

2)提前将图像转换为 ndarray 格式,存入.npy文件
图像补全 gan,生成对抗网络,人工智能,神经网络

3)加载处理完成后的train和test文件:

图像补全 gan,生成对抗网络,人工智能,神经网络

4)构建所需填充的空洞mask:
图像补全 gan,生成对抗网络,人工智能,神经网络

(2)模型构造:

1)网络构造:
补全网络:是完全卷积的,用来修复图像。
全局上下文鉴别器:以完整的图像作为输入,识别场景的全局一致性。
局部上下文鉴别器:只关注完成区域周围的一个小区域,以判断更详细的外观质量。
对图像完成网络进行训练,以欺骗两个上下文鉴别器网络,这要求它生成在总体一致性和细节方面与真实图像无法区分的图像。

2)网络架构:
此网络由一个完成网络和两个辅助上下文鉴别器网络组成,这两个鉴别器网络只用于训练完成网络,在测试过程中不使用。全局鉴别器网络以整个图像为输入,而局部鉴别器网络仅以完成区域周围的一小块区域作为输入。训练两个鉴别器网络以确定图像是真实的还是由完成网络完成的,而生成网络被训练来欺骗两个鉴别器网络,使生成的图像达到真实图像的水平。

3)补全网络结构
补全网络先利用卷积降低图片的分辨率然后利用去卷积增大图片的分辨率得到修复结果。为了保证生成区域尽量不模糊,文中降低分辨率的操作是使用strided convolution 的方式进行的,而且只用了两次,将图片的size 变为原来的四分之一。同时在中间层还使用了空洞卷积来增大感受野,在尽量获取更大范围内的图像信息的同时不损失额外的信息。
图像补全 gan,生成对抗网络,人工智能,神经网络

4)代码(搭建补全网络);
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络

5)内容鉴别器
这些网络基于卷积神经网络,将图像压缩成小特征向量。 网络的输出通过连接层融合在一起,连接层预测出图像是真实的概率的一个连续值。网络结构如下:
图像补全 gan,生成对抗网络,人工智能,神经网络

遵循编码器结构,该结构先将待处理的图像降低分辨率,从而减少内存使用和计算时间,然后使用 deconvolution layers恢复成原始的分辨率。作者只使用了降低分辨率了两次,降低为原始大小的1/4,这对缺失区域生成非模糊纹理非常重要。在进行deconvolution之间,在中间层还使用了 dilated convolutional layers 来增大感受野,在尽量获取更大范围内的图像信息的同时不损失额外的信息。
使用dilated convolutional layers,dilated convolutional扩展了卷积核,能够保证每个输出像素具有更大的输入面积,并且拥有相同数量的参数和计算能力。通过使用低分辨率的 dilated convolutional ,模型在计算每个输出像素时可以有效地“看到”输入图像的更大区域,如下图:
图像补全 gan,生成对抗网络,人工智能,神经网络

图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络

6)定义损失函数:
图像补全 gan,生成对抗网络,人工智能,神经网络

7)定义Program:
分别定义补全网络和鉴别器,分开训练
参数定义:
图像补全 gan,生成对抗网络,人工智能,神经网络

定义判别器的gprogram:
图像补全 gan,生成对抗网络,人工智能,神经网络

定义判别生成图片的gprogram:
图像补全 gan,生成对抗网络,人工智能,神经网络

优化器:
图像补全 gan,生成对抗网络,人工智能,神经网络

对数据集进行标准化操作:
图像补全 gan,生成对抗网络,人工智能,神经网络

使用的输入图像大小:128*128,训练方式改为:先训练生成器再将生成器和判别器一起训练。
初始化:
图像补全 gan,生成对抗网络,人工智能,神经网络

训练生成器:
图像补全 gan,生成对抗网络,人工智能,神经网络

如上图代码所示,训练生成器并创建文件夹保存模型:
生成器判断器一起训练:
图像补全 gan,生成对抗网络,人工智能,神经网络

图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络#pic_center

8)测试部分:
原始数据:
图像补全 gan,生成对抗网络,人工智能,神经网络

指定填充 1为洞:
图像补全 gan,生成对抗网络,人工智能,神经网络

全局生成图:
图像补全 gan,生成对抗网络,人工智能,神经网络

局部生成:
图像补全 gan,生成对抗网络,人工智能,神经网络

局部原图:
图像补全 gan,生成对抗网络,人工智能,神经网络

进行参数初始化:
图像补全 gan,生成对抗网络,人工智能,神经网络

获取训练和测试程序:
图像补全 gan,生成对抗网络,人工智能,神经网络

加载模型:
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络

结果展示代码:
图像补全 gan,生成对抗网络,人工智能,神经网络

结果展示:

图像补全 gan,生成对抗网络,人工智能,神经网络
图像补全 gan,生成对抗网络,人工智能,神经网络

五、感悟和后续改进:

这次的实验让我对GAN有了更加深刻的理解,我们训练出来的效果因为训练次数的原因并没有原文中那么好,而且作者还提出了可以使用这个模型进口罩去除,后续我们会继续尝试争取可以完成这一个实验效果。文章来源地址https://www.toymoban.com/news/detail-856666.html

到了这里,关于【人工智能图像补全复现】基于GAN的图像补全的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ChatGPT】人工智能生成内容的综合调查(AIGC):从 GAN 到 ChatGPT 的生成人工智能历史

      :AIGC,Artificial Intelligence Generated Content   【禅与计算机程序设计艺术:导读】 2022年,可以说是生成式AI的元年。近日,俞士纶团队发表了一篇关于AIGC全面调查,介绍了从GAN到ChatGPT的发展史。 论文地址: https://arxiv.org/pdf/2303.04226.pdf 刚刚过去的2022年,无疑是生成式

    2023年04月18日
    浏览(88)
  • 人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型,一种生成对抗网络GAN的变体实际应用

    大家好,我是微学AI,今天给大家介绍一下人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型,一种生成对抗网络GAN的变体实际应用,本文将具体介绍DCGAN模型的原理,并使用PyTorch搭建一个简单的DCGAN模型。我们将提供模型代码,并使用一些数据样例进行训练和测试。最后,我们将

    2024年02月08日
    浏览(72)
  • 基于GAN的图像生成模型

    这是pytorch官网的示例,记录训练GAN生成牙刷的过程,最终生成器生成牙刷的图像已经可以比较好了。 对GAN网络的训练是一个比较玄学的过程,当不收敛的时候调整学习率多尝试几次,或者动态的调整学习率。 生成器在不同阶段生成的效果 从上面的结果来看,对于生成牙刷这

    2023年04月09日
    浏览(48)
  • 基于GAN(生成对抗网络)生成动漫人物图像

    大家好,我是阿光。 本专栏整理了《PyTorch深度学习项目实战100例》,内包含了各种不同的深度学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码+数据集。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10 语言环境:python3.7 编译器:PyCharm PyTorch版本:

    2024年02月10日
    浏览(46)
  • 基于Solr的智能化人工智能与智能图像识别

    作者:禅与计算机程序设计艺术 引言 1.1. 背景介绍 随着人工智能技术的快速发展,人工智能与图像识别应用越来越广泛。在实际应用中,基于Solr的智能化人工智能与智能图像识别技术具有很高的实用价值和可行性。 1.2. 文章目的 本文旨在讲解如何基于Solr实现智能化人工智

    2024年02月07日
    浏览(67)
  • AI人工智能课题:图像增强图像修复系统的设计与实现(基于百度智能云AI接口)

     博主介绍 :黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,免费 项目配有对应开发文档、开题报告、任务书、

    2024年02月03日
    浏览(57)
  • 基于Springboot+百度AI人工智能图像图片智能处理系统设计与实现

    基于Springboot+百度AI人工智能图像图片智能处理系统设计与实现  博主介绍: 《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程,

    2024年02月05日
    浏览(62)
  • 毕业设计:基于深度学习的图像分类识别系统 人工智能

    目录 前言 项目背景 数据集 设计思路 自注意力 网络模型 实验环境 实验结果分析 更多帮助     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课

    2024年04月16日
    浏览(102)
  • 毕业设计:基于深度学习的图像去噪算法 人工智能

    目录 前言 项目背景 设计思路 数据集 模型训练 更多帮助     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学

    2024年02月19日
    浏览(51)
  • 人工智能|深度学习——基于数字图像处理和深度学习的车牌定位

    车牌识别Vehicle License Plate Recognition VLPR) 是从一张或一系列数字图片中自动定位车牌区域并提取车牌信息的图像识别技术。车牌识别 以数字图像处理、模式识别、计算机视觉等技术为基础,是现代智能交通系统的重要组成部分,广泛应用于日常生活中,如 停车场收 费管理,车

    2024年02月21日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包