diff --git a/components/rgbd-sources/src/calibrate.cpp b/components/rgbd-sources/src/calibrate.cpp index e1b1512d60271313f905f1417e06a29a2ae85a2e..0134afbcd042efe7baf90dd9c9a202593de78a79 100644 --- a/components/rgbd-sources/src/calibrate.cpp +++ b/components/rgbd-sources/src/calibrate.cpp @@ -493,14 +493,15 @@ bool Calibrate::_recalibrate(vector<vector<Point2f>> *imagePoints, } bool Calibrate::undistort(cv::Mat &l, cv::Mat &r) { - local_->get(l, r); + Mat l_tmp, r_tmp; + local_->get(l_tmp, r_tmp); if (!calibrated_) return false; - if (l.empty() || r.empty()) { + if (l_tmp.empty() || r_tmp.empty()) { LOG(ERROR) << "l/r empty in undistort()!!!"; return false; } - remap(l, l, map1_[0], map2_[0], INTER_LINEAR); - if (local_->isStereo()) remap(r, r, map1_[1], map2_[1], INTER_LINEAR); + remap(l_tmp, l, map1_[0], map2_[0], INTER_LINEAR); + if (local_->isStereo()) remap(r_tmp, r, map1_[1], map2_[1], INTER_LINEAR); return true; }