全球人工智能
来源:Github 作者:Fujun Luan 翻译:林一鸣
深度摄影风格转换的实现,是以论文《Deep Photo Style Transfer》为基础的,文章最后附论文和资源链接。
深度摄影风格转换的实现,是以论文《Deep Photo Style Transfer》为基础的,文章最后附论文和资源链接。
论文摘要
本文介绍了一种基于深度学习的写实深度摄影风格转换方法,可以处理各种图像内容,同时如实地转移参考风格到输入图像。我们的方法建立在最近画家风格转移(如梵高的星空)的工作。这些工作虽然能利用神经网络的不同层把风格与图像的内容分开,但是他们不适合写实摄影风格转换。即使输入和参考图像都是摄影图片,输出图像仍然表现出让人想起绘画的失真。我们的贡献,是将输入到输出的变换约束为色彩空间的局部仿射变换,同时把这个约束表达为一个可以反向传播的卷及网络层。实验证明,这个方法成功地抑制了失真,并且能在各种各样的场景中生成令人满意写实风格转换效果,包括时间,天气,季节和艺术性编辑的转移效果。
深度摄影风格转换
设置
使用 "Deep Photo Style Transfer"中的相应代码和数据,代码基于torch,在Ubuntu 14.04 LTS操作系统上测试通过。
依赖的开发环境:Torch (包括 matio-ffi 和 loadcaffe)和Matlab。
CUDA zhi:CUDA、cudnn
下载 VGG-19的代码:shmodels/download_models.sh
编译 cuda_utils.cu (针对你的环境,在makefile 设置 PREFIX和NVCC_PREFIX )的代码:
make clean &&make
用法
快速开始
要生成 examples 里的结果,只需要在MATLAB里运行:
run('gen_laplacian/gen_laplacian.m')
或者通过Python:python gen_all.py。输出结果在 examples/final_results/.
基本用法
1、把输入图片和带有语义分割的掩码的风格图片分别放在examples/里. 他们有如下名字: examples/input/in<id>.png, examples/style/tar<id>.png和examples/segmentation/in<id>.png, examples/segmentation/tar<id>.png;
2、在MATLAB里用gen_laplacian/gen_laplacian.m计算拉普拉斯矩阵。生成矩阵名字如下: gen_laplacian/Input_Laplacian_3x3_1e-7_CSR<id>.mat;
3、要生成分割后的中间结果,运行:
th neuralstyle_seg.lua-content_image <input> -style_image <style> -content_seg<inputMask> -style_seg <styleMask> -index <id> -serial<intermediate_folder>
4. 最终结果:
th deepmatting_seg.lua -content_image <input>-style_image <style> -content_seg <inputMask> -style_seg<styleMask> -index <id> -init_image<intermediate_folder/out<id>_t_1000.png> -serial<final_folder> -f_radius 15 -f_edge 0.01
注意:在论文中我们用基于 DilatedNet自动场景分割算法生成对照结果。手动分割使更多样化的任务成为可能,所以wo把掩码放在 examples/segmentation/。
注意:在论文中我们用基于 DilatedNet自动场景分割算法生成对照结果。手动分割使更多样化的任务成为可能,所以wo把掩码放在 examples/segmentation/。
实例
我们的算法产生的结果如下(从左到右分别是输入图,风格图和结果):
致谢
我们的Torch实现基于Justin Johnson的代码(https://github.com/jcjohnson/neural-style);
我们用了 Anat Levin的Matlab 代码(http://www.wisdom.weizmann.ac.il/~levina/matting.tar.gz)来计算kou't拉普拉斯矩阵。
我们的Torch实现基于Justin Johnson的代码(https://github.com/jcjohnson/neural-style);
我们用了 Anat Levin的Matlab 代码(http://www.wisdom.weizmann.ac.il/~levina/matting.tar.gz)来计算kou't拉普拉斯矩阵。
论文地址:https://arxiv.org/pdf/1703.07511.pdf
GitHub资源:https://github.com/luanfujun/deep-photo-styletransfer
论文地址:https://arxiv.org/pdf/1703.07511.pdf
GitHub资源:https://github.com/luanfujun/deep-photo-styletransfer
热门文章推荐
责任编辑: