본문 바로가기
NVIDIA Jeston/Deepstream

Deepstream 6.0 Yolov2 Yolov3 예제 실행하기

by makepluscode 2022. 7. 11.
반응형

Deepstream 6.0 에서 Yolo 예제 실행하기

NVIDIA Xavier NX devkit 에서 Deepstream 6.0 의 Yolo V3 예제를 빌드하고 실행한다.

Deepstream 6.0 objectDetector_Yolo 예제

NVIDIA Xavier NX devkit 에서 Deepstream 6.0 설치는 아래 포스팅을 참고한다.

2022.07.10 - [임베디드 컴퓨팅/nVidia Jetson] - [Jetson] JetPack4.6 Deepstream 6.0 설치하기

 

[Jetson] JetPack4.6 Deepstream 6.0 설치하기

JetPack4.6 에서 Deepstream 6.0 설치하기 NVIDIA Xavier NX devkit 에 apt-get 명령으로 Deepstream 6.0 설치하고 샘플 어플리케이션을 실행한다. Deepstream 6.0 설치하기 테스트 환경 NVIDIA Xavier NX devkit..

makepluscode.tistory.com

소스구조

objectDetector_Yolo 의 소스 트리 구조는 다음과 같다.

$ cd /opt/nvidia/deepstream/deepstream-6.0/sources/objectDetector_Yolo
$ tree
.
├── config_infer_primary_yoloV2_tiny.txt
├── config_infer_primary_yoloV2.txt
├── config_infer_primary_yoloV3_tiny.txt
├── config_infer_primary_yoloV3.txt
├── deepstream_app_config_yoloV2_tiny.txt
├── deepstream_app_config_yoloV2.txt
├── deepstream_app_config_yoloV3_tiny.txt
├── deepstream_app_config_yoloV3.txt
├── labels.txt
├── nvdsinfer_custom_impl_Yolo
│   ├── kernels.cu
│   ├── Makefile
│   ├── nvdsinfer_yolo_engine.cpp
│   ├── nvdsparsebbox_Yolo.cpp
│   ├── trt_utils.cpp
│   ├── trt_utils.h
│   ├── yolo.cpp
│   ├── yolo.h
│   ├── yoloPlugins.cpp
│   └── yoloPlugins.h
├── prebuild.sh
└── README

objectDetector_Yolo 의 주요 파일과 역할은 다음과 같다.

config_infer_primary_yolo.txt Yolo detector model 을 위한 GStreamer nvinfer 플러그인 설정 파일 파일
nvdsinfer_yolo_engine.cpp nvdsinfer 를 위한 Cuda 엔진 인터페이스
nvdsparsebbox_Yolo.cpp Yolo 네트워크 Post processing, Bounding box 처리
yoloPlugins.h, yoloPlugins.cpp YoloLayerV3 의 YoloLayerV3PluginCreator 의 헤더와 소스파일
trt_utils.h, trt_utils.cpp tensorRT 유틸리티
yolo.h, yolo.cpp Yolo Cuda-Engine 구현을 위한 헤더와 소스파일

빌드하기

터미널에서 objectDetector_Yolo 디렉토리로 이동하여 libnvdsinfer_custom_impl_Yolo.so 를 빌드한다.

$ cd /opt/nvidia/deepstream/deepstream-6.0/sources/objectDetector_Yolo
$ sudo CUDA_VER=10.2 make -C nvdsinfer_custom_impl_Yolo

libnvdsinfer_custom_impl_Yolo.so 가 정상적으로 생성되었는지 확인한다. 

$ ll nvdsinfer_custom_impl_Yolo/libnvdsinfer_custom_impl_Yolo.so 
-rwxr-xr-x 1 root root 787960 Jul 10 11:32 nvdsinfer_custom_impl_Yolo/libnvdsinfer_custom_impl_Yolo.so*

yolov3 실행하기

터미널에서 deepstream-app 으로 yolov3 를 실행한다. (실행결과 첨부)

  $ deepstream-app -c deepstream_app_config_yoloV3.txt

yolov3.txt
0.02MB

yolov3 tiny 실행하기

터미널에서 deepstream-app 으로 yolov3 tiny 를 실행한다. (실행결과 첨부)

  $ deepstream-app -c config_infer_primary_yoloV3_tiny.txt

yolov3-tiny.txt
0.00MB

관련자료

NVIDIA Xavier NX devkit 에서 Deepstream 6.0 설치는 아래 포스팅을 참고한다.

2022.07.10 - [임베디드 컴퓨팅/nVidia Jetson] - [Jetson] JetPack4.6 Deepstream 6.0 설치하기

 

[Jetson] JetPack4.6 Deepstream 6.0 설치하기

JetPack4.6 에서 Deepstream 6.0 설치하기 NVIDIA Xavier NX devkit 에 apt-get 명령으로 Deepstream 6.0 설치하고 샘플 어플리케이션을 실행한다. Deepstream 6.0 설치하기 테스트 환경 NVIDIA Xavier NX devkit..

makepluscode.tistory.com

반응형