1.项目介绍
今天我们要做的是一个快速图像风格迁移的程序。
那么,什么是图像风格迁移?图像风格迁移就是把一种图像风格转变为另一种图像风格。例如,原图为:
加上不同风格的图像可以得到如下不同的结果:
2.使用训练好的模型来生成图像
2.1环境
Python
Tensorflow
2.2模型下载
训练好的模型有7个,表示7种类型的风格,模型文件的百度云:
模型的百度云地址
密码:35pg
2.3使用训练好的模型
在项目根目录下执行:
python eval.py --model_file <your path to wave.ckpt-done> --image_file img/test.jpg
--model_file 是模型的路径,可以选择7个模型中的一个
--image_file是原始图片的路径
新的图片会存放在项目根目录下:generated/res.jpg
3.训练一个新的模型
3.1下载VGG16模型
如果要训练一种新的图像风格,可以先下载VGG16的模型:
VGG16模型
密码:ykfy
然后在项目根目录下新建一个名为pretrained的文件夹,把vgg16的模型文件放入pretrained文件夹中。
3.2下载COCO数据集
下载地址
把解压后的train2014文件夹放在项目根目录下。
3.3创建新的yml文件
找一个新的风格的图片,比如找一个火的图片,路径在img/fire.jpg。复制conf文件夹中wave.yml文件,然后改名fire.yml。把fire.yml中的:
style_image: img/wave.jpg
naming: "wave"
改为
style_image: img/fire.jpg
naming: "fire"
3.4训练新的图像风格
python train.py -c conf/fire.yml
4.视频的风格转换
需要安装opencv,安装方式:
pip install opencv-python
准备好一个视频文件,然后在项目根目录下执行
python video.py --model_file models/wave.ckpt-done --video_file video/a.mp4
--model_file 是模型的路径,可以选择7个模型中的一个
--video_file是视频文件的路径
5.项目打包
大家可以去我的Github下载源代码:
qbf的Github
原文地址:http://blog.51cto.com/12340098/2330156