xfeatures2d(python): compatibility cv.xfeatures2d.SIFT_create()

pull/2506/head
Alexander Alekhin 5 years ago
parent 1248735d1e
commit a4ca61e24d
  1. 2
      modules/xfeatures2d/misc/python/pyopencv_sift.hpp
  2. 20
      modules/xfeatures2d/misc/python/shadow_sift.hpp
  3. 24
      modules/xfeatures2d/misc/python/test/test_sift_compatibility.py

@ -0,0 +1,2 @@
// Compatibility
#include "shadow_sift.hpp"

@ -0,0 +1,20 @@
// Compatibility
// SIFT is moved to the main repository
namespace cv {
namespace xfeatures2d {
/** Use cv.SIFT_create() instead */
CV_WRAP static inline
Ptr<cv::SIFT> SIFT_create(int nfeatures = 0, int nOctaveLayers = 3,
double contrastThreshold = 0.04, double edgeThreshold = 10,
double sigma = 1.6)
{
CV_LOG_ONCE_WARNING(NULL, "DEPRECATED: cv.xfeatures2d.SIFT_create() is deprecated due SIFT tranfer to the main repository. "
"https://github.com/opencv/opencv/issues/16736"
);
return SIFT::create(nfeatures, nOctaveLayers, contrastThreshold, edgeThreshold, sigma);
}
}} // namespace

@ -0,0 +1,24 @@
#!/usr/bin/env python
# Python 2/3 compatibility
from __future__ import print_function
import os
import numpy as np
import cv2 as cv
from tests_common import NewOpenCVTests
class sift_compatibility_test(NewOpenCVTests):
def test_create(self):
sift = cv.xfeatures2d.SIFT_create()
self.assertFalse(sift is None)
img1 = np.zeros((100, 100, 3), dtype=np.uint8)
kp1_, des1_ = sift.detectAndCompute(img1, None)
if __name__ == '__main__':
NewOpenCVTests.bootstrap()
Loading…
Cancel
Save