Edge Impulse解決方案之Recognize sounds from audio教學實作

接續前面文章,接下來進行Recognize sounds from audio教學實作,請同時參閱官方教學文章。本文為了方便說明,就直接使用Running faucet預建資料集,若想自行製作資料集就請參考官方教學文章之說明。首先,下載資料集並解壓縮,使用以下命令將資料集上傳至Edge Impulse平台:

edge-impulse-uploader --clean

edge-impulse-uploader --category training faucet/training/*.cbor

edge-impulse-uploader --category testing faucet/testing/*.cbor

接著進入Create impulse,依照以下設定:

  • a Window size of 1000 ms
  • a Window increase of 100 ms
  • click Add a processing block and choose the ‘MFCC’ block
  • click Add a learning block and select ‘Neural Network (Keras)’

完成後按下”Save impulse”鈕保存impulse。在MFCC的Parameters分頁按下”Save parameters”鈕保存參數與Generate features分頁按下”Generate features”鈕以進行特徵的產生:

關於MFCC(梅爾倒頻譜係數)請參考「人工智慧導論」一書的第5章或此連結之說明。在NN Classifier設定參數如下:

  • Number of training cycles : 300
  • Learning rate : 0.00005
  • Minimum confidence rating : 0.70

按下”Start training”進行模型訓練:

Model testing,選擇所有測試資料後按下”Classify selected”進行模型測試:

至此,就完成在Edge Impulse平台的上傳資料、特徵生成、模型建構、模型訓練與模型測試等主要深度學習開發流程。接下來要將模型發佈到裝置上,在Deployment,Inferencing engine選擇TensorFlow Lite,在Output format選擇Binary (DISCO-L475VG-IOT01A),完成後按下Build開始進行建構:

正常完成後,將產生出來的執行檔(Binary File)拷貝到開發板Mbed磁碟區進行軔體更新:

最後,用Tera Term發送以下命令以執行impulse:

AT+RUNIMPULSE

並觀察執行結果,其中水龍頭水聲可由播放此影片取得:

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *