如何将点列表转换为数据类型为CV_32FC2或vectr的矩阵<Point2f)>?

我使用的OpenCV 2.如何将点列表转换为数据类型为CV_32FC2或vectr的矩阵<Point2f)>?

目前我点的列表:[(1,2), (2,3), (3,4)]

我需要的点是在一个3×1矩阵数据类型CV_32FC2vector<Point2f>

我该怎么做?

回答:

查看我的回答here了解OpenCV如何在大多数功能以及为什么需要点。

简短的回答是您需要将点转换为一个双通道阵列的32位漂浮作为错误状态:CV_32FC2,即一个三维阵列形状(n_points, 1, 2)

>>> import numpy as np 

>>> points = np.array([(1, 2), (2, 3), (3, 4)])

>>> points = np.float32(points[:, np.newaxis, :])

>>> points

array([[[ 1., 2.]],

[[ 2., 3.]],

[[ 3., 4.]]], dtype=float32)

以上是 如何将点列表转换为数据类型为CV_32FC2或vectr的矩阵&lt;Point2f)&gt;? 的全部内容, 来源链接: utcz.com/qa/258833.html

回到顶部