在matlab相机校准工具箱中显示世界坐标

时间:2017-08-25 11:37:13

标签: matlab camera calibration

我正在使用结构光进行三维点云构建项目。至于相机的校准,我有很多方法可以做到这一点。但就DLP的校准而言,我确实理解了这样做的方式和方法,但是小问题不断出现。我遇到了一个(也是唯一的)问题。

我需要获得校准板(也称为棋盘)的世界坐标。其中一个标记为原始坐标(xs,ys为非零,zs为零),另一个标记为'位置2& #39 ;.我需要两个位置上每个角落的所有xs,ys,zs。 position 1 position 2 但是Matlab相机校准工具箱只显示了棋盘不同位置的相对位置。在检查了showExtrinsics.m文件后,我没有找到计算角落世界坐标的代码,虽然我知道Matlab可以做到这一点(因为它已经显示了棋盘的绝对位置,因为它如上图所示。)

我意识到通过艰难的计算解决它的可能性,但我想应该有更优雅的方式来做到这一点。这里有专业的Matlabber吗?

1 个答案:

答案 0 :(得分:0)

不确定是什么工具箱,但我找到了一个在线图YY_kk作为世界坐标,其中:

YY_kk = R_kk * XX_kk + Tc_kk * ones(1,length(XX_kk));

其中XX_kk是相机框架中各点的坐标。

R_kk = rodrigues(omc_kk);omc_kk是附加到空间中网格位置的3D旋转矢量

Tc_kk是附加到空间网格位置的3D平移向量