以下链接是个人关于Liquid Warping GAN(Impersonator)-姿态迁移,所有见解,如有错误欢迎大家指出,我会第一时间纠正。有兴趣的朋友可以加微信:a944284742相互讨论技术。若是帮助到了你什么,一定要记得点赞!因为这是对我最大的鼓励。
风格迁移1-00:Liquid Warping GAN(Impersonator)-目录-史上最新无死角讲解
注 意 , 本 人 编 写 该 博 客 的 时 间 为 2019 / 12 / 29 , 也 就 是 说 , 你 现 在 下 载 的 作 者 代 码 或 许 \color{red}{注意,本人编写该博客的时间为2019/12/29,也就是说,你现在下载的作者代码或许} 注意,本人编写该博客的时间为2019/12/29,也就是说,你现在下载的作者代码或许
和 本 人 的 代 码 不 一 样 ( 如 果 作 者 有 更 新 过 ) 还 有 就 是 , 本 人 初 次 调 试 该 代 码 为 \color{red}{和本人的代码不一样(如果作者有更新过)还有就是,本人初次调试该代码为} 和本人的代码不一样(如果作者有更新过)还有就是,本人初次调试该代码为
L i n u x 系 统 , 即 下 面 的 报 错 都 是 U b u n t u 下 运 行 报 错 的 过 程 , 以 及 解 决 办 法 \color{red}{Linux系统,即下面的报错都是Ubuntu下运行报错的过程,以及解决办法} Linux系统,即下面的报错都是Ubuntu下运行报错的过程,以及解决办法
通过前面的链接,我相信大家都已经拿到了作者的源码了,套路基本都是一致的,没有太特别的东西。已经从源码的READ.md看起。训练那些我们暂时不理会,先把测试效果搞出来,既然如此,我们先看如下部分:
本人很老实,按照他的介绍安装对应的环境。我是使用conda安装环境了,所以先为该项目创建一个虚拟环境,终端执行命令如下(希望大家也老实点,不要搞骚操作,不然错误比较多):
conda create -n zwh-LiquidWarping python=3.6
完成之后激活环境:
source activate zwh-LiquidWarping
然后按照cd到项目根目录,根据提示,执行两个命令如下:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.douban.com --default-timeout=100
apt-get install ffmpeg
后面过国内镜像,可以加快速度,如果已经失效,执行pip install -r requirements.txt即可。本人安装一切正常,如果你出现不正常的现象,那么需要去百度了。紧接着我们再执行如下指令:
cd thirdparty/neural_renderer
python setup.py install
是的,本人安装又一切正常,此时开心与快乐并存。
大家先按照上面的提示,把上面的3个文件都下载下来,解压之后,根据上面的提示,放置如下
本人根据作者提示,直接运行:
python demo_imitator.py --gpu_ids 1
本人打印如下
并没有报错,一切正常,outputs目录如下:
这些到底是干嘛的,我也很懵逼,不过没关系,我们后面慢慢就会明白了。
执行命令如下:
python demo_swap.py --gpu_ids 0
本人打印如下,一切正常。
输出文件如下:
大家认真对比一下,可以发现其可以实现把图片人物的身份调换,或者把人物的ID调换。是不是很神奇
执行命令如下:
python demo_view.py --gpu_ids 0
打印如下:
获得结果文件如下
大家查看之后,可以看到,输入一张图片,就能获得一个360°的角度视频(由图像组成),本人感觉还是很牛逼的。
继续跟着提示,我们可以看到如下:
三种运行方式,都是都是进行动作模仿。首先我再本人的电脑终端运行:
python -m visdom.server --hostname 192.168.22.107
192.168.22.107 为本人的主机ip,运行之后显示如下:
此时,我们在浏览器上输入http://localhost:8097/,当然,现在我们看到的都是空白的。下面,我们在服务器上执行:
python run_imitator.py --gpu_ids 0 --model imitator --output_dir ./outputs/results/ \
--src_path ./assets/src_imgs/imper_A_Pose/009_5_1_000.jpg \
--tgt_path ./assets/samples/refs/iPER/024_8_2 \
--bg_ks 13 --ft_ks 3 \
--has_detector --post_tune \
--save_res --ip 192.168.22.107 --port 8097
是的,就改一下 ip 以及 port 就可以了,本人运行的打印如下:
然后我们在浏览器就看看到如下画面:
记得需要选择runing环境,我们可以看棕色衣服的人,在模仿蓝色衣服人的动作。剩下的两个就不讲解了,一样的操作。
python run_swap.py --gpu_ids 0 --model imitator --output_dir ./outputs/results/ \
--src_path ./assets/src_imgs/imper_A_Pose/024_8_2_0000.jpg \
--tgt_path ./assets/src_imgs/fashion_man/Sweatshirts_Hoodies-id_0000680701_4_full.jpg \
--bg_ks 13 --ft_ks 3 \
--has_detector --post_tune --front_warp --swap_part body \
--save_res --ip 192.168.22.107 --port 8097
本人打印输出结果如下:
可以看到其生成了新的结果,大家看下结果就知道他们进行了外貌的变化。我们再来看看
本人服务器终端执行:
python run_view.py --gpu_ids 0 --model viewer --output_dir ./outputs/results/ \
--src_path ./assets/src_imgs/internet/men1_256.jpg \
--bg_ks 13 --ft_ks 3 \
--has_detector --post_tune --front_warp --bg_replace \
--save_res --ip 192.168.22.107 --port 8097
本人执行之火,浏览器显示如下:
好了,到这里我们已经把所有的测试代码都验证完成了,那么接下来,就是为大家讲解如何去对网络进行训练了。