本發明涉及智能設備技術領域,特別涉及一種語音響應方法、裝置及智能設備。
背景技術:
目前,智能設備的種類越來越多,應用也越來越廣泛。智能設備通常包括:智能機器人、智能音箱等等。現有的智能設備已經可以針對用戶發送的語音指令進行響應。舉例來說,用戶可以向智能設備發送“我要聽‘紅豆’”、或“播放‘紅豆’”、或其他語音指令,以請求播放音頻資源、或者視頻資源、或者其他多媒體資源(“紅豆”為音頻資源);智能設備接收到語音指令后,可以播放用戶所請求的多媒體資源。
一般來說,用戶需要通過特定的喚醒詞將智能設備喚醒,之后才能發送語音指令請求播放多媒體資源。在用戶說出喚醒詞與發送語音指令之間,通常存在時間間隔,在這段時間間隔內,智能設備不作出響應。這樣,用戶不能確定設備是否被喚醒,體驗較差。
技術實現要素:
本發明實施例的目的在于提供一種語音響應方法、裝置及智能設備,使得用戶能夠確定設備是否被喚醒,以提高用戶體驗。
為達到上述目的,本發明實施例公開了一種語音響應方法,應用于智能設備,所述方法包括:
接收用戶發送的語音信息;
判斷所述語音信息中是否存在喚醒詞;
如果是,根據預設響應規則,輸出響應語音。
可選的,所述判斷所述語音信息中是否存在喚醒詞的步驟,可以包括:
將所述語音信息輸入到預先存儲的模型中進行識別,所述模型為:對所述喚醒詞進行學習得到的;
根據識別結果,判斷所述語音信息中是否存在喚醒詞。
可選的,所述根據預設響應規則,輸出響應語音的步驟,可以包括:
從預先設定的至少兩種響應方式中,隨機選擇一種響應方式;
以所選擇的響應方式輸出響應語音;
或者,確定當前時刻;
從預先設定的時間段與響應方式的對應關系中,確定所述當前時刻對應的響應方式;
以所確定的響應方式輸出響應語音。
可選的,所述方法還可以包括:
在輸出響應語音之后,將所述響應語音對應的響應方式記錄為上一次響應方式;
所述根據預設響應規則,輸出響應語音的步驟,可以包括:
在預先存儲的響應方式序列中,查找所述上一次響應方式;
根據所述序列中的順序,將位于所述上一次響應方式之后的響應方式作為本次響應方式;
以所述本次響應方式,輸出響應語音;
或者,
從預先設定的至少兩種響應方式中,選擇不同于所述上一次響應方式的目標響應方式;
以所述目標響應方式,輸出響應語音。
可選的,所述方法還可以包括:
接收云端服務器發送的響應調整信息;
根據所述響應調整信息,對自身設定的響應方式進行調整。
可選的,所述根據預設響應規則,輸出響應語音的步驟,可以包括:
確定當前時刻及所述當前時刻對應的資訊語音,所述資訊語音為云端服務器發送的;
輸出響應語音和所述資訊語音。
可選的,所述根據預設響應規則,輸出響應語音的步驟,可以包括:
檢查當前時間段是否對應有標記事件的語音;
如果是,輸出響應語音和所述標記事件的語音。
可選的,所述方法還可以包括:
接收云端服務器發送的更新信息,所述更新信息中包含時間段及對應的標記事件的語音;
根據所述更新信息,對自身存儲的標記事件的語音進行調整。
可選的,在所述根據預設響應規則,輸出響應語音的步驟之后,還可以包括:
在接收到所述響應語音后,將所述響應語音確定為自身噪聲;
消除所述自身噪聲。
可選的,在所述接收用戶發送的語音信息的步驟之前,還可以包括:
采集周圍環境中的環境聲音信息;
在所述根據預設響應規則,輸出響應語音的步驟之后,還可以包括:
接收用戶發送的新的語音信息;
在所述環境聲音信息中,確定與所述新的語音信息的時間間隔在預設范圍內的目標環境聲音信息;
將所述新的語音信息與所述目標環境聲音信息進行拼接;
將拼接后的語音信息發送給云端服務器進行解析。
為達到上述目的,本發明實施例還公開了一種語音響應裝置,應用于智能設備,所述裝置包括:
第一接收模塊,用于接收用戶發送的語音信息;
判斷模塊,用于判斷所述語音信息中是否存在喚醒詞;如果是,觸發輸出模塊;
輸出模塊,用于根據預設響應規則,輸出響應語音。
可選的,所述判斷模塊,具體可以用于:
將所述語音信息輸入到預先存儲的模型中進行識別,所述模型為:對所述喚醒詞進行學習得到的;根據識別結果,判斷所述語音信息中是否存在喚醒詞;如果存在,觸發輸出模塊。
可選的,所述輸出模塊,具體可以用于:
從預先設定的至少兩種響應方式中,隨機選擇一種響應方式;
以所選擇的響應方式輸出響應語音;
或者,確定當前時刻;
從預先設定的時間段與響應方式的對應關系中,確定所述當前時刻對應的響應方式;
以所確定的響應方式輸出響應語音。
可選的,所述裝置還可以包括:
記錄模塊,用于在輸出響應語音之后,將所述響應語音對應的響應方式記錄為上一次響應方式;
所述輸出模塊,具體可以用于:
在預先存儲的響應方式序列中,查找所述上一次響應方式;
根據所述序列中的順序,將位于所述上一次響應方式之后的響應方式作為本次響應方式;
以所述本次響應方式,輸出響應語音;
或者,
從預先設定的至少兩種響應方式中,選擇不同于所述上一次響應方式的目標響應方式;
以所述目標響應方式,輸出響應語音。
可選的,所述裝置還可以包括:
第二接收模塊,用于接收云端服務器發送的響應調整信息;
第一調整模塊,用于根據所述響應調整信息,對自身設定的響應方式進行調整。
可選的,所述輸出模塊,具體可以用于:
確定當前時刻及所述當前時刻對應的資訊語音,所述資訊語音為云端服務器發送的;輸出響應語音和所述資訊語音。
可選的,所述輸出模塊,具體可以用于:
檢查當前時間段是否對應有標記事件的語音;
如果是,輸出響應語音和所述標記事件的語音。
可選的,所述裝置還可以包括:
第三接收模塊,用于接收云端服務器發送的更新信息,所述更新信息中包含時間段及對應的標記事件的語音;
第二調整模塊,用于根據所述更新信息,對自身存儲的標記事件的語音進行調整。
可選的,所述裝置還可以包括:
消噪模塊,用于在接收到所述響應語音后,將所述響應語音確定為自身噪聲;消除所述自身噪聲。
可選的,所述裝置還可以包括:
采集模塊,用于在接收用戶發送的語音信息前,采集周圍環境中的環境聲音信息;
第四接收模塊,用于接收用戶發送的新的語音信息;
確定模塊,用于在所述環境聲音信息中,確定與所述新的語音信息的時間間隔在預設范圍內的目標環境聲音信息;
拼接模塊,用于將所述新的語音信息與所述目標環境聲音信息進行拼接;
發送模塊,用于將拼接后的語音信息發送給云端服務器進行解析。
為達到上述目的,本發明實施例還公開了一種智能設備,包括:殼體、處理器、存儲器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內部,處理器和存儲器設置在電路板上;電源電路,用于為智能設備的各個電路或器件供電;存儲器用于存儲可執行程序代碼;處理器通過讀取存儲器中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,以用于執行上述的語音響應方法。
應用本發明實施例,當接收到的語音信息中存在喚醒詞時,根據預設響應規則,輸出響應語音;也就是說,用戶發送喚醒詞后,便立即輸出語音,對該喚醒詞進行響應;這樣,用戶便可以直觀地確定設備已經被喚醒,體驗較好。
當然,實施本發明的任一產品或方法并不一定需要同時達到以上所述的所有優點。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例提供的語音響應方法的第一種流程示意圖;
圖2為本發明實施例提供的語音響應方法的第二種流程示意圖;
圖3為本發明實施例提供的語音響應方法的第三種流程示意圖;
圖4為本發明實施例提供的一種語音響應裝置的結構示意圖;
圖5為本發明實施例所提供的一種智能設備的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
為了解決上述技術問題,本發明實施例提供了一種語音響應方法、裝置及智能設備,該方法及裝置可以應用于各種智能設備,比如智能音箱、智能播放器、智能機器人等,具體不做限定。
下面首先對本發明實施例提供的一種語音響應方法進行詳細說明。
圖1為本發明實施例提供的語音響應方法的第一種流程示意圖,包括:
s101:接收用戶發送的語音信息。
s102:判斷所述語音信息中是否存在喚醒詞,如果是,執行s103。
s103:根據預設響應規則,輸出響應語音。
作為一種實施方式,判斷所述語音信息中是否存在喚醒詞,可以包括:
將所述語音信息輸入到預先存儲的模型中進行識別,所述模型為:對所述喚醒詞進行學習得到的;
根據識別結果,判斷所述語音信息中是否存在喚醒詞。
在本實施方式中,可以預先對喚醒詞進行學習并建模。本領域技術人員可以理解,可以采集不同用戶針對喚醒詞的語音信息,利用機器學習算法對這些語音信息進行學習,進而建立針對喚醒詞的模型。比如,可以利用喚醒詞語音數據對深度神經網絡進行訓練建立語音識別模型,具體學習算法不做限定。
將s101中獲取到的語音信息輸入到該模型中進行識別,如果識別結果中包含該喚醒詞,則表示該語音信息中包含該喚醒詞。
應用這種實施方式,直接將語音信息輸入到智能設備端本地存儲的模型進行識別,相比于將語音信息發送至其他設備,由其他設備進行解析,進而判斷是否存在喚醒詞的方案,減少了設備通信耗費的時間,反應更靈敏。
s103的實施方式可以有多種,比如:
第一種,智能設備中設定了多種響應方式,比如,輸出響應語音“唉”,或者輸出“在呢”,或者輸出“我在”,或者輸出其他類似的響應語音。
當s102判斷結果為是時,從這些響應方式中,隨機選擇一種響應方式,以所選擇的響應方式輸出響應語音。
在這種實施方式中,智能設備可以與云端服務器相連接,云端服務器可以每隔預設時間段,向智能設備下發響應調整信息,該響應調整信息中可以包含新的響應方式或其他信息;智能設備可以根據該響應調整信息,對自身設定的響應方式進行調整。
具體的調整方式有多種,比如,將響應調整信息中包含的新的響應方式添加至智能設備中;或者,將響應調整信息中包含的新的響應方式替換掉智能設備中原有的響應方式;或者,將響應調整信息中包含的信息與智能設備中原有的響應方式進行融合,形成新的響應方式,等等,具體不做限定。
舉個簡單的例子,智能設備中原有的響應方式包括:“唉”,“在呢”,“我在”;云端服務器采集到使用該智能設備的用戶的昵稱為“娜娜”,云端服務器針對該智能設備確定的響應調整信息可以為語音“娜娜”,云端服務器將該響應調整信息發送給智能設備;智能設備可以將語音“娜娜”與原有響應方式進行融合,形成的新的響應方式可以為:“唉,娜娜”,“在呢,娜娜”,“我在,娜娜”。
應用這種實施方式,用戶可以根據設備的響應,確定設備是否被喚醒,體驗較好;進一步的,設備可以根據云端服務器發送的響應調整信息,對自身設定的響應方式進行調整,也就是可以對響應方式進行更新,提高了響應方式的趣味性。
第二種,智能設備針對不同時間段設定了不同的響應方式,比如,“早上”這一時間段對應的響應方式可以為:輸出響應語音“在呢,早上好”,或者“早上好”,或者“主人,早上好”,或者輸出其他類似的響應語音。類似的,“下午”這一時間段對應的響應方式可以為:輸出響應語音“在呢,下午好”,或者“下午”,或者“主人,下午好”,或者輸出其他類似的響應語音。
當s102判斷結果為是時,智能設備確定當前時刻,從預先設定的時間段與響應方式的對應關系中,確定當前時刻對應的響應方式;以所確定的響應方式輸出響應語音。
比如,s102判斷結果為是;智能設備確定當前時刻為早上8點,而且智能設備中設定早上6點—9點這一時間段對應的響應方式為“主人,早上好”;這種情況下,輸出響應語音“主人,早上好”。
在這種實施方式中,智能設備可以與云端服務器相連接,云端服務器可以每隔預設時間段,向智能設備下發響應調整信息,該響應調整信息中可以包含新的響應方式或其他信息;智能設備可以根據該響應調整信息,對自身設定的響應方式進行調整。
具體的調整方式有多種,比如,將響應調整信息中包含的新的響應方式添加至智能設備中;或者,將響應調整信息中包含的新的響應方式替換掉智能設備中原有的響應方式;或者,將響應調整信息中包含的信息與智能設備中原有的響應方式進行融合,形成新的響應方式,等等,具體不做限定。
舉個簡單的例子,智能設備中原有的響應方式包括針對不同時間段設定的:“主人,早上好”,“主人,下午好”等等;云端服務器采集到使用該智能設備的用戶的昵稱為“娜娜”,云端服務器針對該智能設備確定的響應調整信息可以為語音“娜娜”,云端服務器將該響應調整信息發送給智能設備;智能設備可以將語音“娜娜”與原有響應方式進行融合,形成的新的響應方式可以為:“娜娜,早上好”,“娜娜,下午好”等等。
應用上述實施方式,第一方面,用戶可以根據設備的響應,確定設備是否被喚醒,體驗較好;第二方面,設備可以針對不同時間段,作出不同的響應,提高了響應方式的靈活性;第三方面,設備可以根據云端服務器發送的響應調整信息,對自身設定的響應方式進行調整,也就是可以對響應方式進行更新,提高了響應方式的趣味性。
第三種,在每次輸出響應語音之后,智能設備將輸出的響應語音對應的響應方式記錄為上一次響應方式。下次再接收到用戶發送的語音信息,且該語音信息中存在喚醒詞的情況下,智能設備在預先存儲的響應方式序列中,查找所述上一次響應方式;根據所述序列中的順序,將位于所述上一次響應方式之后的響應方式作為本次響應方式;以所述本次響應方式,輸出響應語音。
舉例來說,智能設備預先存儲的響應方式序列為中包含的響應方式依次為:“唉”、“在呢”、“我在”、“主人,您好”。上一次輸出的響應語音為“在呢”,將“在呢”這種響應方式記錄為“上一次響應方式”。
智能設備接收到用戶發送的語音信息,且語音信息中存在喚醒詞,這種情況下,可以根據序列中的順序,將“我在”作為本次響應方式,輸出響應語音“我在”。
在這種實施方式中,序列中的順序可以理解為循環順序,若上次響應方式為“主人,您好”,則“本次響應方式”可以為“唉”。
第四種,在每次輸出響應語音之后,智能設備將輸出的響應語音對應的響應方式記錄為上一次響應方式。下次再接收到用戶發送的語音信息,且該語音信息中存在喚醒詞的情況下,智能設備從預先設定的至少兩種響應方式中,選擇不同于所述上一次響應方式的目標響應方式;以所述目標響應方式,輸出響應語音。
舉例來說,智能設備預先設定的響應方式包括:“唉”、“在呢”、“我在”、“主人,您好”。上一次輸出的響應語音為“在呢”,將“在呢”這種響應方式記錄為“上一次響應方式”。
智能設備接收到用戶發送的語音信息,且語音信息中存在喚醒詞,這種情況下,在除“在呢”之外的三種響應方式中選擇目標響應方式,假設選擇的目標響應方式為“主人,您好”,輸出響應語音“主人,您好”。
在第三、四種實施方式中,智能設備也可以與云端服務器相連接,云端服務器可以每隔預設時間段,向智能設備下發響應調整信息,該響應調整信息中可以包含新的響應方式或其他信息;智能設備可以根據該響應調整信息,對自身設定的響應方式進行調整。
具體的調整方式有多種,比如,將響應調整信息中包含的新的響應方式添加至智能設備中;或者,將響應調整信息中包含的新的響應方式替換掉智能設備中原有的響應方式;或者,將響應調整信息中包含的信息與智能設備中原有的響應方式進行融合,形成新的響應方式,等等,具體不做限定。
第五種,云端服務器可以向智能設備發送資訊語音,比如,包含天氣情況的語音(天氣資訊),包含新聞信息的語音(新聞資訊)等等。云端服務器可以每隔預設周期,向智能設備發送資訊語音,或者,云端服務器可以在檢查到資訊更新后,向智能設備發送最新的資訊語音,具體不做限定。
智能設備在判斷用戶發送了喚醒詞(s102判斷結果為是)后,確定當前時刻及當前時刻對應的資訊語音,輸出響應語音和資訊語音。
以天氣資訊為例進行說明,云端服務器可以每隔預設時間段,確定智能設備所在地的當前天氣情況,并根據該天氣情況,向智能設備發送資訊語音;智能設備存儲該資訊語音,并在判斷用戶發送了喚醒詞后,確定當前時刻及當前時刻對應的資訊語音,輸出響應語音和資訊語音。
舉例來說,智能設備所在地為“北京西城”,云端服務器可以每天確定“北京西城”當天的天氣情況,假設2017年4月5日“北京西城”的天氣情況為“晴,空氣質量良”,云端服務器根據“晴,空氣質量良”確定資訊語音為“天氣真好”,并將這一資訊語音發送給智能設備。
智能設備存儲該資訊語音,并在s102判斷結果為是的情況下,智能設備確定當前時刻為2017年4月5日早上8點后,則輸出響應語音和資訊語音“主人,早上好,天氣真好”。
應用上述實施方式,第一方面,用戶可以根據設備的響應,確定設備是否被喚醒,體驗較好;第二方面,可以在響應方式中加入資訊信息,為用戶帶來了極大的便利。
第六種,智能設備中可以對一些時間段進行事件標記,并存儲標記事件的語音。比如,可以將節假日所在的時間段進行標記,具體的,可以將1月1日標記為元旦,這一標記事件的語音可以為“元旦快樂”,可以將2月14日標記為情人節,這一標記事件的語音可以為“情人節快樂”,等等。
這樣,在s102判斷結果為是的情況下,智能設備檢查當前時間段是否對應有標記事件的語音;如果當前時間段為1月1日,則檢查到標記事件的語音為“元旦快樂”;輸出響應語音和標記事件的語音,可以為“在呢,元旦快樂”。
或者,智能設備也可以從云端服務器中獲得“時間段及對應的標記事件的語音”。可以理解,云端服務器可以獲取用戶信息,根據該用戶信息,可以確定“時間段及對應的標記事件的語音”;云端服務器將“時間段及對應的標記事件的語音”發送給智能設備。
舉例來說,該用戶信息中可以包含用戶的生日,云端服務器可以對“用戶的生日”這一時間段進行事件標記,該標記事件的語音可以為“生日快樂”。云端服務器將這一時間段(“用戶的生日”)及這一語音(“生日快樂”)發送給智能設備。
智能設備針對該時間段存儲該標記事件的語音。在s102判斷結果為是的情況下,智能設備如果檢查到當前時間段對應有標記事件的語音“生日快樂”,則輸出響應語音和標記事件的語音,可以為“在呢,生日快樂”。
或者,該用戶信息中還可以包含用戶親友的生日,云端服務器可以對“用戶親友的生日”這一時間段進行事件標記,該標記事件的語音可以為“不要忘記給**過生日”或其他。云端服務器將這一時間段(“用戶親友的生日”)及這一語音(“不要忘記給**過生日”)發送給智能設備。
智能設備針對該時間段存儲該標記事件的語音。在s102判斷結果為是的情況下,智能設備如果檢查當前時間段對應有標記事件的語音“不要忘記給**過生日”,則輸出響應語音和標記事件的語音,可以為“在呢,不要忘記給**過生日”。
或者,該用戶信息中也可以包含用戶自己設置的提醒信息,比如,用戶在自己使用的終端設備中設置2017年4月5日的提醒為:記得給客戶a打電話;終端設備將這一提醒信息上傳至云端服務器中。這樣,云端服務器可以對“2017年4月5日”這一時間段進行事件標記,該標記事件的語音可以為“記得給客戶a打電話”。云端服務器將這一時間段(“2017年4月5日”)及這一語音(“記得給客戶a打電話”)發送給智能設備。
智能設備針對該時間段存儲該標記事件的語音。在s102判斷結果為是的情況下,智能設備如果檢查到當前時間段對應有標記事件的語音“記得給客戶a打電話”,則輸出響應語音和標記事件的語音,可以為“在呢,記得給客戶a打電話”。
在本實施方式中,云端服務器可以在檢測到上述用戶信息被更新后,或者也可以每隔預設周期,向用戶發送更新信息,更新信息中包含“時間段及對應的標記事件的語音”。智能設備在接收到該更新信息后,根據該更新信息,對自身標記事件的語音進行調整。
舉例來說,用戶在自己使用的終端設備中,將針對2017年4月5日的提醒“記得給客戶a打電話更改為“記得給客戶b打電話”;終端設備將這一提醒信息上傳至云端服務器中,云端服務器檢查到用戶信息被更新,確定更新信息為:“2017年4月5日”對應的標記事件的語音為“記得給客戶b打電話”。云端服務器將這一更新信息發送給智能設備。
智能設備接收到該更新信息后,對自身存儲的標記事件的語音進行調整,將2017年4月5日對應的標記事件的語音調整為“記得給客戶b打電話”。
這樣,在s102判斷結果為是的情況下;智能設備如果確定當前時間段為2017年4月5日;并檢查到這個時間段對應的標記事件的語音為“記得給客戶b打電話”;可以輸出響應語音“在呢,請給客戶b打電話”。
應用上述實施方式,第一方面,用戶可以根據設備的響應,確定設備是否被喚醒,體驗較好;第二方面,設備可以在響應用戶喚醒的同時,針對用戶的標記事件進行提醒,用戶體驗更佳。
應用本發明圖1所示實施例,當接收到的語音信息中存在喚醒詞時,根據預設響應規則,輸出響應語音;也就是說,用戶發送喚醒詞后,設備便立即輸出語音,對該喚醒詞進行響應;這樣,用戶便可以直觀地確定設備已經被喚醒,體驗較好。
圖2為本發明實施例提供的語音響應方法的第二種流程示意圖,圖2在圖1基礎上,在s103之后,增加如下步驟:
s201:在接收到所述響應語音后,將所述響應語音確定為自身噪聲。
s202:消除所述自身噪聲。
本領域技術人員可以理解,智能設備輸出響應語音后,該響應語音也會被智能設備采集到。對于智能設備來說,該響應語音會對用戶發送的語音造成影響,因此,可以將該響應語音作為自身噪聲進行消除。
應用本發明圖2所示實施例,將輸出的響應語音作為自身噪聲進行消除,可以降低響應語音對用戶發送語音的影響;這樣,便可以更清楚地采集用戶發送的語音,為用戶提供更好的服務。
圖3為本發明實施例提供的語音響應方法的第三種流程示意圖,圖3在圖1基礎上,在s101之前增加s301,在s103之后,增加s302、s303、s304和s305。
s301:采集周圍環境中的環境聲音信息。
在圖3所示實施例中,在智能設備被喚醒之前,便采集周圍環境中的環境聲音信息。該“環境聲音信息”可以包含采集到的全部聲音信息,其中也包含用戶發送的語音信息。
s302:接收用戶發送的新的語音信息。
為了與s101中的語音信息進行區分,這里將s302中的語音信息稱為“新的語音信息”。
可以理解,用戶先說出喚醒詞將智能設備喚醒,之后便可以向智能設備發送指令。s101中的語音信息可以理解為用戶先說的喚醒詞,s302中“新的語音信息”可以理解為用戶發出的指令。
s303:在所述環境聲音信息中,確定與所述新的語音信息的時間間隔在預設范圍內的目標環境聲音信息。
s304:將所述新的語音信息與所述目標環境聲音信息進行拼接。
s305:將拼接后的語音信息發送給云端服務器進行解析。
如果用戶在說出喚醒詞與發出指令之間的時間間隔較短,該時間間隔小于s103中播放響應語音占用的時間,則可能造成智能設備不能采集到用戶發送的全部語音。
可以理解,通常情況下,智能設備在輸出響應語音后,再采集用戶發送的“新的語音信息”,而如果這兩個過程有時間重疊,智能設備則丟失了重疊部分用戶發送的語音信息。
這種情況下,應用本發明圖3所示實施例,智能設備在被喚醒之前就進行聲音采集,而且持續進行聲音采集;智能設備被喚醒后,接收到用戶發送的“新的語音信息”后,在環境聲音信息中,確定與“新的語音信息”的時間間隔在預設范圍內的“目標環境聲音信息”;將“新的語音信息”與“目標環境聲音信息”進行拼接,這樣,便不會丟失用戶的語音信息。將拼接后的語音信息,也就是完整的語音信息發送給云端服務器進行解析,能夠獲得更好的解析結果。
可以理解,上述情況中丟失的用戶的語音信息與s302中接收到的“新的語音信息”時間間隔很小(二者組成一條完整的語音信息)。而持續采集的“環境聲音信息”則可以包括很長時間的聲音信息,這種情況下,可以在“環境聲音信息”中選取出與“新的語音信息”的時間間隔較小(在預設范圍內)的目標環境聲音信息,僅將選取出的目標環境聲音信息與“新的語音信息”進行拼接,便可以得到較完整的語音信息。
與上述方法實施例相對應,本發明實施例還提供一種語音響應裝置。
圖4為本發明實施例提供的一種語音響應裝置的結構示意圖,包括:
第一接收模塊401,用于接收用戶發送的語音信息;
判斷模塊402,用于判斷所述語音信息中是否存在喚醒詞;如果是,觸發輸出模塊;
輸出模塊403,用于根據預設響應規則,輸出響應語音。
作為一種實施方式,判斷模塊402,具體可以用于:
將所述語音信息輸入到預先存儲的模型中進行識別,所述模型為:對所述喚醒詞進行學習得到的;根據識別結果,判斷所述語音信息中是否存在喚醒詞;如果存在,觸發輸出模塊403。
作為一種實施方式,輸出模塊403,具體可以用于:
從預先設定的至少兩種響應方式中,隨機選擇一種響應方式;
以所選擇的響應方式輸出響應語音;
或者,確定當前時刻;
從預先設定的時間段與響應方式的對應關系中,確定所述當前時刻對應的響應方式;
以所確定的響應方式輸出響應語音。
作為一種實施方式,所述裝置還可以包括:
記錄模塊(圖中未示出),用于在輸出響應語音之后,將所述響應語音對應的響應方式記錄為上一次響應方式;
輸出模塊403,具體可以用于:
在預先存儲的響應方式序列中,查找所述上一次響應方式;
根據所述序列中的順序,將位于所述上一次響應方式之后的響應方式作為本次響應方式;
以所述本次響應方式,輸出響應語音;
或者,
從預先設定的至少兩種響應方式中,選擇不同于所述上一次響應方式的目標響應方式;
以所述目標響應方式,輸出響應語音。
作為一種實施方式,所述裝置還可以包括:第二接收模塊和第一調整模塊(圖中未示出),其中,
第二接收模塊,用于接收云端服務器發送的響應調整信息;
第一調整模塊,用于根據所述響應調整信息,對自身設定的響應方式進行調整。
作為一種實施方式,輸出模塊403,具體可以用于:
確定當前時刻及所述當前時刻對應的資訊語音,所述資訊語音為云端服務器發送的;輸出響應語音和所述資訊語音。
作為一種實施方式,輸出模塊403,具體可以用于:
檢查當前時間段是否對應有標記事件的語音;
如果是,輸出響應語音和所述標記事件的語音。
作為一種實施方式,所述裝置還可以包括:第三接收模塊和第二調整模塊(圖中未示出),其中,
第三接收模塊,用于接收云端服務器發送的更新信息,所述更新信息中包含時間段及對應的標記事件的語音;
第二調整模塊,用于根據所述更新信息,對自身存儲的標記事件的語音進行調整。
作為一種實施方式,所述裝置還可以包括:
消噪模塊(圖中未示出),用于在接收到所述響應語音后,將所述響應語音確定為自身噪聲;消除所述自身噪聲。
作為一種實施方式,所述裝置還可以包括:采集模塊、第四接收模塊、確定模塊、拼接模塊和發送模塊(圖中未示出),其中,
采集模塊,用于在接收用戶發送的語音信息前,采集周圍環境中的環境聲音信息;
第四接收模塊,用于接收用戶發送的新的語音信息;
確定模塊,用于在所述環境聲音信息中,確定與所述新的語音信息的時間間隔在預設范圍內的目標環境聲音信息;
拼接模塊,用于將所述新的語音信息與所述目標環境聲音信息進行拼接;
發送模塊,用于將拼接后的語音信息發送給云端服務器進行解析。
應用本發明圖4所示實施例,當接收到的語音信息中存在喚醒詞時,根據預設響應規則,輸出響應語音;也就是說,用戶發送喚醒詞后,便立即輸出語音,對該喚醒詞進行響應;這樣,用戶便可以直觀地確定設備已經被喚醒,體驗較好。
本發明實施例還提供了一種智能設備,如圖5所示,包括:殼體501、處理器502、存儲器503、電路板504和電源電路505,其中,電路板504安置在殼體501圍成的空間內部,處理器502和存儲器503設置在電路板504上;電源電路505,用于為智能設備的各個電路或器件供電;存儲器503用于存儲可執行程序代碼;處理器502通過讀取存儲器503中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,以用于執行所述語音響應方法,方法包括:
接收用戶發送的語音信息;
判斷所述語音信息中是否存在喚醒詞;
如果是,根據預設響應規則,輸出響應語音。
該智能設備可以為智能音箱、智能播放器、智能機器人等,具體不做限定。
應用本發明圖5所示實施例,當接收到的語音信息中存在喚醒詞時,根據預設響應規則,輸出響應語音;也就是說,用戶發送喚醒詞后,便立即輸出語音,對該喚醒詞進行響應;這樣,用戶便可以直觀地確定設備已經被喚醒,體驗較好。
需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
本說明書中的各個實施例均采用相關的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本領域普通技術人員可以理解實現上述方法實施方式中的全部或部分步驟是可以通過程序來指令相關的硬件來完成,所述的程序可以存儲于計算機可讀取存儲介質中,這里所稱得的存儲介質,如:rom/ram、磁碟、光盤等。
以上所述僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內所作的任何修改、等同替換、改進等,均包含在本發明的保護范圍內。