作为一个小项目,我已经决定要将一个小光栅写入矢量转换器。在线提供了大量的资源,但实际实施的次数却少得多,可以为我提供任何出发点。我还没有决定使用哪种语言,但Python似乎很适应。
第一个问题是,大多数论文都是针对矢量化徽标或灰度图像,我都不感兴趣。 potrace ,其算法描述为here,其中一个图书馆。相同的技术是否适用于照片位图?
在我偶然发现Vector Magic之前,我对我的调查结果感到沮丧。结果令人惊讶!但是,它们不提供有关其算法的任何信息。这里描述了产生类似质量结果的方法: http://eprints.gla.ac.uk/47879/1/ID47879.pdf。策略是在将轮廓绘制为矢量之前删除轮廓并处理它们。
但是没有提及他们是如何做到这一点的。我可以用openCV提取轮廓,但那又是什么?我无法理解矢量的创建,或轮廓提取后发生的任何事情。
因此,总而言之,以下是我的问题:您为此项目推荐哪种语言或图书馆?您是否有任何关于实施能够产生令人满意的结果的算法的技巧?
答案 0 :(得分:3)
以下是两种方法:
ARDECO:http://alice.loria.fr/index.php/publications.html?Paper=EGSR_Ardeco@2006
它将问题视为能量最小化问题,通过类似Voronoi的方法解决
http://www.cs.northwestern.edu/~sco590/npar2011.pdf
它在精神上与你提到的portrace更相似
使用渐变网格:https://www.cct.lsu.edu/~fharhad/ganbatte/siggraph2007/CD2/content/papers/011-sun.pdf
用网格
使用扩散曲线:
http://hal.archives-ouvertes.fr/docs/00/27/47/68/PDF/diffusion_curves.pdf
它们主要用于通过绘制渐变来创建艺术,它们还提出了使用基元对图像进行矢量化的反问题。