![](https://img-blog.csdnimg.cn/72e759df028d49ad9b06517631c0f518.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
风格迁移之从入门到成功魔改
文章平均质量分 87
从一下几点让你能从零基础学会什么是风格迁移,风格迁移有什么作用,传统做法和Cyclegan的原理,及其优缺点,以及最重要的CycleGAN的成功魔改。1)环境部署搭建,资源配置
2)风格迁移传统做法,GAN,CycleGAN的原理及其优缺点。
3)代码详细解析
4)根据缺点进行全方面成功魔改的原理。
MrRoose
研究方向CV+DL,阿里云专家博主,腾讯云优秀创作者,CSDN计算机视觉领域新星创作者。
深耕ai的同时也在拓展java开发和大数据。愿2024年更进一阶!
展开
-
一分钟教会你五种CycleGAN的优质创新思路(附代码)
本文的创新点部分,是来自我即将发表的一篇核心文章!!!效果好的一批,分享给所有努力学习的你们。代码都开源了,要个赞不过分吧!原创 2023-07-17 17:31:19 · 6074 阅读 · 43 评论 -
pytorch+cuda11.1安装问题及解决(pycharm)
在安装pytorch时,我没有采用anaconda(上面博客即采用这种方法),因为我是打算将cuda应用于已有的项目中(已经创建了虚拟环境),因此我直接使用pycharm安装到已有环境中。如果你使用上面的命令安装pytorch未报错,恭喜你,不用看后续步骤,直接跳到最后一步检验pytorch安装是否成功即可。②但博主的显卡不支持11.3,只支持到11.2,因此我安装了cuda11.1,pytorch版本也就选取的对应的长期支持版pytorch1.8.2。运行命令,若结果为True则安装成功。转载 2023-07-21 21:39:48 · 2354 阅读 · 0 评论 -
一文教会你风格迁移CycleGAN从入门到高阶再到最终成功魔改(附成功魔改代码)
🔥🔥本文的创新点部分,我将把我的整个项目过程所使用到的绝大多数trick以及创新部分进行开源。只有淋过雨的孩子才会懂得给别人打伞,所以我开源的目的很简单,希望可以帮助到有缘相遇的初学者快速了解并掌握该方向内容。有能力的同学可以进行二次改进创新。我的最终模型在定性和定量的评估中效果均有提升。后续代码将更新到GitHub上,如果对大家有帮助,希望可以得到您的免费star✨。本人万分感谢!!!本文的结构图均为本人绘制,如有需可以评论区留言❤五万字的文章创作不易,如有帮助劳烦免费点赞收藏一波,谢谢!原创 2023-07-11 20:20:33 · 10183 阅读 · 28 评论 -
深度学习-图像数据增强技术总结
图像本身的变化将有助于模型对未见数据的泛化,从而不会对数据进行过拟合。以上整理的都是我们常见的数据增强技术,torchvision中还包含了很多方法,可以在他的文档中找到:https://pytorch.org/vision/stable/transforms.html。转载 2022-10-27 22:51:20 · 1345 阅读 · 0 评论 -
CycleGAN论文解读+思想+学习路径
Abstract图像到图像的翻译是一类视觉和图形问题,其目标是使用对齐的图像对训练集来学习输入图像和输出图像之间的映射。然而,对于许多任务,成对的训练数据是不可利用的。我们提供了一种在没有配对示例的情况下学习将图像从源域X转换为目标域Y的方法。我们的目标是学习映射G,使得来自G(X)的图像的分布与Y的分布使用对抗损失是无法区分的。因为这个映射是欠约束的,所以我们将它与一个逆映射F:Y->X耦合,并引入一个循环一致性损失来强制执行F(G(X))≈X(反之亦然)。定性的结果是在不存在配对训练数据...原创 2022-07-16 19:19:38 · 2737 阅读 · 1 评论 -
卷积神经网络基础(最详细)+如何写代码(Pytorch)+推荐学习顺序+心得感悟
1)很多人在介绍卷积神经网络的时候,包括很多书籍,比如《python深度学习》都想用一个形象的例子来介绍卷积神经网络的作用是提取图像的特征。以《python深度学习》为例,大家都会说,第一层卷积是为了提取一些线条和曲线的特征,再通过一层卷积提取到高级的特征,比如眼睛,鼻子,猫耳朵等。但其实这样的形容是不准确的,换句话来说只能是为了方便感性的了解,所以才举了一个特殊的例子。因为在卷积神经网络中,每一层提取的特征是什么,其实每一次都是不同的。因为每一个模型不同卷积层的参数(W,a,b等)的初始化都...原创 2022-05-11 02:10:38 · 4633 阅读 · 2 评论 -
Python基于global思想实现多文件共享全局参数【详细且好用】
python中的global关键字是可以定义一个全局变量的,但这个全局变量只能应用于一个py文件中,当在另一个py文件便无法通过global y 访问到变量。global 的基础用法:x = 6def func(): global x #定义外部的x x = 1func()print (x)#输出1但这种用法,不能在其他的py文件中使用,但我们可以根据这个global思想定义一个文件,里面专门是定义全局变量以及调用全局变量。只需要在想要操作的文件的main中初始化一次全原创 2022-04-20 09:43:12 · 3612 阅读 · 1 评论 -
GAN论文详细解读+思想
论文地址:[PDF] Generative Adversarial Nets | Semantic Scholar注:由于这篇精读是之前总结在word中,里面公式不能直接copy到这里,我就直接截图了,省事但带来的问题是有个别公式截图被水印挡了一点,大家可以打开论文寻找相应的公式哈,很方便。Intro深度学习不仅仅是讲深度神经网络,它更多的是对整个数据分布的一个特征的表示。深度学习在生成模式上做的比较差的原因:在最大化似然函数的时候,我们要对这个概率分布进行很多近似,近似会带来很多计算上的.原创 2022-04-20 20:27:15 · 2903 阅读 · 0 评论 -
python图形界面教程(tkinter)
1、图形化界面设计的基本理解 当前流行的计算机桌面应用程序大多数为图形化用户界面(Graphic User Interface,GUI),即通过鼠标对菜单、按钮等图形化元素触发指令,并从标签、对话框等图型化显示容器中获取人机对话信息。 Python自带了tkinter 模块,实质上是一种流行的面向对象的GUI工具包 TK 的Python编程接口,提供了快速便利地创建GUI应用程序的方法。其图像化编程的基本步骤通常包括: 导入 tkinter 模块 创建 GUI 根窗体 添加人机交互控件..原创 2022-05-01 17:35:22 · 41773 阅读 · 8 评论 -
深度学习-关于GAN网络调参的经验
文章目录1 什么是GAN? 2 GAN存在的问题 3 训练的经验 3.1 不要纠结于损失函数的选择 3.2 关于增加模型的容量 3.3 尝试改变标签 3.4 尝试使用 batch normalization 3.5 尝试分次训练 3.6 最好不要提早结束 3.7 关于k的选择 3.8 关于学习率 3.9 增加噪声 3.10 不要使用性能太好的判别器 3.10 可以尝试最新的multi-scale gradient方法 3.11 可以尝试使用TTUR原创 2022-04-29 10:17:21 · 3470 阅读 · 0 评论 -
【毕设】基于CycleGAN的风格迁移【四】训练模型的Trick
Trick1:Label平滑如果有两个目标label:Real=1 和 Fake=0,那么对于每个新样本,如果是real,那么把label替换为0.7~1.2之间的随机值;如果样本是fake,那么把label替换为0.0~0.3之间的随机值。在models/networks.py中的GANLoss类中的__init__函数中进行修改:原代码: def __init__(self, gan_mode, target_real_label=1.0, target_fake_label=0原创 2022-05-05 17:20:04 · 2487 阅读 · 6 评论 -
【毕设】基于CycleGAN的风格迁移【一】环境搭建及运行代码
源代码地址:CycleGAN源码一、搭配环境1.首先把代码包下载并解压到本地(我是直接放到桌面)。2.打开Anaconda prompt,先切换路径到代码包解压的路径中。3. 然后通过使用作者的环境包来搭建设定好的环境,输入:conda env create -f environment.yml随后产生一个叫pytorch-CycleGAN-and-pix2pix的环境名称。我们可以通过输入:conda info --envs来查看已有的虚拟环境名称。..原创 2022-04-24 19:49:37 · 9998 阅读 · 15 评论 -
【毕设】基于CycleGAN的风格迁移【二】CycleGAN源码解读
当我们阅读别人的源码的时候,需要使用debug,可以参考:Pycharm调试篇(详细)_MrRoose1的博客-CSDN博客我们来看看这个代码构成opt = TrainOptions().parse() 继承baseoption并执行parse()方法 BaseOptions的init() BaseOptions的parse() 在parse()里执行BaseOptions()的gather_options()方法, 这玩意大概意思是把base,train,model,data的参数(ad原创 2022-04-24 20:02:29 · 5379 阅读 · 7 评论 -
Pytorch数据预处理——选择与自定义transforms(通过向图片上添加椒盐噪声、高斯噪声增来强数据的数据增强方法)
前言这篇笔记是学习pytorch的数据预处理方式transforms,这篇笔记包括两个要点,第一是在已经选好transform方法transform1,transform2,transform3...,并且都设置好参数数的前提下,如何在每次迭代的时候选择不同组的transform方法或者使用不同的调用顺序,第二是如何自定义transform方法 ,虽然pytorch提供了很多transform方法,但有时可能也需要自己定义。本笔记提供了在图片上添加椒盐和高斯噪声 的数据增强方法。本笔记的知识框架主要来源原创 2022-05-05 13:47:50 · 6508 阅读 · 2 评论 -
【毕设】基于CycleGAN的风格迁移【三】代码迁移到服务器(Linux)及环境搭建
1.假设服务器上已经安装好anaconda。2.通过u盘把代码文件(文件名pytorch-CycleGAN-and-pix2pix-master)拷到Desktop(桌面)上3.打开Terminal,会直接进入anaconda终端。Linux下anaconda的操作(与windows差不多)查看当前存在哪些环境conda env list创建新的虚拟环境。conda create -n your_env_name python=X.X(2.7、3.6等...原创 2022-05-01 16:35:44 · 870 阅读 · 0 评论