ORB_SLAM3
ORB_SLAM3 copied to clipboard
Merging maps when recently lost or recolalization has been recently
I have tried to merge maps, and noticed that when algorithm loses points, has been calling resetActiveMap function and after all I can save only last map which initialized with createInitialMonocularMap, after these I got that this part or working not correctly or I dont get anythink in this code please explin me this part or help to change this code to get whole map to save, I work on Raspberry pi 4 model b with 8 gb ram, and have written wrapper on Orbslam3
I will be glad to get this part of code,
Sophus::SE3f Tcw;
vector<bool> vbTriangulated; // Triangulated Correspondences (mvIniMatches)
if(mpCamera->ReconstructWithTwoViews(mInitialFrame.mvKeysUn,mCurrentFrame.mvKeysUn,mvIniMatches,Tcw,mvIniP3D,vbTriangulated))
{
for(size_t i=0, iend=mvIniMatches.size(); i<iend;i++)
{
if(mvIniMatches[i]>=0 && !vbTriangulated[i])
{
mvIniMatches[i]=-1;
nmatches--;
}
}
// Set Frame Poses
//std::cout << Sophus::SE3f() << std::endl << latest_pose << std::endl;
//mInitialFrame.SetPose(Sophus::SE3f());
mCurrentFrame.SetPose(Tcw);
//mCurrentFrame.SetPose(mInitialFrame.GetPose() * Tcw);
CreateInitialMapMonocular();/////////////////////////// erkrordy kanchvum e sa /////////////////////////////////////////////
}