OpenCV findContour()角落索引顺序

时间:2014-01-16 08:44:26

标签: opencv image-processing contour

我正在使用Android OpenCV。我有一个方形标记图像。我必须找到实时Feed中标记四个角的位置及其索引位置。我能够在帧大小为640 * 480的实时馈送中获得这四个点的位置。但是索引位置的问题并没有固定,有时候我在左上角位置得到第0个索引,有时在该位置得到第1个索引......如何解决这个问题或者是否有替代findContour()方法。

2 个答案:

答案 0 :(得分:1)

如果形状是四边形,则可以使用角点排序方法:

1-获得群众中心。

2- y轴低于质心的点是最高点,否则它们是底点。

3-给出两个顶点,x轴较低的那个是左上角。另一个是右上角。

4-给出两个底点,x轴较低的一个是左下角。另一个是右下角。

使用opencv / c ++

参考https://opencv-code.com/tutorials/automatic-perspective-correction-for-quadrilateral-objects/

答案 1 :(得分:1)

对象是否具有固有的绝对方向(即手套或方向棋盘格),这些方向可能会逐帧变化,您需要识别它吗?或者只是确保索引排序在帧与帧之间是一致的?如果后者和相对帧间运动很小,为什么不跟踪它 - 即通过与前一帧角点的位置接近来重新分配指数?