gpt4 book ai didi

python - 打开CV轮廓-将凹面多边形分成多个凸面多边形

转载 作者:行者123 更新时间:2023-12-02 17:19:44 27 4
gpt4 key购买 nike

我有下面的图像在一个numpy数组
enter image description here
我想要

  • 将块分成单独的轮廓或任何坐标表示。
  • 然后,我想将任何凹面多边形转换为多个凸面多边形。

  • 像这样
    enter image description here
    到目前为止,我已经使用opencv设法将每个块隔离为轮廓...但是有一种简单的方法可以将L形状的对象拆分为两个或多个正方形块。如果需要,每个形状的新轮廓可以重叠。
    也可能是我的图像没有这样的直线。
    enter image description here
    我已经使用 cv2.approxPolyDP绘制了形状,但是它们又是凹形的,我需要将它们分开。
    任何帮助表示赞赏。

    最佳答案

    我可以想到的一种方法是,对于每个轮廓,首先找到它的凸包。 See this link
    现在找到轮廓与其凸包之间的缺陷点。 See this link
    现在使用缺陷距离数据,找到最大距离的点。该点将是2个对象以L形连接的点。现在,从该点开始,绘制一条与该点处的轮廓切线垂直的线,然后再次找到轮廓。所得轮廓将为L形的2个轮廓。
    注意:在这种方法中,一个对象的某个部分可能会进入另一部分,而在边界处将它们分开。

    关于python - 打开CV轮廓-将凹面多边形分成多个凸面多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62871436/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com