zoukankan      html  css  js  c++  java
  • GAN的流程-cyclegan为例

    在关于原理里面已经讲了adversial 这个东西的原理以及流程,

    这个算法本身没什么吸引,美妙的地方在于他的训练流程!

    这个篇章着重讲如何跑通一个GAN的代码---这里特指cyclegan

    1 下载代码:

    https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix/

    从这里下载代码,然后按照redeme配置环境即可

    2配置环境:

      1 python3.6

      2 torch必须是0.4.0

    3下载数据集,按照reame,没问题

    在我顺利跑通前,会遇到一个意想不到的错误:

    WARNING:root:Setting up a new session...
    这个错误是因为我的display(可视化)有些问题,目前解决方式是干脆不要可视化了,
    train.py里面把关于visualizer的一切都注释掉!
     
     
    test的时候,遇到了一个问题,在我把visualizer注释掉之后,生成图片遇到了问题
    此时我进行了几个操作
    1把tensor转为image
    2 image.save
    具体代码如下:
    其中visuals是一个tensor
    unloader = transforms.ToPILImage()
    def tensor_to_PIL(tensor):
        image = tensor.cpu().clone()
        image = image.squeeze(0)
        image = unloader(image)
        return image
     
    abc=tensor_to_PIL(visuals['fake_A'][0])
    abc.save('./imggg/'+str(counttt)+'.jpg')
     
    然后就可以跑通了
     
    接下来是换数据集,
    换数据集要做到一点:domian a 与domain b之间的差距不能太大,
    比如如果domain a 是汽车,domian b是房子,这样什么也学不到
    所以最好的就是domian a 是普通的马,domian b是斑马
     
     
     
     
  • 相关阅读:
    fork 开源项目后如何参与项目
    C51 头文件中的 extern
    windows常用命令
    boost(barrier)
    boost库(条件变量)
    线程间同步的几种方式(了解)
    stl 迭代器(了解)
    std::thread
    同步,异步,阻塞,非阻塞
    std::thread join和detach区别
  • 原文地址:https://www.cnblogs.com/lllcccddd/p/10671123.html
Copyright © 2011-2022 走看看