В настоящее время я использую cmake-gui для компиляции yolo darknet в https://github.com/AlexeyAB/darknet.git. Однако это не включит cuda, и у меня есть несколько других странных проблем. К ним относятся, когда я запускаю darknet.exe из папки Release после его сборки с помощью VS2017, он заявляет, что не может найти pthreadVC2.dll или opencv_world410.dll.
Чтобы исправить другие проблемы, я скопировал исполняемый файл и эти файлы и поместил их все в корневую папку проекта. Кажется, это работает, но я не уверен, почему иначе это не сработает.
Для cuda я не уверен, что попробовать. У меня есть эти системные переменные и путь:


Видно, что CMAKE_CUDA_COMPILER НЕ НАЙДЕН. Я думаю, что это проблема, но я не уверен, почему ее нельзя найти. Если я запускаю nvcc -V в командной строке, он возвращает:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:04_Central_Daylight_Time_2018
Cuda compilation tools, release 10.0, V10.0.130
Также вот вывод для конфигурации cmake:
Selecting Windows SDK version 10.0.17763.0 to target Windows 10.0.17134.
OpenCV ARCH: x64
OpenCV RUNTIME: vc15
OpenCV STATIC: OFF
Found OpenCV 4.1.0 in C:/opencv/build/x64/vc15/lib
You might need to add C:\opencv\build\x64\vc15\bin to your PATH to be able to run your applications.
ZED SDK not enabled, since it requires CUDA
Configuring done
Если у вас есть какие-либо советы по любой из этих проблем, пожалуйста, дайте мне знать. Просто к вашему сведению, в настоящее время даркнет работает, и если я протестирую его на dog.jpg, он успешно обнаружит классы. Однако это, конечно, без Cuda или cudnn, и я хотел бы использовать их в конечном итоге. Спасибо! Если вам нужно что-то еще от меня, пожалуйста, дайте мне знать!
На самом деле это не позволяет. Когда я генерирую, он снимает отметку. Если вы посмотрите на концентратор git и посмотрите на раздел компиляции Windows, где есть изображение того, что cmake должен включать, и мне не хватает группы значений Cuda. Не уверен, как включить их.
У меня такая же ошибка: «не удается найти pthreadVC2.dll». Вы сказали, что теперь это работает для вас, как вы преодолели указанную ошибку? Спасибо :)
Переместите файл в тот же каталог, из которого вы запускаете даркнет. Тогда это будет видно. Я отказался от попыток работать с Cuda в Windows, так как не могу найти для этого решения, дайте мне знать, если вы заставите свою работать @Andre
Конечно вещь. К сожалению, я только что провел тесты на скорости 1 кадр/с на процессоре. GPU действительно нужен.





У меня была та же проблема, я перепробовал много способов сделать GPU доступным для транса, и наконец cmake начал видеть CUDA, когда я переустановил VS2019 (с диска D на диск C) и переустановил CUDA в версии v.10.1. После этого cmake стал находить CUDA, а после компиляции проекта в VS2019 все начинает работать корректно. Важно сначала установить Visual Studio, а затем CUDA.
Ответ дал @Andropogon: CUDA необходимо переустановить после Visual Studio.
Вот что мы обнаружили, когда немного покопались с моим коллегой:
NOT FOUND, несмотря на то, что nvcc.exe находится в Path. (nvcc --version отлично работает в Powershell.) Мы вручную ввели местоположение nvcc.exe в эту опцию, и теперь configure выдает более полезное сообщение об ошибке: No CUDA toolset found. со ссылкой на номера строк в различных файлах cmake. Среди этих строк было это сообщение, которое, кажется, подтверждает, что Visual Studio (VS) является частью проблемы, if (NOT CMAKE_VS_PLATFORM_TOOLSET_CUDA)
message(FATAL_ERROR "No CUDA toolset found.")
Итак, после переустановки CUDA компиляция выглядела так, как я ожидал, но я все еще получаю исполняемый файл, который, похоже, ничего не делает (нет вывода в командной строке, не сгенерировано prediction.jpg). В любом случае, надеюсь, это прольет свет на проблему CUDA/VS/cmake.
В отличие от вышесказанного, я не переустанавливал CUDA, я просто скопировал 4 файла из
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\visual_studio_integration\MSBuildExtensions
к
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations
Почему бы вам не проверить
ENABLE_CUDAвышеENABLE_OPENCV?