麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

防止語音命令誤識別的方法和裝置與流程

文檔序號:11136024閱讀:1354來源:國知局
防止語音命令誤識別的方法和裝置與制造工藝

本發明實施例涉及數據處理技術,尤其涉及一種防止語音命令誤識別的方法和裝置。



背景技術:

隨著科學技術的不斷發展,以及人們對生活品質不斷的更高追求,越來越多的設備具有語音控制功能。

汽車、家用電器以及手機中大多數都會安裝語音控制功能,這些設備同時也可以播放歌曲、相聲等音頻文件,在這些設備在播放音頻文件時,有可能會誤開啟語音控制功能,使得設備做出錯誤的動作。現有技術中通過提高語音識別算法的復雜度,優化語音識別算法,減小誤觸發的概率。

現有技術的缺陷在于:提高了CPU的計算負擔導致設備功耗上升,語音識別算法移植困難,且無法從根本上避免誤觸發的可能性。



技術實現要素:

有鑒于此,本發明實施例提供了一種防止語音命令誤識別的方法和裝置,以優化現有的減小語音誤觸發概率技術,實現了無需提高語音識別算法的復雜度,也可以可靠的減少由于歌曲歌詞導致的語音誤識別。

在第一方面,本發明實施例提供了一種防止語音命令誤識別的方法,包括:

獲取與待播放歌曲匹配的歌詞文件;

查找所述歌詞文件中的易誤觸發詞組,其中,所述易誤觸發詞組與預設語音控制命令的語言相同或相近;

根據所述歌詞文件,計算所述易誤觸發詞組播放的第一起始時間和第一結束時間;

播放所述待播放歌曲,在到達所述第一起始時間時關閉語音識別模塊,在到達所述第一結束時間時啟動所述語音識別模塊。

在上述方法中,優選的是,所述播放所述待播放歌曲,在到達所述第一起始時間時關閉語音識別模塊,在到達所述第一結束時間時啟動所述語音識別模塊之后,還包括:

保存所述易誤觸發詞組和對應的所述第一起始時間和所述第一結束時間;

所述根據所述歌詞文件,計算所述易誤觸發詞組播放的第一起始時間和第一結束時間之前,還包括:

確認所述歌詞文件不存在已保存的所述易誤觸發詞組;

所述播放所述待播放歌曲,在到達所述第一起始時間時關閉語音識別模塊,在到達所述第一結束時間時啟動所述語音識別模塊之前,還包括:

若存在已保存的所述易誤觸發詞組,讀取所述待播放歌曲中所述易誤觸發詞組對應的所述第一起始時間和所述第一結束時間。

在上述方法中,優選的是,所述歌詞文件為中文歌詞文件;

所述預設語音控制命令為漢語語音控制命令;

所述查找所述歌詞文件中的易誤觸發詞組包括:

遍歷所述中文歌詞文件中所有中文歌詞的發音屬性,其中,所述發音屬性至少包括音調、聲母和韻母;

如果所述所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與所述漢語語音控制命令中對應位置的漢字的所述發音屬性相同,則確認該漢字或漢字詞組與所述漢語語音控制命令的語言相同;

如果所述所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與所述漢語語音控制命令中對應位置的漢字的所述發音屬性中至少有一種不同且至少有兩種相同,則確認該漢字或漢字詞組與所述漢語語音控制命令的語言相近;

將所述一個漢字或所述一個漢字詞組標記為易誤觸發詞組。

在上述方法中,優選的是,所述根據所述歌詞文件,計算所述易誤觸發詞組播放的第一起始時間和第一結束時間包括:

根據所述歌詞文件,獲取所述易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;

根據所述第二起始時間、所述第二結束時間、所述歌詞語句包含歌詞單元的個數、所述易誤觸發詞組包含歌詞單元的個數和所述易誤觸發詞組在所述歌詞語句中的位置,計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

在上述方法中,優選的是,所述根據所述歌詞文件,計算所述易誤觸發詞組播放的第一起始時間和第一結束時間包括:

根據所述歌詞文件,獲取所述易誤觸發詞組所屬的歌詞語句播放的所述第二起始時間和所述第二結束時間;

獲取所述第一起始時間的第一補償時間和所述第一結束時間的第二補償時間;

根據所述第二起始時間、所述第二結束時間、所述第一補償時間、所述第二補償時間、所述歌詞語句包含歌詞單元的個數、所述易誤觸發詞組包含歌詞單元的個數和所述易誤觸發詞組在所述歌詞語句中的位置,計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

在上述方法中,優選的是,還包括:

所述待播放歌曲播放結束后,統計引起和未引起所述預設語音控制命令誤識別的所述易誤觸發詞組;

修正所述易誤觸發詞組對應的所述第一補償時間和所述第二補償時間,重新計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

在第二方面,本發明實施例提供了一種防止語音命令誤識別的裝置,包括:

歌詞文件獲取模塊,用于獲取與待播放歌曲匹配的歌詞文件;

易誤觸發詞組查找模塊,用于查找所述歌詞文件中的易誤觸發詞組,其中,所述易誤觸發詞組與預設語音控制命令的語言相同或相近;

播放時間計算模塊,用于根據所述歌詞文件,計算所述易誤觸發詞組播放的第一起始時間和第一結束時間;

語音識別模塊控制模塊,用于播放所述待播放歌曲,在到達所述第一起始時間時關閉語音識別模塊,在到達所述第一結束時間時啟動所述語音識別模塊。

在上述裝置中,優選的是,所述語音識別模塊控制模塊之后,還包括:

播放時間保存模塊,用于保存所述易誤觸發詞組和對應的所述第一起始時間和所述第一結束時間;

所述播放時間計算模塊之前,還包括:

易誤觸發詞組確認模塊,用于確認所述歌詞文件不存在已保存的所述易誤觸發詞組;

所述語音識別模塊控制模塊之前,還包括:

播放時間讀取模塊,用于若存在已保存的所述易誤觸發詞組,讀取所述待播放歌曲中所述易誤觸發詞組對應的所述第一起始時間和所述第一結束時間。

在上述裝置中,優選的是,所述歌詞文件為中文歌詞文件;

所述預設語音控制命令為漢語語音控制命令;

所述易誤觸發詞組查找模塊包括:

歌詞遍歷單元,用于遍歷所述中文歌詞文件中所有中文歌詞的發音屬性,其中,所述發音屬性至少包括音調、聲母和韻母;

相同詞組確認單元,用于如果所述所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與所述漢語語音控制命令中對應位置的漢字的所述發音屬性相同,則確認該漢字或漢字詞組與所述漢語語音控制命令的語言相同;

相近詞組確認單元,用于如果所述所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與所述漢語語音控制命令中對應位置的漢字的所述發音屬性中至少有一種不同且至少有兩種相同,則確認該漢字或漢字詞組與所述漢語語音控制命令的語言相近;

易誤觸發詞組標記單元,用于將所述一個漢字或所述一個漢字詞組標記為易誤觸發詞組。

在上述裝置中,優選的是,所述播放時間計算模塊包括:

第二播放時間確定單元,用于根據所述歌詞文件,獲取所述易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;

第一播放時間計算單元,用于根據所述第二起始時間、所述第二結束時間、所述歌詞語句包含歌詞單元的個數、所述易誤觸發詞組包含歌詞單元的個數和所述易誤觸發詞組在所述歌詞語句中的位置,計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

在上述裝置中,優選的是,所述播放時間計算模塊包括:

第二播放時間確定單元,用于根據所述歌詞文件,獲取所述易誤觸發詞組所屬的歌詞語句播放的所述第二起始時間和所述第二結束時間;

補償時間獲取單元,用于獲取所述第一起始時間的第一補償時間和所述第一結束時間的第二補償時間;

第二播放時間計算單元,用于根據所述第二起始時間、所述第二結束時間、所述第一補償時間、所述第二補償時間、所述歌詞語句包含歌詞單元的個數、所述易誤觸發詞組包含歌詞單元的個數和所述易誤觸發詞組在所述歌詞語句中的位置,計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

在上述裝置中,優選的是,還包括:

誤識別統計模塊,用于所述待播放歌曲播放結束后,統計引起和未引起所述預設語音控制命令誤識別的所述易誤觸發詞組;

補償時間修正模塊,用于修正所述易誤觸發詞組對應的所述第一補償時間和所述第二補償時間,重新計算所述易誤觸發詞組播放的所述第一起始時間和所述第一結束時間。

本發明實施例提供的防止語音命令誤識別的方法和裝置,通過先獲取與待播放歌曲匹配的歌詞文件,然后查找歌詞文件中的易誤觸發詞組,計算易誤觸發詞組播放的第一起始時間和第一結束時間,最后播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊,克服了現有技術中為了減小語音誤觸發的概率,進而增加語音識別算法的復雜度,導致處理器計算負擔增加、設備功耗上升以及語音識別算法移植困難的技術缺陷,實現了無需提高語音識別算法的復雜度,也可以可靠地減少由于播放歌曲導致的語音誤識別。

附圖說明

圖1是本發明實施例一提供的一種防止語音誤識別的方法的流程圖;

圖2是本發明實施例二提供的一種防止語音誤識別的方法的流程圖;

圖3是本發明實施例三提供的一種防止語音誤識別的方法的流程圖;

圖4是本發明實施例四提供的一種防止語音誤識別的裝置的結構圖。

具體實施方式

為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖對本發明具體實施例作進一步的詳細描述。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發明,而非對本發明的限定。

另外還需要說明的是,為了便于描述,附圖中僅示出了與本發明相關的部分而非全部內容。在更加詳細地討論示例性實施例之前應當提到的是,一些示例性實施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項操作(或步驟)描述成順序的處理,但是其中的許多操作可以被并行地、并發地或者同時實施。此外,各項操作的順序可以被重新安排。當其操作完成時所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應于方法、函數、規程、子例程、子程序等等。

實施例一

圖1為本發明實施例一提供的一種防止語音命令誤識別的方法的流程圖,本實施例的方法可以由防止語音誤識別裝置來執行,該裝置可通過硬件和/或軟件的方式實現,并一般可集成于具有語音命令控制功能且可以播放音頻文件的設備中,例如:手機、汽車等。本實施例的方法具體包括:

步驟110、獲取與待播放歌曲匹配的歌詞文件。

一般來說,在現有技術中,同時具有語音命令控制功能和音頻文件播放功能的設備,在獲取到播放音頻文件的命令時,都是直接進行播放,而不會在播放前,進行減小由于播放歌曲導致的語音命令誤識別的操作。

在本實施例中,在播放待播放歌曲前,會先獲取與待播放歌曲匹配的歌詞文件。其中,獲取的方式具體可以是從本地存儲的歌詞文件中獲取,也可以通過互聯網絡從存儲有所需歌詞文件的服務器中獲取,本實施例對此不進行限制。

其中,歌詞文件具體是指包含待播放歌曲的所有歌詞以及每句歌詞的起始時間等信息的文件。典型的可以是:后綴名為.LRC、.SNC以及.KRC等的文件。

另外,本方案中所說的歌詞并不限定于歌手演唱的歌曲的歌詞,也包括其它音頻文件中可能導致誤識別的內容,例如朗誦、演講等以聲音播放為顯示方式,同時朗誦稿或演講稿可以以歌詞文件的方式體現的多媒體內容。

步驟120、查找歌詞文件中的易誤觸發詞組,其中,易誤觸發詞組與預設語音控制命令的語言相同或相近。

在本實施例中,易誤觸發詞組具體是指可能會引起預設語音控制命令誤觸發的詞組,也就是發音與預設語音控制命令的語言的發音相同或相近的詞組。其中,預設語音控制命令具體是指預先存儲的,可以用來實施語音控制的語言。

由于歌詞中可能會存在易誤觸發詞組,導致歌曲在播放的過程中,引起語音控制命令誤識別,做出錯誤的操作,因此,在本實施例中,獲取待播放歌曲的歌詞文件后,首先會查找該歌詞文件中的歌詞是否包含有易誤觸發詞組。

其中,查找易誤觸發詞組的具體方式可以是遍歷歌詞文件中的所有歌詞查找與預設的語音控制命令中每個漢字的音調、聲母以及韻母均相同的詞組做為易誤觸發詞組,也可以是遍歷歌詞文件中的所有歌詞查找與預設的語音控制命令中每個英文單詞的音標均相同的詞組做為易誤觸發詞組等方式。其中,遍歷歌詞文件中的所有歌詞查找易誤觸發詞組的方式可以是在遍歷一遍所有歌詞的同時只針對一個預設語音控制命令查找與之對應的易誤觸發詞組,也就是說,有多少個預設的語音控制命令就要遍歷多少遍所有歌詞,也可以是只遍歷一遍所有歌詞,在遍歷的同時與所有的預設語音控制命令相比較查找易誤觸發詞組,也就是說,每遍歷到歌詞中的任意一個字或詞時都要與所有的預設語音控制命令進行對比。

另外需要說明的是,上面僅對歌詞為漢語和英語的兩種情況進行了說明,當歌詞為漢語和英語以外的語言時,本實施例的方法同樣適用,因為無論是哪一種語言,都對應有本語言特有的音素集,而本語言的所有單個字或單個詞的發音都是由本語言特有的一個或多個音素構成,在查找易誤觸發詞組時,就可以使用本語言特有的音素作為比對的基礎,當某個字或某個詞組與預設語音控制命令中每個字或每個詞的音素都相同或相近時,則判定該字或該詞組為易誤觸發詞組。

步驟130、根據歌詞文件,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在本實施例中,第一起始時間具體是指易誤觸發詞組開始播放的時間,第一結束時間具體是指易誤觸發詞組結束播放的時間,其中,第一起始時間和第一結束時間都是相對于待播放歌曲的起始播放時間計算出來的具體時間,待播放歌曲的起始播放時間可以記錄為0分0秒0毫秒或0分0秒等時間格式。

在本實施例中,由于在查找易誤觸發詞組時,可以同時獲知該易誤觸發詞組在歌詞中的具體位置(例如:在第五句歌詞的第3至第6個字),并且根據歌詞文件可以獲知每句歌詞的起始播放時間等時間信息,因此,根據易誤觸發詞組在歌詞中的具體位置以及每句歌詞的起始播放時間等時間信息可以較為容易地計算出易誤觸發詞組播放的第一起始時間和第一結束時間。

進一步地,由于不能保證每一句歌詞都是勻速播放的,且歌詞文件中一般不會詳細記錄每一個字或詞的起始播放時間,一般只記錄每句歌詞的起始播放時間,所以,在計算第一起始時間和第一結束時間時,如果默認每一句歌詞中的所有字或詞都是勻速播放的,計算結果可能會跟易誤觸發詞組實際的起始播放時間和結束播放時間有一定誤差,因此,可以對計算得到的第一起始時間和第一結束時間略作調整,使他們更加接近易誤觸發詞組實際的起始播放時間和結束播放時間。其中,調整的方式可以是設置補償時間,將計算得到的第一起始時間減去該補償時間,第一結束時間加上該補償時間,第一起始時間和第一結束時間的補償時間可以相同,也可以不相同,本實施例對此不進行限制。

步驟140、播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊。

在本實施例中,在完成計算易誤觸發詞組播放的第一起始時間和第一結束時間后,開始播放待播放歌曲,在播放該歌曲時,當到達第一起始時間時,就會關閉語音識別模塊,以防止易誤觸發詞組的播放引起語音誤識別,導致做出錯誤的操作,當到達第一結束時間時就會開啟語音識別模塊,以便實時進行語音控制命令的識別。

本發明實施例提供的防止語音命令誤識別的方法,通過先獲取與待播放歌曲匹配的歌詞文件,然后查找歌詞文件中的易誤觸發詞組,計算易誤觸發詞組播放的第一起始時間和第一結束時間,最后播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊,克服了現有技術中為了減小語音誤觸發的概率,進而增加語音識別算法的復雜度,導致處理器計算負擔增加、設備功耗上升以及語音識別算法移植困難的技術缺陷,實現了無需提高語音識別算法的復雜度,也可以可靠地減少由于播放歌曲導致的語音誤識別。

實施例二

圖2是本發明實施例二提供的一種防止語音命令誤識別的方法的流程圖。本實施例以上述實施例為基礎進行優化,在本實施例中,將歌詞文件優化為中文歌詞文件;

將預設語音控制命令優化為漢語語音控制命令;

相應的,將查找歌詞文件中的易誤觸發詞組優化為:遍歷中文歌詞文件中所有中文歌詞的發音屬性,其中,發音屬性至少包括音調、聲母和韻母;如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性相同,則確認該漢字或漢字詞組與漢語語音控制命令的語言相同;如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性中至少有一種不同且至少有兩種相同,則確認該漢字或漢字詞組與漢語語音控制命令的語言相近;將一個漢字或一個漢字詞組標記為易誤觸發詞組。

進一步地,將根據歌詞文件,計算易誤觸發詞組播放的第一起始時間和第一結束時間優化為:根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;根據第二起始時間、第二結束時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

進一步地,在播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊之后,還可以包括:保存易誤觸發詞組和對應的第一起始時間和第一結束時間。

相應的,在根據歌詞文件,計算易誤觸發詞組播放的第一起始時間和第一結束時間之前,還可以包括:確認歌詞文件不存在已保存的易誤觸發詞組。

相應的,在播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊之前,還可以包括:若存在已保存的易誤觸發詞組,讀取待播放歌曲中易誤觸發詞組對應的第一起始時間和第一結束時間。

相應的,本實施例的方法具體包括:

步驟201、獲取與待播放歌曲匹配的中文歌詞文件。

在本實施例中,待播放歌曲的歌詞為中文,匹配的歌詞文件為中文歌詞文件。

步驟202、判斷中文歌詞文件是否存在已保存的易誤觸發詞組,若不存在,則執行步驟203,若存在,則執行步驟209。

在本實施例中,如果待播放歌曲之前播放過,那么就會存在已保存的易誤觸發詞組以及對應的第一起始時間和第一結束時間,此時,就無需再查找中文歌詞中的易誤觸發詞組和計算易誤觸發詞組播放的第一起始時間和第一結束時間,可以直接調用之前保存的相關內容。

步驟203、遍歷中文歌詞文件中所有中文歌詞的發音屬性,其中,發音屬性至少包括音調、聲母和韻母。

在本實施例中,如果中文歌詞文件不存在已保存的易誤觸發詞組,則要從中文歌詞中查找易誤觸發詞組,查找易誤觸發詞組的具體方式為遍歷中文歌詞中的每一個漢字的發音屬性,根據該漢字與漢語語音控制命令的語言的發音屬性的匹配程度,判定該漢字是否為或是否屬于易誤觸發詞組。

其中,發音屬性具體是指由音調、聲母和韻母等與發音相關的屬性組成的屬性集合。中文歌詞中漢字的發音屬性具體可以從中文歌詞文件中獲取,也可以通過互聯網絡從服務器中下載,本實施例對此不進行限制。

步驟204、確認與漢語語音控制命令的語言相同的漢字或漢字詞組,具體地,如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性相同,則確認該漢字或漢字詞組與漢語語音控制命令的語言相同。

在一個具體的例子中,當進行對比的漢語語音控制命令為“開”時,在遍歷中文歌詞文件時,查找到中文歌詞文件中有一個漢字的發音屬性與“開”字的發音屬性相同,則將中文歌詞文件中的該漢字確認為易誤觸發詞組。

在一個具體的例子中,當進行對比的漢語語音控制命令為“增加音量”時,在遍歷中文歌詞文件時,查找到中文歌詞文件中有一個漢字A的發音屬性與“增”字的發音屬性相同,則繼續判斷漢字A后面的漢字B的發音屬性是否與“加”字相同,若不相同,則認為由漢字A和漢字B組成的詞組不是對應“增加音量”的易誤觸發詞組;若相同,則繼續判斷漢字B后面的漢字C的發音屬性是否與“音”字的發音屬性相同,若不相同,則認為由漢字A、B和C組成的詞組不是對應“增加音量”的易誤觸發詞組;若相同,則繼續判斷漢字C后面的漢字D的發音屬性是否與“量”字的發音屬性相同,若不相同,則認為由漢字A、B、C和D組成的詞組不是對應“增加音量”的易誤觸發詞組;若相同,則認為由漢字A、B、C和D組成的詞組是對應“增加音量”的易誤觸發詞組。

步驟205、確認與漢語語音控制命令的語言相近的漢字或漢字詞組,具體地,如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性中至少有一種不同且至少有兩種相同,則確認該漢字或漢字詞組與漢語語音控制命令的語言相近。

在本實施例中,在查找與漢語語音控制命令的語言相近的漢字或漢字詞組時,只要該漢字或漢字詞組的發音屬性與漢語語音控制命令中對應位置的漢字的發音屬性中至少有一種不同且至少有兩種相同,就認為該漢字或漢字詞組為易誤觸發詞組。

舉例而言,漢語語音控制命令為“關燈”,中文歌詞中有緊鄰的兩個漢字A和B,漢字A的音調和聲母與“關”字的音調和聲母相同且漢字A的韻母與“關”字的韻母不同,漢字B的聲母和韻母與“燈”字的聲母和韻母相同且漢字B的音調與“燈”字的音調不同,則認為由漢字A和B組成的詞組是對應“關燈”的易誤觸發詞組。

相應的,判斷中文歌詞中的一個漢字或一個漢字詞組是否是易誤觸發詞組的具體方法與步驟204中所舉的兩個例子相同,在此不再詳述,只是本步驟中該漢字或漢字詞組的發音屬性中至少有一種應與對應的漢語語音控制命令中對應位置的漢字不同且至少有兩種應與對應的漢語語音控制命令中對應位置的漢字相同才滿足判定為易誤觸發詞組的條件。

步驟206、將一個漢字或一個漢字詞組標記為易誤觸發詞組。

在本實施例中,當確定中文歌詞中的所有易誤觸發詞組后,需要對這些易誤觸發詞組進行標記,標記方法具體可以是直接在中文歌詞文件中直接進行標注,也可以是將易誤觸發詞組的相關信息存儲在另外一個可識別的文件中,本實施例對此不進行限制。

步驟207、根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間。

在本實施例中,歌詞語句播放的第二起始時間和第二結束時間具體是指該歌詞語句播放的起始時間和結束時間,其中,第二起始時間和第二結束時間都是相對于待播放歌曲的起始播放時間計算出來的具體時間。

在本實施例中,在查找到易誤觸發詞組的同時,會相應地記錄下易誤觸發詞組所屬的歌詞語句,以及其在該歌詞語句中的位置。相應的,如果標記易誤觸發詞組時,是直接在中文歌詞文件中直接進行標注,那么很容易獲知易誤觸發詞組所屬的歌詞語句以及在該歌詞語句中的位置;如果標記易誤觸發詞組時,是將易誤觸發詞組的相關信息存儲在另外一個可識別的文件中,那么要在該文件中同時記錄下易誤觸發詞組所屬的歌詞語句以及在該歌詞語句中的位置。

本領域技術人員可以理解的是,歌詞文件中一般都會記錄每一句歌詞播放的起始時間,同時還會記錄每一句歌詞播放的時間長度或每一句歌詞播放的結束時間,因此,當易誤觸發詞組所屬的歌詞語句已經確定的情況下,根據歌詞文件可以較為容易地獲取或計算出易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間。但是,LRC歌詞文件只記錄每句歌詞的播放起始時間而不記錄每句歌詞的結束時間或播放的時間長度,因此,當待播放歌曲匹配的歌詞文件的類型為LRC文件時,則默認下一句歌詞的播放起始時間為上一句歌詞的播放結束時間。

步驟208、計算易誤觸發詞組播放的第一起始時間和第一結束時間,具體地,根據第二起始時間、第二結束時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在本實施例中,歌詞單元具體是指組成歌詞的基本單位,例如:中文歌詞文件的歌詞單元為漢字、英文歌詞文件的歌詞單元為英文單詞等。

在一個具體的例子中,假設每一句歌詞都是以勻速演唱,易誤觸發詞組所在歌詞語句的起始播放時間為t1,結束播放時間為t2,該歌詞語句共有10個漢字,該易誤觸發詞組位于該歌詞語句的第3、4、5個字,那么,該易誤觸發詞組的第一起始時間T1和第一結束時間T2的計算公式分別為:

T1=t1+2[(t2-t1)/10]、T2=t1+5[(t2-t1)/10]。

步驟209、讀取待播放歌曲中易誤觸發詞組對應的第一起始時間和第一結束時間。

在本實施例中,如果中文歌詞文件存在已保存的易誤觸發詞組,則無需重新查找易誤觸發詞組,只需直接調用該已保存的易誤觸發詞組。

步驟210、播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊。

步驟211、保存易誤觸發詞組和對應的第一起始時間和第一結束時間。

在本實施例中,待播放歌曲播放完畢后,需要保存易誤觸發詞組和對應的第一起始時間和第一結束時間,以便下次播放一首歌曲時直接調用。

本發明實施例提供的防止語音命令誤識別的方法,通過先獲取與待播放歌曲匹配的歌詞文件,根據歌詞文件是、否存在已保存的易誤觸發詞組,分別進行直接讀取易誤觸發詞組及其對應的第一起始時間和第一結束時間的操作,以及通過遍歷歌詞中所有漢字的發音屬性確定易誤觸發詞組、獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間,并計算易誤觸發詞組播放的第一起始時間和第一結束時間的操作,然后播放待播放歌曲并適時關、開語音識別模塊,最后保存易誤觸發詞組和對應的第一起始時間和第一結束時間,克服了現有技術中為了減小語音誤觸發的概率,進而增加語音識別算法的復雜度,導致處理器計算負擔增加、設備功耗上升以及語音識別算法移植困難的技術缺陷,實現了無需提高語音識別算法的復雜度,也可以可靠地減少由于播放歌曲導致的語音誤識別。

實施例三

圖3是本發明實施例三提供的一種防止語音命令誤識別的方法的流程圖。本實施例以上述實施例為基礎進行優化,在本實施例中,將根據歌詞文件,計算易誤觸發詞組播放的第一起始時間和第一結束時間優化為:根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;獲取第一起始時間的第一補償時間和第一結束時間的第二補償時間;根據第二起始時間、第二結束時間、第一補償時間、第二補償時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

進一步地,還可以包括:待播放歌曲播放結束后,統計引起和未引起預設語音控制命令誤識別的易誤觸發詞組;修正易誤觸發詞組對應的第一補償時間和第二補償時間,重新計算易誤觸發詞組播放的第一起始時間和第一結束時間。

相應的,本實施例的方法具體包括:

步驟301、獲取與待播放歌曲匹配的歌詞文件。

步驟302、判斷中文歌詞文件是否存在已保存的易誤觸發詞組,若不存在,則執行步驟303,若存在,則執行步驟307。

步驟303、查找歌詞文件中的易誤觸發詞組,其中,易誤觸發詞組與預設語音控制命令的語言相同或相近。

步驟304、根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間。

步驟305、獲取第一起始時間的第一補償時間和第一結束時間的第二補償時間。

根據實施例一中的說明可知,如果假設待播放歌曲是完全勻速播放的,那么按照這種情況計算出來的易誤觸發詞組播放的第一起始時間和第一結束時間可能與實際情況有誤差,因此,為了使易誤觸發詞組播放的第一起始時間和第一結束時間更加準確,本實施例中增加了第一補償時間和第二補償時間,以對易誤觸發詞組播放的第一起始時間和第一結束時間進行修正。

其中,第一補償時間具體用于調整第一起始時間,第二補償時間具體用于調整第一結束時間,第一補償時間和第二補償時間可以相同,也可以不同,本實施例對此不進行限制。第一補償時間和第二補償時間的具體數值可以是經驗數值(例如:1秒鐘等),也可在合理的范圍內隨意設置。

另外,由于LRC歌詞文件只記錄每句歌詞的播放起始時間而不記錄每句歌詞的結束時間或播放的時間長度,因此,當待播放歌曲匹配的歌詞文件的類型為LRC文件時,且當易誤觸發詞組所在的歌詞語句與下一歌詞語句之間有音樂伴奏時,如果默認下一句歌詞的播放起始時間為上一句歌詞的播放結束時間,那么該上一句歌詞默認的播放結束時間與實際的播放結束時間不相同,因此,按照默認的下一句歌詞的播放起始時間為上一句歌詞的播放結束時間計算出來的所需時間點與實際的時間點有誤差,補償時間的引入可以減小甚至消滅這種誤差。

步驟306、計算易誤觸發詞組播放的第一起始時間和第一結束時間,具體地,根據第二起始時間、第二結束時間、第一補償時間、第二補償時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在本實施例中,計算易誤觸發詞組播放的第一起始時間T1’和第一結束時間T2’的方法為:首先計算出易誤觸發詞組不考慮補償時間時的播放的第一起始時間T1和第一結束時間T2,具體步驟可以參見步驟208中的具體說明,然后根據第一補償時間T’和第二補償時間T”計算T1’和T2’,公式為:

T1'=T1-T',T2'=T2+T”,其中,T’和T”均為正數。

步驟307、讀取待播放歌曲中易誤觸發詞組對應的第一起始時間和第一結束時間。

步驟308、播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊。

步驟309、待播放歌曲播放結束后,統計引起和未引起預設語音控制命令誤識別的易誤觸發詞組。

在本實施例中,待播放歌曲播放結束后,會對引起和未引起預設語音控制命令誤識別的易誤觸發詞組進行統計。

步驟310、修正易誤觸發詞組對應的第一補償時間和第二補償時間,重新計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在本實施例中,當易誤觸發詞組在待播放歌曲的播放過程中引起了預設語音控制命令的誤識別,則認為該易誤觸發詞組對應的第一起始時間和第一結束時間不準確,需要進行調整。調整的方法具體可以是將第一補償時間和第二補償時間相應增大,兩者增大的時間量可以相同,也可以不同,例如可以將第一補償時間和第二補償時間同時增加10%,然后使用增加后的第一補償時間和第二補償時間重新計算該易誤觸發詞組播放的第一起始時間和第一結束時間。

在本實施例中,當易誤觸發詞組在待播放歌曲的播放過程中沒有引起了預設語音控制命令的誤識別,則可以相應減小第一補償時間和第二補償時間的數值,兩者減小的時間量可以相同,也可以不同,例如可以將第一補償時間和第二補償時間同時減小5%,然后使用減小后的第一補償時間和第二補償時間重新計算該易誤觸發詞組播放的第一起始時間和第一結束時間。

步驟311、保存易誤觸發詞組和對應的第一起始時間和第一結束時間。

本發明實施例提供的防止語音命令誤識別的方法,通過先獲取與待播放歌曲匹配的歌詞文件,根據歌詞文件是、否存在已保存的易誤觸發詞組,分別進行直接讀取易誤觸發詞組對應的第一起始時間和第一結束時間的操作,以及通過遍歷歌詞中所有漢字的發音屬性確定易誤觸發詞組、獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間以及第一補償時間和第二補償使勁,并計算易誤觸發詞組播放的第一起始時間和第一結束時間的操作,然后播放待播放歌曲并適時關、開語音識別模塊,播放結束后統計易誤觸發詞組是否引起語音識別誤的情況并相應地對第一起始時間和第一結束時間進行修正,最后保存易誤觸發詞組和對應的第一起始時間和第一結束時間,克服了現有技術中為了減小語音誤觸發的概率,進而增加語音識別算法的復雜度,導致處理器計算負擔增加、設備功耗上升以及語音識別算法移植困難的技術缺陷,實現了無需提高語音識別算法的復雜度,也可以可靠地減少由于播放歌曲導致的語音誤識別,并在播放歌曲的同時最大限度地開啟語音識別模塊。

實施例四

圖4是本發明實施例四提供的一種防止語音命令誤識別的裝置的結構圖。如圖4所示,所述裝置包括:歌詞文件獲取模塊101、易誤觸發詞組查找模塊102、播放時間計算模塊103和語音識別模塊控制模塊104。其中:

歌詞文件獲取模塊101,用于獲取與待播放歌曲匹配的歌詞文件;

易誤觸發詞組查找模塊102,用于查找歌詞文件中的易誤觸發詞組,其中,易誤觸發詞組與預設語音控制命令的語言相同或相近;

播放時間計算模塊103,用于根據歌詞文件,計算易誤觸發詞組播放的第一起始時間和第一結束時間;

語音識別模塊控制模塊104,用于播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊。

本發明實施例提供的防止語音命令誤識別的裝置,通過先獲取與待播放歌曲匹配的歌詞文件,然后查找歌詞文件中的易誤觸發詞組,計算易誤觸發詞組播放的第一起始時間和第一結束時間,最后播放待播放歌曲,在到達第一起始時間時關閉語音識別模塊,在到達第一結束時間時啟動語音識別模塊,克服了現有技術中為了減小語音誤觸發的概率,進而增加語音識別算法的復雜度,導致處理器計算負擔增加、設備功耗上升以及語音識別算法移植困難的技術缺陷,實現了無需提高語音識別算法的復雜度,也可以可靠地減少由于播放歌曲導致的語音誤識別。

在上述各實施例的基礎上,語音識別模塊控制模塊之后,還可以包括:

播放時間保存模塊,用于保存易誤觸發詞組和對應的第一起始時間和第一結束時間;

播放時間計算模塊之前,還可以包括:

易誤觸發詞組確認模塊,用于確認歌詞文件不存在已保存的易誤觸發詞組;

語音識別模塊控制模塊之前,還可以包括:

播放時間讀取模塊,用于若存在已保存的易誤觸發詞組,讀取待播放歌曲中易誤觸發詞組對應的第一起始時間和第一結束時間。

在上述各實施例的基礎上,歌詞文件可以為中文歌詞文件;

預設語音控制命令可以為漢語語音控制命令;

易誤觸發詞組查找模塊可以包括:

歌詞遍歷單元,用于遍歷中文歌詞文件中所有中文歌詞的發音屬性,其中,發音屬性至少包括音調、聲母和韻母;

相同詞組確認單元,用于如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性相同,則確認該漢字或漢字詞組與漢語語音控制命令的語言相同;

相近詞組確認單元,用于如果所有中文歌詞中的一個漢字或一個漢字詞組中的各個漢字均與漢語語音控制命令中對應位置的漢字的發音屬性中至少有一種不同且至少有兩種相同,則確認該漢字或所漢字詞組與漢語語音控制命令的語言相近;

易誤觸發詞組標記單元,用于將一個漢字或一個漢字詞組標記為易誤觸發詞組。

在上述各實施例的基礎上,播放時間計算模塊可以包括:

第二播放時間確定單元,用于根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;

第一播放時間計算單元,用于根據第二起始時間、第二結束時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在上述各實施例的基礎上,播放時間計算模塊可以包括:

第二播放時間確定單元,用于根據歌詞文件,獲取易誤觸發詞組所屬的歌詞語句播放的第二起始時間和第二結束時間;

補償時間獲取單元,用于獲取第一起始時間的第一補償時間和第一結束時間的第二補償時間;

第二播放時間計算單元,用于根據第二起始時間、第二結束時間、第一補償時間、第二補償時間、歌詞語句包含歌詞單元的個數、易誤觸發詞組包含歌詞單元的個數和易誤觸發詞組在歌詞語句中的位置,計算易誤觸發詞組播放的第一起始時間和第一結束時間。

在上述各實施例的基礎上,還可以包括:

誤識別統計模塊,用于待播放歌曲播放結束后,統計引起和未引起預設語音控制命令誤識別的易誤觸發詞組;

補償時間修正模塊,用于修正易誤觸發詞組對應的第一補償時間和第二補償時間,重新計算易誤觸發詞組播放的第一起始時間和第一結束時間。

本發明實施例所提供的防止語音命令誤識別的裝置可用于執行本發明任意實施例提供的防止語音命令誤識別的方法,具備相應的功能模塊,實現相同的有益效果。

顯然,本領域技術人員應該明白,上述的本發明的各模塊或各步驟可以通過如上所述的服務器實施。可選地,本發明實施例可以用計算機裝置可執行的程序來實現,從而可以將它們存儲在存儲裝置中由處理器來執行,所述的程序可以存儲于一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等;或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明不限制于任何特定的硬件和軟件的結合。

以上所述僅為本發明的優選實施例,并不用于限制本發明,對于本領域技術人員而言,本發明可以有各種改動和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 南投市| 阿城市| 赫章县| 柳江县| 遵义市| 大同市| 威宁| 文安县| 军事| 高雄县| 鄂伦春自治旗| 车致| 白河县| 盐津县| 穆棱市| 双柏县| 开江县| 福清市| 喀喇| 章丘市| 页游| 沅江市| 青铜峡市| 曲松县| 时尚| 容城县| 镇原县| 连江县| 荆州市| 扎鲁特旗| 庆城县| 桃园市| 肇州县| 北流市| 苗栗市| 北川| 张家口市| 延津县| 大新县| 罗江县| 大理市|