개발 환경 Ubuntu 18.04
RKNN 툴킷 도구 다운로드 링크 : https://github.com/rockchip-linux/rknn-toolkit
RKNN 툴킷 설치
pip3 install --user -r rknn-toolkit/packages/requirements-cpu.txt
pip3 install --user -U rknn-toolkit/packages/rknn_toolkit-1.4.0-cp36-cp36m-linux_x86_64.whl
모델 변환
cd rknn-toolkit/examples/rknn_convert
python rknn_convert.py /home/aaron/pro/tb/tb3/npu/rknn-toolkit-1.4.0/rknn-toolkit/examples/rknn_convert/models/tensorflow/mobilenet-ssd out_rknn False
첫 번째 매개 변수는 변환 할 원본 모델의 경로입니다 (디렉토리에 직접 입력 할 수 있지만 디렉토리에는`model_config.yml` 파일이 있어야 함).
두 번째 매개 변수는 변환 된 모델의 출력 디렉토리입니다.
세 번째 매개 변수는 사전 컴파일을 활성화할지 여부입니다 (모델로드 시간 단축).
NPU 모델 개발 보드 배포
여기에서 RK1808을 예로 들어
RKNN-Toolkit은 PC의 USB를 통해 개발 보드의 하드웨어에 연결되고, 구축되거나 수입 된 RKNN 모델은 작동을 위해 RK1808로 전송되고 추론 결과 및 성능 정보는 RK1808에서 획득됩니다.
다음 단계를 수행하십시오.
-
개발 보드의 USB OTG가 PC에 연결되어 있고 ADB가 장치를 올바르게 식별 할
adb devices -l
수 있는지 확인하십시오. 즉, PC에서 명령 을 실행하면 대상 장치를 볼 수 있습니다. -
init_runtime
인터페이스를 호출하여 운영 환경을 초기화 할 때 대상 매개 변수와 device_id 매개 변수를 지정해야합니다. 대상 파라미터는 하드웨어 종류를 나타내며 선택한 값은rk1808
입니다 .PC가 여러 대의 장치에 연결되어있는 경우adb devics
명령을 통해 볼 수있는 장치 번호 인 device_id 매개 변수도 지정해야합니다 . -
rknn-toolkit/example/mobilenet_v1
다음과 같이 예를 들어 보십시오 .$ adb devices 연결된 장치 목록 0123456789ABCDEF 장치
즉, 다음으로 변경되었습니다.
ret = rknn.init_runtime (target = 'rk1808', device_id = '0123456789ABCDEF')
-
운영
python3 ./test.py
성공적으로 실행되면 RK1808 추론 후 얻은 데이터를 얻을 수 있습니다.