содержание
1.3 версии python, pytorch и tensorrt
Во-вторых, установка среды TensorRT и opencv.
3.2 Загрузите проект tensorrtx
3.3 Начать подготовку к компиляции
1. Версия среды
1.1 Обзор
Системная среда: Ubuntu18.04 python=3.8.5 torch=1.10.0 TensorRT=7.2.3.4 opencv=4.5.1
cuda=11.2 cudnn=8.2.2 Версия драйвера: 460.32.03 Видеокарта: RTX 3090
1.2 Версия Ubuntu
Запустить в терминале: lsb_release -a
1.3 версии python, pytorch и tensorrt
Запустить в терминале: lsb_release -a
1.4 cudnn версия
Запустите в терминале: dpkg -L libcudnn8
1.5 версия драйвера
Запустите в терминале: смотреть -n 1 nvidia-smi
1.6 версия opencv
Запустите в терминале: pkg-config --modversion opencv
Во-вторых, установка среды TensorRT и opencv.
2.1 установка opencv
- Справочный веб-сайт:Home - OpenCV
- пакет ippicv:GitHub.com/OpenCV/открыть…
- Команда компиляции: cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=Release -D BUILD_TIFF=ON
ПРИМЕЧАНИЕ. В условиях CODA, благодаря установке Pytorch, «Libtiff» будет автоматически установлена автоматически. После удаления Pytorch нельзя использовать, а затем OpenCV сообщит об ошибке во время процесса компиляции, следующим образом:
/usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFReadRGBAStrip@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFReadDirectory@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFWriteEncodedStrip@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFIsTiled@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFWriteScanline@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFGetField@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFScanlineSize@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFWriteDirectory@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFReadEncodedTile@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFReadRGBATile@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFClose@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFClientOpen@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFRGBAImageOK@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFOpen@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFReadEncodedStrip@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFSetField@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFSetWarningHandler@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.4.5.1: undefined reference to `TIFFSetErrorHandler@LIBTIFF_4.0
Решение:
- Когда исходный код opencv установлен и скомпилирован, убедитесь, что в среде conda нет имени пакета libtiff.
- Включите BUILD_TIFF во время компиляции cmake.
Ссылка на ссылку:
- LIBTIFF_4.0 link errors - OpenCV Q&A Forum
- stackoverflow.com/questions/2…
- Ошибки ссылки OpenCV LIBTIFF_4.0
- Установите OpenCV + OpenCV_Contrib в Linux (Ubuntu 18.04)
- blog.51CTO.com/U_14587161/…
2.2 Установка TensorRT
- Справочный веб-сайт:developer.NVIDIA.com/This-talent/Это так неудобно…, существует два метода установки: пакет tar и deb.В этой статье для распаковки и установки выбран пакет tar.
- Распаковать и установить согласно tar-пакету: tar -xvf TensorRT-7.2.3.4.Ubuntu-18.04.x86_64-gnu.cuda-11.1.cudnn8.1.tar.gz
- Команда установки: введите python, uff и graphsurgeon соответственно.В зависимости от среды python pip установите соответствующий пакет
- vi ~/.bashrc add export LD_LIBRARY_PATH=/usr/local/TensorRT-7.2.3.4/lib:/usr/local/cuda/bin:INCLUDE_PATH
- source ~/.bashrc
Три, йолов5 в тензоррт
3.1 Скачать проект yolov5
GitHub.com/ultra Еще одна ICS…
3.2 Загрузите проект tensorrtx
3.3 Начать подготовку к компиляции
В проекте tensorrx войдите в каталог yolov5 и измените Cmakelists.txt:
修改自己tcuda和tensorrt路径:
# cuda
include_directories(/usr/local/cuda/include)
link_directories(/usr/local/cuda/lib64)
# tensorrt
include_directories(/usr/local/TensorRT-7.2.3.4/include)
link_directories(/usr/local/TensorRT-7.2.3.4/lib)
3.4 Получите модель wts
Запустите в терминале: ****python gen_wts.py
3.5 Команда компиляции
Запустите в терминале: mkdir build && cd build:
Запустите в терминале: cmake..
Запустите в терминале: make -j128
Запустите в терминале: ./yolov5 -s // сериализовать модель в файл плана, т.е. 'yolov5s.engine' сериализовать модель
3.6 Тестирование
Выполнить в терминале: ./yolov5 -d ../data/images // десериализовать файл плана и запустить вывод, изображения в образцах будут обработаны.
Или запустите в терминале: CUDA_VISIBLE_DEVICES=6 python yolov5_trt.py