尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

ORB-SLAM3 PreintegrateIMU

ORB-SLAM3 PreintegrateIMU cpp void Tracking::PreintegrateIMU() { // 如果当前帧没有上一帧(即这是第一帧),无法进行两帧之间的IMU预积分 if(!mCurrentFrame.mpPrevFrame) { Verbose::PrintMess("non prev frame ", Verbose::VERBOSITY_NORMAL); mCurrentFrame.setIntegrated(); // 标记为已积分(实际上没有积分,只是跳过) return; } // 清空上一帧以来收集的IMU测量容器,准备重新收集 mvImuFromLastFrame.clear(); mvImuFromLastFrame.reserve(mlQueueImuData.size()); // 如果IMU队列为空,无法积分,直接返回 if(mlQueueImuData.size() == 0) { Verbose::PrintMess("Not IMU data in mlQueueImuData!!", Verbose::VERBOSITY_NORMAL); mCurrentFrame.setIntegrated(); return; } // 从 IMU 队列中提取时间戳在上一帧到当前帧之间的IMU测量值 while(true) { bool bSleep = false; { unique_lockmutex lock(mM
返回列表