




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024消防设施检查与试题及答案
- 秘书工作的全面规划计划
- 急诊科人员培训与发展计划
- 学校食堂环境卫生改善计划
- 企业创新驱动下的管理实践变革
- 班级文化建设的工作计划
- 如何打造高端且适合的智能科技产品在保养类消费上的实践案例分析
- 如何利用网络平台寻找合适的职场导师
- 2025年汽车配件供货合同
- 娱乐场所服务质量提升的实践案例
- 人教部编版小学语文一年级下册第一次月考达标检测卷第一、二单元试卷含答案
- 2025年特种工塔吊考试题及答案
- 玉盘二部合唱正谱
- 《观照自然》课件2024-2025学年人美版(2024)初中美术七年级下册
- 西宁市城北区2025年招考编制外工作人员高频重点模拟试卷提升(共500题附带答案详解)
- 来访人员安全入场教育
- 《数据安全法》参考试题库150题(带答案)
- 青龙山经营性公墓项目融资策划分析报告
- 高中家长会 冲刺高考为梦而战课件-高三下学期家长会
- 内环境稳态-课件
- 垂体瘤的MRI诊断与鉴别诊断课件
评论
0/150
提交评论