如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习

目录

前言

环境部署

项目使用

景色类图像使用

人像类图像使用

总结


前言

之前看到一个有意思的开源项目,主要是可以将一张照片变成卡通漫画的风格。下面给大家放几张官方给出的部分效果图。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第1张图片

看到这个效果图,还是非常经验的。下面我会分享一下这个项目,并且选择一些我自己找的图片试验一下。

项目Github地址:github地址 

环境部署

先使用git将项目下载下来。看一下项目结构。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第2张图片

我们看一下需要的环境。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第3张图片

非常简单,只要pytorch就可以了。如果有不太会安装的,可以参考我的另一篇文章:机器学习基础环境部署 | 机器学习系列_阿良的博客-CSDN博客

项目使用

看一下readme怎么说明的。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第4张图片

直接使用命令,或者代码执行都可以,我们先看看如果命令操作的话都有哪些参数支持。

if __name__ == '__main__':

    parser = argparse.ArgumentParser()
    parser.add_argument(
        '--checkpoint',
        type=str,
        default='./weights/paprika.pt',
    )
    parser.add_argument(
        '--input_dir', 
        type=str, 
        default='./samples/inputs',
    )
    parser.add_argument(
        '--output_dir', 
        type=str, 
        default='./samples/results',
    )
    parser.add_argument(
        '--device',
        type=str,
        default='cuda:0',
    )
    parser.add_argument(
        '--upsample_align',
        type=bool,
        default=False,
        help="Align corners in decoder upsampling layers"
    )
    parser.add_argument(
        '--x32',
        action="store_true",
        help="Resize images to multiple of 32"
    )
    args = parser.parse_args()
    
    test(args)

可以通过项目结构看到,作者提供了4个模型文件可供选择,可以用--checkpoint参数切换。需要提供图片的输入文件夹,修改--input_dir参数即可,经过我自己的几次验证,发现有的模型适合风景类型的图片,有的适合人像,下面我分成两部使用一下。

景色类图像使用

先看一下我准备的图片,三张风景的照片。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第5张图片

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第6张图片 如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第7张图片

我使用个人认为比较好用的模型是paprika.pt。下面是执行过程。

看看效果

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第8张图片

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第9张图片如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第10张图片 

 哦,第一张图的漫画效果有所欠缺,但是后面两张还是不错的。没有细品一波算法,猜测一下,可能是颜色区域较多,对比度越明显,可能漫画后的效果会更好。

人像类图像使用

最主要的还是人像,懂的都懂。下面是我准备的图片。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第11张图片

 如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第12张图片

 如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第13张图片

 

打算使用face_paint_512_v2.pt模型测试一下。下面直接展示处理后的效果。

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第14张图片

 如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第15张图片

 如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第16张图片

 

效果还是很好的,是不是。

总结

我反复测试了不少图片,有的转化的并不是很好,但是大部分还是不错的,瑕不掩瑜。项目还是好项目,只是可能模型本身训练的数据不是非常全面吧。还是老样子,这两天我改改这个项目玩一玩。

分享:

         对自己有自信时,不能对人说「期待」。所谓的「期待」是放弃时的托词,因为别无选择。若缺少这种无奈感,说这个词就太虚伪了。——《冰菓》

如果本文对你有用的话,请给我点个赞吧,谢谢!

如何将照片变成卡通图,animegan2-pytorch机器学习项目使用 | 机器学习_第17张图片

你可能感兴趣的:(机器学习系列,机器学习,pytorch,深度学习,python,图像处理)