当前位置: 首页 > news >正文

【Python】照片居然能变素描?不会画画但是咱会代码

文章目录

  • 前言
  • 一、准备
  • 二、下载预训练模型
  • 总结


前言

Photo-Sketching 一个能将照片的轮廓识别出来并将其转化为“速写”型图像的开源模块。
在这里插入图片描述


比如,这只小狗:
在这里插入图片描述
经过模型的转化,会变成卡通版的小狗:
在这里插入图片描述
非常秀,这很人工智能。

这个模块的使用也相对简单,下面给大家带上全方面的教程:

一、准备

开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。

(可选1) 如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.

(可选2) 此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南。

这个项目推荐大家直接用Anaconda进行环境的构建和开发:Python数据分析与挖掘好帮手—Anaconda,因为作者提供了一个 environment.yml 文件,你只需要输入以下命令,就能一键安装环境和依赖:

conda env create -f environment.yml

二、下载预训练模型

接下来,我们需要修改使用预训练模型的启动脚本,这些脚本都放在 PhotoSketch\scripts 下,我们需要使用的是 test_pretrained.cmd 或者 test_pretrained.sh 这两个脚本。

如果你是 windows 系统,请修改 test_pretrained.cmd 脚本,重点是dataDir、results_dir、checkpoints_dir:
在这里插入图片描述
dataDir 指向到 PhotoSketch 所在的文件夹目录,如果你是跟我一样这么配的,results_dir 只需要配成 %dataDir%\PhotoSketch\Results\ 即可,checkpoints_dir 则为 %dataDir%\PhotoSketch\Checkpoints\ 。

如果你是macOS或者Linux,则修改 test_pretrained.sh 文件,修改方法与上面windows 的一样,只不过 反斜杠 “” 要换成 斜杆 “/” 。

修改完脚本后,打开命令行/终端,输入以下命令,就会将你 PhotoSketch\examples 目录下的文件转化为“速写”。

windows:

scripts\test_pretrained.cmd

Linux/MacOS:

./scripts/test_pretrained.sh

转化结果可以在 PhotoSketch\Results 中看到,如下两图所示。

待转化目录:
在这里插入图片描述
转化后:
在这里插入图片描述

可以看到效果其实不是非常好,由于是作者预训练的模型,所以效果不好也正常,如果大家需要的话,可以自己针对性地拿一些图像训练模型,并针对性地做识别,这样做效果才是最好的。

你需要训练或测试自己的模型也非常简单:

在仓库的根目录中,运行 scripts/train.sh 可以训练模型

在仓库的根目录中,运行 scripts/test.sh 可以测试val集或测试集

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

总结

我们的文章到此就结束啦,如果你喜欢今天的徐浪老师大讲堂,Python实战案例部分内容!

http://www.lryc.cn/news/44196.html

相关文章:

  • 已解决正确配置git环境变量
  • 【逐步剖C】-第十章-自定义类型之结构体、枚举、联合
  • Windows Server 2016 中文版、英文版下载 (updated Mar 2023)
  • Linux 4G 通信实验
  • 华为OSPF技术详细介绍,保姆级,谁都能看懂(一)
  • 行人车辆检测与计数系统(Python+YOLOv5深度学习模型+清新界面)
  • SM3哈希算法的FPGA实现 I
  • 【数据结构与算法】线性表--数组
  • 剑指offer排序专题
  • 已解决Cannot open D:\Soft\Python36\Scripts\pip3-script.py
  • 3 步走,快速上手 API 接口测试
  • 爬虫-day1-正则表达式作业
  • 【半监督医学图像分割 2023 CVPR】RCPS
  • 【UVM实战练习项目】2、UVM验证环境基本框架搭建(实例一)(纯软件环境,方便日后测试使用)
  • 【web前端初级课程】第四章 什么是JavaScript
  • 数字中国建设进行时:吉林大学党委常务副书记冯正玉一行调研实在智能
  • 面试官灵魂拷问[二]:SQL 语句中 where 条件后写上 1=1 是什么意思?
  • 进程与线程的关系
  • 自定义异常
  • 基于springboot物资管理系统(程序+数据库)
  • 蓝桥杯Web组备赛笔记6
  • python控制语句
  • 华为OD机试题【最小叶子节点】用 Java 解 | 含解题说明
  • 【linux】多线程控制详述
  • SpringCloud学习-实用篇01
  • 如何使用python删除一个文件?好用到上头.....
  • java学习笔记——权限修饰符、内部类
  • Java设计模式(十二)—— 状态模式
  • 功能测试自动化成功的7个因素
  • 基于openssl 自行签发https 协议证书 ,同时支持nginx配置