0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【全志R329-NPU助力】Maix-Speech為嵌入式環(huán)境設(shè)計(jì)的離線(xiàn)語(yǔ)音庫(kù)

深圳全志在線(xiàn)有限公司 ? 2022-03-28 10:11 ? 次閱讀

Maix-Speech是專(zhuān)為嵌入式環(huán)境設(shè)計(jì)的離線(xiàn)語(yǔ)音庫(kù),設(shè)計(jì)目標(biāo)包括:ASR/TTS/CHAT

作者的設(shè)計(jì)初衷是完成一個(gè)低至Cortex-A7 1.0GHz 單核下可以實(shí)時(shí)運(yùn)行的ASR庫(kù)。

目前市面上的離線(xiàn)語(yǔ)音庫(kù)非常稀缺,即使有也對(duì)主控要求很高,Maix-Speech 針對(duì)語(yǔ)音識(shí)別算法進(jìn)行了深度優(yōu)化,在內(nèi)存占用上達(dá)到了數(shù)量級(jí)上的領(lǐng)先,并且保持了優(yōu)良的WER。

基本情況

Maix-Speech剛發(fā)布了一個(gè)面向嵌入式設(shè)備的離線(xiàn)語(yǔ)音識(shí)別庫(kù),可以在低至Coretx-A7 1.0GHz, 64MB系統(tǒng)內(nèi)存的嵌入式設(shè)備上實(shí)時(shí)運(yùn)行(RTF<1.0)

最低內(nèi)存占用25MB,磁盤(pán)占用35MB(含語(yǔ)言模型);最優(yōu)aishell wer約5.4%;支持流式識(shí)別,支持連續(xù)數(shù)字識(shí)別,關(guān)鍵詞識(shí)別,連續(xù)大詞表語(yǔ)音識(shí)別等

支持:x86_64, armv7, aarch64, riscv64 等多種硬件平臺(tái),支持 AWNN, Zhouyi AIPU 加速。

感興趣的可以跳轉(zhuǎn)githuib來(lái)點(diǎn)個(gè)贊。

鏈接:https://github.com/sipeed/Maix-Speech

Maix-Speech 的優(yōu)勢(shì)

  • 多平臺(tái)支持

Maix-Speech 支持多種嵌入式平臺(tái)

poYBAGJBEv-AAn0RAAA5SHaXm9M760.png
  • 極低的內(nèi)存要求和優(yōu)良的正確率

Maix-Speech的內(nèi)存占用相對(duì)于市面上的其他語(yǔ)音識(shí)別框架有數(shù)量級(jí)上的領(lǐng)先優(yōu)勢(shì),并且保持良好的WER水平。

Maix-Speech最低可以實(shí)時(shí)運(yùn)行(RTF<1)于典型的 1.0GHz Cortex-A7 內(nèi)核的芯片上,并且最低僅占用25MB左右內(nèi)存, 也就意味著它可以實(shí)時(shí)運(yùn)行在典型的內(nèi)封64MB內(nèi)存的A7芯片上。

pYYBAGJBEv-AawkPAABEpQ_rkGQ552.png常見(jiàn)離線(xiàn)語(yǔ)音識(shí)別工具對(duì)比

  • 細(xì)節(jié)優(yōu)化

優(yōu)化了openfst及wfst解碼,使得整個(gè)解碼圖無(wú)需載入內(nèi)存即可實(shí)時(shí)讀取解碼。

可選載入內(nèi)存的LG.fst解碼圖,壓縮為lg.sfst, 尺寸為原始fst的1/3左右,占用內(nèi)存為kaldi載入相同fst的內(nèi)存占用的 1/20左右(kaldi需要6.5倍左右內(nèi)存載入fst文件)。

使用新的sMBR等效的方式(無(wú)需修改loss)進(jìn)行鑒別性訓(xùn)練,提升流式識(shí)別的準(zhǔn)確率

效果展示

在全志 R329 上的運(yùn)行效果,視頻中板卡為 MaixSense

pYYBAGJBEwCAd8D9AAB3m7HpMZI612.jpg連續(xù)大詞匯量語(yǔ)音識(shí)別(LVCSR)

poYBAGJBEwCAHls7AABssf99_54766.jpg連續(xù)中文數(shù)字識(shí)別 (DIGIT)

poYBAGJBEv-ALtHhAABtclcQc4Q595.jpg關(guān)鍵詞識(shí)別(KWS)

Maix-Speech 工程結(jié)構(gòu)

├── assets
│   └── test_files                # 提供的測(cè)試文件,方便上手測(cè)試
├── components                     # 組件
│   ├── asr_lib                   # 組件 asr_lib
│   │   ├── CMakeLists.txt       # 組件配置文件
│   │   ├── include              # 頭文件
│   │   ├── Kconfig              # 組件 menuconfig 配置文件
│   │   ├── lib                  # 各個(gè)平臺(tái)的庫(kù)文件
│   │   └── src                  # 源文件
│   └── utils                     # 工具類(lèi)組件,包括了跑分、字體等
├── Kconfig                       # 最頂級(jí)的 menuconfig 配置文件
├── LICENSE                       # 開(kāi)源協(xié)議(證書(shū))
├── projects                      # 工程
│   └── maix_asr                 # ASR 工程
│       ├── CMakeLists.txt       # 工程配置文件
│       ├── main                 # 工程里面的主組件
│       └── project.py           # 構(gòu)建腳本,方便輸入命令
├── README.md                     # 項(xiàng)目首頁(yè)英文文檔
├── README_ZH.md                  # 項(xiàng)目首頁(yè)中文文檔
├── tools                         # 項(xiàng)目構(gòu)建相關(guān)代碼,一般不用看
└── usage_zh.md                   # 使用方法

構(gòu)建代碼

項(xiàng)目支持多平臺(tái), 不同的平臺(tái)使用的工具鏈和庫(kù)可能有差異,注意區(qū)別。

PC環(huán)境的推薦系統(tǒng)為 Ubuntu 18.04 以上,gcc 7.5 以上,CMake 3.20以上,失能conda虛擬環(huán)境。其他環(huán)境可能有部分軟件需要額外設(shè)置,不建議新手使用。

其他嵌入式環(huán)境的交叉編譯方式可能存在一些細(xì)節(jié)使用問(wèn)題,商業(yè)用戶(hù)可以聯(lián)系support@sipeed.com 獲取支持。

  • 環(huán)境準(zhǔn)備

首先電腦安裝工具鏈和庫(kù)(Ubuntu 為例)

sudo apt update

sudo apt install git python3 cmake

python 只是用在編譯腳本上的,方便簡(jiǎn)單地輸入編譯命令, 如果你電腦里有任何一個(gè)版本的 python 都是可以的, 為確保不出問(wèn)題最好是Python3。如果實(shí)在不想裝 python , 也可以手動(dòng)使用 cmake 命令進(jìn)行編譯。

x86 (Linux) 或 在跑在其它架構(gòu)的系統(tǒng)里編譯,比如在R329或樹(shù)莓派的系統(tǒng)里使用GCC編譯 安裝工具鏈和庫(kù)(Ubuntu為例)。

sudo apt install build-essential libasound2-dev

交叉編譯 下載工具鏈,并解壓到指定文件夾 比如R329, 從 realease 下載 r329_toolchain.tar.gz, 并解壓到一個(gè)路徑,比如 /opt/r329_toolchain 比如 v83x, 在這里找到工具鏈下載鏈接并下載工具鏈,解壓到一個(gè)文件夾,比如/opt/toolchain-sunxi-musl

poYBAGJBEwCAL0MfAAAtpxZ8oRY466.png
  • 克隆代碼

git clone https://github.com/sipeed/Maix-Speech

  • 編譯

x86(Linux)或在跑在其它架構(gòu)的系統(tǒng)里編譯,比如在R329或 樹(shù)莓派 的系統(tǒng)里使用GCC編譯

注意,conda 環(huán)境下工具鏈可能有問(wèn)題,如果出現(xiàn)錯(cuò)誤可以先嘗試 退出conda環(huán)境使用原生環(huán)境編譯。


cd projects/maix_asr
python project.py clean_conf    # 清除工具鏈配置
python project.py menuconfig    # 配置選擇芯片架構(gòu)(ARCH),默認(rèn)是 x86
python project.py build#python project.py rebuild          # 如果有新建文件需要使用 rebuild
# python project.py build --verbose # 打印詳細(xì)構(gòu)建過(guò)程

./build/maix_asr                # 測(cè)試下運(yùn)行可執(zhí)行文件,可以執(zhí)行即可

python project.py clean         # 清除構(gòu)建內(nèi)容
python project.py distclean     # 徹底清除構(gòu)建內(nèi)容, 包括 menuconfig 內(nèi)容
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 語(yǔ)音識(shí)別
    +關(guān)注

    關(guān)注

    38

    文章

    1739

    瀏覽量

    112656
  • 全志
    +關(guān)注

    關(guān)注

    24

    文章

    248

    瀏覽量

    53134
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    HAL庫(kù)嵌入式系統(tǒng)中的應(yīng)用

    HAL庫(kù)(Hardware Abstraction Layer Library,硬件抽象層庫(kù))在嵌入式系統(tǒng)中扮演著至關(guān)重要的角色。以下是HAL庫(kù)
    的頭像 發(fā)表于 12-02 11:32 ?535次閱讀

    科技亮相飛凌嵌入式技術(shù)創(chuàng)新日

    近日,工業(yè)領(lǐng)域板卡廠商“飛凌嵌入式”在上海舉行技術(shù)創(chuàng)新日。科技工業(yè)車(chē)載事業(yè)部副總經(jīng)理皮杰勇和工業(yè)產(chǎn)品總監(jiān)劉海軍受邀出席,并進(jìn)行了主題為《志在工業(yè)領(lǐng)域的解決方案與技術(shù)應(yīng)用》的分享。
    的頭像 發(fā)表于 11-05 14:11 ?283次閱讀

    如何在低成本ARM平臺(tái)部署LVGL免費(fèi)圖形庫(kù),基于T113-i

    ,適合資源受限的嵌入式系統(tǒng),即使在低性能硬件上也能流暢運(yùn)行復(fù)雜的圖形界面,用戶(hù)可以根據(jù)需要定制界面風(fēng)格和布局。 LVGL案例演示 本文主要介紹創(chuàng)龍科技TLT113-EVM工業(yè)評(píng)估板(基于
    發(fā)表于 10-29 09:55

    T507-H國(guó)產(chǎn)平臺(tái)Ubuntu系統(tǒng)正式發(fā)布,讓您的應(yīng)用開(kāi)發(fā)更便捷!

    系統(tǒng)上,可以方便地安裝Qt庫(kù)、Qt Creator以及相關(guān)的嵌入式開(kāi)發(fā)工具,進(jìn)行嵌入式GUI應(yīng)用的開(kāi)發(fā)。 圖 2 T507-H典型應(yīng)用領(lǐng)域 圖 3 T507-H典型應(yīng)用領(lǐng)域 Ubuntu系統(tǒng)啟動(dòng)演示
    發(fā)表于 10-29 09:39

    基于T113-i多核異構(gòu)處理器的全國(guó)產(chǎn)嵌入式核心板簡(jiǎn)介

    一、嵌入式核心板產(chǎn)品介紹 基于公司的T113-i處理器精心設(shè)計(jì)的多核異構(gòu)處理器、工業(yè)級(jí)ECK30-T13IA系列嵌入式核心板,采用郵票孔連接的低成本、低功耗、高性?xún)r(jià)比、高可靠性的全
    的頭像 發(fā)表于 10-25 13:40 ?309次閱讀

    目前深圳嵌入式單片機(jī)就業(yè)環(huán)境如何?

    深圳作為中國(guó)的科技創(chuàng)新中心之一,在嵌入式單片機(jī)領(lǐng)域的就業(yè)環(huán)境相對(duì)較好,以下是對(duì)該就業(yè)環(huán)境的詳細(xì)分析:
    的頭像 發(fā)表于 10-09 11:51 ?491次閱讀
    目前深圳<b class='flag-5'>嵌入式</b>單片機(jī)就業(yè)<b class='flag-5'>環(huán)境</b>如何?

    嵌入式系統(tǒng)的未來(lái)趨勢(shì)有哪些?

    智能家居領(lǐng)域,嵌入式系統(tǒng)可以集成語(yǔ)音識(shí)別和自然語(yǔ)言處理技術(shù),去實(shí)現(xiàn)智能家電的語(yǔ)音控制。 2. 更強(qiáng)大的處理能力 在未來(lái)的嵌入式系統(tǒng)將具備更加強(qiáng)大的處理能力,以滿(mǎn)足日益變得復(fù)雜的計(jì)算需求
    發(fā)表于 09-12 15:42

    一種常用嵌入式開(kāi)發(fā)代碼庫(kù)

    使用開(kāi)源協(xié)議:GPL-2.0varch簡(jiǎn)介varch(we-architecture,意為我們的框架庫(kù))是嵌入式C語(yǔ)言常用代碼模塊庫(kù),包含了嵌入式中常用的算法庫(kù),數(shù)據(jù)結(jié)構(gòu)(容器)
    的頭像 發(fā)表于 09-04 08:06 ?472次閱讀
    一種常用<b class='flag-5'>嵌入式</b>開(kāi)發(fā)代碼<b class='flag-5'>庫(kù)</b>

    七大嵌入式GUI盤(pán)點(diǎn)

    嵌入式圖形用戶(hù)界面(GUI)是一種嵌入式系統(tǒng)設(shè)計(jì)的用戶(hù)界面,它可以讓用戶(hù)通過(guò)圖形化的方式與設(shè)備進(jìn)行交互。以下是對(duì)七種嵌入式 GUI 的盤(pán)點(diǎn)。 emWin 由德國(guó)SEGGER公司
    發(fā)表于 09-02 10:58

    ARMxy ARM嵌入式計(jì)算機(jī)搭載 1 TOPS NPU支持深度學(xué)習(xí)

    ARMxy ARM嵌入式計(jì)算機(jī)BL410系列內(nèi)置了1TOPS算力 NPU,它每秒可以執(zhí)行高達(dá)一萬(wàn)億次的浮點(diǎn)運(yùn)算,這復(fù)雜的圖像處理和深度學(xué)習(xí)任務(wù)提供了充足的計(jì)算資源。在產(chǎn)品缺陷檢測(cè)領(lǐng)域,ARMxy ARM
    的頭像 發(fā)表于 08-20 11:53 ?357次閱讀
    ARMxy ARM<b class='flag-5'>嵌入式</b>計(jì)算機(jī)搭載 1 TOPS <b class='flag-5'>NPU</b>支持深度學(xué)習(xí)

    EVASH Ultra EEPROM:助力ChatGPT等AI應(yīng)用的嵌入式存儲(chǔ)解決方案

    EVASH Ultra EEPROM:助力ChatGPT等AI應(yīng)用的嵌入式存儲(chǔ)解決方案
    的頭像 發(fā)表于 06-26 18:13 ?910次閱讀

    現(xiàn)場(chǎng)直擊 | 飛凌嵌入式亮相2024上海國(guó)際嵌入式

    6月12日,2024上海國(guó)際嵌入式展(embedded world China 2024)在上海世博展覽館開(kāi)幕。飛凌嵌入式不僅展出了基于NXP、TI和瑞薩等國(guó)際廠商芯片打造的嵌入式核心板及開(kāi)發(fā)板產(chǎn)品,還帶來(lái)了依托瑞芯微、
    的頭像 發(fā)表于 06-13 14:13 ?1003次閱讀
    現(xiàn)場(chǎng)直擊 | 飛凌<b class='flag-5'>嵌入式</b>亮相2024上海國(guó)際<b class='flag-5'>嵌入式</b>展

    R329開(kāi)發(fā)板點(diǎn)燈教程

    timer > sunxi_led0r/trigger 如果你看到燈亮了,那么恭喜你,它將照亮你嵌入式開(kāi)發(fā)學(xué)習(xí)的路。 LED燈陣列操作、模塊配置、源碼結(jié)構(gòu)、內(nèi)外部接口等進(jìn)階操作請(qǐng)見(jiàn)開(kāi)發(fā)
    發(fā)表于 02-19 10:22

    恩智浦發(fā)布新一代智能語(yǔ)音技術(shù)組合的語(yǔ)音識(shí)別引擎

    恩智浦發(fā)布新一代智能語(yǔ)音技術(shù)組合的語(yǔ)音識(shí)別引擎。本文將探討開(kāi)發(fā)人員在嵌入式語(yǔ)音控制設(shè)計(jì)中面臨的挑戰(zhàn)、恩智浦新的Speech to Inten
    的頭像 發(fā)表于 01-26 09:15 ?761次閱讀
    恩智浦發(fā)布新一代智能<b class='flag-5'>語(yǔ)音</b>技術(shù)組合的<b class='flag-5'>語(yǔ)音</b>識(shí)別引擎

    V853 NPU開(kāi)發(fā)之工具安裝

    V853支持最高1T NPU算力,在進(jìn)行NPU相關(guān)開(kāi)發(fā)前,需要先配置NPU開(kāi)發(fā)環(huán)境。 Linux系統(tǒng)準(zhǔn)備NPU開(kāi)發(fā)
    發(fā)表于 01-08 09:50