【问题标题】:OpenCV - How to translate a pixel-following contour to vertex-following contourOpenCV - 如何将像素跟随轮廓转换为顶点跟随轮廓
【发布时间】:2017-01-16 16:29:22
【问题描述】:

我正在使用cv2.findContours。检索到的轮廓是“像素跟随”(图 a)。然后我将它们保存为svg 多边形元素。

我的问题是svg 多边形以一种幼稚的方式被解释为“顶点跟随”(图 b 是想要的解决方案)。因此,我丢失了右侧和底部的单个像素文件,因为“中间像素”坐标被解释为左上角坐标。

如何将我的轮廓从像素转换为顶点(角)或以其他方式获得像素精确的顶点跟随轮廓?

我的代码是HERE

【问题讨论】:

  • 在我看来,如果您将所有像素向右、向下和“东南”复制,然后运行轮廓算法,您将获得所需的轮廓。
  • 这不起作用,因为它可以缩小一个像素宽的间隙

标签: opencv image-processing svg contour opencv-contour


【解决方案1】:

我设法通过以下方式解决它:

  1. 将图像放大 2 倍
  2. 寻找轮廓
  3. 将轮廓点除以 2 并向上取整

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-23
    • 1970-01-01
    • 2021-09-07
    • 2015-04-09
    • 1970-01-01
    相关资源
    最近更新 更多