Python 增加OpenCV中approxPolyDP()的近似概率

Python 增加OpenCV中approxPolyDP()的近似概率,python,opencv,computer-vision,polygons,Python,Opencv,Computer Vision,Polygons,我正在用OpenCV Python制作一个形状识别系统。 approxPolyDP()是找到形状的最佳方法。我用它来寻找广场,五角大楼等等 但是,有时approxPolyDP()无法准确地获取多边形。因此,使用了Blur()和Thresholding()。然而,这也是不够的 如果我得到这样的过滤图像: 在Threshold()和Blur()之后: 如何提高近似概率 请给我一些增加近似概率的想法/系统/算法。可以使用ε参数来增加'approxPolyDP()'的近似概率 cv2.approxP

我正在用OpenCV Python制作一个形状识别系统。
approxPolyDP()
是找到形状的最佳方法。我用它来寻找广场,五角大楼等等

但是,有时
approxPolyDP()
无法准确地获取多边形。因此,使用了
Blur()
Thresholding()
。然而,这也是不够的

如果我得到这样的过滤图像:

Threshold()
Blur()
之后:

如何提高近似概率


请给我一些增加近似概率的想法/系统/算法。

可以使用ε参数来增加'approxPolyDP()'的近似概率

cv2.approxPolyDP(曲线,ε,闭合[,approxCurve])

想想看,你有这样的(只有黑色)

如果增加epsilon“approxPolyDP()”忽略最接近的雕刻点并更改检测到的形状。 当您增加epsilon时,“approxPolyDP()”首先忽略一个点(因为,一个点离红线最近,而不是B点离绿线最近)。然后您增加的越多,它将忽略B点


所以,你也做了阈值、模糊和更多的预设,你可能在检测到的多边形中有一些震动点,你可能无法得到准确的形状。epsilon在这种情况下非常有用。

@Bogdan-Bogdanov你为什么编辑我的帖子?你能给我解决方法吗?对不起@NSiri,我有两个打字错误。我编辑了这个问题,使它更具可读性。您可以阅读并了解如何在堆栈溢出中提出好的问题。很抱歉输入错误。好的。谢谢。我是新来的。我已经批准了你的编辑。没有问题,当你获得足够的声誉时,你也可以对问题进行编辑。你能澄清一下“不够”是什么意思吗?您希望改进结果的哪些方面?(另外,在问题后面加上“谢谢”也是一个错误)。