版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于CycleGAN的图像风格迁移案例描述01任务案例目标02任务案例分析03任务案例实施04任务1案例描述1案例描述本案例将学习如何使用搭建一个CycleGAN风格迁移网络,通过训练该网络实现斑马和马的风格互换。2案例目标案例目标学会搭建一个完整的CycleGAN风格迁移网络;
设计出CycleGAN网络的风格迁移损失,包括内容损失和风格损失;使用训练后的CycleGAN网络实现斑马与马的风格转换。23案例分析案例分析上节已经了解到,CycleGAN是由两个生成器和两个判别器组成。如图6-7-6,X表示X域的图像,Y表示Y域的图像。X域的图像经过生成器G生成Y域的图像,再经过生成器F重构回X域输入的原图像;Y域的图像经过生成器F生成X域图像,再经过生成器G重构回Y域输入的原图像。判别器D_x和D_y起到判别作用,确保图像的风格迁移。对于X域转化为Y域的生成器G和判别器D_y建立损失函数如下所示:3案例分析对于重构回Y域的图像,建立循环一致性损失函数如下所示:CycleGAN的训练的总体损失函数以下所示:总而言之,CycleGAN想要达到的目的是,完成两个域之间的风格转换,在风格转换的同时,又要确保图中物体的几何形状和空间关系不发生变化。34案例实施4案例实施 1.导库安装
tensorflow_examples
包,以导入生成器和判别器。pipinstallgit导入程序运行所需要库,其中pix2pix是基于GAN实现图像翻译,更准确地讲是基于cGAN(conditionalGAN,也叫条件GAN)。因为cGAN可以通过添加条件信息来指导图像生成,因此在图像翻译中就可以将输入图像作为条件,学习从输入图像到输出图像之间的映射,从而得到指定的输出图像。而其它基于GAN来做图像翻译的,因为GAN算法的生成器是基于一个随机噪声生成图像,难以控制输出。因此基本上都是通过其他约束条件来指导图像生成,而不是利用cGAN,这是pix2pix和其他基于GAN做图像翻译的差异。4案例实施2.数据预处理加载数据库中训练和测试图片。dataset,metadata=tfds.load('cycle_gan/horse2zebra',with_info=True,as_supervised=True)train_horses,train_zebras=dataset['trainA'],dataset['trainB']test_horses,test_zebras=dataset['testA'],dataset['testB']随机裁剪图片至同一尺寸。cropped_image=tf.image.random_crop(image,size=[IMG_HEIGHT,IMG_WIDTH,3])4案例实施将图片进行标准化处理。image=(image/127.5)–1返回随机抖动的图片。image=tf.image.resize(image,[286,286],method=tf.image.ResizeMethod.NEAREST_NEIGHBOR)3.构建网络模型通过安装的
tensorflow_examples
包导入
Pix2Pix
中的生成器和判别器。这里训练了两个生成器(G和F)以及两个判别器(X和Y)。生成器
G
学习将图片
X
转换为
Y。生成器
F
学习将图片
Y
转换为
X。判别器
D_X
学习区分图片
X
与生成的图片
X
(F(Y))。判别器
D_Y
学习区分图片
Y
与生成的图片
Y
(G(X))。4案例实施generator_g=pix2pix.unet_generator(OUTPUT_CHANNELS,norm_type='instancenorm')generator_f=pix2pix.unet_generator(OUTPUT_CHANNELS,norm_type='instancenorm')discriminator_x=pix2pix.discriminator(norm_type='instancenorm',target=False)discriminator_y=pix2pix.discriminator(norm_type='instancenorm',target=False)在CycleGAN中,没有可训练的成对数据,因此无法保证输入
x
和目标
y
数据对在训练期间是有意义的。所以为了强制网络学习正确的映射,提出了循环一致损失。defdiscriminator_loss(real,generated):real_loss=loss_obj(tf.ones_like(real),real)generated_loss=loss_obj(tf.zeros_like(generated),generated)total_disc_loss=real_loss+generated_lossreturntotal_disc_loss*0.5defgenerator_loss(generated):returnloss_obj(tf.ones_like(generated),generated)4案例实施循环一致意味着结果应接近原始输出。例如,将一句英文译为法文,随后再从法文翻译回英文,最终的结果句应与原始句输入相同。在循环一致损失中,图片
X
通过生成器
G
传递,该生成器生成图片
。生成的图片
通过生成器
F
传递,循环生成图片
。在
X
和
之间计算平均绝对误差。defcalc_cycle_loss(real_image,cycled_image):loss1=tf.reduce_mean(tf.abs(real_image-cycled_image))returnLAMBDA*loss14案例实施生成器
G
负责将图片
X
转换为
Y。一致性损失表明,如果您将图片
Y
馈送给生成器
G,它应当生成真实图片
Y
或接近于
Y
的图片。defidentity_loss(real_image,same_image):loss=tf.reduce_mean(tf.abs(real_image-same_imag
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度电子信息产品委托电磁辐射测试服务合同3篇
- 2025年度城市广场停车场共享经济合作协议
- 学生创造力开发与商业创新的融合路径
- 二零二五年度离婚协议书:子女成年后财产分配与抚养权
- 2024版二手房买卖合同(投资型)3篇
- 基于大数据分析的地铁文创产品销售策略优化
- 二零二五年度绿色建筑项目施工人员劳动合同规范文本2篇
- 2024版爆破工程承包协议样本版B版
- 小学写作教学中的环境教育与生态意识培养研究
- 家装中的墙面材料与节能环保关系
- 湖南省娄底市名校学术联盟2024-2025学年高三上学期1月月考政治试题 含解析
- 2024年浙江杭州师范大学附属医院招聘考试真题
- 2025年汉江水利水电(集团)限责任公司丹江口水力发电厂招聘12人高频重点提升(共500题)附带答案详解
- 2024商业招商运营培训
- 品牌授权使用合同范例
- 2025年春节工厂放假通知范文
- 道路隐患排查整治
- 非急救转运合同范例
- 车辆使用安全培训
- 肺结核的护理个案
- 陕西省汉中市2024-2025学年高一上学期12月第二次月考地理试题(含答案)
评论
0/150
提交评论