gpt4 book ai didi

c++ - 去除轮廓缺陷[OpenCV]

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:17:36 25 4
gpt4 key购买 nike

我想概括这个问题:How to crop away convexity defects .那里描述的情况对我来说很清楚,但我有更复杂的情况:我的轮廓不仅可以有凸面缺陷,还可以有凹面缺陷:

蓝色是我的轮廓,红色是我想要的矩形——它通常可以旋转矩形,所以我需要面积尽可能接近给定轮廓的 4 点矩形轮廓。我正在寻找有关如何实现此转换功能的算法,如果能用代码说明就更好了。

最佳答案

我的想法是执行 Hough transform在轮廓上,选择前 4 条最突出的线作为矩形的边缘。

您应该将轮廓绘制为黑白图像并将其传递给 HoughLines .它将返回一个由 (r, theta) 对组成的 vector ,这些对在极坐标中对检测到的线进行编码。参见 this example了解如何将它们转换回笛卡尔坐标。

线条将按“投票”数量递减(即沿线条的像素强度总和)排序。

请注意,HoughLinesP 不太适合手头的问题,因为它返回的是行,而不是行。

关于c++ - 去除轮廓缺陷[OpenCV],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42134327/

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