我正在尝试将四边形转换为矩形平面并且需要提取1个特定点(在四边形平面中)的坐标,相对于矩形平面..
我在 .NET 项目中使用 EmguCV 进行图像处理
我尝试过的是:
1)计算四边形和矩形平面之间的单应性矩阵(从两个平面的左上角按顺时针顺序指定点)
2) 将上面的单应矩阵乘以 3 x 1 矩阵 [x,y,1] 得到最终坐标。
但是,所得坐标 (x', y') 似乎与给定点 (x,y) 不一致。
最佳答案
如Micka建议,在得到结果矩阵(3x1)后,解决这个问题所需的就是:p' = (x'/z', y'/z')
步骤如下:
- 计算四边形和矩形平面之间的单应矩阵
- 乘以这个单应矩阵。与候选点 [x,y,1]T 并得到 [x',y',z']T
现在,在 [x',y',z']T 之上进行去均化,即 [(x'/z'), (y'/z'), 1]T
由此得到所需的矩形平面的最终坐标。
关于image - 透视变换四边形平面中的给定点(x,y)到矩形平面的点(x',y')?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25638280/