Функция OpenCV CUDA отсутствует - пространство имен "cv: cuda" не имеет члена "resize" - PullRequest
0 голосов
/ 28 апреля 2019

Я пытаюсь использовать OpenCV 4.1 с CUDA 10 для изменения размера большого количества стеков TIF, но VS2017 не видит функцию resize в библиотеке. Он доволен подмножеством библиотеки cv::cuda, но не видит все функции, перечисленные здесь: https://docs.opencv.org/4.1.0/d1/d1a/namespacecv_1_1cuda.html

Я включаю #include <opencv2/opencv.hpp>, и Intellisense показывает мне автозаполнения cuda:: из PtrSz, registerPageLocked, resetDevice, setBufferPoolConfig, но без изменения размера ...?

Я адаптировал старый OpenCV 3 (? Ish; здесь https://www.opencv -srf.com / p / ввод.html ) онлайн для настройки моего проекта VS:

  1. Создана переменная среды системного уровня $ (OPENCV_DIR), указывающая на папку сборки OpenCV
  2. В свойствах проекта я добавил:
    • Все конфигурации:
    • C / C ++ -> Общие -> Дополнительные каталоги включения $(OPENCV_DIR)\include
    • Linker -> General -> Additional LibraryDirectories $(OPENCV_DIR)\x64\vc15\lib здесь и ниже, я изменил папку vc ##, чтобы отразить, что я использую VS2017
    • Отладка -> Среда PATH=$(OPENCV_DIR)\x64\vc15\bin;%PATH%
    • В Configuration Manager ...
    • Установить для платформы Active Solution: x64
    • Debug:
    • Линкер -> Ввод -> Дополнительные зависимости opencv_world410d.lib
    • Release:
    • Линкер -> Ввод -> Дополнительные зависимости opencv_world410.lib

Если я пытаюсь скомпилировать, используя cv::cuda::resize(...), я получаю ошибку компиляции namespace "cv::cuda" has not member "resize". Если вместо этого я попытаюсь использовать одну из функций, которые он видит в этом пространстве имен, например, std::cout << "CUDA device count: " << cuda::getCudaEnabledDeviceCount(); выводит CUDA device count: 0 и при попытке что-то вроде std::cout << "CUDA device: " << cuda::getDevice(); выдает следующую ошибку: OpenCV(4.1.0) Error: No CUDA support (The library is compiled without CUDA support) in throw_no_cuda, file c:\build\master_winpack-build-win64-vc15\opencv\modules\core\include\opencv2\core\private.cuda.hpp, line 107

Я запутался, во-первых, почему он видит только подмножество функций, доступных в этом пространстве имен cv :: cuda, и, во-вторых, почему у меня нет поддержки CUDA? Нужно ли мне сначала скомпилировать OpenCV на моей машине?

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