Color Trace:位图转彩色SVG

7次阅读
没有评论
Color Trace 下载|位图转彩色SVG
获取下载链
微信关注「软件教程管家」公众号,回复 Color Trace

Color Trace 矢量描摹解决的是一个很具体的需求:手头有一批位图,想把它变成可以任意放大、不模糊的彩色矢量图,而且要能批量跑,不是一张一张在图形软件里描。它是一个用 Python 写的命令行工具,原理是先缩减颜色、按颜色分层,再用 Potrace 逐层描摹,最后合成一张彩色矢量图。

Color Trace 矢量描摹效果对比

矢量描摹四步原理:缩色、分层、描摹、合成

第一步是缩减颜色,以 PNG 为中转格式,把位图的颜色压到指定的数量。第二步是按颜色分层,每一种颜色单独成一层。第三步是把每一层交给 Potrace 生成单色矢量图,Potrace 本身只支持黑白,这正是分层的意义所在。第四步是把所有颜色的矢量图合成为一张彩色矢量图,最终输出 SVG。

原稿里给的字帖例子很能说明体积关系:一张 370KB 的 PNG 位图,压成 1 个颜色后输出的矢量图只有 32KB,压成 3 个颜色后是 190KB。颜色数越少,文件越小、线条越干净;颜色数越多,细节越丰富,文件也越大。这个取舍是使用这个工具时最核心的判断。

Color Trace 矢量描摹字帖示例

软件信息表

名称 Color Trace
类型 命令行工具,Python 脚本实现
运行环境 Python 3.8 或更高版本
平台 Windows、Mac、Linux(依赖工具需自行安装)
依赖 ImageMagick、Potrace、pngquant;pngnq 可选
输出格式 彩色 SVG 矢量图
许可 开源,GPL-2.0

版本选择:直接用修复版,别碰 2012 年的上游旧版

方案 适合谁 注意点
本仓库修复版 所有想批量转彩色矢量图的人 已修复旧代码在新版 Python 下的报错,开箱可用,首选
2012 年上游旧版 只想研究早期实现的人 用新版 Python 直接跑会报错,需要自己修,不推荐实干使用
vtracer 追求速度、对颜色数量不敏感的人 速度很快,但在原稿的字帖例子里效果弱于本方案,且颜色只能调位深、不能直接定数量

结论先行:实干就用本仓库修复版。上游旧版的历史价值大于实用价值,vtracer 适合先快速验证思路。真正要批量出图、并且在意颜色数量可控性的,选修复版。

安装步骤

  1. 先装好 Python 3.8 或更高版本,并在命令行里确认 python 命令可用。
  2. 再装三项依赖:ImageMagick 负责图像格式转换,Potrace 负责单色矢量描摹,pngquant 负责颜色缩减。关键一步是把这些程序所在目录加进系统环境变量,否则脚本找不到它们。
  3. 从下载区的代码仓库页面获取源码,脚本在源码的 src 文件夹里。
  4. 用 pip 安装 Python 依赖 lxml,然后在命令行里跑一次 color-trace.py 加帮助参数,看到参数列表即表示环境通了。
  5. 先拿一张小图试跑,例如输入位图、颜色数 3、输出矢量图,确认能出图后再批量跑。

必调的四个参数

  1. 颜色数:-c 参数,后面跟数字。这是影响最大的参数。字帖、徽标这类颜色干净的图片,3 个颜色往往就够了;颜色数给得越高,细节越多,但文件体积和线条复杂度也会跟着涨。先从 3 起步,不够再加。
  2. 量化算法:-q 参数,可选 mc、as、nq。默认的 mc 由 pngquant 实现,颜色较少、最稳妥;as 由 ImageMagick 实现,颜色更少;nq 由 pngnq 实现,能出更多颜色,但 Windows 上装 pngnq 还要额外处理动态库,新手可以直接跳过。
  3. 堆栈描摹:-s 参数。想要更精确的输出时加上它,描摹会更贴合原图边缘,代价是处理时间变长。批量跑大图前,先单张对比开与不开的效果差。
  4. 背景处理:-bg 参数。把第一个颜色当作背景色并做优化,适合底色干净的字帖和徽标。照片类图片底色复杂时不要乱开,开了反而可能把主体边缘算进背景。

注意事项

  • 环境配置比用起来难:脚本本身用法简单,难的是把 ImageMagick、Potrace、pngquant 三项依赖装好并加进环境变量,报错时先查是不是依赖不在路径里,而不是怀疑脚本本身。
  • Windows 用户跳过 pngnq:装 pngnq 还要手动处理动态库文件,纯粹为了多一点颜色不值得,先用默认算法跑通全流程。
  • 拟色会显著增大体积:拟色参数能让渐变更平滑,但会让输出的矢量图明显变大变复杂,普通字帖和徽标不要开。
  • 扫描书要先拆页:想把扫描版书籍转成矢量保存,先把 PDF 拆成单页位图再一张一张转,直接喂整个 PDF 是跑不通的。
  • 照片不适合:颜色丰富、渐变复杂的照片转出来要么文件巨大,要么色彩断层,这个工具的舒适区是字帖、徽标、手写笔记、扫描线稿这类颜色干净的图片。

适用人群与横向对比

适合三类人:手头有扫描书籍、字帖、徽标想批量转矢量保存的人;做电子书整理、想让扫描内容放大也不糊的人;愿意敲命令行的技术用户。不适合只想转一两张图、并且希望点几下鼠标就出结果的人,那类需求用图形软件的描摹功能更直观。

和图形软件描摹的分工也很清楚:图形软件适合单张精修,可以一张一张调参数;Color Trace 适合批量,一次喂一个文件夹就能出结果。前者精,后者快,批量任务选后者,单张美术活选前者。

下载

前往代码仓库下载页

推广Color Trace 下载|位图转彩色SVG

关注「软件教程管家」

回复软件名即取即下:网盘下载链接 + 提取码,一步直达,不用再跳转。

版权与使用提示

本站资源仅供个人学习交流,请勿用于商业用途。软件与资料版权归原作者所有;如有侵权,请通过公众号「软件教程管家」联系我们,我们将在 24 小时内下架处理。查看免责声明 ›

上次编辑至今:11小时 · 内容还比较新鲜

公告

契机库网站正式上线!

了解更多
正文完
 0
评论(没有评论)