Jetson Xavier NX 에서 Object Detection TensorRT 학습하기

2021. 3. 31. 11:02인공지능

#  설치 부분 생략(추후 작성)

 

# 데이터 생성 생략(추후 작성) - 다운받은 놈으로 일단 테스트

 

1. ~/jetson-inference/python/training/detection/ssd/data/위치에 다음과 같은 구조의 데이터를 복사한다

[fruit] - [test] - jpg 이미지들
        - [train] - jpg 이미지들
        - [validation] - jpg 이미지들
        - class-descriptions-boxable.csv
        - sub-test-annotations-bbox.csv
        - sub-train-annotations-bbox.csv
        - sub-validation-annotations-bbox.csv
        - test-annotations-bbox.csv
        - train-annotations-bbox.csv
        - validation-annotations-bbox.csv       

 

2. 다음 명령으로 학습한다.

cd ~/jetson-inference/python/training/detection/ssd
python3 train_ssd.py --data=data/fruit --model-dir=models/fruit --batch-size=4 --epochs=30

 

 

 

 

3. 학습이 완료되었으면 model폴더에 생성된 학습 결과를 다음 명령으로 tensorrt 로 변환한다.

python3 onnx_export.py --model-dir=models/fruit

 

4. 테스트 하기 위해서 validation 폴더의 이미지를 다음과 같은 명령으로 일괄적으로 변환해본다. 

detectnet --model=models/fruit/ssd-mobilenet.onnx \
          --labels=models/fruit/labels.txt \
          --input-blob=input_0 --output-cvg=scores --output-bbox=boxes \
          "~/jetson-inference/python/training/detection/ssd/data/fruit/validation/*.jpg"  \
          ~/test_result/fruit_%i.jpg