https://github.com/jkjung-avt/tensorrt_demos
이 저장소의 Demo5 실행 실습입니다.
저는 RTX3080에 Ubuntu18.04를 사용하고 있습니다.
먼저 도커 이미지를 받고 도커를 실행합니다.
## 저장소를 클론합니다.
git clone https://github.com/jkjung-avt/tensorrt_demos
## tensorrt 도커 이미지를 받습니다.
sudo docker pull nvcr.io/nvidia/tensorrt:21.06-py3
## docker에서 opencv영상 재생과 camera를 사용하기 위해서입니다.
xhost local:docker
## doyoung -> 본인의 디렉토리로 수정해줍니다.
sudo docker run --gpus all -v /home/doyoung:/src --device='/dev/video0:/dev/video0' //
--env DISPLAY=$DISPLAY --volume='/tmp/.X11-unix:/tmp/.X11-unix:rw' //
-it nvcr.io/nvidia/tensorrt:21.06-py3
cd /
cd src/tensorrt_demos
apt-get update
여기 보시는 것처럼
# python을 사용하신다면 ssd/install_pycuda.sh 파일을 열어서 pip3 ->pip로 바꿔주세요
# python3를 사용하신다면 변경하지 않으셔도 됩니다.
cd ssd
./install_pycuda.sh
위 에러가 뜨신다면
apt-get install python3-dev
./install_pycuda.sh
제가 쓴 도커 이미지는 python3.8을 사용합니다.
하지만 위 저장소에서는 onnx==1.4.1버전을 필수로 사용해야 하는데
onnx==1.4.1버전은 python3.7까지 지원됩니다.
그래서 추가로 python3.7을 설치해야 합니다.
apt update
apt install software-properties-common
add-apt-repository ppa:deadsnakes/ppa
apt install python3.7
python3.7 -V 를 쳐서 설치됐는지 확인합니다.
alias python=python3.7
python get-pip.py --force-reinstall
# python -V
# pip -V로 python과 pip가 python3.7인 것을 확인합니다.
이제 onnx를 설치합니다.
pip install onnx==1.4.1
에러가 뜹니다.
apt-get install protobuf-compiler libprotoc-dev
pip install pybind11
apt-get install python3.7-dev ## Python.h: No such file or directory에러 해결 커맨드입니다.
pip install onnx==1.4.1
이러면 onnx 설치가 완료됩니다.
pip install nvidia-pyindex
pip install nvidia-tensorrt==7.2.3.4
tensorrt를 설치합니다.
cd ${HOME}/project/tensorrt_demos/plugins
make
plugins폴더로 가서 make를 합니다.
cd ${HOME}/project/tensorrt_demos/yolo
./download_yolo.sh
python yolo_to_onnx.py -m yolov4-416
python onnx_to_tensorrt.py -m yolov4-416
yolo폴더로 가서 위 명령어를 실행합니다.
3,4번 째는 시간이 좀 걸릴 수 있습니다.(30분 이상)
pip install opencv-python==4.4.0.40
apt-get install libgl1-mesa-glx
pip install pycuda
opencv, pycuda libgl1-mesa-glx를 설치합니다.
cd ${HOME}/project/tensorrt_demos
python trt_yolo.py --image dog.jpg -m yolov4-416
을 실행하면
(libSM.so.6: cannot open shared object file: No such file or directory)
라는 오류가 뜨는데
apt-get install -y libsm6 libxext6 libxrender-dev
하면 해결됩니다.
python trt_yolo.py --image dog.jpg -m yolov4-416
마지막으로 실행하시면
'PC 환경설정' 카테고리의 다른 글
docker에서 pyqt5설치 (0) | 2021.09.19 |
---|---|
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]. 에러 해결법 (0) | 2021.06.26 |
ubuntu 18.04 CUDA 설치하기 (0) | 2021.06.26 |
댓글