整期笔记索引
香橙派OrangePi AIpro上手笔记------之USB摄像头目标检测方案测试(一)
香橙派OrangePi AIpro上手笔记------之USB摄像头目标检测方案测试(二)
香橙派OrangePi AIpro上手笔记------之USB摄像头目标检测方案测试(三)
本章前言
在上一章节:测试笔记(一)中,我们已经掌握并搭建了板卡的初步调试环境。
接下来,我们将逐步上手官方的Demo,进行跑测。
官方Demo跑测------01 Camera图像获取(USB接口)
【官方论坛 链接】https://www.hiascend.com/forum/thread-0285140173361311056-1-1.html
【Camera图像获取(USB接口)样例 链接】
Ascend/EdgeAndRobotics - Gitee.com
官方Sample样例共有6+9种,其中6款为外设接口样例,9款为数据预处理&推理应用样例。
此次教程,我们尝试跑测一下Camera图像获取(USB接口)样例 。
1、样例下载
可以使用以下两种方式下载,请选择其中一种进行源码准备。
- 命令行方式下载(下载时间较长,但步骤简单)。
- 压缩包方式下载(下载时间较短,但步骤稍微复杂)。
运行记录:(此处我使用的是命令行方式)
bash
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI$ git clone https://gitee.com/ascend/EdgeAndRobotics.git
PS:所有运行均以HwHiAiUser用户登录开发板,切换到当前样例目录。
2、切换到样例目录
bash
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI$ cd EdgeAndRobotics/Peripherals/Camera/USBCamera
3、执行准备
- 安装FFmpeg。
bash
sudo apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev
- 安装OpenCV。
bash
sudo apt-get install libopencv-dev
运行记录:
bash
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI/EdgeAndRobotics/Peripherals/Camera/USBCamera$ sudo apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev
......
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI/EdgeAndRobotics/Peripherals/Camera/USBCamera$ sudo apt-get install libopencv-dev
PS:我手上的这块香橙派,到手时即已经完成了这一步的工作。 由下列运行截图看到,每次安装执行后,都显示没有新的安装包被安装。
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
4、编译****样例
# 执行编译命令
bash
g++ main.cpp -o main -lavutil -lavformat -lavcodec -lavdevice
编译命令执行成功后,在USBCamera样例目录下生成可执行文件main。
运行记录:
bash
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI/EdgeAndRobotics/Peripherals/Camera/USBCamera$ g++ main.cpp -o main -lavutil -lavformat -lavcodec -lavdevice
5、运行样例
把摄像头插入开发板,运行可执行文件,其中/dev/video0表示Camera设备,需根据实际情况填写:
bash
./main /dev/video0
运行成功后,在USBCamera样例目录下生成yuyv422格式、1280*720分辨率的out.yuv文件。
PS: 当把摄像头插入开发板后,执行 ++ls /dev/vi*++ 命令可看到摄像头的vedio节点。
这里会出现了两个设备节点:/dev/video0、/dev/video1
解释:这是因为一个是图像/视频采集,一个是metadata采集,因此本样例中在运行可执行文件时,选择图像/视频采集的设备节点/dev/video0。
运行记录:
bash
(base) HwHiAiUser@orangepiaipro:~/MyTest_AI/EdgeAndRobotics/Peripherals/Camera/USBCamera$ ./main /dev/video0
[video4linux2,v4l2 @ 0xaaaacc3a9bb0] The driver changed the time per frame from 1/30 to 1/10
6、查看****从Camera获取的图像。
执行如下命令,使用FFmpeg软件查看图像:
bash
ffplay -pix_fmt yuyv422 -video_size 1280*720 out.yuv
PS:
查看时,必须是通过屏幕直接查看,无法通过远程终端命令行查看。
否则就会显示如下报错内容:
最终示例运行显示:
PS:
此处因为我的摆放问题,以及USB摄像头分辨率并不是很高。
所以调测显示的效果有些粗糙。
结语
至此,我们的Demo 1 就完成了,目前香橙派调用USB摄像头的环境,已经调通。下一节,我们将针对目标检测**YoloV5s,**进行进一步跑测。