☰
ORB-SLAM3 bool Frame::isInFrustum(MapPoint *pMP, float viewingCosLimit)
2026/10/27 10:20:43 网站建设 项目流程

该函数用于判断一个地图点是否落在当前帧的视锥内、是否值得参与局部地图匹配,并顺带填充跟踪所需的投影坐标、尺度层级、视角余弦等缓存数据。

bool Frame::isInFrustum(MapPoint *pMP, float viewingCosLimit) { if(Nleft == -1){ pMP->mbTrackInView = false; pMP->mTrackProjX = -1; pMP->mTrackProjY = -1; // 3D in absolute coordinates Eigen::Matrix<float,3,1> P = pMP->GetWorldPos(); // 3D in camera coordinates const Eigen::Matrix<float,3,1> Pc = mRcw * P + mtcw; const float Pc_dist = Pc.norm(); // Check positive depth const float &PcZ = Pc(2); const float invz = 1.0f/PcZ; if(PcZ<0.0f) return false; const Eigen::Vector2f uv = mpCamera->project(Pc); if(uv(0)<mnMinX ||

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询