Класс Open cv 3.0.0 FaceRecognizer не может быть разрешен при компиляции в Linux (Ubuntu)

В Open Cv 3.0.0 класс FaceRecognizer не может быть разрешен при компиляции в Linux (Ubuntu). Раньше это работало в версии 2.4.11, и класс присутствовал в модуле contrib. Похоже, модуль contrib отсутствует в версии Open cv 3.0.0.


person Abbyss    schedule 25.06.2015    source источник


Ответы (1)


Модуль contrib по умолчанию не поставляется с установкой open cv 3.0.0.

Модуль contrib должен быть установлен отдельно. Пожалуйста, следуйте приведенным ниже инструкциям, чтобы избавиться от проблемы компиляции с классом FaceRecognizer.

  1. Сначала перейдите в каталог сборки в open cv. Это может называться сборка или выпуск, если вы установили версию open cv 3.0.0.
  2. Там вы можете запустить следующую команду, чтобы установить модуль contrib

cmake -DOPENCV_EXTRA_MODULES_PATH=opencv_contrib/modules opencv_source_directory

  1. В приведенной выше команде opencv_contrib — это путь к каталогу модуля opencv contrib, который вы скачали по ссылке github [https://github.com/Itseez/opencv_contrib/tree/3.0.0-rc1][1]. opencv_source_directory — это исходный каталог opencv, который обычно представляет собой корневую папку open cv, в которую вы его распаковали или загрузили, это будет ../, если вы следовали инструкциям руководства по open cv по установке и созданию папку релиз или сборка

  2. Я использовал тег RC1 open cv 3.0.0 из github, вы можете использовать тег по вашему выбору.

  3. Теперь выполните следующие две команды

сделать -j $(nproc)

судо сделать установить

  1. После этого в коде (файл .cpp или .hpp), где вы ссылаетесь на класс FaceRecognizer, поместите следующие пространства имен рядом с #includes

использование пространства имен cv; использование лица пространства имен;

  1. В качестве альтернативы вы также можете ссылаться на класс с префиксом пространства имен, например, если вы ссылаетесь на FaceRecognizer как cv::FaceRecognizer, теперь ссылайтесь на него как на cv::face::FaceRecognizer. Это просто стиль кодирования. Используйте либо пункт 6, либо стиль 7, но не оба.

Теперь вы не должны видеть никаких проблем с компиляцией.

person Abbyss    schedule 25.06.2015