來(lái)源:DigiKey 智能揚(yáng)聲器和其他聯(lián)網(wǎng)集線器構(gòu)成了智能家居的核心,方便了用戶控制設(shè)備和訪問(wèn)互聯(lián)網(wǎng)。隨著這些設(shè)備的普及,有兩個(gè)趨勢(shì)顯而易見:用戶更喜歡語(yǔ)音控制,而不是按鍵或復(fù)雜的菜單系統(tǒng);由于擔(dān)心隱私問(wèn)題,用戶對(duì)持續(xù)的云連接越來(lái)越不適應(yīng)。 然而,一個(gè)強(qiáng)大而安全的語(yǔ)音用戶界面 (VUI) 通常需要強(qiáng)大的硬件和復(fù)雜的軟件來(lái)進(jìn)行語(yǔ)音識(shí)別。否則很可能導(dǎo)致性能低下和用戶體驗(yàn)不佳。此外,許多智能揚(yáng)聲器和集線器都是由電池供電的,因此必須在嚴(yán)格的電力預(yù)算范圍內(nèi)實(shí)現(xiàn) VUI。對(duì)于缺乏語(yǔ)音界面經(jīng)驗(yàn)的開發(fā)人員來(lái)說(shuō),這樣一個(gè)雄心勃勃的項(xiàng)目可能會(huì)令人望而生畏。 為此,芯片制造商推出了一種基于音素的技術(shù),大大降低了處理要求。這是一款高精度、高效率的 VUI 軟件,可在熟悉的 32 位微控制器 (MCU) 上運(yùn)行,并受到易于使用的設(shè)計(jì)工具支持。 本文首先介紹了 VUI 面臨的挑戰(zhàn)和使用案例。然后介紹了易于使用的商業(yè) MCU 應(yīng)用軟件和適合互聯(lián)家居應(yīng)用的基于本地音素的 VUI 軟件。文章最后向開發(fā)人員展示如何使用 Renesas MCU、VUI 軟件和評(píng)估套件啟動(dòng) VUI 項(xiàng)目。 構(gòu)建 VUI 面臨的挑戰(zhàn) VUI 是一種語(yǔ)音識(shí)別技術(shù),可通過(guò)語(yǔ)音指令與電腦、智能手機(jī)、家庭自動(dòng)化系統(tǒng)或其他設(shè)備進(jìn)行交互。在經(jīng)歷了早期的工程挑戰(zhàn)后,該技術(shù)已經(jīng)成熟,成為一種可靠的控制界面,目前廣泛應(yīng)用于智能揚(yáng)聲器和其他智能家居設(shè)備。VUI 的主要優(yōu)勢(shì)在于其便利性:在語(yǔ)音范圍內(nèi)的任何地方都能進(jìn)行即時(shí)控制,無(wú)需使用鍵盤、鼠標(biāo)、按鈕、菜單或其他界面來(lái)輸入指令(圖 1)。 圖 1:VUI 技術(shù)因其方便、靈活,已在家庭和智能樓宇中廣泛采用。(圖片來(lái)源:Renesas) VUI 的缺點(diǎn)就是其復(fù)雜性。傳統(tǒng)技術(shù)依靠用特定字詞對(duì)模型進(jìn)行長(zhǎng)時(shí)間的訓(xùn)練。但自然語(yǔ)言處理與詞序無(wú)關(guān),需要大量的開發(fā)工作和強(qiáng)大的計(jì)算能力才能實(shí)時(shí)運(yùn)行。這拖慢了 VUI 的廣泛運(yùn)用。 現(xiàn)在,一種新技術(shù)簡(jiǎn)化了 VUI 軟件,可以讓其在小型、高效的微控制器 (MCU) 上運(yùn)行,如 Arm® Cortex®-M 器件。這種技術(shù)所依賴的事實(shí)依據(jù)是,每句話中的所有單詞都是由稱為音素的語(yǔ)言聲音組成的。音素?cái)?shù)量遠(yuǎn)遠(yuǎn)少于單詞數(shù)量;英語(yǔ)有 44 個(gè),意大利語(yǔ)有 32 個(gè),而傳統(tǒng)的夏威夷語(yǔ)只有 14 個(gè)。如果 VUI 使用由 200 個(gè)單詞組成的英語(yǔ)指令集,那么每個(gè)單詞都可以從 44 個(gè)單詞中分解出與之相關(guān)的音素。 在 VUI 軟件中,每個(gè)音素都可以用數(shù)字代碼(或“標(biāo)記”)來(lái)識(shí)別,用各種標(biāo)記組成語(yǔ)言。將單詞存儲(chǔ)為聲音需要大量的計(jì)算資源,占用的存儲(chǔ)空間遠(yuǎn)大于存儲(chǔ)為標(biāo)記的音素。按照預(yù)期的順序處理音素標(biāo)記(以及指令詞)進(jìn)一步簡(jiǎn)化了計(jì)算,并使 VUI 軟件能夠在本地適中的 MCU 上運(yùn)行(圖 2)。 圖 2:用音素表示單詞需要很少的微控制器資源。(圖片來(lái)源:Renesas) 這意味著,通過(guò)使用音素實(shí)現(xiàn)的軟件效率可以使處理過(guò)程在本地運(yùn)行。不需要云處理,就意味著不需要持續(xù)的互聯(lián)網(wǎng)連接,而互聯(lián)網(wǎng)連接也會(huì)帶來(lái)用戶隱私和數(shù)據(jù)安全問(wèn)題。 Renesas 作為其生態(tài)系統(tǒng)的一部分展示了一個(gè)基于音素原理的商用 VUI 軟件包。這款名為 Cyberon DSpotter 的軟件創(chuàng)建了一種 VUI 算法,其精簡(jiǎn)程度足以在配備 Arm Cortex-M4 和 M33 內(nèi)核的 Renesas RA 系列 MCU 上運(yùn)行。 使用 Cyberon DSpotter 進(jìn)行開發(fā) Cyberon DSpotter 建立在音素和音素組合庫(kù)的基礎(chǔ)之上。這是一種替代方法,傳統(tǒng)方法為了識(shí)別特定單詞需要進(jìn)行計(jì)算量巨大的訓(xùn)練。開發(fā)人員可以使用 DSpotter 建模工具將單詞分解為音素,然后將其表示為標(biāo)記。 DSpotter 是一款嵌入式(非云)軟件,可用作本地語(yǔ)音觸發(fā)器和指令識(shí)別解決方案,具有強(qiáng)大的降噪功能。它消耗的資源極少,準(zhǔn)確性極高。根據(jù)所選 MCU 的不同,還可實(shí)現(xiàn)安全數(shù)據(jù)傳輸。 DSpotter 會(huì)查詢每個(gè)指令單詞或短語(yǔ),并將其分解為音素。然后,VUI 的指令集和支持?jǐn)?shù)據(jù)會(huì)被內(nèi)置到一個(gè)二進(jìn)制文件中,開發(fā)人員會(huì)將該文件與 Cyberon 庫(kù)一起放入項(xiàng)目中。該庫(kù)和二進(jìn)制文件一起用于 MCU,以支持對(duì)所需語(yǔ)音指令的識(shí)別。 DSpotter 工具可創(chuàng)建“指令集”,開發(fā)人員的程序可將這些指令集邏輯連接起來(lái),以創(chuàng)建不同級(jí)別的 VUI。這樣就可以發(fā)出多級(jí)指令,例如“請(qǐng)把燈泡調(diào)到高亮”:指令詞語(yǔ)是“燈泡”,后跟“調(diào)到”和“高亮”。一個(gè)組中的每個(gè)指令都有自己的索引,一個(gè)級(jí)別中的每個(gè)指令也有自己的索引(圖 3)。 圖 3:DSpotter 工具允許創(chuàng)建“指令集”,開發(fā)人員的程序可將這些指令集邏輯連接起來(lái),以創(chuàng)建不同級(jí)別的 VUI。(圖片來(lái)源:Renesas) DSpotter 庫(kù)處理傳入的聲音,并搜索與數(shù)據(jù)庫(kù)中指令相匹配的音素。當(dāng)找到匹配時(shí),它會(huì)返回索引和組號(hào)。這種安排可以讓主應(yīng)用代碼創(chuàng)建一個(gè)分層的開關(guān)語(yǔ)句,以處理收到的指令字/詞。由此產(chǎn)生的程序庫(kù)非常小,可以安裝在只有 256KB 閃存和 32KB SRAM 的 MCU 上。如果有更多存儲(chǔ)空間,指令集還可以增長(zhǎng)。 開發(fā)人員必須認(rèn)識(shí)到,在 VUI 中使用音素法是有局限性的。由于 MCU 的資源相對(duì)有限,Cyberon DSpotter 只能進(jìn)行語(yǔ)言識(shí)別,而非語(yǔ)音識(shí)別。這意味著軟件無(wú)法進(jìn)行自然語(yǔ)言處理。因此,如果指令字不按邏輯順序排列(例如,用“高亮”、“燈泡”、“調(diào)為”代替“燈泡”、“調(diào)為”、“高亮”),系統(tǒng)將無(wú)法識(shí)別該指令,并將重置回頂層。 一個(gè)設(shè)計(jì)建議是在 VUI 中添加一個(gè)視覺指示器(如 LED 燈),當(dāng)處理器認(rèn)為自己處于指令集頂層時(shí),指示器會(huì)提示用戶按邏輯順序重新下達(dá)指令(圖 4)。 圖 4:Cyberon DSpotter 的簡(jiǎn)約性要求指令必須遵循邏輯順序,否則將無(wú)法識(shí)別。(圖片來(lái)源:Renesas) 使用受限資源運(yùn)行非云 VUI Cyberon DSpotter 的高效率使之能夠在 Renesas 的 RA2、RA4 和 RA6 系列 Arm Cortex-M MCU 上運(yùn)行。這些產(chǎn)品在消費(fèi)、工業(yè)和物聯(lián)網(wǎng)應(yīng)用領(lǐng)域廣受歡迎。它們受到易于使用的設(shè)計(jì)工具支持,因此無(wú)需豐富的編碼經(jīng)驗(yàn)或內(nèi)部專業(yè)知識(shí),就能相對(duì)直接地構(gòu)建一個(gè)簡(jiǎn)單的 VUI。 具體 RA 系列 MCU 選擇主要取決于指令的復(fù)雜性和 Cyberon 庫(kù)的大小。所以智能電燈開關(guān)只需要適度的指令集和有限的計(jì)算能力就能有效工作,可以采用 RA4 系列中的 R7FA4W1AD2CNG。該 MCU 配備了一個(gè)電池友好的 48 MHz Arm Cortex-M4 內(nèi)核,提供 512 Kb 閃存和 96 Kb SRAM 支持。它采用段碼式 LCD 控制器、電容式觸摸感應(yīng)單元、低功耗藍(lán)牙無(wú)線連接、USB 2.0 全速、14 位模數(shù)轉(zhuǎn)換器 (ADC)、12 位數(shù)模轉(zhuǎn)換器 (DAC),并且具有安全保障功能(圖 5)。 圖 5:R7FA4W1AD2CNG MCU 為智能電燈開關(guān)等應(yīng)用構(gòu)建非云 VUI 提供了充足的資源。(圖片來(lái)源:Renesas) 諸如智能揚(yáng)聲器之類應(yīng)用需要更廣泛的 Cyberon DSpotter 庫(kù)和更強(qiáng)大的內(nèi)核。R7FA6M4AF3CFM 就是一個(gè)合適的選擇。這款 MCU 屬 RA6 系列,采用功能更強(qiáng)大的 200 MHz Arm Cortex-M33 內(nèi)核,提供了 1 Mb 閃存和 256 Kb SRAM。它具有 CAN 總線、以太網(wǎng)、I²C、LIN 總線、電容式觸摸感應(yīng)裝置以及許多其他接口和外設(shè)。 RA4 和 RA6 系列分別受到 RTK7EKA4W1S00000BJ 和 RTK7EKA6M4S00001BE 評(píng)估板支持,開發(fā)人員可以利用這兩款評(píng)估板訓(xùn)練 MCU 的能力。每個(gè)評(píng)估板都有目標(biāo) MCU 和板載調(diào)試器。 Renesas 還提供 VUI 解決方案套件,以加快開發(fā)速度。該套件與評(píng)估板類似,都包含目標(biāo)器件和調(diào)試器。電路板還配有多個(gè)輸入/輸出接口和四個(gè)麥克風(fēng):兩個(gè)模擬麥克風(fēng)和兩個(gè)數(shù)字麥克風(fēng)。 使用 VUI 解決方案套件進(jìn)行開發(fā)所需的軟件均可在 Cyberon 網(wǎng)站上獲取。其中包括免費(fèi)的 Cyberon DSpotter 建模工具訪問(wèn)權(quán)限,以及帶有可運(yùn)行語(yǔ)音指令集的 e2 studio 項(xiàng)目(e2 studio 是基于 Eclipse 的集成開發(fā)環(huán)境 (IDE),適用于 Renesas MCU)。示例指令集可用作開發(fā)自定義語(yǔ)音指令序列的模板。然后就可以使用終端窗口監(jiān)控系統(tǒng)的反應(yīng)。創(chuàng)建圖 4 所示的 VUI 結(jié)構(gòu)一般需要 15 分鐘左右。 針對(duì) Cyberon 軟件包的較復(fù)雜應(yīng)用軟件設(shè)計(jì)受到該公司的 Renesas 靈活軟件包 (FSP) 支持,該軟件包針對(duì)的就是使用 RA 系列的嵌入式系統(tǒng)設(shè)計(jì)。FSP 基于開放的軟件生態(tài)系統(tǒng),包括 Azure RTOS 或 FreeRTOS、傳統(tǒng)代碼和第三方生態(tài)系統(tǒng)。它可以在多個(gè)集成開發(fā)環(huán)境(包括e2 studio)中運(yùn)行。 VUI 的性能如何? VUI 在安靜的實(shí)驗(yàn)室中運(yùn)行良好是一回事,但在背景噪音較大的情況下準(zhǔn)確運(yùn)行又是另一回事。智能揚(yáng)聲器的典型工作環(huán)境包括電視或收音機(jī)、談話、其他音樂源以及家庭或社交聚會(huì)的一般喧鬧聲。此外, VUI 還必須應(yīng)對(duì)方言和發(fā)音不準(zhǔn)。盡管存在這些挑戰(zhàn),但用戶期望的性能幾乎完美無(wú)瑕。 為了提高在困難的監(jiān)聽環(huán)境中的性能,在 Renesas RA 系列 MCU 上運(yùn)行的 Cyberon DSpotter 軟件具有抗噪功能,只需占用極少的處理器資源。為了展示其效率,我們使用 Cyberon DSpotter VUI 進(jìn)行了測(cè)試,在 1.5 米和 3 米的距離內(nèi),在信噪比為 0、5 和 10 分貝 (dB) 的情況下,測(cè)試了各種背景噪音源對(duì)監(jiān)聽指令的影響。在所有情況下,VUI 的表現(xiàn)都優(yōu)于亞馬遜 Alexa 基準(zhǔn)(表 1)。 表 1:Cyberon 支持的 VUI 在各種背景噪聲下的指令成功率測(cè)試結(jié)果。在所有情況下,該 VUI 的表現(xiàn)都優(yōu)于亞馬遜 Alexa 基準(zhǔn)。(圖片來(lái)源:Renesas) 結(jié)語(yǔ) VUI 正迅速成為消費(fèi)者首選的智能產(chǎn)品控制界面。語(yǔ)音控制方法使用音素作為指令的基礎(chǔ),并采用嚴(yán)格的指令結(jié)構(gòu),可大幅降低存儲(chǔ)和計(jì)算要求,使得該技術(shù)能夠在資源有限的小型 MCU 上本地運(yùn)行。 |