外观
有幸拿到x3pi的内测版本, 在树莓派疯狂涨价的这个大背景下, 一个有树莓派基本全部功能
+ai加速器bpu的x3pi售价仅为树莓派的一半, 可以说是性价比非常高了.
先说外观: 尺寸上和树莓派保持一致, 外设接口详见如下表格.
值得注意的是, 虽然基本尺寸和树莓派一致, 但是一些接口位置和大小有所不同, 导致我手
上的两个树莓派的盒子都不能成功套在x3pi上, 不过官方开发者论坛里已经有人放出了x3pi
盒子的3d打印模型了, 有条件的可以自行打印.
性能
功耗上, usb-c口5v2a供电, 实测cpu空载时功率不到5w, 相比树莓派4b 5v3a的供电, 功
耗上的优势还是非常明显的. 较低的功耗不论时对于智能家居系统这种需要7x24在线的常
见, 还是移动小车无人机等电池供电功耗敏感的应用都是非常重要的.
cpu和内存方面基本能够应付日常使用, 我手上拿到的是2gb内存的版本, 有时候本地编译可
能会遇到内存不够的情况, 可能需要交叉编译, 有条件建议选择4gb的版本.
bpu推理引擎方面测试了官方提供的fcos检测模型, 实测512x512输入.
部署实测
作为一个home assistant玩家, x3 pi这个配置和加个其实完全切中了一个ha盒子的需求.这
里先简单介绍一下home assistant(ha), 这是一个开源的智能家居管理平台, 通过ha可以本
地接入包括米家, 涂鸦在内的各品牌智能家居配件, 打破厂家设定的生态壁垒. 它可以运行
在各种载体上: 树莓派, 群晖, 服务器等等. 首先, 作为一项服务(service), 它必须7x24
不间断运行, 因此硬件载体的功耗就是一个很重要的考虑因素, x3pi 不足5w的待机功耗在
这一点上十分吸引人.
另外, ha社群种大家有一个很大的难题就是监控视频的ai检测: 在家里或者门口装监控摄像
头, 大家都很注重隐私, 一般会选择基于标准视频传输协议的摄像头, 避免了比如米家等大
厂的摄像头把数据上传. 而本地监控摄像头缺乏一个检测监控功能, 目前要么是通过联网
api接口, 要么是通过一些偏向传统的cv检测算法或者是用cpu硬跑ai推理, 不论是实时性还
是精度都不尽如人意. x3 pi的出现完美解决了这个需求, 通过接受摄像头的rtsp视频流,内
置的bpu直接处理实时低延迟的处理这些信息, 把有用的检测信息推送的ha系统中.
下面我按照这个思路实现了一个简单的例子, 抛砖引玉:
安装教程
1. 安装simple rtsp server
只要直接去github下载打包文件到x3pi上解压就可以运行, 注意选择armv 版本
2. 从官网下载opencv, 编译时开启gstreamer, 这一步有几个坑:
a. 2gb内存上源码opencv比较慢有点难度, 可以选择交叉编译, 懒得搞交叉编译的我这里提供一个方法:
编译的时候关闭其他不必要测试和文档:
```
cmake -d build_examples=off -d build_opencv_apps=off -d build_docs=off -d build_perf_tests=off -d build_tests=off -d cmake_install_prefix=/usr/local/ -d with_gstreamer=on ....
```
b. python调用的时候, 如果之前有通过pip包安装的opencv, python会默认使用pip包的, 这时候需要先写在pip安装的:
```pip uninstall opencv-python```
c. 最后测试一下python 的opencv是不是能够使用gstreamer了:
```python -c import cv2;print(cv2.getbuildinformation())```
如图所示, gstreamer这里如果显示no就说明没有安装成功, 必须是yes才行
3. 下面以mipi相机为例, 给出一个打开相机->fcos检测->推流的代码例子
a. 首先新建一个terminal, 运行rtsp-simple-server, 注意需要保持这个service处于运行状态.
b. 接好f37相机, 同时结合官方给出的mipi相机+fcos例子, 把渲染后的检测结果推流到rtsp相机种.
具体代码如下见附件, 这里提一句, gstreamer的rtsp推流是需要稳定的帧率的,
所以代码里设定了一个比较低的帧率, 然后在while循环中动态判断sleep时间以达到稳定帧率的效果
c. 如果一切顺利的话, 可以在利用vlc或者potplayer打开查看, 或者直接在浏览器打开
其中http是可以直接在浏览器打开的: http://192.168.0.115:8888/mystream/
rtsp协议可以在vlc或者potplayer中打开rtsp://192.168.0.115:8554/mystream/
使用示例
1. 可以通过home assistant官方的stream插件直接接入rtsp流, 可以在网页端实时查看
2. 既然已经接入了home assistant, 如果是苹果用户的话, 把摄像头接入homekit就不在话下了, 这样可以
3. 可以在python脚本里加入mqtt, 把检测到的人脸/人体信息发送到mqtt服务器, 成为home assistant的人体传感器
本文转自地平线开发者社区
原作者:manymuch
原链接:https://developer.horizon.ai/forumdetail/98129467158916262
2022软件安全年终大考成绩公布:95%软件都有漏洞,你是那5%吗?
反激式开关电源设计步骤详解
教你最基础的PCB线路排版知识
RFID电子标签技术让奶粉产品实现溯源系统
RISC-V 高算力MCU新品抢先亮相Elexcon电子展 爱普特助力打造RISC-V MCU生态
X3Pi 内测上手体验+智能监控部署实例
小米6什么时候上市:小米6单摄和双摄两个版本,4月见
华为P10plus、OPPOR11和小米mix2谁更值得买?区别对比评测
通过电量计IC延长电池电力运行时间
小米失宠!三星S9曝光:全球首发骁龙845芯片,明年大规模上市
Core-3566JD4四核64位AI核心板
酷家乐入选智博会“2018人工智能创新应用50强”
首届人工智能安全峰会在英国召开
民用无人驾驶航空试验基地落地安阳市,安阳市试验区具有哪些优势
三星电子将于1月推出OLED显示器
安全认证器和协处理器可实现快速实施安全系统
杰顿科技:技术、产品、服务是立足市场的根本
疯狂的碳化硅半导体究竟有什么魔力?
尽管NAND市场持续低迷,长江存储逆势涨价凸显主场优势!| 百能云芯
优化Windows防火墙安全性的步骤