为了账号安全,请及时绑定邮箱和手机立即绑定

逼真照片随手画,马良神笔已上线 | 点击收获这份英伟达GauGAN开源代码

标签:
人工智能
鱼羊 发自 纽凹非寺
量子位 报道  

有一种神奇的力场,它能凭空造物:

5cb6bc680001fabf06400367.jpg

还能扭转时间:

5cb6bc6c000102e806400367.jpg

它专注于山和大海:

5cb6bc7d000131db06400367.jpg

你也可以试着造一造人潮人海。

你是否还记得它的名字?

没错,就是英伟达在上个月公布的,致敬印象派大师高更的GauGAN。

现在,这个能让普通人秒变神笔马良的神器终于开源啦!

https://img1.sycdn.imooc.com//5cb6bca40001e9a406890357.jpg

怎么用

首先克隆这个repo:

1git clone https://github.com/NVlabs/SPADE.git
2cd SPADE/

然后备好PyTorch 1.0和python 3+,安装requirements.txt:

1pip install -r requirements.txt

还需要:

1cd models/networks/ git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch 
2cp Synchronized-BatchNorm-PyTorch/sync_batchnorm . -rf 
3cd ../../

别忘了数据集和预训练模型

这一次随代码公布的还有数据集和预训练模型。

在下载数据集时,记得下载train2017.zip,val2017.zip,stuffthingmaps_trainval2017.zip和annotations_trainval2017.zip。

https://img1.sycdn.imooc.com//5cb6bcb80001e74a06820276.jpg

要特别注意的是英伟达使用了一个生成实例的脚本datasets/coco_generate_instance_map.py。

准备好了数据集,就可以用预训练模型生成图像了。

从Google Drive Folder下载预训练模型,存成‘/checkpoints’:

1cd checkpoints 
2tar xvf checkpoints.tar.gz 
3cd ../

开始生成图像:

1python test.py --name [type]_pretrained --dataset_mode [dataset] --dataroot [path_to_dataset]

输出的图像默认存储在 ./results/[type]_pretrained/

当然你也可以训练新的模型:

1# To train on the Facades or COCO dataset, for example.
2python train.py —name [experiment_name] —dataset_mode facades —dataroot 
3[path_to_facades_dataset] 
4python train.py —name [experiment_name] —dataset_mode coco —dataroot [path_to_coco_dataset] 
5
6# To train on your own custom dataset 
7python train.py —name [experiment_name] —dataset_mode custom —label_dir [path_to_labels] — image_dir [path_to_images] 
8—label_nc [num_labels]

不过想要真正利用GauGAN成为一名“造物主”,你还需要一台配备8个V100 GPU的NVIDIA DGX1。此外,该代码仅供学术研究使用。

为何与众不同

GauGAN合成的图像明显要比此前的图像合成方法逼真得多,NVIDIA应用深度学习研究副总裁Bryan Catanzaro就说,这项技术不是简单地将其他图像拼接在一起,它是在合成新的图像——像个艺术家那样。

https://img1.sycdn.imooc.com//5cb6bcc900010e3d06870233.jpg

而GauGAN之所以能有如此神奇的手笔,当归功于空间适应标准化(SPADE)算法。

SPADE不单单使用随机的输入图像,它还采用了被称作分割图的图像,在分割图中,每一个像素都会被归类。这样一来,SPADE就能生成更接近于真实的图像,这种模式被称作“图对图翻译”。

https://img1.sycdn.imooc.com//5cb6bce1000160d206900269.jpg

并且SPADE不再将分割图输入到第一层,而是使用它的下采样来调整每一层的输出,这样就不会在生成图像中丢失语义信息。

https://img1.sycdn.imooc.com//5cb6bd000001dbfc06680526.jpg

在这样的训练之下,生成器不会将草放在天空的位置,因为鉴别器能判断出这样的图像是假的。

也就是说,SPADE解决了对pix2pixHD来说最大的难题。

传送门

GitHub地址:https://github.com/NVlabs/SPADE
项目地址:https://nvlabs.github.io/SPADE/
论文地址:https://arxiv.org/abs/1903.07291

—  —


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消