Photo-Sketching 一个能将照片的轮廓识别出来并将其转化为“速写”型图像的开源模块。
这个模块的使用也相对简单,下面给大家带上全方面的教程:
1.虚拟环境及依赖安装
这个项目推荐大家直接用Anaconda进行环境的构建和开发:Python数据分析与挖掘好帮手—Anaconda,因为作者提供了一个 environment.yml 文件,你只需要输入以下命令,就能一键安装环境和依赖:
conda env create -f environment.yml
此外,推荐大家用VSCode编辑器来编写像这样的小型Python项目:Python 编程的最好搭档—VSCode 详细指南。
2.下载预训练模型
作者已经训练好了一些识别模型方便大家使用,可以在下列地址找到:
https://drive.google.com/file/d/1TQf-LyS8rRDDapdcTnEgWzYJllPgiXdj/view
作者使用的是谷歌硬盘,如果你无法科学上网,可以使用我提供的完整源代码+预训练模型,在 **Python实用宝典 **公众号后台回复:**sketch **即可获取。
下载完成后解压文件,将 latest_net_D.pth 和 latest_net_G.pth 放置到 Checkpoints 文件夹下:
3.运行预训练模型
接下来,我们需要修改使用预训练模型的启动脚本,这些脚本都放在 PhotoSketchscripts 下,我们需要使用的是 test_pretrained.cmd 或者 test_pretrained.sh 这两个脚本。
如果你是 windows 系统,请修改 test_pretrained.cmd 脚本,重点是dataDir、results_dir、checkpoints_dir:
dataDir 指向到 PhotoSketch 所在的文件夹目录,如果你是跟我一样这么配的,results_dir 只需要配成 %dataDir%PhotoSketchResults 即可,checkpoints_dir 则为 %dataDir%PhotoSketchCheckpoints 。
如果你是macOS或者Linux,则修改 test_pretrained.sh 文件,修改方法与上面windows 的一样,只不过 反斜杠 "" 要换成 斜杆 "/" 。
修改完脚本后,打开命令行/终端,输入以下命令,就会将你 PhotoSketchexamples 目录下的文件转化为“速写”。
windows:
scriptstest_pretrained.cmd
Linux/MacOS:
./scripts/test_pretrained.sh
转化结果可以在 PhotoSketchResults 中看到,如下两图所示。
待转化目录:
转化后:
可以看到效果其实不是非常好,由于是作者预训练的模型,所以效果不好也正常,如果大家需要的话,可以自己针对性地拿一些图像训练模型,并针对性地做识别,这样做效果才是最好的。
你需要训练或测试自己的模型也非常简单:
scripts/train.sh
可以训练模型scripts/test.sh
可以测试val集或测试集当然训练过程肯定没这么简单,你会遇到不少问题,但是我相信大部分都是存放图片的目录结构上的问题,大家如果有兴趣可以动手试试。
全部0条评论
快来发表一下你的评论吧 !