From 2db955d9e841a914707ef6b5d0fc8f6c488a556f Mon Sep 17 00:00:00 2001 From: Joan Sola <jsola@iri.upc.edu> Date: Sat, 16 Apr 2022 23:23:59 +0200 Subject: [PATCH] Remove lost keypoints from the book/keepoing variable --- src/processor/processor_visual_odometry.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/processor/processor_visual_odometry.cpp b/src/processor/processor_visual_odometry.cpp index b0d02ec63..8a6dd8fdc 100644 --- a/src/processor/processor_visual_odometry.cpp +++ b/src/processor/processor_visual_odometry.cpp @@ -190,13 +190,18 @@ void ProcessorVisualOdometry::preProcess() } WOLF_INFO( "Retained " , tracks_last_incoming_filtered.size(), " inliers..." ); + // Remove from mwkps_incoming all the keypoints that have not been tracked + // TODO: there might be a faster way than creating a new map from scratch? + KeyPointsMap mwkps_incoming_fitered; + for (auto track : tracks_last_incoming_filtered) + mwkps_incoming_fitered[track.second] = mwkps_incoming[track.second]; + // Update captures - capture_image_incoming_->addKeyPoints(mwkps_incoming); + capture_image_incoming_->addKeyPoints(mwkps_incoming_fitered); capture_image_incoming_->setTracksPrev(tracks_last_incoming_filtered); capture_image_incoming_->setTracksOrigin(tracks_origin_incoming); - // Add valid //////////////////////////////// // if too few tracks left in incoming -- GitLab