项目中用到的语音识别方案 硬件/软件相关介绍
自從Amazon Alexa音箱發(fā)布以來(lái),各大廠家開(kāi)始陸續(xù)發(fā)布自家的音箱,完善自家的生態(tài)系統(tǒng)。從以前的路由器,手機(jī)到現(xiàn)在的音箱,一個(gè)個(gè)被認(rèn)為或曾被認(rèn)為是智能家居的入口,總會(huì)在市場(chǎng)上掀起一番風(fēng)浪。
有幸在2018年完成了一款以語(yǔ)音交互為核心功能的產(chǎn)品,也算跟了一場(chǎng)大潮,對(duì)語(yǔ)音方面也有些相關(guān)的探索和思考。
語(yǔ)音識(shí)別主要有三大組成,語(yǔ)義識(shí)別平臺(tái),cpu主控,以及MIC陣列;
目前國(guó)內(nèi)大的語(yǔ)音平臺(tái)主要有:科大訊飛,百度,思必馳,云知聲等等很專業(yè)的廠家,也有小米,騰訊等一些互聯(lián)網(wǎng)玩家,還有華為等少數(shù)幾個(gè)傳統(tǒng)廠家。
主控方面:主要有三類,
第一,通用的CPU,如瑞芯微的平板方案,TI的數(shù)字處理芯片;
第二,專門針對(duì)語(yǔ)音推出的一些新的平臺(tái),如MT8516;
第三,專用的語(yǔ)音芯片,主要是大平臺(tái)廠家的根據(jù)自家的算法定制的一些芯片,百度,思必馳,Amazon都在推出或計(jì)劃推出自家的專用芯片。
MIC陣列:平臺(tái)廠家如科大訊飛有自家的MIC陣列,也有專門的硬件提供方,如聲智科技,地平線等
下面將大致介紹其每個(gè)模塊的使用:
首先,我們看一張硬件框圖:
其中有幾點(diǎn)需要注意的地方:
第一:MIC數(shù)量和AEC數(shù)量,是根據(jù)具體的語(yǔ)音處理算法來(lái)的。一般主流的是2MIC+2REF,既節(jié)省成本效果也還不錯(cuò)
第二:AEC,需要從PA后端采回
在軟件方面,以Linux為主:
第一:MIC和REF處理方面,即普通的音頻讀取方式,驅(qū)動(dòng)根據(jù)具體的codec來(lái),一般主控廠家會(huì)提供
第二:將讀取到的音頻,根據(jù)語(yǔ)音識(shí)別算法的格式要求封裝,一般語(yǔ)音識(shí)別廠家會(huì)提供對(duì)應(yīng)CPU平臺(tái)的開(kāi)發(fā)SDK,基本不可能提供源碼的,主要是MIC+REF的數(shù)據(jù)混合
第三:熟悉語(yǔ)音SDK使用,主要有幾點(diǎn):
1. 配置SDK環(huán)境和資源,主要有喚醒,AEC,VAD,拾音,云端資源等,對(duì)于VAD,拾音等模塊,可以是CPU方提供,也可以是語(yǔ)音識(shí)別方提供,最終的具體效果需要兩方聯(lián)合調(diào)試
2. 喚醒和識(shí)別的數(shù)據(jù)處理過(guò)程,一般來(lái)說(shuō)有不同的處理方式,根據(jù)SDK要求提供相應(yīng)的數(shù)據(jù)即可
3. SDK處理結(jié)果,一般為回調(diào)方式,注意線程安全的問(wèn)題。格式一般為json,根據(jù)關(guān)鍵字段處理即可,比如返回在線音頻,tts結(jié)果,請(qǐng)求的文字,智能家居控制指令等等
4. 一般語(yǔ)音廠家會(huì)提供開(kāi)發(fā)云平臺(tái),我們可以自行選擇相應(yīng)的技能或者開(kāi)發(fā)自己的技能,比如訊飛開(kāi)發(fā)平臺(tái),思必馳DUI平臺(tái)等,操作方式也類似
最后總結(jié):
第一:VAD,拾音,AEC等聯(lián)合調(diào)試比較復(fù)雜,也最費(fèi)時(shí)間,產(chǎn)品效果好壞主在于此
第二:在選擇語(yǔ)音平臺(tái)時(shí),先考慮好自家主要需要哪些技能及后續(xù)可能會(huì)擴(kuò)展的技能
第三:SDK的使用,比如線程安全,穩(wěn)定性,需要長(zhǎng)時(shí)間測(cè)試
?
?
總結(jié)
以上是生活随笔為你收集整理的项目中用到的语音识别方案 硬件/软件相关介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MT7688 坑爹的 SPI Maste
- 下一篇: 关于GPS的1PPS时间同步功能探索与测