關鍵詞:高校招生咨詢;NAO機器人;智能語音交互
中圖分類號:TP242 文獻標識碼:A
文章編號:1009-3044(2024)26-0014-03開放科學(資源服務)標識碼(OSID) :
0 引言
人工智能技術(shù)的飛速發(fā)展為人們的工作、生活帶來了極大的便利;同時,人工智能的應用場景也滲透到社會的各個角落,促進了社會生產(chǎn)力的提高。在當前迅猛的技術(shù)浪潮中,智能對話系統(tǒng)作為人工智能領域的一個重要分支,通過模擬人類的交流方式,將具備語音識別技術(shù)的智能設備融入人類的語音交流中,使得人與機器之間的互動變得簡單而自然[1]。
智能機器人是人工智能最好的載體,在人-機器人交互活動中更是如此。雙足類人機器人具備接近人類的身體形態(tài);在與人交互的活動中,相比其他類型的機器人有著更好的交互效果。同時,智能機器人與人類進行語言交流是一種非常自然的交互方式,國內(nèi)外對此開展了大量的研究工作,這些研究有助于機器人發(fā)展語言智能與認知智能。另外,通過挖掘和優(yōu)化智能對話的潛力,不僅能夠提升機器人的語言理解和生成能力,還能探索如何使機器人更好地理解人類情感和意圖,這對于提升人-機器人交互的自然性和親和力具有重要意義[2-4]。
綜合評價招生考試是中國高等教育招生模式的一種探索和創(chuàng)新,旨在打破傳統(tǒng)單一的以高考成績?yōu)橹鞯恼猩绞?,推進素質(zhì)教育和綜合評價體系的建立。高考前,考生及其家長常常參加目標高校的招生咨詢活動,意圖充分了解目標高校關于綜合評價招生模式的細節(jié),進而明確報考意愿。然而,在高校的招生咨詢活動中,相對考生及其家長來說,咨詢老師人數(shù)較少,排隊等候情況嚴重;同時,咨詢老師對于一些常見的問題,需要給多位考生及其家長重復解答,工作量很大。鑒于這樣的現(xiàn)實需求,利用機器人提供智能語音交互就顯得尤為必要。因此,本文基于NAO機器人及本地計算機、遠程服務器,實現(xiàn)了一個機器人智能語音交互系統(tǒng)。
1 研究現(xiàn)狀
人-機交互技術(shù)是人工智能領域的重要研究方向之一,其研究重點在于建立和加強人與機器之間的聯(lián)系。這個方向的研究始終圍繞著如何讓機器更好地服務于人類。自機器發(fā)明以來,其根本目標就是為人類提供便利和服務;如果機器不能被人類所使用,那么無論它的功能多么豐富和復雜,皆毫無價值[5]。因此,在研究人-機交互時,需要特別注重其功能性和可用性,以確保機器能夠真正被人類使用。
在過去的十多年中,人-機交互研究取得了巨大發(fā)展,包括但不限于動作識別、語音識別和智能交互等多個方面。胡寧等[6]基于NAO機器人,結(jié)合Kinect 傳感器和卷積神經(jīng)網(wǎng)絡,成功實現(xiàn)了人體動作捕捉、模仿和識別,構(gòu)建了一套完整的人-機交互系統(tǒng)。這一系統(tǒng)的建立不僅展示了人-機交互技術(shù)的先進性,還提供了一個全新的視角,從而能更深入地理解和探索人-機交互的可能性。
北京交通大學的陳艷華等[7]利用智能交互技術(shù)開發(fā)了車載語音系統(tǒng),通過全語音交互方式提升駕駛者行車的安全性,同時滿足其娛樂需求。這一系統(tǒng)的開發(fā)不僅符合市場需求,還為行車安全提供了一種新的保障;該系統(tǒng)的上線標志著智能交互技術(shù)在實際應用中的一大突破。何昕等人基于NRLBP的行人識別算法,通過圖像預處理、特征提取和目標檢測等步驟,成功實現(xiàn)了對NAO機器人的行人識別。這一成果展示了人-機交互技術(shù)在行人識別方面的應用,還能夠為人們的日常生活提供更多便利[8]。
馬文濤等[9]致力于設計面向NAO機器人的語音識別系統(tǒng),深入研究語音識別技術(shù)和算法,基于Mel頻譜倒譜系數(shù)的特征提取方法以及HMM模型,實現(xiàn)了智能交互,并搭建了基于HMM模型的NAO機器人語音識別系統(tǒng)聯(lián)合實驗平臺,為智能機器人提供智能服務打下了重要基礎。張海嘉[10]設計并實施了基于Ki?nect的人形機器人遠程控制系統(tǒng),成功實現(xiàn)了人體動作的精確追蹤和控制,為傳統(tǒng)人形機器人控制技術(shù)帶來了新的突破。
北方民族大學的白偉華[11]基于OpenCV開源視覺庫開展了人臉識別研究;通過Adaboost算法實現(xiàn)了人臉檢測,并基于PCA和LBP實現(xiàn)了人臉識別算法,然后在NAO機器人上進行了應用測試,最終在人-機交互上取得了良好效果?;谏疃葘W習技術(shù),韓曉帥[12]設計了一種新型的智能化人機交互系統(tǒng),該系統(tǒng)結(jié)合了手勢識別模塊、物體檢測模塊和機器人定位抓取模塊,最終成功實現(xiàn)了通過手勢交互引導機器人抓取物體的場景。上海交通大學的肖義涵[13]基于NAO機器人的人-機交互,實現(xiàn)了對前景分割-目標跟蹤框架的研究,探索了實時快速交互目標的跟蹤。
2NAO機器人
NAO機器人是一款性能強大且應用廣泛的雙足類人機器人,擁有25個自由度,并配備了多種傳感器(如麥克風、揚聲器、攝像頭和壓力傳感器等)。它運行嵌入式Linux操作系統(tǒng),允許使用C++或Python語言進行編程控制。由于其功能強大,NAO機器人在醫(yī)療康復、科普教育、科學研究和家庭娛樂等領域得到了廣泛應用。
3系統(tǒng)設計
如圖2所示,本文設計的機器人智能語音交互系統(tǒng)框架由NAO機器人、本地計算機和遠程服務器等3部分構(gòu)成。其中,NAO機器人主要提供人-機器人語音交互接口,包括語音采集、語音播報和網(wǎng)絡通信等功能模塊。本地計算機主要作為網(wǎng)絡數(shù)據(jù)中轉(zhuǎn)站和NAO機器人編程控制環(huán)境。而遠程服務器則承擔語音識別、語義理解和對話生成的功能,這些功能通過加載開源或商業(yè)模型來實現(xiàn)。
具體而言,NAO機器人在語音采集后生成ogg格式的數(shù)據(jù)文件,并通過網(wǎng)絡傳輸至本地計算機,然后上傳至遠程服務器1。在遠程服務器1上,語音識別模型執(zhí)行語音預處理及語音轉(zhuǎn)文本的工作,結(jié)果返回至本地計算機。本地計算機將識別出的文本內(nèi)容上傳至遠程服務器2,由遠程服務器2中的智能對話模型進行對話生成。生成的對話結(jié)果以文本形式通過本地計算機回傳至NAO機器人,最后,NAO機器人將對話生成的文本內(nèi)容進行語音播報。通過這一流程,實現(xiàn)了一輪人-機器人之間的智能語音對話。
4 系統(tǒng)實現(xiàn)
本系統(tǒng)的軟件實驗環(huán)境如表1所示,分別展示了在NAO機器人、本地計算機、遠程服務器上的軟件或模塊信息。
在本系統(tǒng)的實現(xiàn)過程中,需要通過Choregraphe編程控制環(huán)境來實現(xiàn)NAO機器人的語音采集、網(wǎng)絡傳輸和語音播報功能。首先,與NAO機器人互動以獲取其IP地址,然后根據(jù)該IP地址連接到NAO機器人,如圖3 所示。在Choregraphe編程控制環(huán)境初始的root界面中,通過右下角的指令盒庫找到Record Sound指令模塊,將其拖拽到root界面中的空白處,并將模塊重命名為Record,并將其識別語音改為中文。接下來,右鍵單擊空白界面,創(chuàng)建一個名為Transfer的Python新指令盒,通過TCP/IP協(xié)議及Socket技術(shù)實現(xiàn)音頻文件的網(wǎng)絡傳輸;并繼續(xù)創(chuàng)建一個名為Answer的Python新指令盒,通過調(diào)用名為ALTextToSpeech的NAOqi函數(shù)庫來實現(xiàn)文本轉(zhuǎn)語音的播報。最后,從onStart指令模塊出發(fā),依次連接Record、Transfer、Answer模塊,最終至onStopped指令模塊,完成在Choregraphe編程控制環(huán)境中本系統(tǒng)NAO機器人功能模塊的可視化實現(xiàn),如圖4所示。
在本地計算機中,基于TCP/IP協(xié)議及Socket 技術(shù),分別編碼實現(xiàn)了與NAO機器人、遠程服務器1、遠程服務器2之間的網(wǎng)絡通信與數(shù)據(jù)傳輸功能。其中,本地計算機與NAO機器人的具體通信實現(xiàn)步驟包括:
1) 定義一個用于接收信息的函數(shù),該函數(shù)接受三個參數(shù):要保存的音頻文件名、接收端的IP地址和接收端的端口號。在函數(shù)內(nèi)部,創(chuàng)建一個socket 對象server_socket,使用IPv4和TCP協(xié)議作為參數(shù)。
2) 將主機(host) 和端口(port) 綁定到server_socket 上,以便監(jiān)聽來自發(fā)送端的連接請求;然后,開始監(jiān)聽連接,參數(shù)為1表示最大連接數(shù)為1。
3) 等待發(fā)送端的連接請求。一旦有連接請求,會返回一個新的socket對象client_socket和發(fā)送端的地址信息client_address。使用文件創(chuàng)建語句創(chuàng)建一個以二進制寫入模式打開的文件對象,用于保存接收到的音頻數(shù)據(jù)。在一個循環(huán)中,從client_socket接收數(shù)據(jù),每次接收1024字節(jié)。如果接收到的數(shù)據(jù)為空,則跳出循環(huán);否則,將接收到的數(shù)據(jù)寫入文件。
4) 關閉server_socket連接。遠程服務器1提供語音預處理和語音識別服務,而遠程服務器2提供文本對話生成服務。在本地計算機與遠程服務器1通信之前,需要將音頻文件轉(zhuǎn)換為PCM格式。在與遠程服務器2 通信之前,需要定義處理函數(shù)(如on_error、on_close等函數(shù)),用于處理Socket連接的各種事件。在正確設置API密鑰和相關參數(shù)后,本地計算機實現(xiàn)了對遠程服務器1的訪問,使用語音預處理和識別服務;另外,提供正確的應用ID、API密鑰、領域名稱等參數(shù)后,訪問遠程服務器2以使用文本對話生成服務;最終,本地計算機將生成的文本對話返回給NAO機器人,由NAO 機器人實現(xiàn)語音播報,完成與人的語音交互。
本系統(tǒng)在紹興文理學院進行了實際測試,結(jié)果顯示該系統(tǒng)能夠有效地支持高考招生咨詢活動,達到了設計目標。
5 結(jié)束語
本文介紹了一個用于高校招生咨詢場景的機器人智能語音交互系統(tǒng)。雖然該系統(tǒng)當前僅應用于高校招生咨詢場景,其核心價值在于構(gòu)建了一個基于云機器人的智能語音交互平臺和友好的人-機器人交互方式。未來,該系統(tǒng)可以輕松遷移到其他語音會話場景,如商業(yè)接待、科普教育和醫(yī)療康復等。
NAO機器人在人工智能的科學探索和工程應用中取得了顯著成績。在智能問答領域,NAO機器人作為有效的人-機器人交互媒介,也展示出了巨大的潛力。通過整合語音識別、自然語言處理和機器學習等技術(shù),NAO機器人能夠更智能地理解用戶的問題并提供準確的答案,推動人-機器人交互達到更高水平。可以預見,在社會不斷向數(shù)字化、智能化發(fā)展的過程中,基于NAO機器人的智能語音交互應用將會不斷涌現(xiàn),最終滿足人類社會的各種實際需求。