Closed gauti1311 closed 2 years ago
Hi @gauti1311 , maybe I can comment on these questions a bit, since I worked with the code before.
activePixels.push_back(Vec2(u, v))
into the line 297. If the inverse depth map entries are all zero, it can be that your matches vector is empty or it contains only outliers or invalid features. Hi @mgladkova , thanks for the reply, but when i don't have dilated depth map then i can't find the loop closure. Can you give me some hint if there is any other parameters which are too strict for loop closing.
The only parameter that comes to my mind is setting_pointSelection in ine 125 which should be 1 to enable the loop closure. You can also try to increase the number of extracted features (setting_desiredImmatureDensity parameter) in line 29.
Nevertheless, I would recommend to first visualize your candidate frames and get an insight if a loop closure candidate is good. Maybe it's worth querying more than 1 candidate in the database call here. If the candidates seem reasonable, look into the feature matches and check if there are many good ones.
Please note that both the loop candidate query and feature matching are done using Bag-of-Visual-Words representations. If you are using your own dataset (neither KITTI nor EuroC nor TUM Mono) it might be helpful to train your own vocabulary instead of using the provided orbvoc.dbow3.
Hi @NikolausDemmel ,
I am facing the issue with CorrectLoop function in LoopClosing.cc .In line 280 activepixels is defined but it is not being added to anywhere and then it is used at line 306 which is not working. and i found the inverse depth always equals to zero.
one more clarification about the 3d and points used in solvePnPRansac are both calcualted with diferrent frames i.e 3d points using candidate frame and 2d points from current frame here and here.
thank you.