2014-03-31 27 views
0

找不到搜索结果,但我不确定如何描述这个问题,这是问题很难找到正确方法的一个原因。对不起,如果它已被问及或问题描述是模糊的。找到两条平行等高线的中间点

问题:我正在使用opencv的findcontours从图像中检测一致宽度的弯曲绘制物理路径的轮廓。我需要沿着路径的长度在这两条边的中间映射一个点向量,以便用单个向量跟踪绘制的路径。

我想知道是否有办法在各种其他轮廓中的图像空间中的某个像素距离内找到点。我可以遍历所有这些,并找到最接近的方式,但时间紧张。 如果有我可以搜索其他轮廓矢量的距离的正确宽度的点,并使用2点来估计中点,并将其添加到日益增长的中间向量。

或者如果这是一种更好的方法将检测到的路径转换为可行的单个可用向量。

回答

1

听起来就像你在寻找“骨架” - 这有助于你知道这些条款。

如果您可以将图像转换成仍然显示路径的黑色图像,那么很重要:重复侵蚀过程,直到不再有点被侵蚀。

另一种方法是意识到一次操作很昂贵,但一旦找到一对点,​​就可以在相应的3x3邻域中轻松找到下一对点。

+0

+1也许应用距离转换http://en.wikipedia.org/wiki/Distance_transform ... –