基于CycleGAN的山水风格画迁移

news2024/10/6 0:34:13

基于CycleGAN的山水风格画迁移

1、简介

1.1 研究背景及意义

绘画是人类重要的一种艺术形式,其中中国的山水画源远流长,具有丰富的美学内涵,沉淀着中国人的情思。游山玩水的大陆文化意识,以山为德、水为性的内在修为意识,咫尺天涯的视错觉意识,一直成为山水画演绎的中轴主线。从山水画中,我们可以集中体味中国画的意境、格调、气韵和色调。
随着互联网行业的发展,社交媒体逐渐兴起,人们经常在抖音、快手、微博等软件发布短视频或图片。发布图片前,人们一般要对视频或图片进行一些美化,最常见的就是添加一些滤镜。随着计算机视觉和硬件技术的发展使得基于机器生成具有较高逼真度的滤镜效果成为了可能。基于深度学习的对抗生成网络(GAN)技术及其扩展,可以让用户自己拍摄的图片带有艺术作品的风格,达到风格迁移的效果。
利用GANs技术设计生成的自主学习模型机,可以在大量的同类别的数据集中寻找到人眼难以发现的规律,并加以学习,生成以分析得到的规律为基础的新图像。对抗生成网络(GAN)由判别器和生成器组成。首先,生成器生成噪声图片,让判别器使用风格图片和噪声进行训练。判别器在训练后具备鉴别图片是否为该风格的功能。然后用训练完成的判别器来对生成器进行图片,直到生成器能够生成所需风格的图片且让判别器无法判别(判别结果分布为1:1)为止。利用生成器和鉴别器进行互相对抗学习,逐步完善。该技术在数据集充裕的情况下,可以对数据进行预测,对人眼难以发现的特征进行提取,对大数据进行整合等功能,有着很大的应用前景。
由GAN扩展而成的CycleGAN模型,特点为有两对判别器和生成器,以及进行内容到图片、图片到内容的双向训练。与过去的GAN模型如pix2pix对比,CycleGAN的优势在于不需要训练数据是成对的形式,从而能够有更广泛的应用。然而,中国画具有独特的绘画风格,通过大量训练集对模型进行训练才能够使得模型学习到相应的绘画风格,从而能够对任意一张环境图像实现中国山水画风格的迁移。除了社交媒体,风格迁移在其他领域也有广阔的应用前景和强烈的需求。导航软件可以用风格迁移的方式将卫星照片转换成地图的形式;在刑侦领域,可以用风格迁移的方式将嫌疑犯的手绘画像转移成有参考价值的照片。除此之外,还有生成字体,高分辨率重建等应用方向。
项目主要研究任务为基于CycleGAN将既有内容图片转换为中国山水画风格,通过CycleGAN强大的特征提取能力,得到不同图像间的特征信息,从而能够学习到中国山水画风格。通过大量的训练数据对CycleGAN网络进行不断的训练,提高CycleGAN画风迁移的准确率。此外,我们还对原始CycleGAN进一步进行了改进,将CycleGAN与自注意力机制相结合,从而提高生成图像的逼真度。
在这里插入图片描述

图1-1 山水画风格迁移实例
Figure 1-1 An example of image style transfer

3、CycleGAN算法原理及其改进措施

3.1 图像风格迁移数据集

数据集的质量和数量会影响模型的泛化性和生成图像的质量,为了能够实现不同画家风格的迁移工作,通过爬虫和寻找公开数据集的方式进行数据收集。在我们的任务中,我们将要实现中国山水风格画的迁移工作,因此,我们主要搜寻具有中国山水画风格的图像形成模型训练所需的数据集。数据集从四个不同的美术馆和画廊收集得到。中国风格数据集共2192张,其中362张图片收集自普林斯顿大学美术馆,101张图片收集自哈佛大学美术馆,428张图片收集自大都会艺术博物馆,1301张图片收集自史密森尼弗里尔艺术画廊。不同美术馆和画廊收集到的部分图像示例分别如图3-1(a)到3-1(d)所示。
在这里插入图片描述
(a) 哈佛大学美术馆收集图像示例
在这里插入图片描述
(b) 普林斯顿大学美术馆收集图像示例
在这里插入图片描述

© 大都会艺术博物馆收集图像示例
在这里插入图片描述
(d) 史密森尼弗里尔艺术画廊收集图像示例
图3-1 中国画风数据集

Figure 3-1 Example of Chinese style images

3.2 CycleGAN算法原理

为了能够生成新的图像,需要将源域中的图像通过变换转移到目标域。通过跨域转换能够将已有图像生成接近真实的图像。不同于其他图像风格转换算法,CycleGAN是传统GAN的特殊变体,与GAN相比,CycleGAN也可以创建新的数据样本,并且CycleGAN不需要成对的数据对模型进行训练。为了确保学习到的映射不将输入的不同对象x1、x2映射为同一个生成结果y,CycleGAN引入了Cycle概念,即将y映射回A,产生x1,并判断x1是否同x1近似,用这样的方式来确保模型真正能学习到一对一的映射而不是一对多。CycleGAN包括前向循环和反向训练两部分,如图3-2所示。其中前向循环用来训练生成器,通过仅利用源域中的图像x和目标域中的图像y来进行无监督的学习。不同于其他图像生成算法,CycleGAN对图像生成过程施加了循环一致性约束,循环一致性约束可以确保从伪造的目标数据集中重建出真实的源数据。在CycleGAN模型中,使用平均绝对误差损失作为循环一致性约束,可以减少图像的重建模糊。CycleGAN为对称性结构,具有与前向循环相同的反向循环,但是目标数据和源数据相反,同样生成器和判别器的作用也相反,对于反向循环,判别器作为生成器,而生成器用于恢复输入数据。通过对抗性训练使得生成器可以学习到如何欺骗判别器。CycleGAN的最终目的是让生成器学习到如何能够生成逼真的伪造数据用来欺骗判别器。具体来说,在模型中定义两个变换G、F,分别表示从输入域X到目标域Y的变换和逆变换,并且使用Dx和Dy来分辨判断F和G的效果,在使用Dx和Dy的同时,引入两个Cycle过程,第一个cycle过程(图3-2中b),是指使用真实的x产生一个估计的y,再使用这个估计的y进行逆变换产生一个估计的x,此时评价真实的x和这个估计的x的差别,同样的Y到X的过程也引入这样的Cycle过程(图3-2中c)。
在这里插入图片描述

图3-2 CycleGAN模型原理
Figure 3-2 CycleGAN model algorithm

3.3 基于CycleGAN模型的改进算法

针对原始CycleGAN模型对产生较大几何形变情况下生成效果差的问题,通过增加VGG损失和自注意力机制使得在产生较大几何形变情况下也能够生成质量较好的图像。具体操作为增加VGG损失的目的是对特征层生成的特征进行约束,增加自注意力机制的目的是将图像的亮度信息纳入到模型的生成结果中,改进模型框架如图3-3所示。
在这里插入图片描述

图3-3 改进CycleGAN模型结构

Figure 3-1 Improved CycleGAN model structure
接下来,将分别对增加VGG损失项和引入自注意力机制的目的进行说明。对于增加VGG损失项,模型使用VGG16网络分别对输入图像和生成图像进行特征提取,通过计算输入图像和生成图像之间的损失来减少输入图像和生成图像之间特征层的变化,保证图像内容的不变,进行保留输入图像的语义信息。
对于增加注意力机制,由于在对原始CycleGAN模型进行测试过程中发现,在不同画家的图像中,由于天空部分颜色相比于图像中的其他部分更亮,并且颜色分布较为分散,因此会产生不同程度的伪影。为了消除生成图像中的伪影,在图像输入生成器之前首先对图像不同部分的光照强度进行评估。由于画家在绘画过程中会将在图像中设置不同的关注区域,具有主次之分,特别是对于轮廓等部分将会 投入更多的笔墨,因此可以通过在轮廓区域增加注意力机制,从而可以生成更加逼真的效果,而对于天空等平面部位,也可以消除生成图像带来的伪影。

4、基于改进CycleGAN的图像风格迁移及软件设计

4.1 实验数据集及实验环境

4.1.1 环境配置

本文利用Anaconda集成平台,基于Python语言进行程序的开发,Python语言是开源语言,生态完善,对于多数深度学习框架都提供了调用接口,用户可以在任何计算机上免费安装和使用相关数据库。此外,Python语言易于学习,语法简单,代码维护简单,拥有丰富的扩展库,可以轻易的完成各种高级任务。
首先需要在Anaconda官网下载Anaconda软件进行安装,并进行环境变量的配置。安装结果如图4-1所示。软件安装完毕后,新建虚拟环境,并进行python 3.8和相关依赖库的安装,相关依赖库包括Pytorch、opencv-python等。
在这里插入图片描述

图4-1 软件安装结果
Figure 4-1 Anaconda install
本文开发的实验环境为Windows系统,GPU型号为Nvidia 2080,为了能够充分的对模型进行训练,对于每个图像迁移模型均训练80000个epoch。

4.1.2 实验数据集

利用第三章所示收集的中国山水风格数据集对模型进行训练。将所有数据均分为训练集和验证集,其中训练集和验证集均包括A和B两部分,数据集组织形式如图4-2所示。
在这里插入图片描述

图4-2 数据集组织形式
Figure 4-2 The structure of dataset

4.2 界面设计实现及测试

模型训练完成后,为了增加交互性能,我们设计了如图4-3所示的交互界面,交互界面包括图像选择,图像风格转换结果展示,以及待转换的不同图像风格,不同图像风格包括中文水墨风格、中文铅笔画风格。除了可以进行风格的选择以外,还分别增加了改进模型情况下图像的显示方式,包括单独增加特征层约束和同时增加特征层约束和自注意力两种方式。最后,我们还可以通过手动的方式调节亮度的约束,当阈值减小时,此时模型将降低图像较亮区域的注意力。
在这里插入图片描述

图4-3 基于CycleGAN的中国画风迁移交互系统
Figure 4-3 Main GUI of image transfer based on CycleGAN
选择图像进行图像风格迁移,图像选择界面如图4-4所示。
在这里插入图片描述

图4-4 基于CycleGAN的图像风格迁移系统选择界面
Figure 4-4 Main GUI of image transfer based on CycleGAN
基于选择后的图像进行图像风格迁移的原始图像和可视化结果分别如图4-5和图4-6所示。
在这里插入图片描述

图4-5 原始风格图像
Figure 4-5 Original Image
在这里插入图片描述

图4-6 图像风格迁移结果
Figure 4-6 Image transfer results
系统可同时显示待进行图像风格迁移的图像和图像风格迁移后的结果图像,此外,界面中还可以显示选择图像的路径以及通过调节阈值控制注意力机制对图像亮度的关注情况,实时进行调整。
4.3 图像风格迁移结果验证
接下来我们将展示不同图像进行图像风格迁移后的结果,图像风格迁移结果如图4-7(a)-4-7©所示。
在这里插入图片描述

(a) 水墨画风格结果
在这里插入图片描述

(b) 增加特征层约束结果
在这里插入图片描述

© 增加特征层约束和自注意力结果结果
图4-7 不同风格生成结果
Figure 4-7 Different transfer images result
最后,采用Intel oneAPI AI组件实现端到端的模型优化,使用的工具为英特尔神经压缩器1.12,采用如下图所示的环境配置。
在这里插入图片描述

对模型优化后的模型平均训练时间进行分析可以发现,经过优化后的模型平均训练时间更短。
在这里插入图片描述

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

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

相关文章

几分钟创建自己的助理

链接: Droxy 上传pdf或者mp4.要求如下: 仅支持PDF或MP4文件。 一次最多可以上传5个文件。 总文件大小应小于1000MB。 视频时长应少于120分钟。 开始使用:

seata1.4.2版本配置总结

文章目录 环境准备:seata-server配置registry.conf创建数据库表 nacos配置client配置seata_orderseata_storageseata_account 注意点 创建项目seata-order-service2001pom.xml文件application.yml 实体类CommonResultOrder DaoOrderDaoOrderMapper.xml config配置类…

华为Mate 60Pro“一机难求”,预计一年出货1200万部,花粉狂欢

根据天风国际分析师郭明錤的报告显示,华为Mate 60 Pro自8月29日上市以来,需求一直保持强劲势头,并且预计下半年出货量将提高约20%,达到550-600万部。与旧款机型相比,华为Mate 60 Pro的需求明显更加强劲。 例如&#xf…

[SSM]MyBatisPlus进阶

三、进阶篇 3.1映射 3.1.1自动映射规则 表名和实体类名映射 -> 表名user 实体类名User字段名和实体类属性名映射 -> 字段名name 实体类属性名name字段名下划线命名方式和实体类属性驼峰命名方式映射 -> 字段名 user_email 实体类属性名 userEmail 开启驼峰命名 m…

靓丽出挑,轻盈舒适:南卡OE Pro运动蓝牙耳机体验

随着科技的不断发展,运动蓝牙耳机在市场上备受瞩目。NANK南卡在运动蓝牙耳机领域深耕细作多年,旗下Runner挂耳骨传导耳机系列细分多款,并且因为优秀的品质、不俗的性价有着亮眼的销量与风评反馈。最近南卡在自家OE的基础上推出了升级Pro款&am…

Apipost:让API研发更高效、更协同

在数字化时代,API(应用程序接口)已经成为数字生态系统中的重要组成部分。API不仅使得不同应用程序能够相互通信,还成为了企业间进行数据交换和业务整合的关键手段。在这个趋势下,API研发工具市场也日益繁荣&#xff0c…

【Linux】Ubuntu20.04版本安装谷歌中文输入法【教程】

【Linux】Ubuntu20.04版本安装谷歌中文输入法【教程】 文章目录 【Linux】Ubuntu20.04版本安装谷歌中文输入法【教程】一、下载fcitx-googlepinyin二、配置Language SupportReference 一、下载fcitx-googlepinyin 使用下面的命令行下载fcitx-googlepinyin sudo apt-get insta…

【TI毫米波雷达笔记】MMwave毫米波雷达API配置及驱动(以IWR6843AOP为例)

【TI毫米波雷达笔记】MMwave毫米波雷达API配置及驱动&#xff08;以IWR6843AOP为例&#xff09; MMWave API&#xff08;位置处于BSS&#xff09;可以被DSS和MSS调用 通过Mailbox进行数据通信 毫米波雷达接口 #include < ti/control/mmwave/mmwave.h> #include <ti/…

Redis基本了解

Redis 基于内存进⾏存储&#xff0c;⽀持 key-value 的存储形式&#xff0c;底层是⽤ C 语⾔编写的。 基于 key-value 形式的数据字典&#xff0c;结构⾮常简单&#xff0c;没有数据表的概念&#xff0c;直接⽤键值对的形式完成数据的管理&#xff0c;Redis ⽀持 5 种数据类型…

运维Shell脚本小试牛刀(六): Shell中的函数|本地变量

运维Shell脚本小试牛刀(一) 运维Shell脚本小试牛刀(二) 运维Shell脚本小试牛刀(三)::$(cd $(dirname $0)&#xff1b; pwd)命令详解 运维Shell脚本小试牛刀(四): 多层嵌套if...elif...elif....else fi_蜗牛杨哥的博客-CSDN博客 Cenos7安装小火车程序动画 运维Shell脚本小试…

14.Redis 主从复制

Redis 主从复制 redis 主从复制配置 redis 主从复制启动 redis 主从复制断开 redis 主从复制主从复制构特点主从复制的拓扑结构一主一从⼀主多从树状主从 主从复制原理数据同步psync 运行流程全量复制流程部分复制流程实时复制 关于从节点何时晋升成主节点总结 redis 主从复制 …

iKeyPrime完美解4G信号,可以登录iCloud,有消息通知,支持最新iOS16.6。

iKeyPrime是一款绕过激活锁界面的解锁工具&#xff0c;可以激活所有iPhone苹果手机&#xff0c;二网/三网恢复信号&#xff0c;并且支持插卡接打电话、收发短信、4G流量上网&#xff0c;支持iCloud登录&#xff0c;有消息通知&#xff0c;支持iPhone5S~X的所有型号&#xff0c;…

车规微控制器的ECC机制及EMU外设

车规微控制器的ECC机制及EMU外设 文章目录 车规微控制器的ECC机制及EMU外设引言ECC的基本原理ECC RAM的访问方式ECC RAM的初始化SRAM ECC错误注入及EMU外设Flash ECC校验参考文献 引言 ECC是微控制器系统中&#xff0c;用于保障信息安全的常用机制&#xff0c;主要是避免存储设…

gRPC远程进程调用

gRPC远程进程调用 rpc简介golang实现rpc方法一net/rpc库golang实现rpc方法二jsonrpc库grpc和protobuf在一起第一个grpc应用grpc服务的定义和服务的种类grpc stream实例1-服务端单向流grpc stream实例2-客户端单向流grpc stream实例3-双向流grpc整合gin

转型的每一步都至关重要!大运新能源远勤山谈品牌发展之道

“我们转型新能源乘用车&#xff0c;一开始选择研发生产悦虎和远志M1两款中低价位车型是为了“练练手”。我们用这两款车型探路&#xff0c;去熟悉和了解新能源市场&#xff0c;通过一步一步踏踏实实把产品做好&#xff0c;逐渐获得消费者认可&#xff0c;同时也为今后研发其他…

一周AIGC丨中国境内 151 个算法完成备案,腾讯、百度等 11 家 AI 大模型产品陆续上线...

近日&#xff0c;网信办官网公开发布第二批境内深度合成服务算法备案信息。至此&#xff0c;国内已有 151 个算法通过深度合成服务算法名单的备案。腾讯、百度等 11 家 AI 大模型产品完成备案陆续上线&#xff0c;标志着大模型行业在我国正式进入产品化落地阶段&#xff0c;大模…

链动2+1模式,让你的美妆消费变成收入来源

美妆&#xff0c;是一个与女性息息相关的话题&#xff0c;也是一个巨大的市场。据统计&#xff0c;2022年&#xff0c;中国美妆市场规模达到了1.3万亿元&#xff0c;占全球美妆市场的20%。美妆消费者的需求日益多样化和个性化&#xff0c;对产品的品质、效果、安全性等方面有着…

Nougat 深度剖析

Nougat 深度剖析 项目地址&#xff1a;https://github.com/facebookresearch/nougat 论文地址&#xff1a;Nougat: Neural Optical Understanding for Academic Documents 0 背景 近日&#xff0c;MetaAI又放了大招&#xff0c;他们提出了一种全新的端到端的OCR模型&#x…

spring boot项目上传头像

应用还是验证码使用的原理&#xff1b;但是代码逻辑却有所不同。 逻辑前端传给后端&#xff0c;然后写入本机磁盘去&#xff0c;文件名用uuid避免重复。写完就可以顺带把文件名保存到数据库里。上传就这样子。 怎么取用的&#xff1b;还是通过配置映射的方式&#xff1b;通过sr…

电商企业固定资产怎么管理

电商固定资产管理需要建立标准的固定资产管理制度&#xff0c;从规则上进行约束。同时&#xff0c;引入固定资产管理系统&#xff0c;从流程上起到直接提升效果的方式。电商标准的固定资产管理制度因公司而异&#xff0c;但通常包括以下内容&#xff1a;  固定资产的定义和分…