OpenCv в Java: DescriptorExtractor устарел. Что я использую вместо этого?
У меня есть некоторый пример кода, который использует OpenCV (обертка Java), чтобы сшить 2 изображения вместе. Это относится к классу "DescriptorExtractor", который устарел. Я не могу найти никакой информации в официальной веб-документации или исходном коде о том, что мне следует использовать вместо этого. Я всегда раздражаюсь, когда что-то осуждается, и оно не говорит вам, что вы должны использовать вместо этого.
Может кто-нибудь мне помочь?
Я использую OpenCV 3.4.1 со встроенными библиотеками Windows.
Официальная документация для класса, кажется, здесь.
Класс FeatureDetector также устарел, равно как и без намека на то, что использовать вместо него.
0 ответов
Я согласна с тем что Deprecated
аннотация в Java должна была содержать обязательный параметр, который предоставил бы информацию о преемнике устаревшего элемента, если таковой имеется.
В OpenCV версии 3.4.5 (а может и раньше) в C++ документы DescriptorExtractor
определяется как псевдоним типа для Feature2D
(см. здесь):
typedef Feature2D DescriptorExtractor
поэтому я считаю, что вы должны перейти к org.opencv.features2d.Feature2D
класс в вашем Java-коде, обновляя его использования по мере необходимости.
С оболочками OpenCV (в том числе для Java и Python) и соответствующей автоматически сгенерированной документацией, обычно сложно определить какую-либо информацию об использовании - это хорошая идея, чтобы проконсультироваться с источниками и документацией C++, которые кажутся написанными от руки.