OpenCV 数组操作全解析
1. 透视变换相关操作
在进行透视变换时, cv::perspectiveTransform() 函数会将 src 中的每个元素视为长度为 src.channels() + 1 的向量,额外的维度(投影维度)初始设为 1.0,这就是齐次坐标。之后,每个扩展向量会与矩阵 mtx 相乘,结果再通过(新的)投影坐标值进行重新缩放(该投影坐标值在操作后总是 1.0,因此会被丢弃)。
需要注意的是, cv::perspectiveTransform() 是用于变换点列表,而非图像本身。若要对图像应用透视变换,应使用 cv::warpPerspective() 。若想根据多对对应点求解最可能的透视变换,可使用 cv::getPerspectiveTransform() 或 cv::findHomography() 。
2. 坐标转换函数
-
cv::phase():该函数用于计算二维向量场从笛卡尔坐标到极坐标转换中的方位角(角度)部分。输入是两个单独的单通道数组,它们的大小必须相同。若只有一个双通道数组,可使用cv::split()进行分离。函数原型如下:
void cv::phase(
cv::I
超级会员免费看
订阅专栏 解锁全文
7

被折叠的 条评论
为什么被折叠?



