c++ - 如何检索轮廓点 - 使用 opencv 转换为 vector ?

标签 c++ opencv image-processing vector contour

如何检索轮廓点 - opencv?

我的图像有三个对象(不规则形状) 我找到了以上三个物体的轮廓。

**我的声明——轮廓**

vector<vector<Point>> contours;

所以我得到了如下的对象坐标

contours.[size] = 3
         [capacity ] = 14
         +[0] {size = 330 }
         +[1] {size = 240 }
         +[2] {size = 654 }

这里我有三个轮廓,大小分别为 330、240,654

现在我的疑问是如何将 3 个对象的每个轮廓点复制到 vector ?

我想在 calcOpticalFlowPyrLK 中使用这个轮廓点用作prevPts

或者可以做什么?

最佳答案

- 对我的上述评论的更多解释。

calcOpticalFlowPyrLK() 可以直接用vector<Point>vector<Point2f>对于参数 prevPts .

prevPts – vector of 2D points for which the flow needs to be found; point coordinates must be single-precision floating-point numbers.

也就是说,您只需要使用 contours[0] , contours[1]contours[2]对于 3 个对象(它们的类型为 vector<Point> )并将它们传递给 calcOpticalFlowPyrLK() .

关于c++ - 如何检索轮廓点 - 使用 opencv 转换为 vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23473778/

相关文章:

c++ - "opencv2 computer vision application programming cookbook"书中代码的QT配置

python - 使用霍夫圆变换检测圆阵列

c++ - 在 C++ std::multimap 上调用 .clear() 或 .erase() 有时会导致卡住(100% cpu)

c++ - 在大小为 n 的 3D 数组中有效检查相邻体素

python-3.x - 调整图像及其边界框的大小

image-processing - 图像处理基础 DFT

image-processing - 将鱼眼映射到球体 - 360 度 View

c++ - 在无效位置打开数据库导致内存泄漏

c++ - QStreamData : How to detect disk is full with writeRawData

python - 从二进制字符串加载OpenCV图像