有人說,設(shè)備不能做人類能做的一切。然而,我們?nèi)粘I钪惺褂玫脑O(shè)備在過去幾十年中一直在發(fā)展。我們已經(jīng)看到它們在功能,連接性和大小方面的重大變化。然而,最大的挑戰(zhàn)之一是設(shè)備的尺寸,因為人們投入了更多的精力來實現(xiàn)更小的外形尺寸。
幾年前,一個新的挑戰(zhàn)出現(xiàn)了:設(shè)備不能像人類一樣進(jìn)行通信。這導(dǎo)致獨立設(shè)備被轉(zhuǎn)換為具有附加語音操作的連接設(shè)備。
支持語音的設(shè)備如何幫助人類?
最初,需要人工觸摸才能在設(shè)備上執(zhí)行任何操作?,F(xiàn)在,借助支持語音的設(shè)備和物聯(lián)網(wǎng)技術(shù),人類可以通過語音發(fā)出命令來操作設(shè)備。這些新發(fā)明的設(shè)備將人聲轉(zhuǎn)換為設(shè)備動作,通過互聯(lián)網(wǎng)向另一臺設(shè)備發(fā)送命令,并執(zhí)行所需的動作。這些設(shè)備不僅可以與人類交互,還可以通過互聯(lián)網(wǎng)與其他設(shè)備進(jìn)行交互。
語音設(shè)備測試的主要挑戰(zhàn)
世界各地支持語音的設(shè)備的日常使用正在迅速增加。500 多個國家/地區(qū)支持 1000 多種語言,這些語言具有不同的口音、性別和基于年齡組的語音調(diào)制,這使得驗證支持語音的設(shè)備變得具有挑戰(zhàn)性。在短時間內(nèi)用這么多不同的組合和排列來測試這些設(shè)備幾乎是不可能的。因此,讓我們看看如何自動測試支持語音的設(shè)備。
自動化支持語音的設(shè)備測試
為了避免手動測試工作,我們需要設(shè)計一個自動化解決方案,該解決方案可用于使用不同的語言測試這些設(shè)備。最簡單的選擇是使用框架,這些框架可以幫助開發(fā)具有此類語音集成設(shè)備的自動化腳本。
截至目前,市場上沒有開源框架可以提供測試與語音設(shè)備集成所需的所有功能。此處的挑戰(zhàn)是如何以不同的語言向設(shè)備發(fā)出命令,如何從設(shè)備讀取響應(yīng)并測試預(yù)期的輸出。
要在沒有手動操作的情況下向設(shè)備發(fā)出命令,需要以文本格式標(biāo)識命令。將文本轉(zhuǎn)換為音頻格式。
播放音頻,以便啟用語音的設(shè)備可以收聽和處理。
等待來自設(shè)備的響應(yīng),將其錄制在音頻文件中,最后一步您需要將此音頻轉(zhuǎn)換為文本以匹配預(yù)期的格式。
每個設(shè)備測試程序都有定制要求;因此,框架必須是模塊化的。為了獲得解決方案,我們需要設(shè)計一個模塊化和可擴(kuò)展的框架,其中該解決方案的每個步驟都可以由市場上可用的開源或付費庫實現(xiàn)。
我們在以下框架中設(shè)計了4個模塊:
多語言文本:將文本從一種語言轉(zhuǎn)換為另一種語言
文本音頻模塊:將文本轉(zhuǎn)換為mp3
音頻文本模塊:將 wav 轉(zhuǎn)換為文本
音頻模塊:
使用音頻輸出設(shè)備播放 mp3 文件
使用麥克風(fēng)讀取音頻數(shù)據(jù)
將音頻數(shù)據(jù)保存到wav文件
詳細(xì)解決方案
1.準(zhǔn)備英文設(shè)備命令
a.使用多語言文本模塊將設(shè)備命令轉(zhuǎn)換為設(shè)備可以理解的語言。它使用Google提供的服務(wù)進(jìn)行翻譯,您可以在其中將文本從任何源語言翻譯成任何所需的語言。
2.為翻譯文本創(chuàng)建音頻文件
a.使用文本音頻模塊將文本轉(zhuǎn)換為音頻。生成的音頻可以在音頻輸出設(shè)備上播放。此模塊在后端使用谷歌文本到語音轉(zhuǎn)換服務(wù)。
3.播放音頻
a.使用音頻模塊將mp3文件播放到音頻輸出設(shè)備。
b.此步驟要求音頻輸出設(shè)備和啟用語音的設(shè)備靠近,以便在播放音頻時,設(shè)備可以捕獲音頻并處理命令。
4.錄制音頻
a.此步驟是捕獲來自啟用語音的設(shè)備響應(yīng)所必需的。
b.使用音頻模塊從麥克風(fēng)捕獲錄音數(shù)據(jù)。您需要傳遞持續(xù)時間參數(shù)以提及您希望錄制多長時間,并且模塊返回音頻樣本數(shù)據(jù)
c.一旦示例數(shù)據(jù)可用,就需要將其另存為wav(音頻)文件。為了實現(xiàn)這一點,可以使用save_audio_to_file方法。此方法獲取示例音頻數(shù)據(jù)并將其寫入 wav 文件,該文件以后可以使用音頻設(shè)備播放,也可以用于將其轉(zhuǎn)換為文本。
5.將捕獲的音頻轉(zhuǎn)換為文本
a.使用文本音頻模塊將 wav 文件轉(zhuǎn)換為文本內(nèi)容。這是使用語音識別器實現(xiàn)的。您應(yīng)該指定輸入 wav 文件和音頻內(nèi)容語言。
b.To 將音頻轉(zhuǎn)換為文本,則可以使用各種供應(yīng)商提供的第三方庫。
6.將上述文本翻譯成英語,并根據(jù)英語的預(yù)期結(jié)果進(jìn)行驗證
使用上述4個模塊,一次就可以實現(xiàn)基于語音的集成設(shè)備的語音自動化。
家庭自動化產(chǎn)品端到端測試的真實場景
家庭自動化系統(tǒng)由各種設(shè)備組成,這些設(shè)備可以使用REST服務(wù)通過網(wǎng)絡(luò)進(jìn)行操作。安全攝像頭,燈,恒溫器,傳感器和門鈴是家庭自動化設(shè)備的幾個例子。例如,作為房主的最終用戶可以使用互聯(lián)網(wǎng)門戶遠(yuǎn)程打開或關(guān)閉燈。一些系統(tǒng)提供與Alexa,谷歌等第三方合作伙伴的集成。
公司提供的設(shè)備可以收聽人聲并執(zhí)行用戶請求的操作。因此,將Light視為家庭自動化產(chǎn)品,將Alexa視為家庭自動化系統(tǒng)提供商的第三方合作伙伴,我們希望測試是否可以通過Alexa打開/關(guān)閉燈光。
要自動執(zhí)行 E2E 方案,我們需要使用上面討論的自動化框架執(zhí)行以下步驟。
1.準(zhǔn)備Alexa命令以打開英語的燈。
a.“Alexa,開燈”
2.將上述命令轉(zhuǎn)換為mp3文件
3.使用連接到自動化機(jī)器的揚(yáng)聲器在Alexa設(shè)備附近播放mp3文件。
4.在 wav 文件中記錄來自 Alexa 的響應(yīng)。
5.將音頻文件轉(zhuǎn)換為文本,可以是“確定,打開燈”或“燈已打開”。
6.使用預(yù)期的結(jié)果集驗證轉(zhuǎn)換后的文本。
7.In 驗證,只需提前一步,我們還可以使用以下方法驗證實際的物聯(lián)網(wǎng)燈狀態(tài):
a.REST API可用于從家庭安全系統(tǒng)獲取光狀態(tài)
b.可以完成網(wǎng)絡(luò)安全門戶的Web自動化以驗證光照狀態(tài)
c.如果光照狀態(tài)存儲在云數(shù)據(jù)庫中,我們可以從數(shù)據(jù)庫獲取數(shù)據(jù)以驗證狀態(tài)
結(jié)論
使用上述步驟,不僅可以僅使用一個支持語音的設(shè)備來測試系統(tǒng)集成或端到端測試,還可以通過組合多個客戶端或設(shè)備來測試系統(tǒng)。用戶可以使用Alexa對其中一個設(shè)備/產(chǎn)品執(zhí)行操作,并使用谷歌或門戶驗證其狀態(tài),反之亦然。例如,用戶要求 Google 打開指示燈,然后使用 Alexa/客戶門戶獲取指示燈狀態(tài)。
對于需要從設(shè)備到應(yīng)用程序的全面測試覆蓋的產(chǎn)品公司來說,eInfochips是首選合作伙伴。eInfochips 通過測試自動化、SDET(測試軟件開發(fā)工程師)、左移測試和 DevOps,節(jié)省了大量成本和工作量。
審核編輯:郭婷
-
Google
+關(guān)注
關(guān)注
5文章
1772瀏覽量
57840 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2914文章
44985瀏覽量
377541
發(fā)布評論請先 登錄
相關(guān)推薦
《CST Studio Suite 2024 GPU加速計算指南》
智能語音的驅(qū)動力:揭秘8腳語音芯片在智能設(shè)備中的非凡角色
九芯電子NRK330X系列:智能AI專用語音識別芯片
![九芯電子NRK330X系列:智能AI專<b class='flag-5'>用語音</b>識別芯片](https://file.elecfans.com/web2/M00/42/BC/pYYBAGJ6JAOAWhY7AAAjPnDlpp8975.jpg)
掃地機(jī)語音方案WT588F02B-8S,OTA升級支持在線更換語音,快速開發(fā)
KeyStone ll設(shè)備的硬件設(shè)計指南
![KeyStone ll<b class='flag-5'>設(shè)備</b>的硬件設(shè)計<b class='flag-5'>指南</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
物聯(lián)網(wǎng)系統(tǒng)中音頻方案的“大腦”_語音芯片
![物聯(lián)網(wǎng)系統(tǒng)中音頻方案的“大腦”_<b class='flag-5'>語音</b>芯片](https://file1.elecfans.com//web2/M00/07/B3/wKgaombqoM2AYL2RAAQrZ8e-uz8392.jpg)
PoE受電設(shè)備調(diào)試指南
![PoE受電<b class='flag-5'>設(shè)備</b>調(diào)試<b class='flag-5'>指南</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
電池負(fù)載測試:綜合指南
![電池負(fù)載<b class='flag-5'>測試</b>:綜合<b class='flag-5'>指南</b>](https://file1.elecfans.com/web2/M00/FD/50/wKgaomaUXmuAIccFAAT73s8Kv7E878.png)
智能設(shè)備中的語音是如何寫入語音芯片的
TC333LP使用MEMTEST寄存器啟用測試模式會導(dǎo)致總線錯誤的原因?
stm32f0怎么不使用語音IC做合成語音?
fpga通用語言是什么
智能聲控?zé)艟邞?yīng)用語音識別芯片AT6811
![智能聲控?zé)艟邞?yīng)<b class='flag-5'>用語音</b>識別芯片AT6811](https://file1.elecfans.com//web2/M00/C1/DA/wKgZomXe8dGAEt5uAABzPiYokGM234.png)
評論