<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>基于樹莓派的音頻頻譜圖可視化設備

基于樹莓派的音頻頻譜圖可視化設備

2022-12-23 | rar | 0.59 MB | 次下載 | 免費

資料介紹

方案介紹

使用 Raspberry Pi Pico、數字麥克風和 LCD 顯示器創建實時音頻頻譜圖可視化器。

本項目將介紹如何使用帶有外部數字麥克風和 TFT LCD 顯示屏的Raspberry Pi Pico板創建實時音頻頻譜圖可視化器。它將讓您看到周圍音頻環境的實時視覺表現。

FkTdZT5fqiqzTd7zkuAuhg098DkY

什么是音頻頻譜圖?
音頻頻譜圖用于將隨時間的幅度表示的音頻信號可視化為顯示信號中包含的頻率如何隨時間變化的格式。

在下圖中,左側顯示原始音頻信號,右側顯示音頻信號的音頻頻譜圖。

FkkDbujeIOHx7RJUfrnw3HMEfcjH

您可以通過頻譜圖中的顏色強度看到音頻信號的幅度與該信號中相關頻率之間的直接相關性。

頻譜圖還使用基于機器學習 (ML) 的音頻系統,將音頻信號轉換為頻譜圖,以便計算機視覺技術可用于對音頻信號的二維“圖像表示”進行分類?,F實世界的例子包括音頻或語音識別,以及關鍵字識別。

渲染流水線
要創建頻譜圖并將其實時顯示在 LCD 顯示屏上,需要執行以下步驟:

1. 從數字麥克風中收集 N 個音頻樣本。

2. 對收集的音頻樣本應用漢寧窗。

3. 使用上一步的輸入運行真正的快速傅立葉變換 (RFFT)。

4. 計算 RFFT 的幅度。

5. 將每個 RFFT 幅度映射到一個顏色值以顯示在 LCD 顯示屏上。

6. 在 LCD 上顯示新行。

7. 滾動到新行并重復。

如果我們選擇 256 的 RFFT 大小,我們將有 128 個可用幅度輸出顯示在屏幕上,因為這小于顯示器每行的 240 個像素,我們可以每行顯示兩次以最大化視覺空間顯示器。

為了獲得更快的視覺響應時間,我們可以一次從麥克風中收集 64 個新的音頻樣本(而不是等待 256 個新的樣本),并將它們與之前每個周期的最新 192 (= 256 - 64) 個樣本結合起來。采樣率為 16 kHz,我們將有 64 / 16, 000 秒來執行所有計算并更新顯示。這導致每次迭代 4 毫秒。

我們將使用Pico 麥克風庫從數字麥克風中捕獲數據。Arm 的 CMSIS-DSP 庫將用于實時處理音頻數據。CMSIS-DSP 針對Arm Cortex-M 處理器進行了優化,包括Arm Cortex-M0+ ,Raspberry Pi Pico 的 RP2040 微控制器 (MCU) 就是基于該處理器。在ST7789庫微微將被用于驅動TFT ST7789顯示器的輸出。

硬件設置
將公頭焊接到您的 Raspberry Pi Pico 板上、Adafruit PDM MEMS 麥克風分線板和2" 320x240 彩色 IPS TFT 顯示器和 microSD 卡分線板,以便它們可以插入面包板。請參閱 MagPi 的“如何焊接 GPIO引腳接頭到 Raspberry Pi Pico”指南,了解有關將引腳接頭焊接到 Raspberry Pi Pico 板的更多詳細信息。

焊接完兩個部件后,將它們放在面包板上并按如下方式設置接線:

表格形式的接線設置:

FiP3T_Dff7KILtxM7FcuWRKB6EI6

之后你的面包板應該是這樣的:

搭建 Pico SDK 開發環境
您首先需要使用 Raspberry Pi 的 Pico SDK 和所需的工具鏈設置您的計算機。

有關詳細信息,請參閱“ Raspberry Pi Pico 入門” 。

獲取和編譯 pico-audio-spectrogram 應用程序

確保PICO_SDK環境變量已設置。

FjLzWbufkOsxsVQq5ZjflwECKw-U

在終端窗口中,克隆 git 存儲庫并更改目錄:

Fl4BBzdPpZT1OQKJHT0UbeFB_c0Z

創建一個構建目錄并將目錄更改為它:

FumimDP_x0qe0VLlrN2La5CQBi8i

運行cmake和make進行編譯:

FuW9nGI7IUDTvxFqOH-fKJk9VJTo

按住板上的BOOTSEL按鈕,同時使用 USB 電纜將板插入計算機。

將audio_spectrogram.uf2文件復制到掛載的 Raspberry Pi Pico 啟動 ROM 磁盤:

FoN2GG_7C2A1irFaetm6BUdnhhGI

測試一下
您現在可以嘗試各種聲音,包括說出不同的單詞,以查看它們在頻譜圖上的實時外觀。

以下是在顯示屏上說出“是”一詞的示例:

同樣,這就是說“不”這個詞在顯示屏上的樣子:

可以在下面找到“ESC-50:環境聲音分類數據集”中各種聲音的示例:

結論
本方案介紹了如何使用帶有外部數字麥克風和 TFT LCD 的 Raspberry Pi Pico 板來創建實時音頻頻譜圖可視化器。該項目使用Microphone Library for Pico從麥克風一次捕獲 64 個音頻樣本,然后使用Arm 的 CMSIS-DSP 庫將音頻樣本轉換為頻譜圖,然后使用Pico的ST7789 庫。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>