主頁 > 軟體工程 > 百度大腦遠場語音開發套件評測—快速上手,超贊語音互動體驗

百度大腦遠場語音開發套件評測—快速上手,超贊語音互動體驗

2020-09-11 20:23:21 軟體工程

近年來,人工智能話題越來越熱,受到了更多人的關注,百度從2010年開始人工智能技術開發,到現在已有8年多的時間,目前百度AI技術專利在中國甚至世界上都是名列前茅,

我大概在18年末開始接觸到百度AI社區,通過使用文字識別、影像識別等百度AI技術,逐步感受到了AI技術的強大,同時也感覺到了百度AI技術的進步:AI技術領域范圍越來越廣泛,識別速度越來越快,識別準確度越來越高,這次,有幸收到百度遠場語音開發套件的測評邀請,作為一個非測驗專業人員,這里我就自己的百度遠場語音開發套件使用程序及在使用程序中遇到的問題和大家分享一下,如有錯誤,請多多指教,

一、開箱

整個包裝很簡潔,就是一個白色的長方形盒子,正上方印著“百度大腦”標識,

打開盒子后,首先映入眼球的是一份“百度語音遠場開發套件說明書”,里面介紹了硬體購成、開發資料等資訊,

拿出說明書,看到的是一個長方形的盒子,里面放著電源配接器、USB線,

拿出盒子后,便看到了百度遠場語音開發板主體了,被白色泡沫保護的很好,

接下來,一起具體看看遠場開發板的一些細節:

最后,看看百度遠場語音開發套件全家福:

百度大腦遠場語音開發套件,基于 RK3308 開發平臺打造,提供的麥克風選型適用于智能音箱、智能 家電、車載設備場景,整個開發套件包含麥克風陣列板、開發板、喇叭以及符合聲學要求的腔體, 支持聲源定位、噪聲消除等信號處理演算法,5 米內有效拾音,支持遠場喚醒、遠場識別、語音合成能 力,使語音開發評估更簡便、更高效,

RK3308 開發平臺,采用 64 位 4 核 ARMCortex-A35 處理器 RK3308 系列,整合了高性能 CODEC(8 通 道 ADC + 2 通道 DAC),直接支持最大 8 通道數字 MIC 陣列+回采,實作高精度聲音采集及分析,是 一款集多種功能為一體針對音頻類應用的 AI+IoT 開發平臺, 豐富的作業系統/服務支持,助力方便快速進行 AIOT 開發和產品應用,

關于百度遠場語音開發套件的更多介紹,可以參考這個鏈接:https://aim.baidu.com/product/b226a947-4660-4e27-83b4-877bf63b8627

 二、開發測驗 

本次測驗環境為Ubuntu 16.04 64ibt 虛擬機,開發平臺是RK3308,

登陸開發板后,可以進入/oem 目錄,里面有開發相關說明以及一些測驗示例,

(一)連接設備

1、安置在 adb 環境:sudo apt install adb

snow@snow-machine:~$ sudo apt install adb正在讀取軟體包串列... 完成正在分析軟體包的依賴關系樹       正在讀取狀態資訊... 完成       下列軟體包是自動安裝的并且現在不需要了:  snapd-login-service xdg-desktop-portal xdg-desktop-portal-gtk使用'sudo apt autoremove'來卸載它(它們),將會同時安裝下列軟體:  android-libadb android-libbase android-libcutils android-liblog下列【新】軟體包將被安裝:  adb android-libadb android-libbase android-libcutils android-liblog升級了 0 個軟體包,新安裝了 5 個軟體包,要卸載 0 個軟體包,有 6 個軟體包未被升級,需要下載 141 kB 的歸檔,解壓縮后會消耗 428 kB 的額外空間,您希望繼續執行嗎? [Y/n] y獲取:1 http://cn.archive.ubuntu.com/ubuntu xenial/universe amd64 android-liblog amd64 1:6.0.1+r16-3 [16.6 kB]獲取:2 http://cn.archive.ubuntu.com/ubuntu xenial/universe amd64 android-libbase amd64 1:6.0.1+r16-3 [9,014 B]獲取:3 http://cn.archive.ubuntu.com/ubuntu xenial/universe amd64 android-libcutils amd64 1:6.0.1+r16-3 [18.7 kB]獲取:4 http://cn.archive.ubuntu.com/ubuntu xenial/universe amd64 android-libadb amd64 1:6.0.1+r16-3 [53.2 kB]獲取:5 http://cn.archive.ubuntu.com/ubuntu xenial/universe amd64 adb amd64 1:6.0.1+r16-3 [44.0 kB]已下載 141 kB,耗時 2秒 (48.3 kB/s)正在選中未選擇的軟體包 android-liblog,(正在讀取資料庫 ... 系統當前共安裝有 215288 個檔案和目錄,)正準備解包 .../android-liblog_1%3a6.0.1+r16-3_amd64.deb  ...正在解包 android-liblog (1:6.0.1+r16-3) ...正在選中未選擇的軟體包 android-libbase,正準備解包 .../android-libbase_1%3a6.0.1+r16-3_amd64.deb  ...正在解包 android-libbase (1:6.0.1+r16-3) ...正在選中未選擇的軟體包 android-libcutils,正準備解包 .../android-libcutils_1%3a6.0.1+r16-3_amd64.deb  ...正在解包 android-libcutils (1:6.0.1+r16-3) ...正在選中未選擇的軟體包 android-libadb,正準備解包 .../android-libadb_1%3a6.0.1+r16-3_amd64.deb  ...正在解包 android-libadb (1:6.0.1+r16-3) ...正在選中未選擇的軟體包 adb,正準備解包 .../adb_1%3a6.0.1+r16-3_amd64.deb  ...正在解包 adb (1:6.0.1+r16-3) ...正在處理用于 libc-bin (2.23-0ubuntu11) 的觸發器 ...正在處理用于 man-db (2.7.5-1) 的觸發器 ...正在設定 android-liblog (1:6.0.1+r16-3) ...正在設定 android-libbase (1:6.0.1+r16-3) ...正在設定 android-libcutils (1:6.0.1+r16-3) ...正在設定 android-libadb (1:6.0.1+r16-3) ...正在設定 adb (1:6.0.1+r16-3) ...正在處理用于 libc-bin (2.23-0ubuntu11) 的觸發器 ...

 2、查看安裝結果:adb version

snow@snow-machine:~$ adb versionAndroid Debug Bridge version 1.0.32Revision debian

3、查看硬體是否連接:adb devices

snow@snow-machine:~$ adb devicesList of devices attachede9901a0bf326eb31    device

 4、連接硬體:adb shell 

snow@snow-machine:~$ adb shell/ # lsbin       lib       mnt       root      sys       usrdata      lib32     oem       run       tmp       vardev       linuxrc   opt       sbin      udisketc       media     proc      sdcard    userdata

 (二)WIFI連接

1、進入/data/cfg 進行wifi配置:cd /data/cfg

使用 vi 編輯 wpa_supplicant.conf:vi wpa_supplicant.conf

在設定好 wpa_supplicant.conf 后,可以通過如下命令來重新聯網:

wpa_cli reconfigurewpa_cli reconnect

 注意:第一次操作,呼叫 wpa_cli reconfigure 命令出錯:

/userdata/cfg # wpa_cli reconfigureFailed to connect to non-global ctrl_ifname: (nil)  error: No such file or directory

 切換聯網命令:wpa_supplicant -B -i wlan0 -c 

/userdata/cfg # wpa_supplicant -B -i wlan0 -c /data/cfg/wpa_supplicant.confSuccessfully initialized wpa_supplicant/userdata/cfg # wpa_cli reconfigureSelected interface 'wlan0'OK/userdata/cfg # wpa_cli reconnectSelected interface 'wlan0'OK

 雖然顯示操作成功,但是查看網路連接,發現還是未成功連接(可以看到wlan0并未顯示IP地址):

/userdata/cfg # ifconfiglo        Link encap:Local Loopback            inet addr:127.0.0.1  Mask:255.0.0.0          UP LOOPBACK RUNNING  MTU:65536  Metric:1          RX packets:0 errors:0 dropped:0 overruns:0 frame:0          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)p2p0      Link encap:Ethernet  HWaddr C6:60:34:AC:2C:AA            UP BROADCAST MULTICAST  MTU:1500  Metric:1          RX packets:0 errors:0 dropped:0 overruns:0 frame:0          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1000           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)wlan0     Link encap:Ethernet  HWaddr C4:60:34:AC:2C:AA            UP BROADCAST MULTICAST  MTU:1500  Metric:1          RX packets:1 errors:0 dropped:0 overruns:0 frame:0          TX packets:1 errors:0 dropped:12 overruns:0 carrier:0          collisions:0 txqueuelen:1000           RX bytes:8555 (8.3 KiB)  TX bytes:7900 (7.7 KiB)

 重啟系統(如果一次不行,可以進行多次重啟),最后成功了(可以看到wlan0顯示了分配的IP地址-192.168.1.110):

/userdata/cfg # reboot/ # ifconfiglo        Link encap:Local Loopback            inet addr:127.0.0.1  Mask:255.0.0.0          UP LOOPBACK RUNNING  MTU:65536  Metric:1          RX packets:0 errors:0 dropped:0 overruns:0 frame:0          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)p2p0      Link encap:Ethernet  HWaddr C6:60:34:AC:2C:AA            UP BROADCAST MULTICAST  MTU:1500  Metric:1          RX packets:0 errors:0 dropped:0 overruns:0 frame:0          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1000           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)wlan0     Link encap:Ethernet  HWaddr C4:60:34:AC:2C:AA            inet addr:192.168.1.110  Bcast:192.168.1.255  Mask:255.255.255.0          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1          RX packets:11 errors:0 dropped:0 overruns:0 frame:0          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1000           RX bytes:2234 (2.1 KiB)  TX bytes:1481 (1.4 KiB)

 

 (三)運行語音識別示例

進入/oem目錄,查看語音能力相關檔案: cd oem

/oem # ls1K.wav             libbd_alsa_audio_client.soBDSpeechSDK           libbd_audio_vdev.soRkLunch.sh            lost+foundalsa_audio_main_service     readme.txtconfig_open_platfrom_rk3308_4_2.lst  setup.shenvironment.md          versionlibbdSPILAudioProc.so

 

 查看檔案說明:cat readme.txt

libbdSPILAudioProc.somd5:29669122675b50bb21f738014dc04fe5libbd_audio_vdev.somd5:8184b0a37c4037cc2264fee6518ed8a8libbd_alsa_audio_client.somd5:ec46e6c27734a1c684b1ab8fab762fe6集成和使用說明:1. push庫到設備上   adb push lib/libbdSPILAudioProc.so /data   adb push lib/libbd_audio_vdev.so /data   adb push lib/libbd_alsa_audio_client.so /data   adb push conf/config_open_platfrom_rk3308_4_2.lst /data   adb push setup.sh /data   adb push bin/alsa_audio_main_service /data   adb push bin/alsa_audio_client_sample /data   adb shell sync2. 創建目錄,修改權限   adb shell;cd /data   chmod +x alsa_audio_*   chmod +x setup.sh3. 運行main service   ./setup.sh   ./alsa_audio_main_service multi_4_2 &   hw:0,0是對應的錄音設備的聲卡號和device號,也可以配置asound.conf,使用邏輯pcm設備名4. 運行app,比如duer_linux, 需要添加/data目錄到duer_linux的動態庫鏈接路徑中   也可以運行我們的sample程式   ./alsa_audio_client_sample   在當前目錄下會保存經過信號處理的錄音檔案dump_pcm.pcm,是雙聲道,16K,小端,16bit位深音頻,保存原始錄音資料的方法:    啟動錄音前運行:    mkdir -p /data/local/aw.so_profile    touch  /data/local/aw.so_profile/dump_switch    touch  /data/local/aw.so_profile/dump_switch_wakets    mkdir -p /data/local/aud_rec/    chmod 777 /data/local/aud_rec/        看看組態檔的目錄AUDCAP_DBG_SWICH        "/tmp/aw.so_profile/"AUDCAP_DBG_FLDER        "/tmp/aud_rec/"AUDCAP_DBG_SAVED        "/tmp/aud_rec/last/"在/data/local/aud_rec目錄下會保存4路麥克風資料和2路參考資料,一路識別資料,一路喚醒資料,檔案的資料格式都是: 16KHz、小端、16bit、單聲道

 

根據檔案,相關檔案應該在data目錄下,但是實際操作發現,相關檔案在oem目錄下,故進入oem目錄,執行操作:

主要是運行以下四個命令(該命令是修改權限,啟動 alsa_audio_main_service服務,根據說明書,使用語音識別功能需要先啟動alsa服務):

chmod +x alsa_audio_*chmod +x setup.sh	./setup.sh./alsa_audio_main_service multi_4_2 &

 執行上述命令后,可使用ps命令檢測alsa服務是否正確啟動:ps –A|grep alsa

 

根據說明書,BDSpeechSDK 目錄下的sample目錄中包含語音識別示例,由于語音識別運行時依賴lib、resources、extern目錄中的庫及資源檔案,所以我們需要在啟動時共享庫,

關于共享庫可以看這里:https://www.cnblogs.com/mylinux/p/4955448.html

進入目錄,運行語音識別示例:

cd /oem/BDSpeechSDK/sample/wakeupLD_LIBRARY_PATH=/oem ./e2e_wp_asr_test

 

喊“小度小度,今天天氣怎么樣”的識別結果:

可以發現,本開發套件采用了流式識別,附帶中間結果!

(四)語音識別效果測驗

通過距離遠近,語速快慢,中間是否有隔離物(隔離物為電腦桌,顯示屏)等方式,對本開發套件進行了一次粗略的測驗:

一米處:

有隔離:“一米一次喚醒測驗”

有隔離,語速較快:“一米二次喚醒測驗”

有隔離,語速較快:“今天天氣怎么樣”

無隔離,正常語速:“一米三次喚醒測驗”

無隔離,語速較快:“今天天氣怎么樣”

2米處:(無隔離,正常語速)

“兩米一次喚醒測驗"

“兩米二次喚醒測驗”

“天天氣比較涼爽”

3米處:(無隔離,正常語速)

“三米一次喚醒測驗”

“三米二次喚醒測驗”

“聽說明天有臺風”

5米處:(無隔離,正常語速)

“五米一次喚醒”

 

“五米二次喚醒”

“臺風來了怎么辦”

6米處:(無隔離,正常語速)

注:首先需要較大聲喚醒小度,喚醒后,可識別正常音量的聲音:

“六米一次喚醒”

“六米二次喚醒”

 “今天天氣好晴朗”

測驗結果:

經過上述的語音識別測驗,可以發現,本套件在5米內可以達到比較良好的喚醒、識別效果,超過5米后,喚醒、識別效果下降比較明顯,

另外,對于一般性的用語,識別相當準確(即使達到6米,也能比較準確的識別),但是對于讀音相近的詞語(“一米”-“玉米”,“兩米”-“楊冪”等),識別準確性就有點差了(也可能跟發音有關),

發音源跟套件之間是否有隔離物(非完全隔離),對識別的影響不是很大(沒有讀音的影響大),

語速不是很快的情況下,一般也能正常識別,

總體而言,對識別結果影響較大的,除了距離外,就是讀音相近的詞語(發音)了,

(五)藍牙連接

輸入命令 :bt_realtek_start 即可啟動藍牙:

打開電腦的藍牙,可以發現名為realtek_bt的藍牙設備,嘗試進行配對:

配對成功:

配對成功后,就可以用藍牙進行音樂播放等操作了,
斷開藍牙連接:

測驗發現的問題:

1、初次打開藍牙播放音頻時,聲音過大,調整聲音后,又發現最大聲音音量有的小了,

2、雖然本套件藍牙可以一次性連接多個藍牙(我嘗試了連接兩個藍牙設備),但是,兩個連接成功后,當用一個藍牙設備播放音樂,然后停止,再用另一個藍牙設備播放音樂時,發現播放失敗,只能用之前的那個藍牙設備播放音樂,

(六)錄音、播放音頻測驗

 查看tmp目錄內容:cd tmp

進行錄音:arecord -D hw:2,0 -c 8 -r 16000 -f S16_LE  /tmp/test.wav

結束錄音后,查看目錄檔案資訊:

使用 aplay 命令就可以播放錄音檔案:aplay test.wav

錄音效果還是不錯的,

(七)語音合成測驗

示例程式會將文本“456hello你好今天天氣不錯”傳送給服務器,由服務器生成對應的語音,保存為pcm檔案,用戶可以進行播放體驗,
進入語音合成示例目錄:cd /oem/BDSpeechSDK/sample/tts

執行語音合成操作:LD_LIBRARY_PATH=/oem ./online-test:

運行結束后,會在當前目錄下生成一個xxx.pcm,其中xxx是一個測驗時的時間戳.在終端執行如下命令體驗語音合成效果:aplay -t raw -c 1 -f S16_LE -r 16000 xxx.pcm

 (八)交叉編譯

 1、下載SDK 

將rk3308板子內的oem內的BDSpeechSDK目錄復制到虛擬機內,可以進行adb pull /oem/BDSpeechSDK指令download下來,隨后將sdk放到虛擬機,

我這里就直接將整個/oem 目錄下載放到了“下載”目錄,

2、交叉工具鏈: 

鏈接: https://pan.baidu.com/s/1lEuFlAqfxhAsMQGmFJswTA

提取碼: we2t

rk3308的編譯在標準linux上是編不出來的,我們這里需要用到交叉編譯工具鏈,這是一個特殊的編譯器,可以認為是在A平臺編譯出B平臺才能運行的工具包,

我這里將交叉編譯鏈復制到虛擬機的桌面上了,

3、按要求構建專案工程目錄結構 

mkdir myProjectcd myProjecttouch Makefilemkdir srctouch src/main.cpp

 創建如下的目錄結構:

myProject/├── Makefile└── src     └── main.cpp

撰寫(copy) sample代碼

目錄sample/wakeup/src中的e2e_wp_asr_test.cpp中有相應的demo代碼,這里我就直接將wakeup/src中的sample代碼拷貝到這里替換main.cpp

這里先不做任何改動,就照搬就行,目前的第一目的是盡快正確交叉編譯并成功在板子上跑起來, 

 撰寫(copy) Makefile代碼

 makefile可以幫助工程快速連接編譯,它能省掉很多功夫,由于本人不是純正的c++開發工程師,所以這里copy了 sample/wakeup/ 中的Makefile代碼:

#make src=https://www.cnblogs.com/AIBOOM/p/src/include/include/extern/extern/include/extern/extern/lib -lzlog -llongconnect -lnghttp2 -lcurl -lssl -lcrypto -lz -lAudioEncoder -liconv -lAudioDecoder -lhttpDNS -lbd_alsa_audio_client -lgomp -lrt -ldl -lpthreadifneq ($(strip $(SYS_ROOT)),)MY_SYS_ROOT=--sysroot=$(SYS_ROOT)endifSRC_PATH=./srcSRC_FILE=$(shell cd $(SRC_PATH)&&echo *.cpp)SRC=$(foreach n,$(SRC_FILE),$(SRC_PATH)/$(n))$(TARGET):$(SRC)    $(CXX) -o $(TARGET) ./$(FILE_NAME) $(MY_SYS_ROOT) $(INCLUDE) $(CPPFLAGS)#cleanLIST_ALL_FILES=$(shell find . -maxdepth 1)SOURCES=. ./Makefile ./srcRM_FILES=$(filter-out $(SOURCES),$(LIST_ALL_FILES))clean:    -rm -rf $(RM_FILES)

 嘗試編譯: 

配置完成后,需要在Makefile所在的目錄執行:

export PATH=/home/snow/桌面1/rk3308_arm_tool_chain/bin:$PATHmake FILE_NAME=src/main.cpp SYS_ROOT=/home/snow/桌面1/rk3308_arm_tool_chain/arm-rockchip-linux-gnueabihf/sysroot

上述陳述句中的 /home/snow/桌面1/rk3308_arm_tool_chain 代表著工具鏈rk3308_arm_tool_chain的根目錄/bin,如果路徑填寫錯誤,會出現如下錯誤:

 

make: arm-rockchip-linux-gnueabihf-g++:命令未找到

 可以進入rk3308_arm_tool_chain 目錄 ,使用pwd命令獲取rk3308_arm_tool_chain 的路徑:

 

使用正確的路徑,重新編譯:

export PATH=/home/snow/桌面/rk3308_arm_tool_chain/bin:$PATHmake FILE_NAME=src/main.cpp SYS_ROOT=/home/snow/桌面/rk3308_arm_tool_chain/arm-rockchip-linux-gnueabihf/sysroot

 

如果出現上述錯誤,說明缺少alsa的so庫,我們可以從oem目錄中pull一個檔案下來,他在/oem目錄下,名為libbd_alsa_audio_client.so,將它復制到BDSpeechSDK/lib下,這個目錄專門放外部依賴的庫檔案,這個也放這里吧,

然后再次嘗試編譯,沒有任何錯誤提示了,編譯通過,

編譯成功,發現工程目錄下多了一個main檔案,這就是我們編譯好的可執行程式了,

將main可執行程式復制到/tmp目錄(tmp目錄在斷電后會清空)下:adb push ./main /tmp

運行程式:

LD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main

出現錯誤: 

error:5, domain:38, desc:Wakeup: dat file invalid., sn:

 這里意思是沒成功載入dat檔案,

我們看一下代碼,在wakeup_config函式中,可以看到它配置dat檔案的路徑,是../../resources/asr_resource/esis_resource.pkg
只要把這個層級改成絕對路徑,或者把路徑改短 ./esis_resource.pkg,并把pkg檔案拷貝過來即可,

 

然后重新編譯,adb push到tmp下,

還是這個錯誤,那是因為雖然改了檔案路徑,但是我們還沒有把 esis_resource.pkg 也push到tmp檔案夾里,進入 /home/snow/下載/oem/BDSpeechSDK/resources/asr_resource 檔案夾,執行 adb push ./esis_resource.pkg /tmp:

再次執行,出現錯誤:error:-1, domain:10, desc:alsa_audio_client_open failed, sn: ,

因為我們的main也依賴于alsa的服務,所以需要開啟alsa服務:

cd /oemchmod +x alsa_audio_*chmod +x setup.sh./setup.sh./alsa_audio_main_service multi_4_2 &

 

或者可以將上述陳述句寫入 /oem/Rklunch.sh 檔案,這個檔案是rk3308板子開機后會跑的一個執行檔案,我們可以把所有需要在開機時啟動的東西,都寫在這個檔案里,這樣板子下次就會幫我們自動啟動alsa了,

執行成功后,再次運行main程式:

cd /tmp
LD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main

執行成功,

(九)交叉編譯-語音合成

按照上面的方法,我們可以編譯一下語音合成示例(可以把合成的文字改為自己喜歡的,我這里就改成了“Hello World,今天時七夕情人節,中國的傳統節日!”,有條件的,可以嘗試輸入文本,再合成語音),

編譯程式:

上述警告可以忽略,
把編譯完成的可執行檔案下載到開發板并運行:

出現錯誤,仔細查看源代碼,發現main 函式中需要參考組態檔speech_sdk_log.conf,但路徑為 ../../resources/speech_sdk_log.conf:

并將speech_sdk_log.conf檔案push到/tmp路徑下:

重新執行:

LD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main

 

執行成功,可以看到/tmp目錄多了一個6832.pcm檔案,運行命令 aplay -t raw -c 1 -f S16_LE -r 16000 6832.pcm,執行后,就能播放女生版的語音內容了,

 

三、產品建議 

經過一個星期的測驗,發現百度遠場語音開發套件在語音喚醒、語音識別方面比較出色,識別率整體上準確很高,如果在發音相似的詞語方面多加訓練,效果會更好,此外根據個人的使用感受在產品的功能上提一些建議:

1、 提升音質,語音多樣化

未來提供更多不同風格的發音人,并可以讓用戶自主選擇,分別在進行購物、查詢資訊、播放音瞥澩等不同場景下有更多的音色供選擇適配,讓“小度”逐漸人性化、個性化,

2、 完善語音互動功能

提供更高質量的語音互動功能,加強對話理解和對話管理技術以及只是建設能力,通過不斷的練習,讓音箱能夠更加“理解”用戶的話語意思, 給用戶提供更加準確的結果,輕松定制專業、可控、穩定的完整語音互動能力,

3、 音色識別

在語音互動中,通過聲紋識別不同用戶音色,根據音色判斷互動內容并理解,可以將此功能利用在聲紋解鎖以及語音互動理解中,包括多人說話時執行命令的優先級,

語音互動未來可發揮的空間很大,但是現在的語音互動功能還不那么廣泛的,不過相信只要堅持發展,保持資料收集、場景優化,未來一定會在各個領域有更深度的拓展,

作者 :讓天涯

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/7260.html

標籤:其他

上一篇:百度大腦EdgeBoard計算卡基于Resnet50/Mobile-SSD模型的性能評測

下一篇:PCES - alpha階段測驗報告

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • Git本地庫既關聯GitHub又關聯Gitee

    創建代碼倉庫 使用gitee舉例(github和gitee差不多) 1.在gitee右上角點擊+,選擇新建倉庫 ? 2.選擇填寫倉庫資訊,然后進行創建 ? 3.服務端已經準備好了,本地開始作準備 (1)Git 全域設定 git config --global user.name "成鈺" git c ......

    uj5u.com 2020-09-10 05:04:14 more
  • CODING DevOps 代碼質量實戰系列第二課,相約周三

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。**《DevOps 代碼質量實戰(PHP 版)》**為 CODING DevOps 代碼質量實戰系列的第二課,同時也是本系列的 PHP ......

    uj5u.com 2020-09-10 05:07:43 more
  • 推薦Scrum書籍

    推薦Scrum書籍 直接上干貨,推薦書籍清單如下(推薦有順序的哦) Scrum指南 Scrum精髓 Scrum敏捷軟體開發 Scrum捷徑 硝煙中的Scrum和XP : 我們如何實施Scrum 敏捷軟體開發:Scrum實戰指南 Scrum要素 大規模Scrum:大規模敏捷組織的設計 用戶故事地圖 用 ......

    uj5u.com 2020-09-10 05:07:45 more
  • CODING DevOps 代碼質量實戰系列最后一課,周四發車

    隨著 ToB(企業服務)的興起和 ToC(消費互聯網)產品進入成熟期,線上故障帶來的損失越來越大,代碼質量越來越重要,而「質量內建」正是 DevOps 核心理念之一。 **《DevOps 代碼質量實戰(Java 版)》**為 CODING DevOps 代碼質量實戰系列的最后一課,同時也是本系列的 ......

    uj5u.com 2020-09-10 05:07:52 more
  • 敏捷軟體工程實踐書籍

    Scrum轉型想要做好,第一步先了解并真正落實Scrum,那么我推薦的Scrum書籍是要看懂并實踐的。第二步是團隊的工程實踐要做扎實。 下面推薦工程實踐書單: 重構:改善既有代碼的設計 決議極限編程 : 擁抱變化 代碼整潔代碼 程式員的職業素養 修改代碼的藝術 撰寫可讀代碼的藝術 測驗驅動開發 : ......

    uj5u.com 2020-09-10 05:07:55 more
  • Jenkins+svn+nginx實作windows環境自動部署vue前端專案

    前面文章介紹了Jenkins+svn+tomcat實作自動化部署,現在終于有空抽時間出來寫下Jenkins+svn+nginx實作自動部署vue前端專案。 jenkins的安裝和配置已經在前面文章進行介紹,下面介紹實作vue前端專案需要進行的哪些額外的步驟。 注意:在安裝jenkins和nginx的 ......

    uj5u.com 2020-09-10 05:08:49 more
  • CODING DevOps 微服務專案實戰系列第一課,明天等你

    CODING DevOps 微服務專案實戰系列第一課**《DevOps 微服務專案實戰:DevOps 初體驗》**將由 CODING DevOps 開發工程師 王寬老師 向大家介紹 DevOps 的基本理念,并探討為什么現代開發活動需要 DevOps,同時將以 eShopOnContainers 項 ......

    uj5u.com 2020-09-10 05:09:14 more
  • CODING DevOps 微服務專案實戰系列第二課來啦!

    近年來,工程專案的結構越來越復雜,需要接入合適的持續集成流水線形式,才能滿足更多變的需求,那么如何優雅地使用 CI 能力提升生產效率呢?CODING DevOps 微服務專案實戰系列第二課 《DevOps 微服務專案實戰:CI 進階用法》 將由 CODING DevOps 全堆疊工程師 何晨哲老師 向 ......

    uj5u.com 2020-09-10 05:09:33 more
  • CODING DevOps 微服務專案實戰系列最后一課,周四開講!

    隨著軟體工程越來越復雜化,如何在 Kubernetes 集群進行灰度發布成為了生產部署的”必修課“,而如何實作安全可控、自動化的灰度發布也成為了持續部署重點關注的問題。CODING DevOps 微服務專案實戰系列最后一課:**《DevOps 微服務專案實戰:基于 Nginx-ingress 的自動 ......

    uj5u.com 2020-09-10 05:10:00 more
  • CODING 儀表盤功能正式推出,實作作業資料可視化!

    CODING 儀表盤功能現已正式推出!該功能旨在用一張張統計卡片的形式,統計并展示使用 CODING 中所產生的資料。這意味著無需額外的設定,就可以收集歸納寶貴的作業資料并予之量化分析。這些海量的資料皆會以圖表或串列的方式躍然紙上,方便團隊成員隨時查看各專案的進度、狀態和指標,云端協作迎來真正意義上 ......

    uj5u.com 2020-09-10 05:11:01 more
最新发布
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:41:12 more
  • windows系統git使用ssh方式和gitee/github進行同步

    使用git來clone專案有兩種方式:HTTPS和SSH:
    HTTPS:不管是誰,拿到url隨便clone,但是在push的時候需要驗證用戶名和密碼;
    SSH:clone的專案你必須是擁有者或者管理員,而且需要在clone前添加SSH Key。SSH 在push的時候,是不需要輸入用戶名的,如果配置... ......

    uj5u.com 2023-04-19 08:35:34 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:05:44 more
  • 2023年農牧行業6大CRM系統、5大場景盤點

    在物聯網、大資料、云計算、人工智能、自動化技術等現代資訊技術蓬勃發展與逐步成熟的背景下,數字化正成為農牧行業供給側結構性變革與高質量發展的核心驅動因素。因此,改造和提升傳統農牧業、開拓創新現代智慧農牧業,加快推進農牧業的現代化、資訊化、數字化建設已成為農牧業發展的重要方向。 當下,企業數字化轉型已經 ......

    uj5u.com 2023-04-18 08:00:18 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:20:31 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:55 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:18:51 more
  • 談一談我對協同開發的一些認識

    如今各互聯網公司普通都使用敏捷開發,采用小步快跑的形式來進行專案開發。如果是小專案或者小需求,那一個開發可能就搞定了。但對于電商等復雜的系統,其功能多,結構復雜,一個人肯定是搞不定的,所以都是很多人來共同開發維護。以我曾經待過的商城團隊為例,光是后端開發就有七十多人。 為了更好地開發這類大型系統,往 ......

    uj5u.com 2023-04-17 08:18:00 more
  • 專案管理PRINCE2核心知識點整理

    PRINCE2,即 PRoject IN Controlled Environment(受控環境中的專案)是一種結構化的專案管理方法論,由英國政府內閣商務部(OGC)推出,是英國專案管理標準。
    PRINCE2 作為一種開放的方法論,是一套結構化的專案管理流程,描述了如何以一種邏輯性的、有組織的方法,... ......

    uj5u.com 2023-04-17 08:17:55 more
  • 計算機組成原理—存盤器

    計算機組成原理—硬體結構 二、存盤器 1.概述 存盤器是計算機系統中的記憶設備,用來存放程式和資料 1.1存盤器的層次結構 快取-主存層次主要解決CPU和主存速度不匹配的問題,速度接近快取 主存-輔存層次主要解決存盤系統的容量問題,容量接近與價位接近于主存 2.主存盤器 2.1概述 主存與CPU的聯 ......

    uj5u.com 2023-04-17 08:12:06 more