将线条图从栅格转换为向量** LINES **


16

这里已经是这样的问题,例如:

... 和别的。

我有一个黑白PNG图像,其中包含一个像迷宫一样的图形,例如,它仅包含线条,没有区域。

需要将其转换成(任何)矢量格式,但要转换成LINES。我尝试过的每个程序,例如VectorMagic,potrace等,都会将线条转换为封闭的路径区域。

原始PNG图片的一小部分-放大了: 在此处输入图片说明

跟踪结果: 在此处输入图片说明

如您所见,“线” 像任何其他类似区域的形状一样从其两侧追踪。

寻找一种方法,以最佳的匹配线宽将线描成实线(PATHS)。(但任何一行都足够)。

背后的原因:需要使用跟踪的线和节点,例如将某些节点转换为bezier等。用形状不可能(轻松)。

任何想法:

  • 如何从任何跟踪程序获取矢量化的
  • 哪个工具可以做到这一点?(任何操作系统-均可使用Windows,OS X,Linux。)

Answers:


15

中心线追踪

有一个免费的开源工具AutoTrace,它能够执行线条艺术位图的中心线跟踪。

在此处输入图片说明

至少使用以下选项运行AutoTrace

autotrace -centerline -color-count 2 -output-file output.svg -output-format SVG input.png 

在此处输入图片说明

然后,我们可以微调笔划并添加所需的笔划强度。

如果我们不熟悉命令行,我们还可以为AutoTrace 安装图形前端Frontline

Linux用户可以在大多数发行版中安装从其默认存储库提供的自动跟踪。对于Windows,有预编译的软件包可以从项目页面下载。

AutoTrace还有许多其他参数,可以在应用程序的手册页中找到它们,也可以通过使用进行调用autotrace -help

要获得一条直线而不是一条样条线,我们可以例如使用以下参数:

  • -line-threshold [real]
    如果样条线与其端点定义的直线之间的偏差不超过指定的像素数,则将其视为一条直线(默认值:1)。

  • - line-reversion-threshold [real]
    如果一个样条曲线比一条曲线更接近一条直线,并由曲线长度的平方加权,则即使该曲线是包含曲线的列表,也应使其保持直线。默认值为.01。


1
+1您知道是否有追踪器仅可通过自动追踪制作直线段的选项。
joojaa

@joojaa:请参见编辑选项。
塔卡特2015年

我希望我可以建立自动跟踪功能...我很乐意使用它
slashdottir

1
@slashdottir:您正在使用什么系统?该项目的站点已移至Github,以获取最新的开发和错误报告。我编辑了答案以包含链接。
塔卡特

太好了!我正在使用OSX。非常感谢您的链接!
slashdottir

10

说实话...抓住钢笔工具并手动跟踪路径。这将导致最佳输出。

自动跟踪通常不是最佳选择。当您只希望可以绘制路径时,自动跟踪通常会失败。


图像实际上是复杂的,有很多行。也有更多的图像-只是太多的工作-寻找替代...;)
jm666

我也希望比“工具”做得更好,例如,将始终创建尽可能长的路径,以此类推...手动工作并不总是最好的;)
jm666

祝好运!我真的认为您所要求的只是体力和耐心。我从未见过值得在创建单个路径时使用的自动化解决方案。我认为您正在诚实地寻求不可能。
斯科特

2
@scott虽然我通常在这种情况下同意您的观点,但可能会奏效。
joojaa 2015年


5

Illustrator可以像自动跟踪一样进行中心线跟踪。它对大多数事物不是超级有用,但在这种情况下,图像是高度合成的,可能会起作用。

您的源图像非常差,因此没有在不损失质量的情况下进行尝试的真实方法,您的原始图像应该更好(无需如此缩放)

做这个:

  1. 在迹线设置中,禁用填充并启用描边。

  2. 对象→展开

在此处输入图片说明

图片1:跟踪并展开后的对象。

  1. 要进一步增强任何跟踪错误的结果,请执行以下操作:对象→路径→简化,检查直线边缘。

在此处输入图片说明

图片2:简化后

  1. 在我看来,您的图像在直线方向和拐角位置受到一定程度的限制,如果的确如此,您现在可以尝试量化这些点以获得更好(如果不是很完美)的结果。

在此处输入图片说明

图片3:量化可能会对结果造成影响。

PS:鉴于您共享的来源不完整,我会说我的结果相当不错。虽然我同意一般而言不可能依靠线跟踪,但在这种情况下还是可以的。

PPS:您的角落重叠,这会导致自动跟踪器有些痛苦。您可以使用ImageMagick中的一些Morphology运算符检测并修复这些问题,这应该会使跟踪器更加愉快。


也不错 由于使用简单的命令行,现在使用自动跟踪-用于许多图像。上面的位图图像只是较大图像(1300%缩放)的一小部分:)-因此,它看上去质量下降。+1,谢谢。
jm666

@ jm666当然,如果您愿意的话,也可以从cmd使用illustrator,但这需要一些工作。
joojaa 2015年

我尝试了Illustrator的图像轨迹和示例,仅使用笔触。我无法获得任何可用的结果。诚然,我没有花很多时间在上面,并且该样本也不适合用于跟踪。但是我发现,一般情况下,AI的描边仅描边意味着您只能获取实际描边的30-60%,除非在描边之前原始图稿非常坚实且清晰。
斯科特

@Scott我将图像缩小到原始大小,并调整了线宽参数,以使其正常工作。当您跟踪不同宽度的笔划时,您可能需要进行2或3次单独的遍历。
joojaa 2015年


2

我找到了一个名为WinTopo的免费软件很好的工具,对我来说,就是完成中心线跟踪。

该方法称为“一键矢量化”,效果很好。

由于我来自GIS环境-在专业版中,可以选择先对栅格数据进行地理配准-可能有用,尚未经过测试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.