拿到板子好多天了,终于完整跑通rk平台下的训练自已的数据用例了,以下是记录流程:
模型比较小,没有做预编译。从测试效果来看还行。
周末有空,再把效果优化一下,补上效果图。
1.(py38gpupt) rv1126@rv1126:~/ai/yolov5-7.0/yolov5-7.0$python train.py --data VOC.yaml --weights '' --cfg yolov5s.yaml --img 640 --batch-size 4 --epoch 10
2.可以用pc模拟测试:(py38gpupt) rv1126@rv1126:~/ai/yolov5-7.0/yolov5-7.0$ python detect.py --source 0 --weights ./runs/train/exp8/weights/best.pt --conf 0.2
3.修改yolo.py输出为3个出口 并导 (py38gpupt) rv1126@rv1126:~/ai/yolov5-7.0/yolov5-7.0$ gedit models/yolo.py &
4.导出(py38gpupt) rv1126@rv1126:~/ai/yolov5-7.0/yolov5-7.0$ python export.py --weights ./runs/train/exp8/weights/best.pt --img 640 --batch 1 --include onnx
5.切换环境到转换工具下:(py36rknn1.7.5) rv1126@rv1126:~/ai/rktoolkit$ python convert-onnx-to-rknn-copy.py
6.生成模型导入开发板,(py36rknn1.7.5) rv1126@rv1126:~/ai/rktoolkit$ adb push yolov5-7.0-onnx_tyd.rknn /demo/bin
7.修改应用程序,把模型改为 static char *model_path = "/demo/bin/yolov5-7.0-onnx_tyd.rknn";
8.应用程序使用:root@rv1126:/home/rv1126/ai/yolov5_object_recognize/build# adb push yolov5_object_recognize /demo/bin