原始帖子有点过时了。以前,我们没有getMatrixTransformAtTime()。因此,您必须使用Tango.getPoseAtTime来查询每个转换,然后使用矩阵将它们链接起来。
但是现在,使用getMatrixTransformAtTime,即使在opengl框架中,您也可以直接查询area_description_T_depth。为了将点云转换为opengl中的ADF框架,可以使用以下代码(伪代码):
TangoSupport.TangoMatrixTransformData transform = TangoSupport.getMatrixTransformAtTime(pointCloud.timestamp, TangoPoseData.COORDINATE_frame_START_OF_SERVICE, TangoPoseData.COORDINATE_frame_CAMERA_DEPTH, TangoSupport.TANGO_SUPPORT_ENGINE_OPENGL, TangoSupport.TANGO_SUPPORT_ENGINE_TANGO);// Convert it into the matrix format you use in render.// This is a pure data structure conversion, transform is// in opengl world frame already.Matrix4x4 model_matrix = ConvertMatrix(transform);foreach (Point p in pointCloud) { p = model_matrix * p;}// Now p is in opengl world frame.
但请注意,在使用ADF重新定位或处于学习模式后,您必须具有有效的区域描述框架才能根据区域描述查询姿势。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)