播報語音的確定方法、裝置和設備
本發明所涉及的技術屬於語音合成技術領域,尤其涉及一種播報語音的確定方法、裝置和設備。
在日常的生活工作中,常常會面臨許多需要對數字內容進行語音播報的情況。例如,在交易活動中,商家通常會使用手機支付軟體內建的外掛程式程式來自動語音播報商家的帳戶上所收到的錢款的金額數目。
目前,現有的播報語音的確定方法在播報數字內容時大多是獲取並拼接各個字元(包括與數字、單位等對應的字元)的字元音節的主體部分的音訊資料。例如,在播報某一個具體數字時,會提取得到該數字中的各個字元的字元音節的主體部分的音訊資料進行拼接,得到用於播放的音訊資料,以進行語音播放。這種通過獲取並利用各個字元的字元音節的主體部分的音訊資料直接進行拼接所得到的音訊資料在播放時,往往會出現字元音節之間的過渡不夠流暢、自然,人們在收聽所播放的語音時會覺得相對比較突兀,感覺不符合人類的語音習慣,甚至影響收聽者對所播報的數字內容的理解,用戶體驗相對較差。因此,亟需一種能夠自然、流暢地對數字內容進行語音播報的播報語音的確定方法。
本發明目的在於提供一種播報語音的確定方法、裝置和設備,以解決現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字內容的語音播報。
本發明提供的一種播報語音的確定方法、裝置和設備是這樣實現的:
一種播報語音的確定方法,包括:獲取待播報的目標數字序列;將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
一種播報語音的確定裝置,包括:第一獲取模組,用於獲取待播報的目標數字序列;轉換模組,用於將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;第二獲取模組,用於獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;拼接模組,用於按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
一種播報語音的確定方法,包括:獲取待播放的字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述待播放的字串的音訊資料。
一種播報語音的確定設備,包括處理器以及用於儲存處理器可執行指令的記憶體,所述處理器執行所述指令時實現獲取待播報的目標數字序列;將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
一種電腦可讀儲存介質,其上儲存有電腦指令,所述指令被執行時實現獲取待播報的目標數字序列;將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
本發明提供的一種播報語音的確定方法、裝置和設備,由於通過獲取相鄰的字元之間的銜接音節的音訊資料,並利用相鄰的字元之間的銜接音節的音訊資料拼接對應的字元的主幹音節的音訊資料,得到過渡更為自然的語音音訊資料,以進行語音播報,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字內容的語音播報。
為了使本技術領域的人員更好地理解本發明中的技術方案,下面將結合本發明實施例中的圖式,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。
考慮到現有的播報語音的確定方法往往沒有深入地分析人類正常說話時的語言習慣和語音特點。例如,人在說“十六”這個數字時,在發出字元音節“十”之後,發出字元音節“六”之前,通常還會發出一種用於連接上述兩種字元音節“十”和“六”的銜接音節。且不同的字元音節之間的銜接音節往往還會存在差異。例如“五十”中字元音節“五”和字元音節“十”之間的銜接音節與“十五”中字元音節“十”和字元音節“五”之間的銜接音節也是不相同的。上述銜接音節本身並不對應某個具體字元,也不能表徵什麼具體的內容或含義,而是類似於一種連接助詞,將人類正常說的話中相鄰的字元音節自然、流暢地連接在了一起,以便聽話者能夠更好地接收並理解說話者說的話中的資訊和內容。而現有的播報語音的確定方法由於沒有考慮到上述人類的語音習慣和語音特點,在合成關於待播報的目標數字序列的語音音訊資料時,通常只截取樣本資料中的對應的數字字元的字元音節的主體部分的音訊資料直接進行拼接。由於相鄰的字元音節之間沒有符合人類語音習慣的自然過渡,導致基於上述方法所產生的關於目標數字序列的語音音訊資料在播放時往往不像人類說的數字那麼自然、流暢,甚至會影響人們對所播報的數字內容的理解,造成使用上的不方便。因此,現有方法在具體實施時,往往會存在數字播報不自然、用戶體驗差的問題。
針對產生上述問題的根本原因,本發明深入、全面地分析了人類正常說話時的語言習慣和語音特點,考慮並關注了人類在正常說話時相鄰的字元音節之間的銜接音節的存在和作用。在建立預設的音訊資料庫時,不但截取儲存了字元音節的主幹音節的音訊資料,還有意識地截取儲存了相鄰的字元音節之間的銜接音節的音訊資料。進而在產生某一個具體數字的語音音訊資料時,會同時獲取該數字對應的多個字元中各個字元的主幹音節的音訊資料和相鄰的字元之間的銜接音節的音訊資料,再利用相鄰的字元之間的銜接音節的音訊資料拼接對應的兩個相鄰的字元的主幹音節的音訊資料,使得所產生的語音音訊資料中,相鄰的字元音節之間的過渡更加自然、流暢,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字的語音播報。
基於上述原因,本發明實施例提供了一種能夠高效、自然地進行數字語音播報的播報語音的確定設備,通過該播報語音的確定設備可以實現以下功能:獲取待播報的目標數字序列;將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料;播放所述目標數字序列的音訊資料。
在本實施方式中,所述播報語音的確定設備可以是一種在用戶側使用的較為簡單的電子設備。具體地,所述播報語音的確定設備可以是一種具有資料運算、語音播放功能以及網路交互功能的電子設備;也可以為運行於該電子設備中,為資料處理、語音播放和網路交互等提供支援的軟體應用。
具體地,上述播報語音的確定設備例如可以是桌上型電腦、平板電腦、筆記型電腦、智慧手機、數位助理、智慧可穿戴設備、導購終端等。或者,上述播報語音的確定設備也可以是能夠運行於上述電子設備中的軟體應用。例如,上述播報語音的確定設備還可以是在智慧手機中運行的XX寶APP。
在一個場景示例中,可以通過應用本發明實施例提供的播報語音的確定方法的播報語音的確定設備為商家A自動播報商家A的帳戶即時到帳的錢款的金額數字。
在本實施方式中,商家A可以使用自己的手機作為上述播報語音的確定設備。在具體實施前,商家A可以先通過手機的設置操作將手機號碼與商家A在某支付平台上的帳戶關聯。參閱圖1所示,通常消費者在商家A的店中消費結束後可以直接通過手機上的某支付平台的支付軟體在網上進行結帳付款,而不需要線上下與商家進行當面付款。具體的,消費者可以利用手機與某支付平台的伺服器進行通信,通過支付平台將應付給商家A的錢款轉帳到商家A的帳戶中,完成結帳付款。支付平台的伺服器在確認商家A的帳戶接收到消費者通過網上轉帳的錢款後,會向商家A的手機發送到帳提示資訊(例如發送到帳提示短信,或者在商家A的手機上的支付APP中推送對應的到帳提示對話方塊等),以提示商家A:消費者已經在網上進行了結帳付款,同時還會在提示資訊中標識出商家A的帳戶所收到的錢款的具體金額數字,以便商家A可以進一步確認消費者在網上支付的錢款的金額是否準確。例如,支付平台的伺服器可以在確認商家A的帳戶接收到消費者網上轉帳的54元的錢款時,可以向與商家A的帳戶關聯的手機發送包括以下內容的提示資訊:“帳戶到帳54元”。
通常在營業期間,商家會相對比較忙,往往可能沒有時間及時地翻看、閱讀上述提示資訊,因此不方便及時地確認消費者是否在網上進行了結帳付款,以及消費者在網上結帳付款的金額是否準確。這時商家希望可以通過手機即時地語音播報出自己的帳戶所收到錢款具體的金額數字,這樣商家即使營業期間比較忙,沒有時間自己去翻看、確認支付平台的伺服器發送的提示資訊,也能及時地瞭解到消費者通過支付平台結帳付款的具體情況。
手機在接收到支付平台發送的提示資訊後,可以先對提示資訊進行解析,並提取提示資訊中的金額數字“54”作為待播報的目標數字序列,以便後續確定該數字序列所對應的音訊資料進行語音播報。
在本實施方式中,上述提示資訊通常是按照固定規則產生的,因此具有相對統一的格式。例如,在本場景示例中,上述提示資訊可以是按照以下格式構成的:前置引導語部分(即“帳戶到帳”)+數字部分(即具體金額“54”)+單位部分(即“元”)。因此,在獲取待播報的目標數字序列,即提示資訊中數字部分的具體內容時,可以按照與上述產生提示資訊的固定規則對應的解析規則對提示資訊進行解析、拆分,即可以從提示資訊的數字部分中提取得到待播報的數字,即目標數字序列。
在本實施方式中,需要說明的是,對於不同的提示資訊,上述前置引導語部分和單位部分的內容通常都是一樣的,只有數字部分的內容會隨提示資訊不同而不同。因此,可以預先產生並儲存統一的前置引導語部分的音訊資料、單位部分的音訊資料,在播報提示資訊時,只需要產生提示資訊中數字部分的音訊資料,再與預先儲存的前置引導語部分的音訊資料、單位部分的音訊資料進行拼接,即可以得到提示資訊完整的語音音訊資料。
手機在獲取得到了待播報的目標數字序列後,可以先將目標數字序列轉換為對應的字串。其中,上述字串具體可以理解為用於表徵目標數字序列的字元音節的,且按照與目標數字序列對應的排列順序(即預設排列順序)排列的字串,上述字串中每一個字元對應目標數字序列中的一個字元音節。
例如,目標數字序列“54”轉換後得到的對應的字串可以表示為“五十四”。字串“五十四”可以理解為表徵目標數字序列“54”的字元音節的字串,其中,字串中的字元“五”、“十”與目標數字序列中的位於十位元上的數字“5”對應;字串中的字元“四”與目標數字序列中的位於個位上的數字“4”對應。且字串中的字元按照與目標數字序列“54”中數字的排列順序(即先“5”後“4”)對應的預設排列順序進行排列,即先排對應十位上的“5”的字元“五”“十”,再排對應個位上“4”的字元“四”。當然,需要說明的是,上述所列舉的字串,以及對應的預設排列順序只是為了更好地說明本發明實施方式。具體實施時,還可以根據具體的場景情況,選擇使用其他形式的字串和預設規則,也可以對目標數字序列不作轉換,直接進行識別拼接等。對此,本發明不作限定。
手機在得到與目標數字序列對應的字串後,可以識別並確定字串中按順序排列的各個字元,以及相鄰字元之間的連接關係。其中,上述相鄰字元之間的連接關係具體可以理解為相鄰的兩個字元之間的先後順序的一種標識資訊。例如,字串“五十四”中字元“五”和“十”是相鄰的兩個字元,“五”和“十”之間的連接關係可以表述為:字元“五”連字號“十”。當然,需要說明的是上述所列舉的相鄰字元之間的連接關係只是一種示意性說明。具體實施時還可以通過其他標識方式表示相鄰字元之間的連接關係。對此,本發明不作限定。
在本實施方式中,手機通過字元識別,可以確定出字串中的各個字元按順序依次為“五”、“十”、“四”,對應的相鄰字元之間的連接關係依次為:字元“五”連字號“十”、字元“十”連字號“四”。
進一步,手機可以根據所識別得到的各個字元,以及相鄰的字元之間的連接關係,從預設的音訊資料庫中進行檢索,以得到與各個字元,以及相鄰的字元之間的連接關係對應的音訊資料,即獲取字串中各個字元的主幹音節的音訊資料,以及相鄰的字元之間的銜接音節的音訊資料。
其中,上述字元的主幹音節具體可以理解為字元音節的主要部分,通常該部分的音節具有較高的辨識度,同一個字元音節的主幹音節的基頻、音強等音訊特徵較為一致,近似相同,因此可以提取字元音節的主幹音節用以區分其他字元音節。例如,人在發出字元“五”對應的語音時,中間部分的語音是該字元音節的主要部分,即主幹音節,通常不同人發字元“五”對應的語音時,雖然存在差異,但主幹音節部分大多都是一致的。
上述相鄰字元之間的銜接音節具體可以理解為用於連接相鄰字元的主幹音節的連接部分的音節。例如,人在發出“五十”時,在字元“五”的主幹音節和字元“十”的主幹音節之間的連接部分的語,即為字元“五”和字元“十”之間的銜接音節。這部分音節不同於主幹音節本身並沒有什麼具體含義,也不用於對應表徵某一個具體字元,但在音訊資料中的波形資料並不為0。在人的語音習慣中,通常會出現在相鄰的字元的主幹音節之間,起到承接、過渡的作用,從而能夠使得人說的話不同於機器發音,不是單調、呆板地直接將各個字元的主幹音節簡單地連接起來,而是很自然、流暢地從一個字元音節過渡到另一個字元音節。這樣播報出來的數字更符合人類的聽說習慣,便於人類的接收和理解,同時也會使得收聽者收聽時感覺更舒服,體驗更好。還需要補充的是,不同的相鄰字元(包括字元不同,以及字元相同字元先後順序不同等)之間的銜接音節往往也不相同。例如,字元“五”和“十”之間的銜接音節與“五”和“百”之間的銜接音節、“十”和“五”之間的銜接音節在對應的音訊資料的波形上相互之間都存在差異。因此,在本實施方式中,需要利用相鄰字元之間的連接關係準確地獲取到對應的銜接音節的音訊資料。
上述預設的音訊資料庫具體可以是事先有平台伺服器建立並儲存於伺服器或者播報語音的確定設備的資料庫,其中,上述預設的音訊資料庫中具體可以包含有各個字元的主幹音節的音訊資料,以及各個相鄰字元之間的銜接音節的音訊資料。
具體的,手機可以根據所識別得到的各個字元,以及相鄰的字元之間的連接關係,檢索預設的音訊資料庫分別得到 字元“五”的主幹音節的音訊資料A、“十”的主幹音節的音訊資料B、“四”的主幹音節的音訊資料C,以及字元“五”連字號“十”之間的銜接音節的音訊資料f、字元“十”連字號“四”之間的銜接音節的音訊資料r。
進而,手機可以將上述字元的主幹音節的音訊資料,以及相鄰的字元之間的銜接音節的音訊資料按照字串中字元的排列順序(即預設順序)進行拼接,以得到對應目標數字序列的音訊資料。具體的,可以按照預設順序(即與目標數字序列的字串中字元的排列順序),排列各個字元的主幹音節的音訊資料;再利用相鄰的字元之間的銜接音節的音訊資料連接相鄰的字元的主幹音節的音訊資料。
具體的,例如,可以參閱圖2所示,按照字串(即“五十四”)中字元的排列順序先排“五”的主幹音節的音訊資料A,然後再排“十”的主幹音節的音訊資料B,最後排“四”的主幹音節的音訊資料C。在排好主幹音節的音訊資料後;進一步可以利用字元“五”連字號“十”之間的銜接音節的音訊資料f連接音訊資料A和音訊資料B,利用字元“十”連字號“四”之間的銜接音節的音訊資料r連接音訊資料B和音訊資料C。最終得到的拼接好的,針對目標數字序列“54”的音訊資料可以表示為:“A-f-B-r-C”。這樣便得到了過渡更為自然的針對目標數字序列的音訊資料。
在獲得了目標數字序列的音訊資料後,可以將預先設置好儲存在手機或者伺服器的用於指示所述目標數字序列所表徵的資料對象的前置音訊資料(例如前置引導語部分的音訊資料、單位部分的音訊資料)與目標數字序列的音訊資料進行拼接,得到待播放的語音音訊資料,手機再根據上述語音音訊資料,播放相應的內容資訊。
在本實施方式中,參閱圖3所示,商家A的手機可以獲取預設並儲存在手機本地的前置音訊資料,即預先設置好的用於表述“帳戶到帳”的音訊資料Y和用於表述“元”的音訊資料Z;並將上述前置音訊資料與產生的關於目標數字序列“54”的音訊資料進行拼接,得到完整的待播放的語音音訊資料,可以表示為“Y-A-f-B-r-C-Z”,進而播放上述語音音訊資料,這樣商家A就可以聽到清楚、自然、流暢,且更符合人類正常的收聽習慣的語音播報,避免了機器語音對商家收聽體驗造成的影響。
由上可見,本發明實施例提供的播報語音的確定方法通過獲取相鄰的字元之間的銜接音節的音訊資料,並利用相鄰的字元之間的銜接音節的音訊資料拼接對應的字元的主幹音節的音訊資料,得到過渡更為自然的語音音訊資料,以進行語音播報,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字的語音播報。
在另一個場景示例中,支付平台的伺服器可以預先建立預設的音訊資料庫,並將上述預設的音訊資料庫發送至播報語音的確定設備。播報語音的確定設備在接收到預設的音訊資料庫,可以將預設的音訊資料庫儲存在播報語音的確定設備的本地,以便播報語音的確定設備可以通過檢索預設的音訊資料庫以獲取目標數字序列的字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料。當然,支付平台的伺服器在建立了預設的音訊資料庫後,也可以不將預設的音訊資料庫發送至播報語音的確定設備,而是儲存在伺服器一側,播報語音的確定設備在產生目標數字序列的音訊資料時,可以通過調用儲存在伺服器一側的預設的音訊資料庫以獲取目標數字序列的字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料。
在本實施方式中,具體實施時,伺服器可以獲取包含有數字的音訊資料作為樣本資料。進而可以按照一定的規則從標記後的樣本資料中分別截取獲得字元的主幹音節的音訊資料,以及相鄰的字元之間的銜接音節的音訊資料,再根據上述字元的主幹音節的音訊資料,以及相鄰的字元之間的銜接音節的音訊資料,建立預設的音訊資料庫。
具體的,上述獲取包含有數字的音訊資料作為樣本資料可以包括:截取播音員的播報音訊資料中包含有與數字相關的播報內容的音訊資料作為上述樣本資料。也可以採集人按照預設文本讀出的語音資料,作為上述樣本資料,其中,上預設文本可以是預先設置的包含有多種數字組合的文本內容。
在獲取了樣本資料後,還可以先對樣本資料進行標記。具體的,可以參閱圖4所示,在所獲取的樣本資料中,利用字元音節標識可以標識出各個字元音節對應的音訊資料的所處的範圍區域。例如,對於樣本資料中的音訊資料“五十六”,可以利用“5”、“10”、“6”分別作為字元音節“五”的字元音節標識、字元音節“十”的字元音節標識、字元音節“六”的字元音節標識,分別標識出字元音節“五”、“十”、“六”在所述音訊資料中的範圍區域。當然,需要說明的是,上述所列舉的字元音節標識只是一種示意性說明,不應構成對本發明的不當限定。
進一步的,在從樣本資料中截取得到字元的主幹音節的音訊資料時,具體可以包括:檢索所述樣本資料中的字元音節標識;根據所述字元音節標識,截取所述樣本資料中所述字元音節標識所標識的範圍中的指定區域的音訊資料作為所述字元的主幹音節的音訊資料。
具體的,可以檢索確定樣本資料中音訊資料的字元音節標識,進而可以根據上述字元音節標識,確定樣本資料中的各個字元音節在音訊資料中的區域範圍,即樣本資料中的字元音節標識所標識的範圍;再從上述字元音節在音訊資料中的區域範圍中按照預設的規則截取指定區域內的音訊資料作為字元的主幹音節的音訊資料。例如,對於樣本資料中的音訊資料“五十六”,可以先檢索該音訊資料中的字元音節標識“5”、“10”、“6”;進而可以根據字元音節標識“5”確定字元音節“五”在音訊資料中的區域範圍,根據字元音節標識“10”確定字元音節“十”在音訊資料中的區域範圍,根據字元音節標識“6”確定字元音節“六”在音訊資料中的區域範圍;進而可以從字元音節“五”所在的區域範圍的音訊資料中截取指定區域的音訊資料作為字元“五”的主幹音節的音訊資料,從字元音節“十”所在的區域範圍的音訊資料中截取指定區域的音訊資料作為字元“十”的主幹音節的音訊資料,從字元音節“六”所在的區域範圍的音訊資料中截取指定區域的音訊資料作為字元“六”的主幹音節的音訊資料。
在具體截取字元的主幹音節的音訊資料時,考慮到人在說具體數字時,對應於數字中的每一個數字或單位的音節的中間部分的音訊資料大多是較為一致的,即相同字元音節的音訊資料大多中間部分的音訊資料差異相對較小,不同字元音節的音訊資料大多中間部分的音訊資料差異相對較大。例如,人在說“五十六”和“六十五”這兩個數字時,“五十六”中的字元“五”的音節的音訊資料的中間部分往往與“六十五”中的字元“五”的音節的音訊資料的中間部分相同。因此,可以將字元音節的音訊資料中的中間部分的音訊資料作為指定區域的音訊資料進行截取,以得到該字元音節的主幹音節的音訊資料。基於上述特點,具體實施時,可以在所述字元音節標識所標識的範圍中,以所述字元音節標識所標識的範圍中的中點為中心對稱點,且區域的區間長度與所述字元音節標識所標識的範圍的區間長度的比值等於預設比值的區域。
例如,可以參閱圖5所示,將字元音節標識“5”所標識的範圍中的中點O作為中心對稱點,分別截取中心對稱點O兩側1/2區域組合作為指定區域,將該指定區域的音訊資料確定為字元“五”的主幹音節的音訊資料。其中,上述指定區域占字元音節標識“5”所標識的範圍的1/2。按照上述方式,還可以截取得到字元“十”的主幹音節的音訊資料,以及字元“六”的主幹音節的音訊資料。當然,上述所列舉的預設比值只是為了更好地說明本發明實施方式。具體實施時,也可以根據具體的場景情況,選擇其他數值作為預設比值,以確定指定區域進而截取對應的字元的主幹音節的音訊資料。
在截取得到字元的主幹音節的音訊資料後,可以截取樣本資料的音訊資料中相鄰的字元的主幹音節的音訊資料之間的區域內的音訊資料作為上述相鄰的字元之間的銜接音節的音訊資料。
例如,可以參閱圖5所示,截取樣本資料的音訊資料中的相鄰的字元“五”的主幹音節的音訊資料與字元“十”的主幹音節的音訊資料之間的區域內的音訊資料作為字元“五”連字號“十”之間的銜接音節的音訊資料,即相鄰的字元之間的銜接音節的音訊資料。按照上述方式還可以截取得到相鄰的字元“十”和字元“六”之間的銜接音節的音訊資料。
在本場景實例中,考慮到如果樣本資料較為豐富,可以截取得到多個表徵同一相鄰的字元之間的銜接音節的音訊資料。例如,樣本資料中的音訊資料“五十六”、“五十四”中都可以截取到相同的字元“五”與字元“十”之間的銜接音節的音訊資料(或稱字元“五”連字號“十”之間的銜接音節的音訊資料)。此外,樣本資料中可能包含有不同人發出的“五十六”的音訊資料,進而可以基於不同人的音訊資料,得到多個字元“五”和字元“十”之間的銜接音節的音訊資料。
因此,在所截取得到的相鄰的字元之間的銜接音節的音訊資料中包括有同一相鄰的字元之間的銜接音節的音訊資料的情況下,為了獲取效果較好的音訊資料作為相鄰的字元之間的銜接音節的音訊資料,以便後續用於銜接相應的字元的主幹音節的音訊資料時更為自然、流暢,可以將同一相鄰的字元之間的多個銜接音節的音訊資料劃分為多種類型,分別統計樣本資料中各種類型的音訊資料的出現頻率,並從多種類型的音訊資料中篩選出現頻率最高的類型的音訊資料作為上述相鄰的字元之間的銜接音節之間的音訊資料,儲存在預設的音訊資料庫中。當然,除了上述所列舉的根據各種類型的音訊資料的出現頻率從同一相鄰的字元之間的多個銜接音節的音訊資料中篩選出效果較好的音訊資料進行儲存外還可以採用其他合適的方式從同一相鄰的字元之間的多個銜接音節的音訊資料中篩選出效果較好的音訊資料進行儲存。例如,還可以分別計算同一相鄰的字元之間的多個銜接音節的音訊資料的MOS值(Mean Opinion Score,平均主觀意見分),根據銜接音節的音訊資料的MOS值,篩選出MOS值最高的銜接音節的音訊資料作為相鄰的字元之間的銜接音節的音訊資料。其中,上述MOS值可以用於較為準確、客觀地評價音訊資料的自然、流暢程度。
類似的,在截取得到多個表徵同一字元的主幹音節的音訊資料時,可以統計同一字元的多個主幹音節的音訊資料中不同類型的主幹音節的音訊資料的出現頻率,進而可以從同一子符的多種類型的主幹音節的音訊資料中篩選出出現頻率最高的音訊資料作為該字元的主幹音節的音訊資料並儲存至預設的音訊資料庫中。也可以分別確定同一字元的多個主幹音節的音訊資料的MOS值,篩選出MOS值最高的音訊資料作為該字元的主幹音節的音訊資料並儲存至預設的音訊資料庫中等。
由上可見,本發明實施例提供的播報語音的確定方法通過獲取相鄰的字元之間的銜接音節的音訊資料,並利用相鄰的字元之間的銜接音節的音訊資料拼接對應的字元的主幹音節的音訊資料,得到過渡更為自然的語音音訊資料,以進行語音播報,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字的語音播報;還通過獲取包含有數字的樣本資料,從樣本資料中截取指定區域內的音訊資料作為字元的主幹音節的音訊資料,進而截取字元的主幹音節的音訊資料之間的音訊資料作為相鄰字元之間的銜接音節的音訊資料,從而可以建立較為準確的預設的音訊資料庫,以便可以通過檢索上述預設的音訊資料庫,產生更為自然、流暢的目標數字序列的音訊資料。
參閱圖6所示,本發明提供了一種播報語音的確定方法,其中,該方法具體應用於播報語音的確定設備(或用戶端)一側。具體實施時,該方法可以包括以下內容。
S601:獲取待播報的目標數字序列。
在本實施方式中,上述待播報的目標數字序列具體可以是到帳的錢款的金額數字,例如54元中的54;也可以是汽車行駛里程的距離數字,例如80公里中的80;還可以是股票的即時價格,例如20.9元每股中的20.9。當然上述所列舉的目標數字序列所表徵的資料對象只是為了更好地說明本實施方式。具體實施時,根據具體的應用場景,上述待播報的目標數字序列還可以是用於表徵其他資料對象的數字。對此,本發明不作限定。
在本實施方式中,獲取待播報的目標數字序列具體可以理解為,獲取待播報的資料,解析待播報的資料,提取所述待播報的資料中數字作為上述待播報的目標數字序列。例如,支付平台的伺服器在確認用戶的帳戶到帳54元時,會向與該用戶的帳戶關聯的播報語音的確定設備(例如該用戶的手機)發送到帳提示資訊“帳戶到帳54元”。播報語音的確定設備在接收到上述到帳提示資訊後,可以解析該提示資訊,並提取該提示資訊中的數字“54”作為待播報的目標數字序列。當然,需要說明的是,上述所列舉的獲取待播報的目標數字序列只是一種示意性說明,對此,本發明不作限定。
S603:將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元。
在本實施方式中,其中,上述字串具體可以理解為用於表徵目標數字序列的字元音節的,且按照與目標數字序列對應的排列順序(即預設排列順序)排列的字串,上述字串中每一個字元對應目標數字序列中的一個字元音節。例如,目標數字序列“67”的字串可以表示為“六十七”,其中,字元“六”、“十”、“七”分別對應於目標數字序列中的一個字元音節,並且上述字元按照與目標數字序列對應的預設順序排列。當然,需要說明的是,上述所列舉的字串只是為了更好地說明本實施方式。具體實施時,根據具體情況還可以選擇使用其他類型的字串。對此,本發明不作限定。
在本實施方式中,上述將所述目標數字序列轉換為字串,具體可以理解為根據預設的映射規則,將目標數字序列轉換為對應的用於表徵目標數字序列的字元音節的字串。例如,根據預設的映射規則,可以將目標數字序列“67”中十位元上的數字“6”轉換為對應的字元“六”和“十”,將個位上的數字“7”轉換為對應的字元“七”,再按照與目標數字序列“67”對應的預設順序,排列得到的字元,從而得到對應的字串為“六十七”。當然,需要說明的是,上述所列舉的將所述目標數字序列轉換為字串的實現方式只是一種示意性說明。具體實施時,也可以根據具體情況,採用其他方式將目標數字序列轉換為對應的字串。對此,本發明不作限定。
S605:獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節。
在本實施方式中,上述字元的主幹音節具體可以理解為一個字元音節的主要部分(例如字元音節的中間部分)。通常這部分的音節具有較高的辨識度,同一個字元音節的主幹音節的基頻、音強等音訊特徵較為一致,近似相同,因此可以提取字元音節的主幹音節用以區分其他字元音節。
在本實施方式中,上述相鄰字元之間的銜接音節具體可以理解為用於連接相鄰字元的主幹音節的連接部分的音節。通常這部分的音節不同於主幹音節本身並沒有什麼具體含義,也不用於對應表徵某一個具體字元,但在音訊資料中的波形資料並不為0。在人的語音習慣中,通常會出現在相鄰的字元的主幹音節之間,起到承接、過渡的作用,從而能夠使得人說的話不同於機器發音,不是單調、呆板地直接將各個字元的主幹音節簡單地連接起來,而是很自然、流暢地從一個字元音節過渡到另一個字元音節。例如,人在發出“五十”時,在字元“五”的主幹音節和字元“十”的主幹音節之間的連接部分的語,即為字元“五”和字元“十”之間的銜接音節。
在本實施方式中,上述獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,具體可以包括:根據目標數字序列的字串中的具體字元,檢索預設的音訊資料庫以獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料。
其中,上述預設的音訊資料庫具體可以是事先建立的並儲存於伺服器或者播報語音的確定設備的資料庫。具體的,上述預設的音訊資料庫中具體可以包含有各個字元的主幹音節的音訊資料,以及各個相鄰字元之間的銜接音節的音訊資料。
S607:按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
在本實施方式中,上述目標數字序列的音訊資料具體可以理解為用於語音播報目標數字序列的音訊資料。
在本實施方式中,上述按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,具體實施時,可以包括:按照預設順序(即與目標數字序列的字串中字元的排列順序),排列各個字元的主幹音節的音訊資料;再利用相鄰的字元之間的銜接音節的音訊資料連接相鄰的字元的主幹音節的音訊資料。
在本實施方式中,需要說明的是,考慮到通常用戶使用的播報語音的確定設備大多是嵌入式的設備系統,這類設備系統受限於自身的結構,往往運算能力、資料處理能力相對較弱,導致直接通過語音合成模型合成相應的數字序列的音訊資料成本相對較高、處理效率也相對較差。通過利用本發明實施例提供的播報語音的確定方法可以避免通過資源佔用較高的語音合成模型產生對應的音訊資料,而是簡單地在預設的音訊資料庫中檢索確定對應的字元的主幹音節的音訊資料,以及相鄰字元之間的銜接音節的音訊資料進行拼接組合,以得到具有較高準確度的目標數字序列的音訊資料,從而可以降低對資源的佔用,提高處理效率,更好地適用於嵌入式的設備系統。
在一個實施方式中,上述獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,具體實施時,可以包括以下內容。
S1:識別所述字串中的各個字元,並確定所述字串中的相鄰的字元之間的連接關係,其中,所述字串中的相鄰的字元之間的連接關係用於指示字串中的相鄰的字元之間的先後連接順序;
S2:根據所述字串中的各個字元,從預設的音訊資料庫中檢索並獲取各個字元的主幹音節的音訊資料,其中,所述預設的音訊資料庫中儲存有字元的主幹音節的音訊資料和相鄰的字元之間的銜接音節的音訊資料;
S3:根據所述字串中的相鄰的字元之間的連接關係,從預設的音訊資料庫中檢索並獲取所述字串中的相鄰的字元之間的銜接音節的音訊資料。
在本實施方式中,上述相鄰的字元之間的連接關係具體可以理解為相鄰的兩個字元之間的先後順序的一種標識資訊。例如,字串“五十四”中字元“五”和“十”是相鄰的兩個字元,“五”和“十”之間的連接關係可以表述為:字元“五”連字號“十”。當然,需要說明的是上述所列舉的相鄰字元之間的連接關係只是一種示意性說明。具體實施時還可以通過其他標識方式表示相鄰字元之間的連接關係。對此,本發明不作限定。
在本實施方式中,具體實施時,可以根據將所識別的字元,以及所確定的相鄰的字元之間的連接關係作為標識,在預設的音訊資料庫中進行檢索,以提取預設的音訊資料庫中與上述標識匹配的音訊資料中作為上述字元的主幹音節的音訊資料,或相鄰的字元之間的銜接音節的音訊資料。
在一個實施方式中,所述預設的音訊資料庫具體可以按照以下方式建立。
S1:獲取樣本資料;其中,所述樣本資料為包含有數字序列所對應的字串的音訊資料;
S2:從所述樣本資料中截取得到字元的主幹音節的音訊資料;
S3:從所述樣本資料中截取得到相鄰的字元之間的銜接音節的音訊資料;
S4:根據所述字元的主幹音節的音訊資料、所述相鄰的字元之間的銜接音節的音訊資料,建立所述預設的音訊資料庫。
在本實施方式中,上述獲取包含有數字的音訊資料作為樣本資料具體實施時,可以包括:截取播音員的播報音訊資料中包含有與數字相關的播報內容的音訊資料作為上述樣本資料;也可以採集人按照預設文本讀出的語音資料,作為上述樣本資料,其中,上預設文本可以是預先設置的包含有多種數字組合的文本內容。當然需要說明的是,上述所列舉的獲取包含有數字的音訊資料作為樣本資料的實現方式只是一種示意性說明。具體實施時,還可以根據具體情況選擇通過其他方式獲取包含有數字的音訊資料作為樣本資料。對此,本發明不作限定。
在本實施方式中,在獲取了樣本資料後,還可以對樣本資料進行標記。具體的,可以在所獲取的樣本資料中,利用相應的字元音節標識標記出各個字元音節對應的音訊資料的所處的範圍區域。
相應的,上述從樣本資料中截取得到字元的主幹音節的音訊資料時,具體可以包括:檢索所述樣本資料中的字元音節標識;根據所述字元音節標識,截取所述樣本資料中所述字元音節標識所標識的範圍中的指定區域的音訊資料作為所述字元的主幹音節的音訊資料。
在本實施方式中,上述指定區域具體可以理解為在所述字元音節標識所標識的範圍中,以所述字元音節標識所標識的範圍中的中點為中心對稱點,且區域的區間長度與所述字元音節標識所標識的範圍的區間長度的比值等於預設比值的區域。
例如,可以將字元音節標識“5”所標識的範圍中的中點O作為中心對稱點,分別截取中心對稱點O兩側1/2區域組合作為指定區域,將該指定區域的音訊資料確定為字元“五”的主幹音節的音訊資料。其中,上述指定區域占字元音節標識“5”所標識的範圍的1/2。當然,需要說明的是,上述所列舉的指定區域,以及確定指定區域的方式只是為了更好地說明本發明實施方式。具體實施時,還可以根據具體情況選擇使用其他的區域作為指定區域,進而採用對應的確定方式確定指定區域。
例如,還可以將字元音節標識所標識的範圍中音強幅值大於閾值強度的區域作為指定區域。相應的,具體實施時,可以根據音強,從字元音節標識所表示的範圍中,截取音強幅值大於閾值強度的區域內的音訊資料作為字元的主幹音節的音訊資料。
具體實施時,可以參閱圖7所示。從字元音節標識所標識的範圍中,選擇音強的幅值大於閾值強度的第一個週期中的音強值為0的位置點與音強幅值小於閾值強度的第一個週期中的音強為0的位置點之間的區域作為指定區域,進而可以截取上述指定區域中的音訊資料作為上述字元的主幹音節的音訊資料。
其中,需要說明的是,上述閾值強度的具體數值可以根據字元音節的音素確定。具體的,如果字元音節的音素為母音,可以將上述閾值強度設置得相對較高,例如可以設置為0.1。如果字元音節的音素為輔音,可以將上述閾值強度設置得相對較低,例如可以設置為0.03。例如,對於某一個字元的字元音節以母音開頭,以輔音結尾,具體實施時可以將該字元的字元音節標識所標識範圍中音強的幅值大於0.1的第一個週期中的音強值為0的位置點與音強幅值小於0.03的第一個週期中的音強為0的位置點之間的區域作為指定區域,進而可以獲取該指定區域中的音訊資料作為該字元的主幹音節的音訊資料。
此外,上述閾值強度的具體數值還可以根據音訊資料中背景聲音的強弱確定、具體的,如果音訊資料中的背景聲音較強,可以將上述閾值強度設置得相對較高,例如可以設置為0.16.如果,音訊資料中的背景聲音較弱,可以將上述閾值強度設置得相對較低,例如可以設置為0.047。當然,需要說明的是,上述所列舉的確定閾值強度的方式只是為了更好地說明本實施時方式。具體實施時,還可以根據具體的應用場景,選擇採用其他合適的方式確定閾值強度。對此,本發明不作限定。
在從所述樣本資料中截取得到字元的主幹音節的音訊資料後,相應的,上述從所述樣本資料中截取得到相鄰的字元之間的銜接音節的音訊資料,具體實施時,可以包括:截取所述樣本資料中相鄰的字元的主幹音節的音訊資料之間的區域的音訊資料作為所述相鄰的字元之間的銜接音節的音訊資料。
在本實施方式中,進一步考慮到根據人類的語音習慣,在發出關於目標數字序列的語音資料中的第一個字元音節時,在音強為0至第一個字元的主幹音節的音訊資料之間也存在一種起銜接作用的連接音節的音訊資料。因此,具體實施時,還可以截取樣本資料中的音訊資料中起始位置與第一字元有的主幹音節的音訊資料之間的音訊資料作為一種銜接音節的音訊資料,以便後續可以拼接得到效果較好、較為自然流暢的目標數字的音訊資料的起始部分的字元的音訊資料。
在本實施方式中,具體實施時,可以截取樣本資料中音訊資料內兩個相鄰的指定區域之間的區域內的音訊資料作為對應的相鄰字元之間的銜接音節的音訊資料。
在本實施方式中,具體實施時,可以按照上述方式分別對樣本資料中的各個音訊資料進行截取,以獲取所述字元的主幹音節的音訊資料、所述相鄰的字元之間的銜接音節的音訊資料,進而可以儲存所獲取的所述字元的主幹音節的音訊資料、所述相鄰的字元之間的銜接音節的音訊資料,並根據所述字元的主幹音節的音訊資料、所述相鄰的字元之間的銜接音節的音訊資料,建立所述預設的音訊資料庫。
在一個實施方式中,從所述樣本資料中截取得到字元的主幹音節的音訊資料,具體實施時,可以包括以下內容:檢索所述樣本資料中的字元音節標識;根據所述字元音節標識,截取所述樣本資料中所述字元音節標識所標識的範圍中的指定區域的音訊資料作為所述字元的主幹音節的音訊資料。
在一個實施方式中,所述指定區域具體可以理解為在所述字元音節標識所標識的範圍中,以所述字元音節標識所標識的範圍中的中點為中心對稱點,且區域的區間長度與所述字元音節標識所標識的範圍的區間長度的比值等於預設比值的區域。
在一個實施方式中,從所述樣本資料中截取得到相鄰的字元之間的銜接音節的音訊資料,具體實施時,可以包括以下內容:截取所述樣本資料中相鄰的字元的主幹音節的音訊資料之間的區域的音訊資料作為所述相鄰的字元之間的銜接音節的音訊資料。
在一個實施方式中,在從所述樣本資料中截取得到相鄰的字元之間的銜接音節的音訊資料後,為尋找並確定銜接效果較好、較為自然流暢的銜接音節的音訊資料進行儲存,具體實施時,所述方法還可以包括以下內容:
S1:檢測所述相鄰的字元之間的銜接音節的音訊資料中是否包括同一相鄰的字元之間的多個銜接音節的音訊資料;
S2:在確定所述相鄰的字元之間的銜接音節的音訊資料中包括同一相鄰的字元之間的多個銜接音節的音訊資料的情況下,統計所述同一相鄰的字元之間的多個銜接音節的音訊資料中各種類型的銜接音節的音訊資料的出現頻率,將所述出現頻率最高的類型的銜接音節的音訊資料確定為所述相鄰的字元之間的銜接音節的音訊資料。
在本實施方式中,由於樣本資料大多是由人發出的包含有數字的語音音訊資料,對於同一相鄰的字元之間的多個銜接音節的音訊資料,出現頻率越高對應在人類正常的語音習慣中使用越頻繁,越能吻合人類較為普遍的語音習慣。因此可以將出現頻率最高的類型的銜接音節的音訊資料作為效果較好、較為自然的音訊資料儲存在預設的音訊資料庫中以提高音訊資料庫的準確度。
具體的,可以將同一相鄰的字元之間的多個銜接音節的音訊資料劃分為多種類型,分別統計樣本資料中各種類型的音訊資料的出現頻率,並從多種類型的音訊資料中篩選出現頻率最高的類型的音訊資料作為上述相鄰的字元之間的銜接音節之間的音訊資料,儲存在預設的音訊資料庫中。當然,除了上述所列舉的根據各種類型的音訊資料的出現頻率從同一相鄰的字元之間的多個銜接音節的音訊資料中篩選出效果較好的音訊資料進行儲存外還可以採用其他合適的方式從同一相鄰的字元之間的多個銜接音節的音訊資料中篩選出效果較好的音訊資料進行儲存。例如,還可以分別計算同一相鄰的字元之間的多個銜接音節的音訊資料的MOS值(Mean Opinion Score,平均主觀意見分),根據銜接音節的音訊資料的MOS值,篩選出MOS值最高的銜接音節的音訊資料作為相鄰的字元之間的銜接音節的音訊資料。其中,上述MOS值可以用於較為準確、客觀地評價音訊資料的自然、流暢程度。
類似的,在截取得到多個表徵同一字元的主幹音節的音訊資料時,可以統計同一字元的多個主幹音節的音訊資料中不同類型的主幹音節的音訊資料的出現頻率,進而可以從同一子符的多種類型的主幹音節的音訊資料中篩選出出現頻率最高的音訊資料作為該字元的主幹音節的音訊資料並儲存至預設的音訊資料庫中。也可以分別確定同一字元的多個主幹音節的音訊資料的MOS值,篩選出MOS值最高的音訊資料作為該字元的主幹音節的音訊資料並儲存至預設的音訊資料庫中等。
在一個實施方式中,為了得到較為完整的語音音訊資料進行包含有目標數字序列的語音播報,在得到所述目標數字序列的音訊資料後,所述方法具體實施時還可以包括以下內容:
S1:獲取預設的前置音訊資料,其中,所述預設的前置音訊資料用於指示所述目標數字序列所表徵的資料對象;
S2:將所述預設的前置音訊資料和所述目標數字序列的音訊資料進行拼接,得到待播放的語音音訊資料;
S3:播放所述待播放的語音音訊資料。
在本實施方式中,上述預設的前置音訊資料具體可以是用於指示目標數字序列所表徵的資料對象等內容的音訊資料。例如,對於到帳金額播報而言,上述預設的前置音訊資料可以包括設置在金額數字之前的語音音訊資料“帳戶到帳”,以及設置在金額數字之後的語音音訊資料“元”。對於股票價格播報而言,上述預設的前置音訊資料可以包括設置在價格數字之前的語音音訊資料“XX股票的最新單價是”,以及設置在價格數字之後的語音音訊資料“元每股”。當然,上述所列舉的預設的前置音訊資料只是一種示意性說明。具體實施時,還可以根據具體的應用場景,設置其他的音訊資料作為上述預設的前置音訊資料。對此,本發明不作限定。
在本實施方式中,需要說明的是,通常所播報的語音資料中前置音訊資料往往較為固定,變化的只是語音資料中待播報的目標數字序列。以到帳金額播報為例,不同的到帳金額的語音播報數據中前置音訊資料都是相同。例如,“帳戶到帳金額為五十四元”、“帳戶到帳金額為七十九元”中前置音訊資料完全相同都是“帳戶到帳金額為”,以及“元”,不同只是待播報的金額數字。因此,具體實施時,為了提高處理效率,可以預先設置儲存對應的前置音訊資料,再產生了目標數字序列的音訊資料後,可以將預設的前置音訊資料與所產生的目標數字序列的音訊資料直接進行拼接組合,得到待播放的語音音訊資料,進行語音播放。從而可以避免對內容相同的前置音訊資料進行重複的音訊資料合成,提高處理效率,使得本發明提供的播報語音的確定方法更加適用於資料處理能力有限的嵌入式系統,例如手機等播報語音的確定設備。
具體的,例如,在得到了目標數字序列“54”的音訊資料後,可以先調用預設設置好的前置音訊資料“帳戶到帳金額為”、“元”;再按照一定的順序將目標數字序列“54”的音訊資料與預設的前置音訊資料進行拼接組合。具體的,可以在“帳戶到帳金額為”的音訊資料後連接目標數字序列“54”的音訊資料,在在目標數字序列“54”的音訊資料後連接“元”,從而得到了較為完整的,包含有目標數字序列的到帳金額的語音播報數據。
在一個實施方式中,所述預設的前置音訊資料具體可以包括以下至少之一:用於播報到帳金額的前置用語的音訊資料、用於播報行駛里程的前置用語的音訊資料、用於播報股票價格的前置用語的音訊資料等。當然,需要說明的是,上述所列舉的預設的前置音訊資料只是為了更好地說明本實施方式。具體實施時,根據具體的應用場景和要求,還可以選擇使用其他的預設的音訊資料作為上述預設的前置資料。對此,本發明不作限定。
由上可見,本發明實施例提供的播報語音的確定方法通過獲取相鄰的字元之間的銜接音節的音訊資料,並利用相鄰的字元之間的銜接音節的音訊資料拼接對應的字元的主幹音節的音訊資料,得到過渡更為自然的語音音訊資料,以進行語音播報,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字的語音播報;還通過獲取包含有數字的樣本資料,從樣本資料中截取指定區域內的音訊資料作為字元的主幹音節的音訊資料,進而截取字元的主幹音節的音訊資料之間的音訊資料作為相鄰字元之間的銜接音節的音訊資料,從而可以建立較為準確的預設的音訊資料庫,以便可以通過檢索上述預設的音訊資料庫,產生更為自然、流暢的目標數字序列的音訊資料。
參閱圖8所示,本發明提供了一種播報語音的確定方法,其中,該方法具體應用於播報語音的確定設備一側。具體實施時,該方法可以包括以下內容。
S801:獲取待播放的字串,其中,所述字串包括多個按照預設順序排列的字元;
S803:獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;
S805:按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述待播放的字串的音訊資料。
在本實施方式中,上述待播放的字串具體可以是待播放的數字序列的字串,也可以是待播放的文字資訊的字串。具體實施時,可以根據具體應用場景和實施要求選擇相應內容的字串作為上述待播放的字串。對於上述待播放的字串所表徵的具體內容,本發明不作限定。
本發明實施例還提供了一種播報語音的確定設備,包括處理器以及用於儲存處理器可執行指令的記憶體,所述處理器具體實施時可以根據指令執行以下步驟:獲取待播報的目標數字序列;將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
為了能夠更加準確地完成上述指令,參閱圖9,本發明還提供了另一種具體的播報語音的確定設備,其中,所述播報語音的確定設備包括輸入介面901、處理器902以及記憶體903,上述結構通過內部線纜相連,以便各個結構可以進行具體的資料交互。
其中,所述輸入介面901,具體可以用於輸入待播報的目標數字序列。
所述處理器902,具體可以用於將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
所述記憶體903,具體可以用於儲存經輸入介面901輸入的待播報的目標數字序列、預設的音訊資料庫,以及儲存相應的指令程式。
在本實施方式中,所述輸入介面901具體可以是一種支援播報語音的確定設備獲取,並從所獲取的資訊資料中提取待播報的目標資料序列的單元、模組。
在本實施方式中,所述處理器902可以按任何適當的方式實現。例如,處理器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式碼(例如軟體或韌體)的電腦可讀介質、邏輯閘、開關、專用積體電路(Application Specific Integrated Circuit,ASIC)、可程式化邏輯控制器和嵌入微控制器的形式等等。本發明並不作限定。
在本實施方式中,所述記憶體903可以包括多個層次,在數字系統中,只要能儲存二進位資料的都可以是記憶體;在積體電路中,一個沒有實物形式的具有儲存功能的電路也叫記憶體,如RAM、FIFO等;在系統中,具有實物形式的存放裝置也叫記憶體,如記憶體條、TF卡等。
本發明實施例還提供了一種基於上述支付方法的電腦儲存介質,所述電腦儲存介質儲存有電腦程式指令,在所述電腦程式指令被執行時實現:將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
在本實施方式中,上述儲存介質包括但不限於隨機存取記憶體(Random Access Memory, RAM)、唯讀記憶體(Read-Only Memory, ROM)、快取(Cache)、硬碟(Hard Disk Drive, HDD)或者儲存卡(Memory Card)。所述記憶體可以用於儲存電腦程式指令。網路通信單元可以是依照通信協定規定的標準設定的,用於進行網路連接通信的介面。
在本實施方式中,該電腦儲存介質儲存的程式指令具體實現的功能和效果,可以與其它實施方式對照解釋,在此不再贅述。
參閱圖10,在軟體層面上,本發明實施例還提供了一種播報語音的確定裝置,該裝置具體可以包括以下的結構模組:
第一獲取模組1001,具體可以用於獲取待播報的目標數字序列;
轉換模組1002,具體可以用於將所述目標數字序列轉換為字串,其中,所述字串包括多個按照預設順序排列的字元;
第二獲取模組1003,具體可以用於獲取所述字串中的各個字元的主幹音節的音訊資料,以及所述字串中的相鄰的字元之間的銜接音節的音訊資料,其中,所述銜接音節用於連接相鄰的字元的主幹音節;
拼接模組1004,具體可以用於按照預設順序拼接所述字元的主幹音節的音訊資料和所述相鄰的字元之間的銜接音節的音訊資料,得到所述目標數字序列的音訊資料。
在一個實施方式中,所述第二獲取模組1003具體可以包括以下結構單元:
識別單元,具體可以用於識別所述字串中的各個字元,並確定所述字串中的相鄰的字元之間的連接關係,其中,所述字串中的相鄰的字元之間的連接關係用於指示字串中的相鄰的字元之間的先後連接順序;
第一獲取單元,具體可以用於根據所述字串中的各個字元,從預設的音訊資料庫中檢索並獲取各個字元的主幹音節的音訊資料,其中,所述預設的音訊資料庫中儲存有字元的主幹音節的音訊資料和相鄰的字元之間的銜接音節的音訊資料;
第二獲取單元,具體可以用於根據所述字串中的相鄰的字元之間的連接關係,從預設的音訊資料庫中檢索並獲取所述字串中的相鄰的字元之間的銜接音節的音訊資料。
在一個實施方式中,為了預先準備好需要使用的預設的音訊資料庫,具體實施時,所述裝置還可以包括建立模組,具體可以用於建立預設的音訊資料庫。
在一個實施方式中,所述建立模組具體實施時,可以包括以下結構單元:
第三獲取單元,具體可以用於獲取包含有數字的音訊資料作為樣本資料;
第一截取單元,具體可以用於從所述樣本資料中截取得到字元的主幹音節的音訊資料;
第二截取單元,具體可以用於從所述樣本資料中截取得到相鄰的字元之間的銜接音節的音訊資料;
建立單元,具體可以用於根據所述字元的主幹音節的音訊資料、所述相鄰的字元之間的銜接音節的音訊資料,建立所述預設的音訊資料庫。
在一個實施方式中,所述裝置具體實施時,還可以包括播放模組,具體可以用於獲取預設的前置音訊資料,其中,所述預設的前置音訊資料用於指示所述目標數字序列所表徵的資料對象;將所述預設的前置音訊資料和所述目標數字序列的音訊資料進行拼接,得到待播放的語音音訊資料;播放所述待播放的語音音訊資料。
在一個實施方式中,所述預設的前置音訊資料具體可以包括以下至少之一:用於播報到帳金額的前置用語的音訊資料、用於播報行駛里程的前置用語的音訊資料、用於播報股票變化值的前置用語的音訊資料等。當然,需要說明的是上述所列舉的前置音訊資料只是一種示意性說明。具體實施時,還可以根據具體的應用場景和要求,選擇或者獲取其他合適的音訊資料作為上述預設的前置音訊資料。對此,本發明不作限定。
需要說明的是,上述實施例闡明的單元、裝置或模組等,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。為了描述的方便,描述以上裝置時以功能分為各種模組分別描述。當然,在實施本發明時可以把各模組的功能在同一個或多個軟體和/或硬體中實現,也可以將實現同一功能的模組由多個子模組或子單元的組合實現等。以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或元件可以結合或者可以整合到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些介面,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
由上可見,本發明實施例提供的播報語音的確定裝置通過第二獲取模組獲取相鄰的字元之間的銜接音節的音訊資料,並通過拼接模組利用相鄰的字元之間的銜接音節的音訊資料拼接對應的字元的主幹音節的音訊資料,得到過渡更為自然的語音音訊資料,以進行語音播報,從而解決了現有方法中存在的數字播報不自然、用戶體驗差的問題,達到能兼顧運算成本,高效、流暢地進行有關數字的語音播報;還通過建立模組獲取包含有數字的樣本資料,從樣本資料中截取指定區域內的音訊資料作為字元的主幹音節的音訊資料,進而截取字元的主幹音節的音訊資料之間的音訊資料作為相鄰字元之間的銜接音節的音訊資料,從而可以建立較為準確的預設的音訊資料庫,以便可以通過檢索上述預設的音訊資料庫,產生更為自然、流暢的目標數字序列的音訊資料。
雖然本發明提供了如實施例或流程圖所述的方法操作步驟,但基於常規或者無創造性的手段可以包括更多或者更少的操作步驟。實施例中列舉的步驟順序僅僅為眾多步驟執行順序中的一種方式,不代表唯一的執行順序。在實際中的裝置或用戶端產品執行時,可以按照實施例或者圖式所示的方法循序執行或者並存執行(例如並行處理器或者多執行緒處理的環境,甚至為分散式資料處理環境)。術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、產品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、產品或者設備所固有的要素。在沒有更多限制的情況下,並不排除在包括所述要素的過程、方法、產品或者設備中還存在另外的相同或等同要素。第一,第二等詞語用來表示名稱,而並不表示任何特定的順序。
本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以通過將方法步驟進行邏輯程式設計來使得控制器以邏輯閘、開關、專用積體電路、可程式化邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體元件,而對其內部包括的用於實現各種功能的裝置也可以視為硬體元件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體元件內的結構。
本發明可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、對象、元件、資料結構、類等等。也可以在分散式運算環境中實踐本發明,在這些分散式運算環境中,由通過通信網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括存放裝置在內的本地和遠端電腦儲存介質中。
通過以上的實施方式的描述可知,本領域的技術人員可以清楚地瞭解到本發明可借助軟體加必需的通用硬體平台的方式來實現。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品可以儲存在儲存介質中,如ROM/RAM、磁碟、光碟等,包括若干指令用以使得一台電腦設備(可以是個人電腦,移動終端,伺服器,或者網路設備等)執行本發明各個實施例或者實施例的某些部分所述的方法。
本發明中的各個實施例採用遞進的方式描述,各個實施例之間相同或相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。本發明可用於眾多通用或專用的電腦系統環境或配置中。例如:個人電腦、伺服器電腦、手持設備或可擕式設備、平板型設備、多處理器系統、基於微處理器的系統、機上盒、可程式化的電子設備、網路PC、小型電腦、大型電腦、包括以上任何系統或設備的分散式運算環境等等。
雖然通過實施例描繪了本發明,本領域普通技術人員知道,本發明有許多變形而不脫離本發明的精神,希望所附的申請專利範圍包括這些變形和變化而不脫離本發明的精神。
S601-805‧‧‧步驟
901‧‧‧輸入介面
902‧‧‧處理器
903‧‧‧記憶體
1001‧‧‧第一獲取模組
1002‧‧‧轉換模組
1003‧‧‧第二獲取模組
1004‧‧‧拼接模組
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本發明中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些圖式獲得其他的圖式。
圖1是在一個場景示例中,應用本發明實施例提供的播報語音的確定方法進行到帳金額播報的一種實施例的示意圖;
圖2是在一個場景示例中,應用本發明實施例提供的播報語音的確定方法拼接得到目標數字序列的音訊資料的一種實施例的示意圖;
圖3是在一個場景示例中,應用本發明實施例提供的播報語音的確定方法得到用於播放到帳金額的語音音訊資料的一種實施例的示意圖;
圖4是在一個場景示例中,標記音訊資料的一種實施例的示意圖;
圖5是在一個場景示例中,截取字元的主幹音節的音訊資料,以及相鄰字元之間的銜接音節的音訊資料的一種實施例的示意圖;
圖6是本發明的一個實施例提供的播報語音的確定方法的一種實施例的流程示意圖;
圖7是本發明的一個實施例提供的播報語音的確定方法中確定指定區域的位置點的一種實施例的示意圖;
圖8是本發明的一個實施例提供的播報語音的確定方法的一種實施例的流程示意圖;
圖9是本發明的一個實施例提供的播報語音的確定設備的結構的一種實施例的示意圖;
圖10是本發明的一個實施例提供的播報語音的確定裝置的結構的一種實施例的示意圖。