diff --git a/modules/face/samples/sample_face_swapping.cpp b/modules/face/samples/sample_face_swapping.cpp index 86cd1becb5a..2c06e299133 100644 --- a/modules/face/samples/sample_face_swapping.cpp +++ b/modules/face/samples/sample_face_swapping.cpp @@ -47,7 +47,9 @@ void divideIntoTriangles(Rect rect, vector &points, vector< vector pt[0] = Point2f(triangle[0], triangle[1]); pt[1] = Point2f(triangle[2], triangle[3]); pt[2] = Point2f(triangle[4], triangle[5]); - if ( rect.contains(pt[0]) && rect.contains(pt[1]) && rect.contains(pt[2])){ + // Workaround for https://github.com/opencv/opencv/issues/26016 + // To keep its behaviour, pt casts to Point_. + if ( rect.contains(Point_(pt[0])) && rect.contains(Point_(pt[1])) && rect.contains(Point_(pt[2]))){ for(int j = 0; j < 3; j++) for(size_t k = 0; k < points.size(); k++) if(abs(pt[j].x - points[k].x) < 1.0 && abs(pt[j].y - points[k].y) < 1) @@ -199,4 +201,4 @@ int main( int argc, char** argv) destroyAllWindows(); } return 0; -} \ No newline at end of file +} diff --git a/modules/rapid/src/rapid.cpp b/modules/rapid/src/rapid.cpp index 4a2fe8b7c45..1c5732843c7 100644 --- a/modules/rapid/src/rapid.cpp +++ b/modules/rapid/src/rapid.cpp @@ -16,7 +16,9 @@ static std::vector getSilhoutteVertices(const Size& imsize, const std::vect Mat_ img1(imsize, 0); Rect img_rect({0, 0}, imsize); for (int i = 0; i < pts2d.rows; i++) { - if (img_rect.contains(pts2d(i))) { + // Workaround for https://github.com/opencv/opencv/issues/26016 + // To keep its behaviour, pts2d casts to Point_. + if (img_rect.contains(Point_(pts2d(i)))) { img1(pts2d(i)) = i + 1; } } @@ -132,7 +134,10 @@ static void sampleControlPoints(int num, Contour3DSampler& sampler, const Rect& auto pt2d = sampler.current2D(); // skip points too close to border - if (!roi.contains(pt2d)) + // + // Workaround for https://github.com/opencv/opencv/issues/26016 + // To keep its behaviour, pt2d casts to Point_. + if (!roi.contains(Point_(pt2d))) continue; opts3d.push_back(sampler.current3D()); diff --git a/modules/viz/misc/python/test/test_viz_simple.py b/modules/viz/misc/python/test/test_viz_simple.py index 973f3535a03..8eee0016a01 100644 --- a/modules/viz/misc/python/test/test_viz_simple.py +++ b/modules/viz/misc/python/test/test_viz_simple.py @@ -179,7 +179,7 @@ def test_viz_show_cloud_random_color(self): def test_viz_show_cloud_masked(self): dragon_cloud,_,_ = cv.viz.readCloud(self.find_file("viz/dragon.ply")) - qnan = np.NAN + qnan = np.nan for idx in range(dragon_cloud.shape[0]): if idx % 15 != 0: dragon_cloud[idx,:] = qnan diff --git a/modules/xfeatures2d/test/test_features2d.cpp b/modules/xfeatures2d/test/test_features2d.cpp index 193ce5e4504..4a10fdebc7f 100644 --- a/modules/xfeatures2d/test/test_features2d.cpp +++ b/modules/xfeatures2d/test/test_features2d.cpp @@ -438,7 +438,9 @@ class FeatureDetectorUsingMaskTest : public cvtest::BaseTest for(size_t k=0; k. + if ( !whiteArea.contains(Point_(points[k])) ) { ts->printf(cvtest::TS::LOG, "The feature point is outside of the mask."); ts->set_failed_test_info(cvtest::TS::FAIL_INVALID_OUTPUT); diff --git a/modules/xfeatures2d/test/test_keypoints.cpp b/modules/xfeatures2d/test/test_keypoints.cpp index 28d125d0836..5b296b2f41c 100644 --- a/modules/xfeatures2d/test/test_keypoints.cpp +++ b/modules/xfeatures2d/test/test_keypoints.cpp @@ -86,7 +86,9 @@ class CV_FeatureDetectorKeypointsTest : public cvtest::BaseTest { const KeyPoint& kp = keypoints[i]; - if(!r.contains(kp.pt)) + // Workaround for https://github.com/opencv/opencv/issues/26016 + // To keep its behaviour, kp.pt casts to Point_. + if(!r.contains(Point_(kp.pt))) { ts->printf(cvtest::TS::LOG, "KeyPoint::pt is out of image (x=%f, y=%f).\n", kp.pt.x, kp.pt.y); ts->set_failed_test_info(cvtest::TS::FAIL_INVALID_OUTPUT);