寻找闭合路径的多边形近似

Finding a polygonal approximation of a Closed Path

本文关键字:多边形 路径 寻找      更新时间:2023-09-26

我希望能够找到封闭路径的最佳拟合多边形近似(可能是任何路径,因为它们被从图像中拉出来),但我有如何接近编码算法来找到它的问题。

我可以想到一个朴素的方法:沿着路径每x个像素,为这些像素选择最适合的线,然后对不同的起始偏移量和长度进行蛮力,并找到一个最小的最小二乘误差与最小的行数。

一定有更优雅的东西。有人知道吗?当然,这也会在javascript中实现,除非我真的很绝望,所以为你做事情的好库几乎被排除在外(例如,opencv有一个多边形过滤器)。

Js1有一些可以使用的自适应重采样代码。本文还对所使用的算法(Visvalingam的算法)进行了说明。

rmer - douglas - peucker算法似乎适用于此,并且易于实现。请注意,可接受的错误是该算法的输入,因此,如果您有一个目标行数,您可以使用error参数进行二进制搜索以达到目标。