Что означает CV_WRAP и CV_OUT в классе OpenCV Feature2D - PullRequest
1 голос
/ 12 апреля 2019

Большинство методов, содержащихся в классе Features2D, выдают следующие символы: CV_WRAP и CV_OUT , как показано ниже:

/** Detects keypoints and computes the descriptors */
CV_WRAP virtual void detectAndCompute( InputArray image, InputArray mask,
                                       CV_OUT std::vector<KeyPoint>& keypoints,
                                       OutputArray descriptors, bool useProvidedKeypoints=false );

Что означают эти символы? В руководстве OpenCV, касающемся служебных и системных функций и макросов , они определены, но с ними не связано значение. Пожалуйста, смотрите здесь: https://docs.opencv.org/4.0.1/db/de0/group__core__utils.html#ga4e999bc21cb894d3ed789f3f0bc26778

1 Ответ

2 голосов
/ 12 апреля 2019

Эти макросы представляют собой аннотации для генератора Python-оболочки .

Например:

  • CV_WRAP означает, что для этой функции должен быть создан обертка.
  • CV_WRAP_AS как указано выше, но с использованием указанного псевдонима (обычно для перегрузок, которые не могут быть автоматически разрешены)

  • CV_OUT отметкипараметр вывода.

  • CV_IN_OUT отмечает параметр ввода / вывода.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...