本發(fā)明涉及智能控制領(lǐng)域,特別是涉及一種基于語音交互的控制方法及系統(tǒng)。
背景技術(shù):
語音交互控制是指通過語音交互來實(shí)現(xiàn)應(yīng)用程序的調(diào)用。
現(xiàn)有的語音交互控制方法主要是根據(jù)用戶的指令自動(dòng)開啟移動(dòng)設(shè)備上的應(yīng)用程序,但在使用過程中需要用戶盯緊移動(dòng)設(shè)備屏幕,用手去點(diǎn)擊。當(dāng)通過語音交互控制方法打開某一個(gè)應(yīng)用程序時(shí),需要用戶手動(dòng)關(guān)閉該應(yīng)用程序,而且在執(zhí)行該應(yīng)用程序過程中需要調(diào)用其他應(yīng)用程序時(shí),必須重新啟動(dòng)語音交互控制方法進(jìn)行調(diào)用。例如,當(dāng)用語音交互控制方法打開地圖程序之后,需要用戶自己操作地圖進(jìn)行導(dǎo)航或者路線查詢等操作,而且無法繼續(xù)用語音交互控制方法調(diào)用短信等其他應(yīng)用程序。這使得現(xiàn)有的語音交互控制方法使用便捷性不高。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種基于語音交互的控制方法及系統(tǒng),通過全語音交互的形式,實(shí)現(xiàn)對(duì)應(yīng)用程序的調(diào)用,而且可實(shí)現(xiàn)多個(gè)程序同時(shí)調(diào)用與實(shí)時(shí)控制,以解決現(xiàn)有技術(shù)中語音交互控制方法及系統(tǒng)使用便捷性不高的問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種基于語音交互的控制方法,所述方法包括:
獲取喚醒信號(hào),所述喚醒信號(hào)用于啟動(dòng)語音交互系統(tǒng)進(jìn)入語音交互過程;
根據(jù)所述喚醒信號(hào),啟動(dòng)所述語音交互系統(tǒng);
獲取語音信息;
判斷所述語音信息是否能夠被轉(zhuǎn)換成文字信息,得到第一判斷結(jié)果;
當(dāng)所述第一判斷結(jié)果為否時(shí),返回所述獲取語音信息步驟;
當(dāng)所述第一判斷結(jié)果為是時(shí),對(duì)所述語音信息對(duì)應(yīng)的文字信息進(jìn)行分析,并存儲(chǔ)分析結(jié)果,根據(jù)所述分析結(jié)果判斷所述文字信息的功能參數(shù)是否完整,得到第二判斷結(jié)果;
當(dāng)所述第二判斷結(jié)果為是時(shí),則執(zhí)行所述文字信息功能參數(shù)對(duì)應(yīng)的操作,生成確認(rèn)消息,并根據(jù)所述確認(rèn)消息進(jìn)行語音信息合成,并播放合成的語音信息;
當(dāng)所述第二判斷結(jié)果為否時(shí),根據(jù)缺少的功能參數(shù)生成提示消息,并根據(jù)所述提示消息進(jìn)行語音信息合成,并播放合成的語音信息,返回所述獲取語音信息步驟。
可選的,所述根據(jù)所述喚醒信號(hào),啟動(dòng)所述語音交互系統(tǒng)具體包括:
將所述喚醒信號(hào)與系統(tǒng)預(yù)存的喚醒詞進(jìn)行比對(duì);
比對(duì)成功后,啟動(dòng)所述語音交互系統(tǒng)。
可選的,所述對(duì)所述語音信息對(duì)應(yīng)的文字信息進(jìn)行分析,并存儲(chǔ)分析結(jié)果之后,還包括:
返回所述獲取喚醒信號(hào)的步驟。
可選的,所述執(zhí)行所述文字信息功能參數(shù)對(duì)應(yīng)的操作之前,還包括:
當(dāng)所述文字信息的功能參數(shù)完整且所述文字信息功能參數(shù)對(duì)應(yīng)的操作選項(xiàng)多于一個(gè)時(shí),生成選擇提示問題,并根據(jù)所述選擇提示問題進(jìn)行語音信息合成,并播放合成的語音信息,所述選擇提示問題用于提示用戶選擇需要執(zhí)行的操作選項(xiàng)。
可選的,所述生成選擇提示問題具體包括:生成提示用戶回復(fù)選項(xiàng)編號(hào)的消息,每個(gè)所述選項(xiàng)編號(hào)對(duì)應(yīng)不同的所述操作選項(xiàng)的內(nèi)容。
可選的,所述根據(jù)缺少的功能參數(shù)生成提示消息之后還包括:
當(dāng)所述語音信息中包括完整的功能參數(shù)而所述分析結(jié)果為不完整時(shí),
提示用戶補(bǔ)充語義數(shù)據(jù)庫;所述語義數(shù)據(jù)庫中存儲(chǔ)有功能參數(shù)以及與所述功能參數(shù)相對(duì)應(yīng)的操作;
獲取所述用戶輸入的操作信息;
將所述語音信息中包括完整的功能參數(shù)以及所述用戶輸入的操作信息對(duì)應(yīng)增加至所述語義數(shù)據(jù)庫。
一種基于語音交互的系統(tǒng),所述系統(tǒng)包括:
語音喚醒模塊,用于獲取喚醒信號(hào),所述喚醒信號(hào)用于啟動(dòng)系統(tǒng)進(jìn)入語音交互過程;
語音交互系統(tǒng)啟動(dòng)模塊,用于根據(jù)所述喚醒信號(hào),啟動(dòng)所述語音交互系統(tǒng);
語音信息獲取模塊,用于獲取語音信息;
語音信息判斷模塊,用于判斷所述語音信息是否能夠被轉(zhuǎn)換成文字信息,得到第一判斷結(jié)果;
語音分析模塊,用于當(dāng)所述第一判斷結(jié)果為是時(shí),對(duì)所述語音信息對(duì)應(yīng)的文字信息進(jìn)行分析;
存儲(chǔ)模塊,用于存儲(chǔ)所述語音分析模塊對(duì)所述語音信息對(duì)應(yīng)的文字信息進(jìn)行分析的分析結(jié)果;
功能參數(shù)判斷模塊,用于根據(jù)所述分析結(jié)果判斷所述文字信息的功能參數(shù)是否完整,得到第二判斷結(jié)果;
執(zhí)行模塊,用于當(dāng)所述第二判斷結(jié)果為是時(shí),執(zhí)行所述文字信息功能參數(shù)對(duì)應(yīng)的操作;
確認(rèn)消息生成模塊,用于生成確認(rèn)消息;
語音合成模塊,用于進(jìn)行語音信息合成;
語音播放模塊,用于播放合成的語音信息;
提示消息生成模塊,用于當(dāng)所述第二判斷結(jié)果為否時(shí),根據(jù)缺少的功能參數(shù)生成提示消息。
可選的,所述語音交互系統(tǒng)啟動(dòng)模塊具體包括:
語音交互系統(tǒng)比對(duì)模塊,用于將所述喚醒信號(hào)與系統(tǒng)預(yù)存的喚醒詞進(jìn)行比對(duì);
語音交互系統(tǒng)啟動(dòng)子模塊,比對(duì)成功后,啟動(dòng)所述語音交互系統(tǒng)。。
可選的,所述系統(tǒng)還包括選擇提示問題生成模塊,用于當(dāng)所述執(zhí)行模塊執(zhí)行所述文字信息功能參數(shù)對(duì)應(yīng)的操作之前,所述文字信息的功能參數(shù)完整且所述文字信息功能參數(shù)對(duì)應(yīng)的操作選項(xiàng)多于一個(gè)時(shí),生成選擇提示問題。
可選的,所述系統(tǒng)還包括語義補(bǔ)充模塊,所述語義補(bǔ)充模塊具體包括:
補(bǔ)充提示生成模塊,用于當(dāng)提示消息生成模塊根據(jù)缺少的功能參數(shù)生成提示消息之后,所述語音信息中包括完整的功能參數(shù)而所述分析結(jié)果為不完整時(shí),提示用戶補(bǔ)充語義數(shù)據(jù)庫;所述語義數(shù)據(jù)庫中存儲(chǔ)有功能參數(shù)以及與所述功能參數(shù)相對(duì)應(yīng)的操作;
輸入模塊,用于獲取所述用戶輸入的操作信息;
語義數(shù)據(jù)庫補(bǔ)充模塊,用于將所述語音信息中包括完整的功能參數(shù)以及所述用戶輸入的操作信息對(duì)應(yīng)增加至所述語義數(shù)據(jù)庫。
根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明的有益效果為:
通過以下幾個(gè)方面提高了語音交互控制方法及系統(tǒng)的使用便捷性:
(1)全語音操作,所有操作都通過語音方式實(shí)現(xiàn),不需要用手用眼;
(2)隨時(shí)語音開啟操作,通過語音可隨時(shí)開始新功能的操作,可隨時(shí)選擇不同功能操作,或者選擇同一功能的不同執(zhí)行參數(shù),滿足用戶的不同需求;
(3)自定義配置語義知識(shí)庫,可靈活擴(kuò)展調(diào)整語義分析,增加處理執(zhí)行的功能種類。
(4)操作簡單,應(yīng)用方便。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明基于語音交互的控制方法實(shí)施例1流程圖;
圖2為本發(fā)明基于語音交互的系統(tǒng)結(jié)構(gòu)圖;
圖3為本發(fā)明基于語音交互的控制方法實(shí)施例2流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的目的是提供一種
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。
圖1為本發(fā)明基于語音交互的控制方法實(shí)施例1流程圖。如圖1所示,實(shí)施例1包括:
步驟101:獲取喚醒信號(hào),所述喚醒信號(hào)用于啟動(dòng)語音交互系統(tǒng)進(jìn)入語音交互過程,用戶可以隨時(shí)通過語音喚醒控制來啟動(dòng)新的語音交互過程,進(jìn)行喚醒時(shí),將獲取的聲音數(shù)據(jù)流與某一個(gè)或多個(gè)預(yù)存的喚醒詞的發(fā)聲進(jìn)行比對(duì)。例如,喚醒信號(hào)可以為“開啟語音交互系統(tǒng)”,可以為“啟動(dòng)黑馬”,一旦比對(duì)成功,則喚醒成功,啟動(dòng)語音交互系統(tǒng),進(jìn)入語音交互過程。
步驟102:獲取語音信息,啟動(dòng)語音交互系統(tǒng)后,系統(tǒng)持續(xù)偵聽語音信息;
步驟103:判斷偵聽到的語音信息是否可以轉(zhuǎn)換成文字信息,生成第一判斷結(jié)果;當(dāng)?shù)谝慌袛嘟Y(jié)果為是時(shí),執(zhí)行步驟104;當(dāng)?shù)谝慌袛嘟Y(jié)果為否時(shí),返回步驟102;
步驟104:對(duì)語音信息對(duì)應(yīng)的文字信息進(jìn)行分析,提取文字信息中相應(yīng)要操作的功能項(xiàng)以及功能項(xiàng)對(duì)應(yīng)的參數(shù)項(xiàng),每次一分析后,會(huì)將分析結(jié)果進(jìn)行存儲(chǔ),并更新當(dāng)前分析的結(jié)果,下一次分析時(shí)會(huì)依據(jù)上次存儲(chǔ)的狀態(tài),對(duì)新的語音輸入進(jìn)行分析。功能參數(shù)提取方法可以是提取關(guān)鍵字,也可以是提取正則式;例如,文字信息“我要去天安門”將被提取出功能項(xiàng)為“導(dǎo)航”,參數(shù)項(xiàng)為“天安門”。
步驟105:根據(jù)提取的功能參數(shù)項(xiàng)判斷功能參數(shù)是否完整,得到第二判斷結(jié)果,當(dāng)?shù)诙袛嘟Y(jié)果為否時(shí),執(zhí)行步驟106;當(dāng)?shù)诙袛嘟Y(jié)果為是時(shí),執(zhí)行步驟107;
步驟106:根據(jù)缺少的功能參數(shù)生成提示問題,并返回步驟102繼續(xù)獲取語音信息。例如分析的語音信息為“我要去”,分析結(jié)果為缺少導(dǎo)航的目的地這一參數(shù),生成提示問題可以為“請(qǐng)問您要去哪?”,也可以為“請(qǐng)輸入您要去的目的地”。
步驟107:根據(jù)分析的功能參數(shù)執(zhí)行相應(yīng)的操作。例如,“我要去天安門”的分析結(jié)果功能項(xiàng)為“導(dǎo)航”,參數(shù)項(xiàng)為“天安門”,則開啟地圖實(shí)施導(dǎo)航功能,并指定目的地為天安門。若此時(shí)導(dǎo)航路線搜索結(jié)果為多種,則會(huì)根據(jù)導(dǎo)航路線生成選擇提示問題向用戶提示回復(fù)需要進(jìn)行的操作,例如,去天安門的路線為3條,則生成的選擇提示問題可以為“請(qǐng)回復(fù)您要選擇的路線的選項(xiàng)編號(hào):A、直行500米然后右轉(zhuǎn)行駛1000米到達(dá)目的地;B、直行300米然后右轉(zhuǎn)行駛1000米再左轉(zhuǎn)200米到達(dá)目的地;C、右轉(zhuǎn)行駛1000米然后左轉(zhuǎn)行駛500米到達(dá)目的地”。
步驟108:生成確認(rèn)消息,所述確認(rèn)消息用于和用戶確認(rèn)已經(jīng)執(zhí)行相應(yīng)的操作。例如執(zhí)行操作導(dǎo)航去天安門,生成的確認(rèn)消息可以為“已為您開啟導(dǎo)航至天安門”。
圖2為本發(fā)明基于語音交互的系統(tǒng)結(jié)構(gòu)圖。如圖2所示,所述系統(tǒng)包括:語音喚醒模塊201、語音交互系統(tǒng)啟動(dòng)模塊202、語音信息獲取模塊203、語音信息判斷模塊204、語音分析模塊205、存儲(chǔ)模塊206、功能參數(shù)判斷模塊207、提示消息生成模塊208、執(zhí)行模塊209、確認(rèn)消息生成模塊2010、語音合成模塊2011和語音播放模塊2012。
語音喚醒模塊201接收喚醒信號(hào),將接收的喚醒信號(hào)與系統(tǒng)預(yù)存的一個(gè)或多個(gè)喚醒次進(jìn)行比對(duì),例如,喚醒信號(hào)可以為“開啟語音交互系統(tǒng)”,可以為“啟動(dòng)黑馬”,比對(duì)成功時(shí),則喚醒信號(hào)觸發(fā)語音交互系統(tǒng)啟動(dòng)模塊202啟動(dòng)語音交互系統(tǒng)。語音交互系統(tǒng)啟動(dòng)后,語音信息獲取模塊203持續(xù)偵聽語音信息,并將偵聽到的語音信息傳輸至語音信息判斷模塊204,語音信息判斷模塊204判斷傳輸?shù)恼Z音信息是否能夠被轉(zhuǎn)換成文字信息,如果能,則語義信息對(duì)應(yīng)的文字信息傳輸至語音分析模塊205對(duì)文字信息進(jìn)行分析,語音分析模塊205根據(jù)文字信息提取相應(yīng)要操作的功能項(xiàng)以及功能項(xiàng)對(duì)應(yīng)的參數(shù)項(xiàng),每次一分析后,會(huì)將分析結(jié)果存儲(chǔ)至存儲(chǔ)模塊206中,并更新當(dāng)前分析的結(jié)果,下一次分析時(shí)會(huì)依據(jù)上次存儲(chǔ)的狀態(tài),對(duì)新的語音輸入進(jìn)行分析。功能參數(shù)提取方法可以是提取關(guān)鍵字,也可以是提取正則式;例如,文字信息“我要去天安門”將被提取出功能項(xiàng)為“導(dǎo)航”,參數(shù)項(xiàng)為“天安門”。
功能參數(shù)判斷模塊207根據(jù)分析結(jié)果判斷所述文字信息的功能參數(shù)是否完整,如果完整則通過執(zhí)行模塊209執(zhí)行相應(yīng)的操作,例如,“我要去天安門”的分析結(jié)果功能項(xiàng)為“導(dǎo)航”,參數(shù)項(xiàng)為“天安門”,則執(zhí)行模塊209開啟地圖實(shí)施導(dǎo)航功能,并指定目的地為天安門,然后通過確認(rèn)消息生成模塊2010生成確認(rèn)消息,例如執(zhí)行操作導(dǎo)航去天安門,生成的確認(rèn)消息可以為“已為您開啟導(dǎo)航至天安門”然后通過語音合成模塊2011進(jìn)行語音合成,通過語音播放模塊2012進(jìn)行語音播放。若此時(shí)導(dǎo)航路線搜索結(jié)果為多種,則會(huì)根據(jù)導(dǎo)航路線生成選擇提示問題向用戶提示回復(fù)需要進(jìn)行的操作,例如,去天安門的路線為3條,則生成的選擇提示問題可以為“請(qǐng)回復(fù)您要選擇的路線的選項(xiàng)編號(hào):A、直行500米然后右轉(zhuǎn)行駛1000米到達(dá)目的地;B、直行300米然后右轉(zhuǎn)行駛1000米再左轉(zhuǎn)200米到達(dá)目的地;C、右轉(zhuǎn)行駛1000米然后左轉(zhuǎn)行駛500米到達(dá)目的地”通過語音合成模塊2011進(jìn)行語音合成,通過語音播放模塊2012進(jìn)行語音播放;如果判斷所述文字信息的功能參數(shù)是不完整的,則通過提示消息生成模塊208根據(jù)缺少的功能參數(shù)生成提示消息,例如,分析的語音信息為“我要去”,分析結(jié)果為缺少導(dǎo)航的目的地這一參數(shù),生成提示問題可以為“請(qǐng)問您要去哪?”,也可以為“請(qǐng)回復(fù)您要去的目的地”,然后通過語音合成模塊2011進(jìn)行語音合成,通過語音播放模塊2012進(jìn)行語音播放。
圖3為本發(fā)明基于語音交互的控制方法實(shí)施例2流程圖。如圖3所示,實(shí)施例2包括:
步驟301:喚醒系統(tǒng),通過喚醒信號(hào)喚醒語音交互系統(tǒng)進(jìn)入語音交互過程,此處設(shè)置喚醒信號(hào)為“啟動(dòng)語音”,當(dāng)系統(tǒng)接收到“啟動(dòng)語音”信號(hào)時(shí)進(jìn)入語音交互過程;
步驟302:獲取語音信息,持續(xù)偵聽語音信息;
步驟303:判斷偵聽的語音信息是否可以轉(zhuǎn)換成文字信息,如果能轉(zhuǎn)換成文字信息,執(zhí)行步驟304;對(duì)于不能識(shí)別轉(zhuǎn)換為文字信息的語音做丟棄處理,重新偵聽語音信息。例如,偵聽到鳥叫聲,或者風(fēng)聲,都無法轉(zhuǎn)換成相應(yīng)的文字信息。
步驟304:對(duì)于可與轉(zhuǎn)換成文字信息的語音信息,對(duì)其對(duì)應(yīng)的文字信息進(jìn)行分析,提取出相應(yīng)的操作功能項(xiàng)與參數(shù)項(xiàng);
步驟305:,與系統(tǒng)數(shù)據(jù)庫中預(yù)先存儲(chǔ)的功能項(xiàng)與參數(shù)項(xiàng)進(jìn)行比對(duì)與調(diào)用,判斷語音信息對(duì)應(yīng)的文字信息中的功能參數(shù)是否完整,如果完整,執(zhí)行步驟306,如果不完整,執(zhí)行步驟307;
步驟306:根據(jù)分析的功能項(xiàng)與參數(shù)項(xiàng)調(diào)用相應(yīng)模塊,執(zhí)行相應(yīng)的操作。對(duì)于有歧義的操作,會(huì)進(jìn)一步生成選擇問題供用戶選擇。例如,地名有重復(fù)時(shí),“我要去浦江”,由于浙江省金華市有浦江縣,四川省成都市有蒲江縣,兩者名字相近,系統(tǒng)會(huì)提示“請(qǐng)您回復(fù)目的地的選項(xiàng)編號(hào):A:浙江省金華市有浦江縣,B:四川省成都市有蒲江縣”。例如,當(dāng)同時(shí)獲取兩個(gè)人語音信息時(shí),“我要去天安門”和“打電話給小明”,系統(tǒng)會(huì)生成選擇問題“請(qǐng)回復(fù)要進(jìn)行的操作的選項(xiàng)編號(hào):A:導(dǎo)航至天安門,B:打電話給小明”。
步驟307:對(duì)不完整的功能參數(shù)進(jìn)行補(bǔ)充,此處包括兩種類型,一是語音交互的形式,系統(tǒng)根據(jù)缺少的功能參數(shù)進(jìn)行提問,用戶語音回復(fù)需要進(jìn)行的操作;二是當(dāng)語音信息中包括完整的功能參數(shù)而分析結(jié)果為不完整時(shí),系統(tǒng)提示用戶補(bǔ)充語義數(shù)據(jù)庫,語義數(shù)據(jù)庫中存儲(chǔ)有功能參數(shù)以及與該功能參數(shù)相對(duì)應(yīng)的操作,用戶可以通過手動(dòng)輸入將該語音信息中完整的功能參數(shù)對(duì)應(yīng)增加至系統(tǒng)數(shù)據(jù)庫中。除此之外,本發(fā)明的系統(tǒng)可以進(jìn)行自動(dòng)更新,實(shí)時(shí)更新數(shù)據(jù)庫。
本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的系統(tǒng)而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處。綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。