estimateCameraMatrix
estimateCameraMatrix
不推荐。使用estimateCameraProjection
函数来代替。有关更多信息,请参见兼容性的考虑。
语法
描述
返回摄像机投影矩阵决定从已知世界点及其对应的图像预测利用直接线性变换(DLT)方法。camMatrix
= estimateCameraMatrix (imagePoints
,worldPoints
)
(
还返回reprojection误差,量化的准确性投影图像坐标。camMatrix
,reprojectionErrors
)= estimateCameraMatrix (imagePoints
,worldPoints
)
例子
输入参数
输出参数
提示
您可以使用estimateCameraMatrix
函数来估计摄像机投影矩阵:
如果world-to-image点通讯是已知的,相机intrinsic和外在参数不清楚,您可以使用
cameraMatrix
函数。计算二维图像点与3 d世界点,参考方程
camMatrix
。为使用
findNearestNeighbors
对象的函数pointCloud
对象。使用相机的投影矩阵加速最近的邻居搜索一个RGB-D传感器生成的点云,如微软®Kinect®。
算法
给世界留下点X和图像分x,摄像机投影矩阵C通过解方程
λx=CX。
方程是解决了利用直接线性变换(DLT)方法[1]。这种方法制定一个齐次线性方程组,解决方案是通过广义特征值分解。
因为图像点坐标的像素值,计算摄像机投影矩阵的方法对数值错误十分敏感。为了避免数值错误,输入图像点坐标归一化,所以,他们的重心是在原点。同时,根均方距离图像的点从原点√6 (2)
。这些步骤总结估计摄像机投影矩阵的过程。
正常的输入图像点坐标变换T。
估计摄像机投影矩阵CN从标准化的输入图像点。
计算出规范化的摄像机投影矩阵C作为CNT1。
计算reprojected像点坐标xE作为CX。
计算reprojection错误
reprojectionErrors= |x−xE|。
引用
[1]