master
liuyancheng 2021-09-14 19:46:23 +08:00
parent 6cd39454c8
commit a55d24a467
4 changed files with 7 additions and 4 deletions

View File

@ -531,6 +531,7 @@ namespace ORB_SLAM3 {
cv::SVD::compute(A,w,u,vt,cv::SVD::MODIFY_A| cv::SVD::FULL_UV); cv::SVD::compute(A,w,u,vt,cv::SVD::MODIFY_A| cv::SVD::FULL_UV);
cv::Matx41f x3D_h = vt.row(3).t(); cv::Matx41f x3D_h = vt.row(3).t();
x3D = x3D_h.get_minor<3,1>(0,0) / x3D_h(3); // x3D = x3D_h.get_minor<3,1>(0,0) / x3D_h(3);
x3D = cv::Matx31f(x3D_h.get_minor<3,1>(0,0)(0) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(1) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(2) / x3D_h(3));
} }
} }

View File

@ -773,7 +773,9 @@ void LocalMapping::CreateNewMapPoints()
continue; continue;
// 归一化成为齐次坐标,然后提取前面三个维度作为欧式坐标 // 归一化成为齐次坐标,然后提取前面三个维度作为欧式坐标
// Euclidean coordinates // Euclidean coordinates
x3D = x3D_h.get_minor<3,1>(0,0) / x3D_h(3); // x3D = x3D_h.get_minor<3,1>(0,0) / x3D_h(3);
x3D = cv::Matx31f(x3D_h.get_minor<3,1>(0,0)(0) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(1) / x3D_h(3), x3D_h.get_minor<3,1>(0,0)(2) / x3D_h(3));
bEstimated = true; bEstimated = true;
} }

View File

@ -30,7 +30,7 @@ mutex MapPoint::mGlobalMutex;
/** /**
* @brief * @brief
*/ */
mnFirstKFid(0), mnFirstFrame(0), nObs(0), mnTrackReferenceForFrame(0), MapPoint::MapPoint() : mnFirstKFid(0), mnFirstFrame(0), nObs(0), mnTrackReferenceForFrame(0),
mnLastFrameSeen(0), mnBALocalForKF(0), mnFuseCandidateForKF(0), mnLoopPointForKF(0), mnCorrectedByKF(0), mnLastFrameSeen(0), mnBALocalForKF(0), mnFuseCandidateForKF(0), mnLoopPointForKF(0), mnCorrectedByKF(0),
mnCorrectedReference(0), mnBAGlobalForKF(0), mnVisible(1), mnFound(1), mbBad(false), mnCorrectedReference(0), mnBAGlobalForKF(0), mnVisible(1), mnFound(1), mbBad(false),
mpReplaced(static_cast<MapPoint*>(NULL)) mpReplaced(static_cast<MapPoint*>(NULL))

View File

@ -4383,7 +4383,7 @@ bool Tracking::Relocalization()
} }
//整个追踪线程执行复位操作 //整个追踪线程执行复位操作
void Tracking::Reset() void Tracking::Reset(bool bLocMap)
{ {
Verbose::PrintMess("System Reseting", Verbose::VERBOSITY_NORMAL); Verbose::PrintMess("System Reseting", Verbose::VERBOSITY_NORMAL);
//基本上是挨个请求各个线程终止 //基本上是挨个请求各个线程终止