diff --git a/GPU_version/vio/src/frame.cpp b/GPU_version/vio/src/frame.cpp index 0a0b7ea..c6822c2 100644 --- a/GPU_version/vio/src/frame.cpp +++ b/GPU_version/vio/src/frame.cpp @@ -125,13 +125,24 @@ void Frame::checkKeyPoints(Feature* ftr) void Frame::removeKeyPoint(Feature* ftr) { - bool found = false; - std::for_each(key_pts_.begin(), key_pts_.end(), [&](Feature*& i){ - if(i == ftr) { - i = NULL; - found = true; + std::cerr<obs_.begin(), pt->obs_.end(), [&](Feature* ftr){ - ftr->point=NULL; - ftr->frame->removeKeyPoint(ftr); - }); + for(auto&& ftr:pt->obs_){ + assert(ftr); + if(ftr->frame!= nullptr)ftr->frame->removeKeyPoint(ftr); + ftr->point=NULL; + } pt->obs_.clear(); // Delete mappoint