0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Python如何将你的照片转化为“速写”

科技绿洲 来源:Python实用宝典 作者:Python实用宝典 2023-10-30 11:43 次阅读

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集或测试集

当然训练过程肯定没这么简单,你会遇到不少问题,但是我相信大部分都是存放图片的目录结构上的问题,大家如果有兴趣可以动手试试。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模块
    +关注

    关注

    7

    文章

    2668

    浏览量

    47331
  • 开源
    +关注

    关注

    3

    文章

    3244

    浏览量

    42378
  • 编辑器
    +关注

    关注

    1

    文章

    800

    浏览量

    31108
  • python
    +关注

    关注

    55

    文章

    4779

    浏览量

    84440
收藏 人收藏

    评论

    相关推荐

    科学计数如何转化为数字。

    LABVIWE中如何将科学计数法1.3e5,1.6e7,2.7e3,.......,nen转化为数字?转化的数字是分开独立的数字。求大侠指点,谢谢!
    发表于 12-28 22:40

    mat数据转化为analyze数据

    请教各位,matlab如何将mat数据转化为analyze数据,谢谢
    发表于 12-18 11:41

    如何将带通转化为高通和低通的串联

    QQ截图20140421190050.png (17.95 KB, 下载次数: 0)下载附件保存到相册 昨天 19:09 上传信号滤波器1一是如何有一个高通滤波器和一个低通滤波器串联而来的,怎样才能将该图转化为一个高通滤波器和一个低通滤波器的形式??
    发表于 04-22 12:34

    如何将PADS9.5 PCB文件转化为AD13

    各位亲们,大侠:你们好,如何将PADS9.5 PCB文件转化为AD13,而不会出现提示Onlin DRC primitive,一直在跑,不停的跑。难道 是计算机运算不过来。无语呀! 最终也没有完全 转换过来,PCB板的样图是出现了,但是一直停在那里动不去了........
    发表于 10-22 10:12

    如何将十六进制数据转化为JPEG格式的数据??

    如何将十六进制数据转化为JPEG格式的数据??
    发表于 01-12 14:14

    整数转化为字符

    整数转化为字符
    发表于 04-07 15:20

    labview如何将正弦输出信号转化为0-5V的高低电平?

    labview如何将正弦输出信号转化为0-5V的高低电平信号输出?
    发表于 07-26 14:13

    labview 如何将PictureBox的内容转化为 IMAQ可识别的image图像

    在使用pictureBox显示网络摄像头的情况下,如何将视频内容转化为labview可识别的image图像,网上看到有2种方法。网址如下https://forums.ni.com/t5
    发表于 09-19 12:47

    如何将二维数组的内容转化为TXT文本文件,元素之间用逗号隔开?

    如何将二维数组的内容转化为TXT文本文件,元素之间用逗号隔开?如图所示,求高手解答!
    发表于 01-21 09:52

    如何将PDF文件转化为WORD文档的步骤

    如何将PDF文件转化为WORD文档的步骤 操作步骤 :1. 确保电脑上已经正确安装了如下软件:Acrobat 或 Acrobat Reader、Office XP 或 Office
    发表于 12-25 16:07 9138次阅读

    如何将你的设计关联到ERP系统

    alitium_与ERP数据连接,如何将你的设计关联到ERP系统。
    发表于 11-05 16:02 0次下载

    Python一键转化代码为流程图

    而今天我们要介绍的项目,就是基于Python和Graphviz开发的,能将源代码转化为流程图的工具:pycallgraph。
    的头像 发表于 02-24 11:19 3956次阅读
    <b class='flag-5'>Python</b>一键<b class='flag-5'>转化</b>代码为流程图

    电源是把什么能转化为什么能的装置

    电源是一种将其它形式的能转化为电能的装置。 这些其它形式的能包括我们已知的所有能量形式,例如化学能、机械能、太阳能等。 电源通过将这些其它形式的能转化为电能,为电子设备或电路提供所需的电能。 电源
    的头像 发表于 09-14 16:10 3541次阅读

    Photo-Sketching:将你照片转化为速写

    Photo-Sketching 一个能将照片的轮廓识别出来并将其转化为速写”型图像的开源模块。 这个模块的使用也相对简单,下面给大家带上全方面的教程: 1.准备 开始之前,你要确保Pytho
    的头像 发表于 10-17 11:03 807次阅读
    Photo-Sketching:<b class='flag-5'>将你</b>的<b class='flag-5'>照片</b><b class='flag-5'>转化为</b>“<b class='flag-5'>速写</b>”

    如何将单端滤波器设计转化为差分滤波器设计

    电子发烧友网站提供《如何将单端滤波器设计转化为差分滤波器设计.pdf》资料免费下载
    发表于 11-23 14:46 13次下载
    <b class='flag-5'>如何将</b>单端滤波器设计<b class='flag-5'>转化为</b>差分滤波器设计