外觀
有幸拿到X3Pi的內(nèi)測版本, 在樹莓派瘋狂漲價的這個大背景下, 一個有樹莓派基本全部功能
+AI加速器BPU的X3Pi售價僅為樹莓派的一半, 可以說是性價比非常高了.
先說外觀: 尺寸上和樹莓派保持一致, 外設(shè)接口詳見如下表格.
值得注意的是, 雖然基本尺寸和樹莓派一致, 但是一些接口位置和大小有所不同, 導(dǎo)致我手
上的兩個樹莓派的盒子都不能成功套在X3Pi上, 不過官方開發(fā)者論壇里已經(jīng)有人放出了X3Pi
盒子的3D打印模型了, 有條件的可以自行打印.
性能
功耗上, usb-c口5V2A供電, 實測CPU空載時功率不到5W, 相比樹莓派4B 5V3A的供電, 功
耗上的優(yōu)勢還是非常明顯的. 較低的功耗不論時對于智能家居系統(tǒng)這種需要7x24在線的常
見, 還是移動小車無人機(jī)等電池供電功耗敏感的應(yīng)用都是非常重要的.
CPU和內(nèi)存方面基本能夠應(yīng)付日常使用, 我手上拿到的是2GB內(nèi)存的版本, 有時候本地編譯可
能會遇到內(nèi)存不夠的情況, 可能需要交叉編譯, 有條件建議選擇4GB的版本.
BPU推理引擎方面測試了官方提供的FCOS檢測模型, 實測512x512輸入.
部署實測
作為一個Home Assistant玩家, X3 Pi這個配置和加個其實完全切中了一個HA盒子的需求.這
里先簡單介紹一下Home Assistant(HA), 這是一個開源的智能家居管理平臺, 通過HA可以本
地接入包括米家, 涂鴉在內(nèi)的各品牌智能家居配件, 打破廠家設(shè)定的生態(tài)壁壘. 它可以運(yùn)行
在各種載體上: 樹莓派, 群暉, 服務(wù)器等等. 首先, 作為一項服務(wù)(service), 它必須7x24
不間斷運(yùn)行, 因此硬件載體的功耗就是一個很重要的考慮因素, X3Pi 不足5W的待機(jī)功耗在
這一點(diǎn)上十分吸引人.
另外, HA社群種大家有一個很大的難題就是監(jiān)控視頻的AI檢測: 在家里或者門口裝監(jiān)控攝像
頭, 大家都很注重隱私, 一般會選擇基于標(biāo)準(zhǔn)視頻傳輸協(xié)議的攝像頭, 避免了比如米家等大
廠的攝像頭把數(shù)據(jù)上傳. 而本地監(jiān)控攝像頭缺乏一個檢測監(jiān)控功能, 目前要么是通過聯(lián)網(wǎng)
API接口, 要么是通過一些偏向傳統(tǒng)的CV檢測算法或者是用CPU硬跑AI推理, 不論是實時性還
是精度都不盡如人意. X3 Pi的出現(xiàn)完美解決了這個需求, 通過接受攝像頭的RTSP視頻流,內(nèi)
置的BPU直接處理實時低延遲的處理這些信息, 把有用的檢測信息推送的HA系統(tǒng)中.
下面我按照這個思路實現(xiàn)了一個簡單的例子, 拋磚引玉:
安裝教程
1. 安裝Simple RTSP Server
只要直接去github下載打包文件到X3Pi上解壓就可以運(yùn)行, 注意選擇armv 版本
2. 從官網(wǎng)下載OpenCV, 編譯時開啟GStreamer, 這一步有幾個坑:
a. 2GB內(nèi)存上源碼OpenCV比較慢有點(diǎn)難度, 可以選擇交叉編譯, 懶得搞交叉編譯的我這里提供一個方法:
編譯的時候關(guān)閉其他不必要測試和文檔:
```
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調(diào)用的時候, 如果之前有通過pip包安裝的opencv, python會默認(rèn)使用pip包的, 這時候需要先寫在pip安裝的:
```pip uninstall opencv-python```
c. 最后測試一下python 的opencv是不是能夠使用gstreamer了:
```python -c "import cv2;print(cv2.getBuildInformation())"```
如圖所示, GStreamer這里如果顯示NO就說明沒有安裝成功, 必須是YES才行
3. 下面以MIPI相機(jī)為例, 給出一個打開相機(jī)->FCOS檢測->推流的代碼例子
a. 首先新建一個terminal, 運(yùn)行rtsp-simple-server, 注意需要保持這個service處于運(yùn)行狀態(tài).
b. 接好F37相機(jī), 同時結(jié)合官方給出的MIPI相機(jī)+FCOS例子, 把渲染后的檢測結(jié)果推流到rtsp相機(jī)種.
具體代碼如下見附件, 這里提一句, gstreamer的RTSP推流是需要穩(wěn)定的幀率的,
所以代碼里設(shè)定了一個比較低的幀率, 然后在while循環(huán)中動態(tài)判斷sleep時間以達(dá)到穩(wěn)定幀率的效果
c. 如果一切順利的話, 可以在利用VLC或者PotPlayer打開查看, 或者直接在瀏覽器打開
其中http是可以直接在瀏覽器打開的: http://192.168.0.115:8888/mystream/
RTSP協(xié)議可以在VLC或者PotPlayer中打開rtsp://192.168.0.115:8554/mystream/
使用示例
1. 可以通過Home Assistant官方的Stream插件直接接入RTSP流, 可以在網(wǎng)頁端實時查看
2. 既然已經(jīng)接入了Home Assistant, 如果是蘋果用戶的話, 把攝像頭接入Homekit就不在話下了, 這樣可以
3. 可以在Python腳本里加入MQTT, 把檢測到的人臉/人體信息發(fā)送到MQTT服務(wù)器, 成為Home Assistant的人體傳感器
本文轉(zhuǎn)自地平線開發(fā)者社區(qū)原作者:manymuch
原鏈接:https://developer.horizon.ai/forumDetail/98129467158916262
-
嵌入式
+關(guān)注
關(guān)注
5090文章
19176瀏覽量
306895 -
AI
+關(guān)注
關(guān)注
87文章
31490瀏覽量
269899 -
人工智能
+關(guān)注
關(guān)注
1794文章
47642瀏覽量
239650
發(fā)布評論請先 登錄
相關(guān)推薦
評論