1.簡(jiǎn)介
NanoEdge AI 庫(kù)是 Cartesiam 推出的人工智能靜態(tài)庫(kù),它可以幫助客戶直接生成可以運(yùn)行在嵌入式 Arm Cortex 處理器上的.a 靜態(tài)庫(kù)文件。
2021 年 ST 收購(gòu) Cartesiam,完善了 ST 在 AI 領(lǐng)域的生態(tài),大大降低了客戶使用 STM32 開(kāi)發(fā) AI 應(yīng)用的難度。通過(guò)使用 NanoEdge AI Studio,用戶只需要了解基本的 AI 概念,并提供相應(yīng)的數(shù)據(jù),便可以從眾多 AI 算法庫(kù)中智能搜索和生成出最符合用戶應(yīng)用的算法。
NanoEdge AI Studio 具備以下特點(diǎn):
? AI 庫(kù)的搜索引擎。? 為嵌入式開(kāi)發(fā)者量身定做。
? 通過(guò)抽象化數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí),降低用戶開(kāi)發(fā)難度。
? 快速部署機(jī)器學(xué)習(xí),兼容任何 C 代碼。
? 對(duì)比傳統(tǒng)機(jī)器學(xué)習(xí)方法,使用最少量數(shù)據(jù)。
感興趣的話歡迎從以下網(wǎng)址下載該工具進(jìn)行評(píng)估
本文將介紹 NanoEdge AI Studio 的使用方法,并完成人體姿態(tài)識(shí)別的簡(jiǎn)單應(yīng)用。
2.數(shù)據(jù)采集
在使用 NanoEdge AI Studio 之前,我們需要準(zhǔn)備數(shù)據(jù),數(shù)據(jù)來(lái)源可以是公開(kāi)的數(shù)據(jù)集,也可以是自己采集的數(shù)據(jù),還可以利用 NanoEdge AI Studio 采集數(shù)據(jù)。
本文將使用 sensorTile.box 完成數(shù)據(jù)的采集。
2.1硬件介紹
在 ST 官網(wǎng)搜索 STEVAL-MKSBOX1V1 可以查看關(guān)于開(kāi)發(fā)板的基本內(nèi)容,板載了豐富的運(yùn)動(dòng)傳感器和溫濕度傳感器,并且具備 SD 卡,可以保存采集到的數(shù)據(jù)。板載的 USB 可以用于供電和下載程序,也可以通過(guò) ST-LINK 和開(kāi)發(fā)板連接進(jìn)行調(diào)試和下載。USB 下載程序方法:我們這里使用 STM32 CubeProgrammer 下載程序。首先確保沒(méi)有用電池供電,然后按住板上的 boot 按鈕,連接 USB 到電腦,點(diǎn)擊 CubeProgrammer 中如下圖圖 2所示的 connect。
連接成功后,選擇好固件,然后填寫(xiě)下載地址,點(diǎn)擊 Start Programming 即可完成下載。如圖 3:
2.2 軟件介紹
關(guān)于數(shù)據(jù)采集和后續(xù)的功能測(cè)試,推薦使用 FP-AI-SENSING1 這個(gè)軟件包,可以在 ST官網(wǎng)搜索到。該軟件包提供了基本的 BSP,包括按鈕,LED,傳感器驅(qū)動(dòng),SD 卡驅(qū)動(dòng),BLE驅(qū)動(dòng)等。
除此之外,它還提供了一些功能可以幫助我們收集數(shù)據(jù),包括可以通過(guò) BLE 連接 ST Ble Sensor App,通過(guò)該 APP 配置板載傳感器采樣率,完成數(shù)據(jù)的采集,并將數(shù)據(jù)按一定格式保存到 SD 卡當(dāng)中,本文將利用該方法采集加速度數(shù)據(jù)。
該軟件包也實(shí)現(xiàn)了人體姿態(tài)識(shí)別和聲音場(chǎng)景識(shí)別的 AI demo,可以在 ST BLE SensorAPP 上展示,其中的 demo 使用了 Cube.AI 工具做模型轉(zhuǎn)換,和本文討論的 NanoEdge AI 的方法不同,不在本文討論范圍中。
2.3 數(shù)據(jù)采集步驟
1編譯和燒錄程序
下載完 FP-AI-SENSING1 軟件包后,需要先編譯 bootloader,工程路徑位于:
FP-AI-SENSING1_V4.0.3ProjectsSTM32L4R9ZI-SensorTile.boxExamplesBootLoader
編譯完成后,下載到 sensorTile.box 當(dāng)中即可。
然后編譯應(yīng)用程序,工程路徑位于:
FP-AI-SENSING1_V4.0.3ProjectsSTM32L4R9ZI-SensorTile.boxApplicationsSENSING1
編譯完成后,下載到 sensorTile.box 當(dāng)中,當(dāng)上電啟動(dòng)后,綠燈常亮,表明開(kāi)發(fā)板初始化正常完成。藍(lán)色 LED 燈閃爍,表明 BLE 正處于廣播狀態(tài)。
注意:
? bootloader 的下載地址為 0x08000000
? App 的下載地址為 0x08004000
? 當(dāng)使用電池供電,長(zhǎng)按 PWR 按鈕,可以開(kāi)機(jī)或關(guān)機(jī)。在后續(xù)采集運(yùn)動(dòng)姿態(tài)數(shù)據(jù)時(shí),我們需要使用電池供電。
? 如有需要,可通過(guò) USB 給電池充電,充電過(guò)程中,紅色 LED 會(huì)閃爍。
2ST BLE Sensor APP
該 APP 由 ST 提供,可以展示運(yùn)動(dòng)傳感器和溫濕度傳感器,您可從 ST 官網(wǎng)下載(搜索STBLESensor),或者 iPhone 通過(guò)蘋果商店可以下載,Android 通過(guò) Google Play 或其他第三方下載商店下載。
給 sensorTile.box 上電后,開(kāi)發(fā)板會(huì)自動(dòng)進(jìn)入廣播狀態(tài),并且藍(lán)色 LED 閃爍,從 ST BLE Sensor APP 點(diǎn)擊“開(kāi)始掃描”,搜索到開(kāi)發(fā)板(sensorTile.box 一般默認(rèn)命名為 BAI_400)之后,點(diǎn)擊連接就可以連接到開(kāi)發(fā)板。連接完成后的展示界面如下:
可以通過(guò)該 APP 查看運(yùn)動(dòng)傳感器的數(shù)據(jù)曲線:
通過(guò)該 APP 進(jìn)行數(shù)據(jù)采集的方法:點(diǎn)擊左上角菜單,并選擇 Data Log,如下:
在數(shù)據(jù)采集界面可以選擇板載的各種不同的傳感器,并設(shè)置采樣率。本文需要選擇加速度傳感器,并配置采樣率為 52Hz:
可以通過(guò) ADD LABEL 來(lái)添加一個(gè)標(biāo)簽,然后打開(kāi)該標(biāo)簽,點(diǎn)擊 START LOGGING 進(jìn)行數(shù)據(jù)采集,采集完成后,點(diǎn)擊 STOP LOGGING 完成數(shù)據(jù)采集。
使用讀卡器,讀取 SD 卡里面的數(shù)據(jù),保存為 CSV 格式,如下:
數(shù)據(jù)起始有一些標(biāo)注,其中 Stationary 一行就是我們采集數(shù)據(jù)所打的標(biāo)簽,每一行代表一個(gè)時(shí)間點(diǎn)采集到的三軸加速度數(shù)據(jù),從時(shí)間上可以看出約 20ms 進(jìn)行一次采樣,所以采樣率約為50Hz,和之前在 APP 中的設(shè)置是一致的,采集到的數(shù)據(jù)格式和我們最終在 NanoEdge AI studio中使用的格式是有差異的,需要進(jìn)行一定的轉(zhuǎn)換,具體轉(zhuǎn)換方法在后面進(jìn)行介紹。
3數(shù)據(jù)采集
在正式采集數(shù)據(jù)之前有些問(wèn)題需要考慮清楚:
? 采樣率:如果想要比較好的恢復(fù)原始信號(hào),采樣率必須大于原信號(hào)最大頻率的 2 倍。但是,目前是無(wú)法知道原始信號(hào)的最大頻率的,比較可行的方法是先以 52Hz 的采樣率對(duì)數(shù)據(jù)采集,采集完成后對(duì)信號(hào)進(jìn)行分析,看是否滿足,如果不滿足再進(jìn)行調(diào)整。
? 采樣時(shí)間:總體的采樣時(shí)間可以通過(guò) APP 進(jìn)行靈活的開(kāi)關(guān),單條信號(hào)的采樣時(shí)間需要自己定義,需要在后續(xù)的處理中進(jìn)行調(diào)整。
? 標(biāo)簽:FP-AI-SENSING1 的軟件包人體姿態(tài)識(shí)別 demo 中,默認(rèn)包含以下標(biāo)簽:HAR_STATIONARY(站立),HAR_WALKING(行走),HAR_FASTWALKING(快走),HAR_JOGGING(慢跑), HAR_BIKING(騎單車),HAR_DRIVING(開(kāi)車),HAR_STAIRS(上下樓梯),Sensor APP 中也有對(duì)應(yīng)的 BLE 協(xié)議,可以方便的從手機(jī)上看到人體姿態(tài)活動(dòng)識(shí)別結(jié)果,我們從中選擇一部分作為測(cè)試即可,其中騎單車和開(kāi)車數(shù)據(jù)采集較麻煩,可以直接去掉,其余的通過(guò)上面介紹的方法通過(guò) ST BLE Sensor APP 進(jìn)行采集。
? 采集方法:將 SensorTile.box 使用電池供電,放置在褲子的前方口袋中,使用 ST BLE Sensor APP 連接后,按照上文中介紹的方法設(shè)置好標(biāo)簽,然后進(jìn)行相應(yīng)的動(dòng)作對(duì)數(shù)據(jù)進(jìn)行采集。
采集數(shù)據(jù)的方法之所以選擇使用 ST BLE Sensor APP 設(shè)置的方法采集,而不是直接去修改固件,是因?yàn)楫?dāng)調(diào)整這些采集參數(shù)的時(shí)候,APP 會(huì)更方便一些,不用反復(fù)編譯和燒錄代碼。
本文檔主要為大家介紹如何通過(guò)使用 NANOEDGE.AI 工具完成人體姿態(tài)識(shí)別應(yīng)用,文章主要通過(guò)對(duì)NanoEdge AI Studio的介紹、應(yīng)用這一工具的步驟,以及如何分析測(cè)試這一工具等多個(gè)房面展開(kāi),篇幅有限,完整內(nèi)容請(qǐng)點(diǎn)擊原文,下載原文檔閱讀。
審核編輯:湯梓紅
-
ARM
+關(guān)注
關(guān)注
134文章
9008瀏覽量
366057 -
嵌入式
+關(guān)注
關(guān)注
5052文章
18912瀏覽量
300789 -
STM32
+關(guān)注
關(guān)注
2263文章
10847瀏覽量
353775 -
AI
+關(guān)注
關(guān)注
87文章
29383瀏覽量
267667
原文標(biāo)題:工程師筆記|使用 NANOEDGE.AI 工具完成人體姿態(tài)識(shí)別應(yīng)用
文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論