diff --git a/GPU_version/vio/src/reprojector.cpp b/GPU_version/vio/src/reprojector.cpp index 2b0d77f..49ccd17 100644 --- a/GPU_version/vio/src/reprojector.cpp +++ b/GPU_version/vio/src/reprojector.cpp @@ -31,6 +31,7 @@ #include #include +#include namespace vio { @@ -161,7 +162,7 @@ void Reprojector::reprojectMap( matcher->match(descriptors_ref,descriptors_cur,matches); //std::cerr<<"matches size : "<fts_.begin(); auto fts2 = fts; @@ -173,7 +174,7 @@ void Reprojector::reprojectMap( keypoints_cur[i].class_id = 0; } - for(int i; i < keypoints_cur.size(); i++) + for(int i=0; i < keypoints_cur.size(); i++) { if(keypoints_cur[i].class_id == 0) continue; @@ -215,14 +216,12 @@ void Reprojector::reprojectMap( resetGrid(); cv::Mat descriptors_cur; std::vector keypoints_cur; - std::vector matches; cv::Ptr extractor = cv::xfeatures2d::FREAK::create(true, true, 50.0f, 4); cv::Ptr matcher = cv::BFMatcher::create(cv::NORM_HAMMING, true); cv::FAST(frame->img(),keypoints_cur,50); extractor->compute(frame->img(), keypoints_cur, descriptors_cur); list< pair > close_kfs; map_.getCloseKeyframes(frame, close_kfs); - std::cerr<::second, _1) < boost::bind(&std::pair::second, _2)); size_t n = 0; @@ -231,6 +230,7 @@ void Reprojector::reprojectMap( it_frame!=ite_frame && n keypoints_kfs; + std::vector matches; cv::Mat descriptors_ref; FramePtr ref_frame = it_frame->first; overlap_kfs.push_back(pair(ref_frame,0)); @@ -251,13 +251,8 @@ void Reprojector::reprojectMap( } extractor->compute(it_frame->first->img(), keypoints_kfs, descriptors_ref); matcher->match(descriptors_ref, descriptors_cur, matches); - for (int i=0; i < matches.size(); i++){ - std::cerr<fts_.begin(); - auto fts2 = fts; - for (int f = 0; f < matches[i].queryIdx; f++) - fts2++; - if (reprojectPoint1(frame, (*fts2)->point, keypoints_cur[i].pt.x, keypoints_cur[i].pt.y)) { + for(auto&& f: _for(ref_frame->fts_)){ + if (reprojectPoint1(frame, f.item->point, keypoints_cur[matches[f.index].trainIdx].pt.x, keypoints_cur[matches[f.index].trainIdx].pt.y)) { overlap_kfs.back().second++; } }