diff --git a/modules/mcc/src/checker_detector.cpp b/modules/mcc/src/checker_detector.cpp index 2de276d87fc..ef91ba699ed 100644 --- a/modules/mcc/src/checker_detector.cpp +++ b/modules/mcc/src/checker_detector.cpp @@ -232,9 +232,12 @@ bool CCheckerDetectorImpl:: #endif for (Ptr checker : checkers) { - for (cv::Point2f &corner : checker->getBox()) + std::vector restore_box; + for (cv::Point2f &corner : checker->getBox()){ corner += static_cast(region.tl()); - + restore_box.emplace_back(corner); + } + checker->setBox(restore_box); { cv::AutoLock lock(mtx); m_checkers.push_back(checker); @@ -453,9 +456,12 @@ bool CCheckerDetectorImpl:: #endif for (Ptr checker : checkers) { - for (cv::Point2f &corner : checker->getBox()) + std::vector restore_box; + for (cv::Point2f &corner : checker->getBox()){ corner += static_cast(region.tl() + innerRegion.tl()); - + restore_box.emplace_back(corner); + } + checker->setBox(restore_box); { cv::AutoLock lock(mtx); m_checkers.push_back(checker); @@ -1363,4 +1369,4 @@ float CCheckerDetectorImpl:: } } // namespace mcc -} // namespace cv +} // namespace cv \ No newline at end of file