作者:謝涵如
Arduino的出現,讓許多不具備電子機電相關專業背景的人也能一嚐動手設計出各種不同的互動裝置的樂趣,而隨著TinyML技術的發展,這個實踐創意的平台,如今也能部署AI進行機器學習,讓創意想法更有智慧。
打開hackster.io網站也能發現許多利用Arduino開發板結合TinyML技術的有趣專案,以下將挑選其中三項專案來進行介紹。
TinyML寵物止吠器
許多人家中都有飼養毛小孩,但有些個性較為依戀主人的貓狗,容易在主人外出工作上學時,因沒有安全感而狂吠不止,造成鄰居的困擾。
本專案的作者為了解決自家寵物狗的分離焦慮症,利用Arduino開發板設計出一款AI寵物止吠器,能在主人不在家時偵測寵物狗的吠叫聲,並播放事先錄製好的主人聲音回應牠們,達到安撫的作用。
在硬體方面,作者採用Arduino Nano 33 BLE Sense開發板,連結Music Maker Feather到藍牙喇叭,用以播放主人的聲音,不過由於Arduino Nano 33 BLE Sense的中斷處理速度不夠快,成品不夠穩定,因此作者又另外搭配Arduino Nano來控制錄音的播放。
模型訓練方面,作者搜集了Google Audioset、Google Speech Command dataset中的狗吠聲音源資料,加上自己家中錄製的狗吠聲及房子周圍的背景噪音,並利用Shawn Hymel的語音關鍵字辨識資料集將這些資料處理成一秒鐘長度的片段。
之後,將音源片段分類成「狗吠」及「其他」兩個類別,上傳到Edge Impulse,即可利用其中的Eon Tuner尋找並訓練出最好的模型。
其中比較需要注意的是Google Audioset中的資料較為雜亂,許多雖然標題為狗吠聲的音頻片段,實際上並沒有狗吠聲,需要花一些時間一一判斷並進行分類。
BABL嬰兒監視器
照顧剛出生的小嬰兒是一件相當累人的工作,需要維持高度注意力,時時留心嬰兒的哭聲,經常讓疲憊的新手父母們睡不安穩。本專案以此為出發點,希望能利用AI為父母們提供協助。
這個利用Arduino Nano 33 BLE Sense所開發的嬰兒監視器,能將嬰兒房間中的聲音藉由發送器,無線傳輸至父母們能監控的接收器,讓即使身處不同房間的父母也能即時接收到寶寶的訊息。
不過該如何區別寶寶發出的聲音究竟是「哭聲」或是其他——如寶寶將要入睡前的喃喃自語,並且僅在他們確實有需要時才向父母發出通知呢?其實只要善用TinyML 和 Edge Impulse,就能利用機器學習快速達到此一目標。
嬰兒監視器並不算是新穎的產品,但是過去的監視器並無法區分嬰兒發出的聲響究竟是飢餓的大哭,或只是在牙牙學語,但是加上TinyML技術後便可更精準判斷情況並做出不同的因應方式。
而在此專案的後續計畫中,還將進一步利用TinyML重新訓練模型好進一步消除誤報,並創建手機App,藉由BLE連接監測裝置,讓父母能更方便的隨時掌控嬰兒狀態。
TinyML魔杖
隨著哈利波特系列電影重新回到大螢幕,許多人心中的魔法夢也重新被喚醒,雖然我們無法成為霍格華茲的學生,但是透過Arduino,你也可以訓練出屬於自己的魔杖。
本專案以Arduino Nano 33 BLE Sense開發板,搭配TensorFlow Lite神經網路及Arduino IDE函式庫中的Hand tools and fabrication machines,藉由感應使用者的手部動作打造出「AI數位魔杖」,揮動出特定手勢,即可點亮LED燈,並且透過串口輸出,將想傳達的訊息投影到終端裝置上,施展屬於你的「魔法」。
本專案的手勢檢測模型是一個卷積神經網絡,該模型接受了許多人執行以下手勢的訓練,能夠偵測並根據這些動作做出回應。
當然,除了較為簡單的手勢,也可以根據自己的創意設計出其他動作,不過越複雜的動作偵測錯誤率勢必會比較高。
小結
Arduino及TinyML讓人工智慧更容易進入日常生活,為人們提供幫助。看完了以上三個充滿創意的專案,你腦海中是否也有些創意點子被激發了呢?事不宜遲,趕快動手實踐吧。
- 【活動報導】Edge AI聰明部署關鍵論壇 輕鬆跨越應用瓶頸 - 2022/12/17
- 2022世足賽來臨,足球科技精準協助判定! - 2022/11/30
- 當3D掃描遇上古蹟,成為珍貴文物保存利器! - 2022/11/07