1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-29 15:23:05 +04:00

Merge branch 4.x

This commit is contained in:
Alexander Smorkalov
2026-02-11 13:54:39 +03:00
committed by Alexander Smorkalov
468 changed files with 16647 additions and 11284 deletions
+27
View File
@@ -168,4 +168,31 @@ BIGDATA_TEST(Features2D_ORB, regression_opencv_python_537) // memory usage: ~3
ASSERT_NO_THROW(orbPtr->detectAndCompute(img, noArray(), kps, fv));
}
TEST(Features2D_ORB, MaskValue)
{
Mat gray = imread(cvtest::findDataFile("features2d/tsukuba.png"), IMREAD_GRAYSCALE);
ASSERT_FALSE(gray.empty());
cv::Rect roi(gray.cols/4, gray.rows/4, gray.cols/2, gray.rows/2);
Mat mask255 = Mat::zeros(gray.size(), CV_8UC1);
Mat mask1 = Mat::zeros(gray.size(), CV_8UC1);
mask255(roi).setTo(255);
mask1(roi).setTo(1);
Ptr<ORB> orb = cv::ORB::create();
vector<KeyPoint> keypoints_mask255, keypoints_mask1;
Mat descriptors_mask255, descriptors_mask1;
orb->detectAndCompute(gray, mask255, keypoints_mask255, descriptors_mask255, false);
orb->detectAndCompute(gray, mask1, keypoints_mask1, descriptors_mask1, false);
ASSERT_EQ(keypoints_mask255.size(), keypoints_mask1.size())
<< "Number of keypoints differs between mask values 255 and 1";
Mat diff = descriptors_mask255 != descriptors_mask1;
ASSERT_EQ(countNonZero(diff), 0);
}
}} // namespace