Часть.1 Перевод: Фреймворк Darknet. Нейронные сети для распознавания объектов (Yolo v4, v3 и v2 для Windows и Linux)
Распознавание объектов — это метод компьютерного зрения, который позволяет распознавать и находить объекты на изображениях или видео. С помощью такого рода идентификации и локализации обнаружение объектов может использоваться для их подсчета, определения и отслеживания точного местоположения при отчетливом выделении объектов на сцене. Представьте, что существует изображение, на котором показаны две кошки и человек. Обнаружение объектов позволяет нам сразу классифицировать разновидность найденных объектов, а также находить их экземпляры на самом изображении.
До сих пор большинство современных точных моделей требуют несколько графических процессоров для обучения с большим размером мини-пакетов. Выполнить обнаружение с помощью одного графического процессора делает обучение нейронной сети очень медленным и непрактичным. В этом руководстве мы перевели гайдлайн по использованию нейронной сети YOLOv4, которая может быть обучена на одном графическом процессоре с меньшим размером мини-пакета.
Внимание! Это руководство предназначено для людей, имеющих базовые познания в YOLO. В рамках проекта Beyond Robotics, с 1 по 15 июля будет выходить ряд видеоуроков, посвященных этому фреймворку.
Научная работа по Scaled YOLO v4 использовать для воспроизведения результатов: ScaledYOLOv4
Больше деталей в статьях, опубликованных в Medium:
Обсуждение:
- YOLOv4 model zoo
- Requirements (and how to install dependencies)
- Pre-trained models
- FAQ - frequently asked questions
- Explanations in issues
- Yolo v4 in other frameworks (TensorRT, TensorFlow, PyTorch, OpenVINO, OpenCV-dnn, TVM,…)
- Datasets
Научная работа по AP50:95 - FPS (Tesla V100)
Научная работа по AP50:95 / AP50 - FPS (Tesla V100)
tkDNN-TensorRT ускоряет YOLOv4 в ~2 раза для batch=1, в 3-4 раза для batch=4.
GeForce RTX 2080 Ti
Размер сети | Darknet, FPS (среднее) | tkDNN TensorRT FP32, FPS | tkDNN TensorRT FP16, FPS | OpenCV FP16, FPS | tkDNN TensorRT FP16 batch=4, FPS | OpenCV FP16 batch=4, FPS | tkDNN ускорение |
---|---|---|---|---|---|---|---|
320 | 100 | 116 | 202 | 183 | 423 | 430 | 4.3x |
416 | 82 | 103 | 162 | 159 | 284 | 294 | 3.6x |
512 | 69 | 91 | 134 | 138 | 206 | 216 | 3.1x |
608 | 53 | 62 | 103 | 115 | 150 | 150 | 2.8x |
Tiny 416 | 443 | 609 | 790 | 773 | 1774 | 1353 | 3.5x |
Tiny 416 CPU Core i7 7700HQ | 3.4 | - | - | 42 | - | 39 | 12x |
- Yolo v4 полное сравнение: map_fps
- Yolo v4 обычное сравнение: tiny_fps
- CSPNet: paper и map_fps сравнение
- Yolo v3 на MS COCO: Скорость/Точность ([email protected]) график
- Yolo v3 на MS COCO (Yolo v3 против RetinaNet) - Фигура 3
- Yolo v2 на Pascal VOC 2007
- Yolo v2 на Pascal VOC 2012 (comp4)
Демонстрация результатов
- YOLOv4 - The most accurate real-time neural network for object detection - YouTube
- Scaled YOLO v4 - The best neural network for object detection (CVPR 2021) - YouTube
- Остальные: Joseph Redmon - YouTube
Как оценить AP YOLOv4 на сервере оценки MS COCO
- Загрузить и разархивировать датасет test-dev2017 из сервера MS COCO: http://images.cocodataset.org/zips/test2017.zip
- Загрузить список изображений для заданий распознования и заменить пути на свои: https://raw.githubusercontent.com/AlexeyAB/darknet/master/scripts/testdev2017.txt
- Загрузить файл
yolov4.weights
245 MB: yolov4.weights (Google-drive yolov4.weights ) - Файл
cfg/coco.data
должен выглядеть следующим образом:
classes= 80 train = /trainvalno5k.txt valid = /testdev2017.txt names = data/coco.names backup = backup eval=coco
- Создать папку
/results/
возле файла./darknet
- Запустить:
./darknet detector valid cfg/coco.data cfg/yolov4.cfg yolov4.weights
- Переименовать файл
/results/coco_results.json
наdetections_test-dev2017_yolov4_results.json
и затем сжать его вdetections_test-dev2017_yolov4_results.zip
- Отправить файл
detections_test-dev2017_yolov4_results.zip
на сервер оценки MS COCO дляtest-dev2019 (bbox)
Как оценить FPS у YOLOv4 на GPU
- Компилировать Darknet с
GPU=1 CUDNN=1 CUDNN_HALF=1 OPENCV=1
внутриMakefile
- Загрузить файл
yolov4.weights
245 MB: yolov4.weights (Google-drive yolov4.weights ) - Выбрать любой .avi/.mp4 формата видеофайл (предпочтительно, чтобы разрешение видео было не больше, чем 1920x1080, чтобы избежать нарушений в производительности ЦПУ)
- Запустить одну из двух команд, оценив показатель AVG FPS:
- включить video_capturing + NMS + drawing_bboxes:
./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights test.mp4 -dont_show -ext_output
- исключить video_capturing + NMS + drawing_bboxes:
./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights test.mp4 -benchmark
Предварительно обученные модели
Существует файл весов для разных cfg-files (обучены для датасета MS COCO):
FPS на RTX 2070 (R) и Tesla V100 (V):
- yolov4x-mish.cfg - 640x640 - 67.9% [email protected] (49.4% [email protected]:0.95) - 23(R) FPS / 50(V) FPS - 221 BFlops (110 FMA) - 381 MB: yolov4x-mish.weights
-
yolov4-csp.cfg - 202 MB: yolov4-csp.weights (научная работа Scaled Yolo v4)изменить параметры
width=
иheight=
в файлеyolov4-csp.cfg
и использовать тот же файлyolov4-csp.weights
для всех случаев:-
width=640 height=640
в cfg: 66.2% [email protected] (47.5% [email protected]:0.95) - 70(V) FPS - 120 (60 FMA) BFlops -
width=512 height=512
в cfg: 64.8% [email protected] (46.2% [email protected]:0.95) - 93(V) FPS - 77 (39 FMA) BFlops - предварительно обученные весы для тренировки
-
-
yolov4.cfg - 245 MB: yolov4.weights (Google-drive yolov4.weights ) (научная работа Yolo v4) изменить параметры
width=
иheight=
в файлеyolov4.cfg
и использовать тот же файлyolov4.weights
для всех случаев:-
width=608 height=608
в cfg: 65.7% [email protected] (43.5% [email protected]:0.95) - 34(R) FPS / 62(V) FPS - 128.5 BFlops -
width=512 height=512
в cfg: 64.9% [email protected] (43.0% [email protected]:0.95) - 45(R) FPS / 83(V) FPS - 91.1 BFlops -
width=416 height=416
в cfg: 62.8% [email protected] (41.2% [email protected]:0.95) - 55(R) FPS / 96(V) FPS - 60.1 BFlops -
width=320 height=320
в cfg: 60% [email protected] ( 38% [email protected]:0.95) - 63(R) FPS / 123(V) FPS - 35.5 BFlops
-
- yolov4-tiny.cfg - 40.2% [email protected] - 371(1080Ti) FPS / 330(RTX2070) FPS - 6.9 BFlops - 23.1 MB: yolov4-tiny.weights
- enet-coco.cfg (EfficientNetB0-Yolov3) - 45.5% [email protected] - 55(R) FPS - 3.7 BFlops - 18.3 MB: enetb0-coco_final.weights
- yolov3-openimages.cfg - 247 MB - 18(R) FPS - OpenImages dataset: yolov3-openimages.weights
- Нажать - модели Yolo v3
- Нажать - модели Yolo v2
Компилировано: darknet.exe
Получить cfg-files возможно с помощью пути: darknet/cfg/
Требования
- CMake >= 3.18
- Powershell (уже установлен на Windows)
- CUDA >= 10.2 (для Linux необходимо выполнить следующие действия)
-
OpenCV >= 2.4: использовать предпочитаемый менеджер пакетов (brew, apt). Важно строить из источника, используя vcpkg или загрузить с официального сайта OpenCV official site (на Windows задайте системную переменную
OpenCV_DIR
=C:\opencv\build
, где находятся папкиinclude
иx64
картинка) -
cuDNN >= 8.0.2 (на Linux копировать
cudnn.h
,libcudnn.so
, как описано здесь. Для Windows необходимо копироватьcudnn.h
,cudnn64_7.dll
,cudnn64_7.lib
, как описано здесь. - Граф. процессор с CC >= 3.0
Yolo v4 в других фреймворках
- Pytorch - Scaled-YOLOv4
-
TensorFlow:
pip install yolov4
YOLOv4 на TensorFlow 2.0 / TFlite / Android:
Официальные модели TF - Для YOLOv4 - конвертировать файлы
yolov4.weights
/cfg
вyolov4.pb
, используя проект TNTWEN, и вyolov4.tflite
TensorFlow-lite -
OpenCV — самая быстрая реализация YOLOv4 ддя ЦПУ (x86/ARM-Android). OpenCV может быть компилирован с OpenVINO-backend для запуска на (Myriad X / USB Neural Compute Stick / Arria FPGA) использовать
yolov4.weights
/cfg
с C++ или Python. - Intel OpenVINO 2021.2: поддерживает YOLOv4 (NPU Myriad X / USB Neural Compute Stick / Arria FPGA): прочитать это руководство (для моделей Scaled-YOLOv4 использовать GitHub - Chen-MingChang/pytorch_YOLO_OpenVINO_demo )
- PyTorch > ONNX:
- ONNX на Jetson для YOLOv4
- TensorRT+tkDNN
- Deepstream 5.0 / TensorRT для YOLOv4 или это, прочитать Yolo is natively supported in DeepStream 4.0 и PDF. Вдобавок, tensorrt_demos или tensorrtx
- Сервер Triton Inference / TensorRT
- DirectML
- OpenCL (Intel, AMD, Mali GPUs для macOS & GNU/Linux)
- HIP для тренировки и распознавания на граф. процессоре AMD
- ROS (Robot Operating System)
- Xilinx Zynq Ultrascale+ Deep Learning Processor (DPU) ZCU102/ZCU104
- Amazon Neurochip / Amazon EC2 Inf1 instances в 1.85 раза выше и на 37% дешевле на изображения для модели YOLOv4 на основе TensorFlow, используя Keras.
- TVM - компилирование моделей глубинного изучения (Keras, MXNet, PyTorch, Tensorflow, CoreML, DarkNet) в минимально запускаемые модули на разных бэкэндах hardware (ЦПУ, граф. процессора, FPGA, и специальные ускорители)
- Tencent/ncnn самый быстрый результат YOLOv4 на ЦПУ мобильного телефона
- OpenDataCam - определяет, считатает и следит за движущимися объектами, используя YOLOv4
- Netron - визуализатор для нейронных сетей
Датасеты
- MS COCO: использовать
./scripts/get_coco_dataset.sh
чтобы получить отмеченный датасет определения MS COCO - OpenImages: использовать
python ./scripts/get_openimages_dataset.py
для отметки тренировочного датасета определения - Pascal VOC: использовать
python ./scripts/voc_label.py
для отметки тренировочного/испытуемого/валидативного датасет определения - ILSVRC2012 (классификация ImageNet): использовать
./scripts/get_imagenet_train.sh
(такжеimagenet_label.sh
для отметки правильного набора) - Датасеты немецких/бельгийских/русских/LISA/MASTIF дорожных знаков для распознавания - использовать эти парсеры
- Лист других датасетов
Улучшения в этой репозитории
- разработал новый детектор объектов на YOLOv4
- добавил новые модели: CSP, PRN, EfficientNet
- добавил слои: [conv_lstm], [scale_channels] SE/ASFF/BiFPN, [local_avgpool], [sam], [Gaussian_yolo], [reorg3d] (починил[reorg]), починил [batchnorm]
- добавил способность тренировать рекурентные модели (со слоями conv-lstm
[conv_lstm]
/conv-rnn[crnn]
) для точного определения на видео - добавил увеличение данных:
[net] mixup=1 cutmix=1 mosaic=1 blur=1
. Добавил активации: SWISH, MISH, NORM_CHAN, NORM_CHAN_SOFTMAX - добавил способность тренировки с граф. процессором используя ОЗУ ЦПУ для увеличения mini_batch_size и точности (вместо batch-norm sync)
- улучшил производительность бинарной нейронной сети в 2-4 раза для определения на ЦПУ и граф. процессора если ты тренировал веса используя модель XNOR-net (bit-1)
- улучшил производительность нейронной сети на ~7%, объединяя 2 слоя в 1: сверточный + Batch-norm
- улучшил производительность: определение в раза, на граф. процессоре Volta/Turing (Tesla V100, GeForce RTX, …) используя Tensor Cores при случае если
CUDNN_HALF
определен вMakefile
илиdarknet.sln
- улучшил производительность в ~1.2 раза на FullHD, в ~2 раза на 4K, для определения на видео используя
darknet detector demo
… - улучшил производительность в 3.5 раза техники увеличения данных для тренировки (используя функции OpenCV SSE/AVX вместо вручных функций) - убирает препятствие для тренировки на multi-GPU или GPU Volta
- улучшил производительность определения и тренировки на Intel CPU с AVX (Yolo v3 ~85%)
- оптимизировал распределение памяти вовремя изменения размера сети когда
random=1
- оптимизировал инициализацию граф. процессора для определения - используем изначально batch=1 вместо re-init с batch=1
- добавил правильное исчисление mAP, F1, IoU, Precision-Recall используя команду
darknet detector map
… - добавил рисунок графика average-Loss и accuracy-mAP (
map
flag) вовремя тренировки - запустил
./darknet detector demo ... -json_port 8070 -mjpeg_port 8090
как сервер JSON и MJPEG для получения результатов онлайн через сеть используя свой веб-браузер - добавил исчисление отметок (anchors) для тренировки
- добавил пример определения и отслеживания объектов
- добавил советы и предупреждения во время выполнения при неправильном использовании cfg-файла или набора данных
- добавил поддержку для системы Windows
- и много других исправлений в коде…
Вдобавок, добавил руководство - How to train Yolo v4-v2 (to detect your custom objects)
Кроме того, вам может быть интересно использовать упрощенный репозиторий, в котором реализовано INT8-исчисление(+30% ускорения и -1% уменьшения mAP)
Как использовать на командной строке
На Linux использовать ./darknet
вместо darknet.exe
, как здесь:./darknet detector test ./cfg/coco.data ./cfg/yolov4.cfg ./yolov4.weights
На Linux найти исполняемый файл ./darknet
в корневой папке, на Windows найти здесь \build\darknet\x64
- Yolo v4 COCO - изображение:
darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -thresh 0.25
- Конечные координаты объектов:
darknet.exe detector test cfg/coco.data yolov4.cfg yolov4.weights -ext_output dog.jpg
- Yolo v4 COCO - видео:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights -ext_output test.mp4
- Yolo v4 COCO - WebCam 0:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights -c 0
- Yolo v4 COCO для net-videocam - Smart WebCam:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights http://192.168.0.80:8080/video?dummy=param.mjpg
- Yolo v4 - сохранить результат как видеофайл res.avi:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights test.mp4 -out_filename res.avi
- Yolo v3 Tiny COCO - видео:
darknet.exe detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights test.mp4
- Сервера JSON и MJPEG, которые позволяют множество соединений через веб-браузер
ip-address:8070
и порт 8090:./darknet detector demo ./cfg/coco.data ./cfg/yolov3.cfg ./yolov3.weights test50.mp4 -json_port 8070 -mjpeg_port 8090 -ext_output
- Yolo v3 Tiny на граф. процессоре #1:
darknet.exe detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights -i 1 test.mp4
- Альтернативный метод Yolo v3 COCO - изображение:
darknet.exe detect cfg/yolov4.cfg yolov4.weights -i 0 -thresh 0.25
- Тренировка на Amazon EC2, чтобы видеть mAP & Loss-chart используя URL:
http://ec2-35-160-228-91.us-west-2.compute.amazonaws.com:8090
в браузерах Chrome/Firefox (Darknet должен быть компилирован с OpenCV):./darknet detector train cfg/coco.data yolov4.cfg yolov4.conv.137 -dont_show -mjpeg_port 8090 -map
- 186 MB Yolo9000 - изображение:
darknet.exe detector test cfg/combine9k.data cfg/yolo9000.cfg yolo9000.weights
- Не забудьте поместить data/9k.tree и data/coco9k.map в одну папку вашего приложения, если вы используете cpp api для создания приложения
- Для обработки списка изображений
data/train.txt
и сохраните результаты обнаружения вresult.json
файле использования:darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -ext_output -dont_show -out result.json < data/train.txt
- Для обработки списка изображений
data/train.txt
и сохраните результаты обнаружения вresult.txt
используйте:darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -dont_show -ext_output < data/train.txt > result.txt
- Псевдо-отметка- для обработки листа изображений
data/new_train.txt
и сохранения результатов определения вовремя тренировки Yolo необходимо форматировать каждое изображение как в названии<image_name>.txt
(таким способом можно увеличить количество данных для тренировки:darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -thresh 0.25 -dont_show -save_labels < data/new_train.txt
- Для исчисления отметок (anchors):
darknet.exe detector calc_anchors data/obj.data -num_of_clusters 9 -width 416 -height 416
- Для проверки точности [email protected]=50:
darknet.exe detector map data/obj.data yolo-obj.cfg backup\yolo-obj_7000.weights
- Для проверки точности [email protected]=75:
darknet.exe detector map data/obj.data yolo-obj.cfg backup\yolo-obj_7000.weights -iou_thresh 0.75
Для использования сетевой видеокамеры mjpeg-stream с любым смартфоном Android
- Скачать для телефона Android mjpeg-stream soft: IP Webcam / Умный WebCam
- Подключите телефон Android к компьютеру по Wi-Fi (через Wi-Fi-маршрутизатор) или USB
- Запустите смарт-веб-камеру на своем телефоне
- Замените адрес ниже, в приложении телефона (смарт-веб-камера), и запустите:
- Yolo v4 модель-COCO: `darknet.exe detector demo data/coco.data yolov4.cfg yolov4.weights http://192.168.0.80:8080/video?dummy=param.mjpg -i 0
Как компилировать на Linux/macOS (используя CMake
)
Файл CMakeLists.txt
будет пытаться найти установленные дополнительные зависимости, такие как CUDA, cudnn, ZED и строить совместно с ними. Это также будет создавать общую библиотеку, чтобы использовать darknet
для разработки кода.
Установите powershell, если у вас его еще нет (руководство здесь).
Чтобы обновить CMake на Ubuntu, лучше следовать руководству здесь
Используя vcpkg
Откройте оболочку и введите следующие команды
PS Code/> git clone https://github.com/AlexeyAB/darknet PS Code/> cd darknet PS Code/darknet> ./build.ps1 -UseVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN
(добавить опцию -EnableOPENCV_CUDA
если вы хотите построить OpenCV с поддержкой CUDA - очень медленно строить!) Если откроете скрипт build.ps1
в начале, найдете все доступные переключатели (switches).
Использование библиотек, предоставленных вручную
Откройте оболочку и введите следующие команды
PS Code/> git clone https://github.com/AlexeyAB/darknet PS Code/> cd darknet PS Code/darknet> ./build.ps1 -EnableOPENCV -EnableCUDA -EnableCUDNN
(убрать опции как -EnableCUDA
или -EnableCUDNN
если не заинтересованы в них). Если откроете скрипт build.ps1
в начале, найдете все доступные переключатели (switches).
Как компилировать на Linux (используя make
)
Совершить make
в директории darknet. (Вы можете попробовать скомпилировать и запустить его в Google Colab в облаке ссылка (нажать кнопку «Open in Playground» button в левом верхнем углу и посмотрите видео ссылка) До make
, можно установить опции в Makefile
: ссылка
-
GPU=1
для сборки с CUDA, чтобы ускорить используя граф. процессор (CUDA должен быть в/usr/local/cuda
) -
CUDNN=1
для сборки с cuDNN v5-v7, чтобы ускорить тренировку используя граф. процессор(cuDNN должен быть в/usr/local/cudnn
) -
CUDNN_HALF=1
для сборки с Tensor Cores (на Titan V / Tesla V100 / DGX-2 and later) ускорение в 3 раза для определения, и в 2 раза для тренировки -
OPENCV=1
для сборки с OpenCV 4.x/3.x/2.4.x - позволяет обнаруживать видеофайлы и видеопотоки с сетевых камер или веб-камер -
DEBUG=1
для сборки дебаженной версии Yolo -
OPENMP=1
для сборки с поддержкой OpenMP для ускорения Yolo с помощью многоядерного процессора -
LIBSO=1
для сборкиdarknet.so
и двоичного исполняемого файлаuselib
, который использует эту библиотеку. Можно попробовать запуститьLD_LIBRARY_PATH=./:$LD_LIBRARY_PATH ./uselib test.mp4
Как использовать эту SO-библиотеку из вашего собственного кода - вы можете посмотреть на C++ примере или использовать таким образом:LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH ./uselib data/coco.names cfg/yolov4.cfg yolov4.weights test.mp4
-
ZED_CAMERA=1
чтобы собрать библиотеку с поддержкой ZED-3D-камеры (должен быть установлен ZED SDK), затем запуститеLD_LIBRARY_PATH=./:$LD_LIBRARY_PATH ./uselib data/coco.names cfg/yolov4.cfg yolov4.weights zed_camera
- Вам также необходимо указать, для какой видеокарты генерируется код. Это делается путем установки
ARCH=
. Если вы используете более новую версию, чем CUDA 11, вам также необходимо отредактировать строку 20 из Makefile и удалить ееgencode arch=compute_30,code=sm_30 \
поскольку поддержка графического процессора Kepler была прекращена в CUDA 11. Вы также можете отказаться от общегоARCH=
и убрать комментарийARCH=
для вашей видеокарты.
Чтобы запустить Darknet в Linux, используйте примеры из этой статьи, просто используйте ./darknet
вместо darknet.exe
, т. е. используйте эту команду: `./darknet detector test ./cfg/coco.data ./cfg/yolov4.cfg ./yolov4.weights
Как компилировать на Windows (используя CMake
)
Необходимо:
- MSVC
-
CMake GUI
Windows win64-x64 Installer
- Загрузите zip-архив Darknet с последней версией и распакуйте его: master.zip
На Windows:
- Start (кнопка) → All programs → CMake → CMake (gui) →
-
изображение В CMake: Введите входной путь к источнику darknet и выходной путь к двоичным файлам → Configure (кнопка) → Optional platform for generator:
x64
→ Finish → Generate → Open Project → - в MS Visual Studio: Выбрать: x64 and Release → Build → Build solution
- найти исполняемый файл
darknet.exe
в пути вывода к указанным двоичным файлам
Как компилировать на Windows (используя vcpkg
)
Это рекомендуемый подход к сбору Darknet в Windows.
- Установите Visual Studio 2017 или 2019. В случае, если вам нужно скачать его, пожалуйста, перейдите сюда: Visual Studio Community. Не забудьте установить пакет на английском языке, это обязательно для vcpkg!
- Загрузите CUDA (от v10.0) включение интеграции VS во время установки.
- Откройте Powershell (Start → All programs → Windows Powershell) и введите эти команды:
PS Code/> git clone https://github.com/AlexeyAB/darknet PS Code/> cd darknet PS Code/darknet> .\build.ps1 -UseVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN
Добавьте опцию -EnableOPENCV_CUDA
, если вы хотите построить OpenCV с поддержкой CUDA - это очень медленно строить!. Попробуйте удалить такие параметры, как -EnableCUDA
или -EnableCUDNN
, если не заинтересованы в них. Если вы откроете скрипт build.ps1
в начале, найдете все доступные переключатели (switches).
Фонд «Beyond Curriculum» публикует цикл материалов в рамках проекта «Beyond Robotics» при поддержке государственно-частного партнёрства «Шеврон» и Посольства США в Казахстане.