学员优秀案例-100ASK-V853-PRO开发板-YOLOV5实时预览

0.前言

默认支持GC2053摄像头和MIPI显示屏
体验镜像:v853_linux_100ask_uart0.img
可执行程序:yolov5-camera.zip (600.0 KB)
执行命令:./yolov5-camera /etc/models/yolov5_model.nb

源码:100ask_yolov5_opencv_gc2053.tar.gz (1.3 MB)

硬件要求:
1.4寸MIPI显示屏
2.GC2053摄像头
3.100ASK_V853-PRO开发板

1.编译步骤

1.1 解压压缩包

解压压缩包yolov5_opencv_gc2053.tar.gz,输入

tar -xzvf yolov5_opencv_gc2053.tar.gz

解压完成后会得到yolov5_opencv_gc2053文件夹,进入该文件夹

cd yolov5_opencv_gc2053/

1.2 修改Makefile

修改Makfile文件中以下路径为你SDK中实际的路径。

CC:=~/workspaces/tina-v853-open/prebuilt/rootfsbuilt/arm/toolchain-sunxi-musl-gcc-830/toolchain/bin/arm-openwrt-linux-gcc
CXX:=~/workspaces/tina-v853-open/prebuilt/rootfsbuilt/arm/toolchain-sunxi-musl-gcc-830/toolchain/bin/arm-openwrt-linux-g++

INCLUDES += -I /home/book/workspaces/tina-v854-open/out/v853/100ask/openwrt/staging_dir/target/usr/include/
INCLUDES += -I /home/book/workspaces/tina-v853-open/out/v853/100ask/openwrt/staging_dir/target/usr/include/opencv4
INCLUDES += -I /home/book/workspaces/tina-v853-open/out/v853/100ask/openwrt/staging_dir/target/usr/include/opencv4/opencv2
INCLUDES += -I $(shell pwd)/include -I $(shell pwd)/isp/ -I $(shell pwd)/isp/include -I $(shell pwd)/isp/include/device

LIB_PATH := /home/book/workspaces/tina-v853-open/out/v853/100ask/openwrt/staging_dir/target/usr/lib/

注意:需要先配置opencv包,可按照如下链接操作。

1.3 导入STAGING_DIR路径

导入STAGING_DIR路径,需要根据你自己实际的路径修改:

export STAGING_DIR=/home/book/workspaces/tina-v853-open/prebuilt/rootfsbuilt/arm/toolchain-sunxi-musl-gcc-830/toolchain/arm-openwrt-linux-muslgnueabi

1.4 编译程序

编译程序

make


请问大佬可以帮我看看,在make后面的报错吗?

1.工具链和opencv库没有找到,修改Makefile文件中的路径。
2.opencv库编译参考资料汇总中的文章:100ASK_V853-PRO 资料汇总


利用提供的镜像和可执行文件运行是这个结果,可以帮忙看一下吗?

1.检查一下硬件是否连接正常(MIPI显示屏/摄像头)
2.根据打印信息定位程序在哪里结束再找问题
3.下载提供的镜像测试

请问您解决问题了吗?

您好,是不是只要将模型训练并且转换好,将镜像烧录进去,直接执行就可以看到实时目标检测的效果呢

1、运行失败,由于板端没有OpenCV的相关动态库,导致无法运行。
2、关于编译不通过,是因为你的ubuntu系统没有opencv相关环境,导致交叉编译时无法链接到库。

您好!按照您的步骤,我在v853开发板上运行程序时报了以下错误:
[ISP]open isp device[0] success!
[ISP_ERR]isp_sensor_get_configs, line: 810,gc2053_mipi get config failed: Invalid argument (22).
[ISP_WARN]sdcard is not mounted!!!
[ISP]prefer isp config: [gc2053_mipi], 0x0, 0, 0, 0
[ISP_WARN]cannot find gc2053_mipi_0_0_0_0_0 isp config, use gc2053_mipi_1920_1088_20_0_0 → [gc2053_mipi_isp600_20220511_164617_vlc4_day]
[ISP_ERR]isp_ctx_config_init, line: 2305,sensor attribute is not init.
[ISP]create isp0 server thread!
100ask v853start_capture
[ISP_ERR]isp_stat_process_buffer, line: 268,AEWB: stats error, skipping buffer.
Arithmetic exception (core dumped)
请问您知道该如何解决吗

您好!按照您的步骤,我在v853开发板上运行程序时报了以下错误:
[ISP]open isp device[0] success!
[ISP_ERR]isp_sensor_get_configs, line: 810,gc2053_mipi get config failed: Invalid argument (22).
[ISP_WARN]sdcard is not mounted!!!
[ISP]prefer isp config: [gc2053_mipi], 0x0, 0, 0, 0
[ISP_WARN]cannot find gc2053_mipi_0_0_0_0_0 isp config, use gc2053_mipi_1920_1088_20_0_0 → [gc2053_mipi_isp600_20220511_164617_vlc4_day]
[ISP_ERR]isp_ctx_config_init, line: 2305,sensor attribute is not init.
[ISP]create isp0 server thread!
100ask v853start_capture
[ISP_ERR]isp_stat_process_buffer, line: 268,AEWB: stats error, skipping buffer.
Arithmetic exception (core dumped)
请问您知道该如何解决吗

十分抱歉,您可以使用gdb等调试工具进行排查

啊好的谢谢 我去找找资料看怎么使用调试工具排查


您好,请问此处导入STAGING_DIR路径是在哪个文件中修改路径,我在makefile文件中没有找到类似路径啊

这是指定存放交叉编译需要使用的库文件头文件的文件夹,需要修改为自己实际的交叉编译工具链的路径


您好 我make过后这样报错,是哪里的路径设置错了吗?

没遇到过,请自行排查路径是否设置正确或者包是否增加完成。看着可能是少了ISP相关的包。