RV1126(瑞芯微)利用usb摄像头截图——Opencv上板测试

本文主要讲述了利用rv1126连接usb摄像头来完成图像抓取测试的全过程,汇总了期间出现的一系列的问题。

准备工作:

opencv的交叉编译,参考:RV1126(瑞芯微)交叉编译Opencv步骤与相关问题汇总_瑞芯微 交叉编译工具-优快云博客

一、上板运行方法

将代码传至开发板的方法有多种:
①adb
②挂载(nfs)
③远程登陆
不管使用哪种,只要能把此文件夹传至开发板端即可。但要注意的是要为可执行文件赋予权限

chmod 777 test   //给予可执行权限
./test   //运行代码

二、上板测试过程

1、首先利用filezilla软件将linux中所需opencv的arm版本文件以及test相关文件传输至板子中。注意:filezilla与mobaxterm和共享文件相比,文件传输更快且可以传输文件种类更多。后面的上板测试操作无需test文件,只需要将opencv的arm版本上传至板子的lib下即可:

2、在板子命令行中,输入以下指令:

//抓取图像到/tmp/bypass0.raw ./中
v4l2-ctl -d  /dev/video45 \ 
--set-fmt-video=width=3840,height=2160,\
pixelformat=NV12 \
--stream-mmap=3 \
--stream-skip=30 \
--stream-to=/tmp/bypass0.raw \
--stream-count=1 \
--stream-poll

3、此时,出现错误:[root@RV1126_RV1109:~/opencv_arm]# ./test [ WARN:0] global /home/alang/opencv/modules/videoio/src/cap_v4l.cpp (890) open VIDEOIO(V4L2:/dev/video25): can't open camera by index Error: Failed to open camera [root@RV1126_RV1109:~/opencv_arm]# chmod 777 /dev/video25,需要对其进行修改,参考:EB-RV1126-DC201开发板实现USB摄像头抓图 - 阿风小子 - 博客园 (cnblogs.com)

打开linux中rv1126的内核文件,修改目录下的 ./kernel/arch/arm/configs/rv1126_defconfig文件,在其中填写如下代码:

CONFIG_MEDIA_USB_SUPPORT=y

CONFIG_USB_VIDEO_CLASS=y

CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y

CONFIG_USB_GSPCA=m

4、回到sdk根目录下进行编译,即kernel的上一级,内核编译参考:

【RP-RV1126】SDK编译常用记录-优快云博客

【RK1126】SDK编译_rv1126的sdk编译-优快云博客

输入以下指令:

./build.sh kernel           //生成boot.img
./build.sh updateimg       //生成生成烧录文件updateimg
                               //烧录文件都在根目录sdk的rockdev中

5、将新的updateimg传入win中,并利用软件进行固件烧录。(之前的文件需重新传入)

6、之后在mobaxterm中进入rv1126的系统,输入以下指令,查看设备目录。

v4l2-ctl --list-devices

7、输入抓取图像命令行后发现仍有故障:
参考:

修改相关指令:

ls /dev/video*   //查看rv1126的设备

v4l2-ctl -list-devices     //确定usb的vedio,本机是45
chmod 777 /dev/vedio45
dmesg                       //查看usb摄像头能否正常连接
//抓取图像到/tmp/bypass0.raw ./中
v4l2-ctl -d  /dev/video45 \ 
--set-fmt-video=width=3840,height=2160,\
pixelformat=NV12 \
--stream-mmap=3 \
--stream-skip=30 \
--stream-to=/tmp/bypass0.raw \
--stream-count=1 \
--stream-poll

三、存在问题

在opencv交叉编译的过程中未勾选GTK的选项,导致无法通过opencv直接生成窗口类。需要采取新的手段,比如说QT程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值