我正在使用结构光进行三维点云构建项目。至于相机的校准,我有很多方法可以做到这一点。但就DLP的校准而言,我确实理解了这样做的方式和方法,但是小问题不断出现。我遇到了一个(也是唯一的)问题。
我需要获得校准板(也称为棋盘)的世界坐标。其中一个标记为原始坐标(xs,ys为非零,zs为零),另一个标记为'位置2& #39 ;.我需要两个位置上每个角落的所有xs,ys,zs。 position 1 position 2 但是Matlab相机校准工具箱只显示了棋盘不同位置的相对位置。在检查了showExtrinsics.m文件后,我没有找到计算角落世界坐标的代码,虽然我知道Matlab可以做到这一点(因为它已经显示了棋盘的绝对位置,因为它如上图所示。)
我意识到通过艰难的计算解决它的可能性,但我想应该有更优雅的方式来做到这一点。这里有专业的Matlabber吗?
答案 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平移向量