​香橙派AIpro测评:usb鱼眼摄像头的Camera图像获取

news/2024/7/7 20:30:12 标签: OpenCV

 一、前言

近期收到了一块受到业界人士关注的开发板"香橙派AIpro",因为这块板子具有极高的性价比,同时还可以兼容ubuntu、安卓等多种操作系统,今天博主便要在一块8+32g的香橙派AI香橙派AIpro进行YoloV5s算法的部署并使用一个外接的鱼眼USB摄像头来作目标检测与识别。经过博主的整体测试,这块开发板可以用来作为边缘计算平台,承担大众化场景的目标检测任务。随着人工智能技术的不断发展,目标检测作为计算机视觉领域的一个重要任务,已经得到了广泛的研究和应用。

二、香橙派AIpro介绍

2.1香橙派简介

作为业界首款基于昇腾深度研发的AI开发板,Orange Pi AIpro无论在外观上、性能上还是技术服务支持上都非常优秀。采用昇腾AI技术路线,集成图形处理器,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出,8/20 TOPS AI算力。配套了MindStudio全流程开发工具链,并提供一键镜像烧录工具和模型适配工具实现极简开发,让开发者快速上手使用,支持算法模型的快速适配。

可广泛适用于AI教学实训、AI算法验证、智能小车、机械臂、边缘计算、无人机、人工智能、云计算、AR/VR、智能安防、智能家居、智能交通等领域。Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求。

2.2香橙派硬件及接口介绍

香橙派AIpro丰富的接口赋予了Orange Pi AIpro强大的可拓展性。包括两个HDMI输出、GPIO接口、Type-C电源接口、支持SATA/NVMe SSD 2280的M.2插槽、TF插槽、千兆网口、两个USB3.0、一个USB Type-C 3.0、一个Micro USB、两个MIPI摄像头、一个MIPI屏等,预留电池接口。

在操作系统方面,Orange Pi AIpro支持Ubuntu、openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求,可广泛适用于AI边缘计算、深度视觉学习及视频流AI分析、视频图像分析、自然语言处理、智能小车、机械臂、人工智能、无人机、云计算、AR/VR、智能安防、智能家居等领域,覆盖 AIoT各个行业。

三、实际场景应用体验

3.1鱼眼镜头介绍

鱼眼镜头是一种焦距为16mm或更短的并且视角接近或等于180°的镜头。 它是一种极端的广角镜头,“鱼眼镜头”是它的俗称。为使镜头达到最大的摄影视角,这种摄影镜头的前镜片直径很短且呈抛物状向镜头前部凸出,与鱼的眼睛颇为相似,“鱼眼镜头”因此而得名。

鱼眼镜头属于超广角镜头中的一种特殊镜头,它的视角力求达到或超出人眼所能看到的范围。因此,鱼眼镜头与人们眼中的真实世界的景象存在很大的差别,因为我们在实际生活中看见的景物是有规则的固定形态,而通过鱼眼镜头产生的画面效果则超出了这一范畴。

鱼眼镜头具有超大视场,因而被广泛应用于场景监视、卫星定位、机器人导航、微小智能系统及工程测量等领域。由于鱼眼镜头能够实现全空域包容和全时域实时信息的获取,特别是符合现代战争对信息获取技术的需求,这是其他光电侦测手段所不能比的,因此鱼眼镜头在国防和军事领域也得到了重要应用。

3.2鱼眼镜头图像获取

3.2.1流程介绍

通过USB接口连接鱼眼镜头与香橙派AIpro,从鱼眼镜头获取图像、并处理为YUV图像。

3.2.2相关驱动安装

首先通过下面的链接下载相关源码:

Ascend/EdgeAndRobotics - Gitee.com

下载完成后进行解压,并进入到样例目录

3.2.3安装FFmpeg

sudo apt-get install ffmpeg libavcodec-dev libswscale-dev libavdevice-dev

运行结果:

3.2.4安装OpenCV

sudo apt-get install libopencv-dev

运行结果:

3.2.5编译样例源码

# 执行编译命令

g++ main.cpp -o main -lavutil -lavformat -lavcodec -lavdevice

编译命令执行成功后,在USBCamera样例目录下生成可执行文件main。

运行结果:

3.2.6运行样例,从Camera获取图像

运行可执行文件,其中/dev/video0表示Camera设备,需根据实际情况填写:

./main /dev/video0

运行成功后,在USBCamera样例目录下生成yuyv422格式、1280*720分辨率的out.yuv文件。

运行结果:

注意:当把一个摄像头插入开发板后,执行ls /dev/vi*命令可看到摄像头的vedio节点。这里出现了两个设备节点:/dev/video0、/dev/video1,是因为一个是图像/视频采集,一个是metadata采集,因此本样例中在运行可执行文件时,选择图像/视频采集的设备节点/dev/video0。

3.2.7检查从Camera获取的图像

执行如下命令,使用FFmpeg软件查看图像:

ffplay -pix_fmt yuyv422 -video_size 1280*720 out.yuv

 运行结果:

四、结语

经过博主的整体测试,这块开发板可以用来作为边缘计算平台,承担大众化场景的目标检测任务。相信这款高性价比的开发板会为人们快速验证部署自己的人工智能算法提供低廉、高效的方案。后续会尝试部署YOLO(You Only Look Once)系列算法来进一步测试板子性能。


http://www.niftyadmin.cn/n/5535057.html

相关文章

Frrouting快速入门——OSPF组网(一)

FRR简介 FRR是FRRouting的简称,是一个开源的路由交换软件套件。其作者源自老牌项目quaga的成员,也可以算是quaga的新版本。 使用时一般查看此文档:https://docs.frrouting.org/projects/dev-guide/en/latest/index.html FRR支持的协议众多…

HarmonyOS APP应用开发项目- MCA助手(Day02持续更新中~)

简言: gitee地址:https://gitee.com/whltaoin_admin/money-controller-app.git端云一体化开发在线文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/agc-harmonyos-clouddev-view-0000001700053733-V5注:…

系统安全体系架构规划框架

安全技术体系架构是对组织机构信息技术系统的安全体系结构的整体描述。安全技术体系架构框架是拥有信息技术系统的组织机构根据其策略的要求和风险评估的结果,参考相关技术体系构架的标准和最佳实践,结合组织机构信息技术系统的具体现状和需求&#xff0…

java通过jts获取点在线段中的位置

在Java中,可以使用JTS(Java Topology Suite)库来获取点在线段的垂足点位置。以下是一个简单的示例代码,展示了如何使用JTS获取点到线段的垂足点位置: 首先,确保你的项目中包含了JTS库。 import org.locati…

Python学习之小游戏--坦克大作战

今天跟视频学习了Python实现坦克大作战小游戏,挺有意思的,一起来玩吧~ 按空格发射子弹,上下左右键实现移动,ESC键无限复活。 import pygame,time,random from pygame.sprite import Sprite SCREEN_WIDTH800 SCREEN_HEIGHT500 BG…

C++(第四天----拷贝函数、类的组合、类的继承)

一、拷贝构造函数(复制构造函数) 1、概念 拷贝构造函数,它只有一个参数,参数类型是本类的引用。如果类的设计者不写拷贝构造函数,编译器就会自动生成拷贝构造函数。大多数情况下,其作用是实现从源对象到目…

JavaScript懒加载图像

懒加载图像是一种优化网页性能的技术,它将页面中的图像延迟加载,即在用户需要查看它们之前不会立即加载。这种技术通常用于处理大量或大尺寸图像的网页,特别是那些包含长页面或大量媒体内容的网站。 好处 **1. 加快页面加载速度&#xff1a…

FFmpeg 命令行 音视频格式转换

📚:FFmpeg 提供了丰富的命令行选项和功能,可以用来处理音视频文件、流媒体等,掌握命令行的使用,可以有效提高工作效率。 目录 一、视频转换和格式转换 🔵 将视频文件转换为另一种格式 🔵 指定…