本發明涉及高安全性語音控制技術領域,更具體地,涉及一種用于無人機的語音識別算法。
背景技術:
無人機在情報獲取、打擊目標、戰場評估等方面發揮越來越重要的作用,幾乎應用于戰爭的各個階段,世界軍事大國均把無人機作為軍事能力發展的重要方向。現有技術中已經存在諸多語音識別和語音控制技術,應用于無人機的例如有申請號為cn201510145362的中國發明專利申請提供了一種適用于無人機的語音控制方法,包括:(1)遙控裝置接收語音指令;(2)將語音指令發送到無人機的控制單元;(3)無人機的控制單元將語音指令分解成若干個單獨動作的指令;(4)無人機控制單元對所述若干個單獨動作的指令進行預演;(5)無人機根據預演結果,向遙控裝置提供反饋信息。
同時,隨著通信技術的快速發展,干擾、竊聽等手段竊取通話語音信息而導致數據泄露的問題日趨嚴重,極易造成嚴重損失。因此,語音通信的安全性問題變得越來越重要,用戶對于語音通信的保密性需求也顯得尤為迫切。現有技術中,此方面的應用主要集中于簡單地在地面控制端加密、在無人機端解密的方式進行,但過程過于繁瑣,增加了處理器的負荷,或者即便終端提供多種加密等級,也無法供地面控制端向多個無人機選擇相應的加密等級,操作實用性差、安全度低。
技術實現要素:
為了克服現有技術中對于協同式無人機的語音安全識別技術的短板,本發明提供了一種用于無人機的語音識別算法,用于多個彼此協作的無人機的語音信息的識別,包括以下步驟:
(1)為各無人機所在區域動態地劃分多個子區域,各子區域的范圍是隨時間timei變化的且各子區域至少包括兩架無人機,i=0,1,2,…,n,n為大于2的自然數,在各子區域內至少有兩個從無人機節點,設p1為在timei時刻同一第一子區域r內存在c架無人機的概率,在該第一子區域的相鄰子區域j內具有d架子無人機的概率為pj,j=1,2,3,…,k,k為大于2的自然數,sc和sd分別表示在第一子區域和相鄰子區域j內的從無人機節點的數量,p和q是大素數,zq表示有q個元素的大素數有限域,則p1滿足
(2)在各個子區域中確定分別對應于一架無人機的主無人機節點和從無人機節點,所述主無人機節點用于接收來自地面控制臺的語音信號v主,所述從無人機節點用于接收來自其自身所在的子區域內的主無人機節點的語音主信號v從m以及來自與其自身所在的子區域相鄰的子區域j的從無人機節點的語音參考信號v從s,j,該子區域j內具有d架無人機,其中v從m=v主×k,v從s,j=v主×pd,j,
(3)所述各個主無人機節點根據所述語音主信號和所述語音參考信號進行通信;
(4)根據步驟(3)的通信結果,所述各主無人機節點進行語音識別,其中對于第一子區域r的窗函數為
進一步地,各從無人機節點發送的語音參考信號與各子區域范圍的變化同步。
進一步地,各從無人機節點發送的語音參考信號與各子區域范圍的變化異步。
進一步地,所述語音主信號包括語音指令中除時間信息和方向信息以外的語音信息,所述語音參考信號包括語音指令中關于指令被執行時間的時間信息和關于無人機將變向的方向信息。
進一步地,所述地面控制臺對待發送給所述各無人機的語音指令進行加密,加密密鑰為w(id,q2,e,zq),其中id為待接收語音主信號的主無人機節點所在子區域的無人機總數,且id在p和q2之間,其中w(f(x))表示對函數f(x)進行小波變換。
進一步地,所述步驟(3)包括:
(31)設節點a為主無人機節點,節點b為從無人機節點,idb表示節點a所在子區域的id,節點a和節點b在時間段pi內安全通信,以s0h1(timei)為種子生成節點a和節點b之間通信的密鑰,則節點a直接提取b的公鑰kb,pi:=(h1(idb),h1(timei)),其中h1(f(x))表示f(x)的高斯函數;
(32)計算第一會話密鑰為:
(33)節點b直接提取a的公鑰ka,pi:=(h1(ida),h1(timei)),計算第二會話密鑰:
進一步地,所述步驟(4)包括:節點a利用所述第一會話密鑰對節點a和節點b的數據進行解密,節點b利用所述第二會話密鑰對節點a和節點b的數據進行解密。
進一步地,所述子區域為圓形區域或正多邊形區域。
進一步地,所述子區域的劃分發生改變的周期與地面控制臺發出語音指令的周期成正比。
進一步地,在不同的所述周期內,所述主無人機節點和從無人機節點開啟不同的通信信道,用于與地面控制臺通信。
進一步地,所述通信信道在地面控制臺被預先記錄,并按照該預先記錄的順序根據時間的改變而依次被用于所述地面控制臺向所述無人機發送語音指令。
本發明的有益效果是:能夠降低語音遠程控制過程中對語音加密和解密算法的依賴度,利用多機協作模式提高了語音識別過程中窗函數的密級,提高了無人機在實際協同飛行過程中各自語音指令被破解或攔截的難度,從而極大地增強了遠程控制的安全性。
附圖說明
圖1為本發明提供的用于無人機的語音識別算法的流程圖。
具體實施方式
下面結合附圖對本發明作詳細地說明:
如圖1所示,本發明提供了一種用于無人機的語音識別算法,用于多個彼此協作的無人機的語音信息的識別,包括以下步驟:
(1)為各無人機所在區域動態地劃分多個子區域,各子區域的范圍是隨時間timei變化的且各子區域至少包括兩架無人機,i=0,1,2,…,n,n為大于2的自然數,在各子區域內至少有兩個從無人機節點,設p1為在timei時刻同一第一子區域r內存在c架無人機的概率,在該第一子區域的相鄰子區域j內具有d架子無人機的概率為pj,j=1,2,3,…,k,k為大于2的自然數,sc和sd分別表示在第一子區域和相鄰子區域j內的從無人機節點的數量,p和q是大素數,zq表示有q個元素的大素數有限域,則p1滿足
(2)在各個子區域中確定分別對應于一架無人機的主無人機節點和從無人機節點,所述主無人機節點用于接收來自地面控制臺的語音信號v主,所述從無人機節點用于接收來自其自身所在的子區域內的主無人機節點的語音主信號v從m以及來自與其自身所在的子區域相鄰的子區域j的從無人機節點的語音參考信號v從s,j,該子區域j內具有d架無人機,其中v從m=v主×k,v從s,j=v主×pd,j,
(3)所述各個主無人機節點根據所述語音主信號和所述語音參考信號進行通信;
(4)根據步驟(3)的通信結果,所述各主無人機節點進行語音識別,其中對于第一子區域r的窗函數為
優選地,各從無人機節點發送的語音參考信號與各子區域范圍的變化同步。
優選地,各從無人機節點發送的語音參考信號與各子區域范圍的變化異步。
優選地,所述語音主信號包括語音指令中除時間信息和方向信息以外的語音信息,所述語音參考信號包括語音指令中關于指令被執行時間的時間信息和關于無人機將變向的方向信息。
優選地,所述地面控制臺對待發送給所述各無人機的語音指令進行加密,加密密鑰為w(id,q2,e,zq),其中id為待接收語音主信號的主無人機節點所在子區域的無人機總數,且id在p和q2之間,其中w(f(x))表示對函數f(x)進行小波變換。
優選地,所述步驟(3)包括:
(31)設節點a為主無人機節點,節點b為從無人機節點,idb表示節點a所在子區域的id,節點a和節點b在時間段pi內安全通信,以s0h1(timei)為種子生成節點a和節點b之間通信的密鑰,則節點a直接提取b的公鑰kb,pi:=(h1(idb),h1(timei)),其中h1(f(x))表示f(x)的高斯函數;
(32)計算第一會話密鑰為:
(33)節點b直接提取a的公鑰ka,pi:=(h1(ida),h1(timei)),計算第二會話密鑰:
優選地,所述步驟(4)包括:節點a利用所述第一會話密鑰對節點a和節點b的數據進行解密,節點b利用所述第二會話密鑰對節點a和節點b的數據進行解密。
優選地,所述子區域為圓形區域或正多邊形區域。
優選地,所述子區域的劃分發生改變的周期與地面控制臺發出語音指令的周期成正比。
優選地,在不同的所述周期內,所述主無人機節點和從無人機節點開啟不同的通信信道,用于與地面控制臺通信。
優選地,所述通信信道在地面控制臺被預先記錄,并按照該預先記錄的順序根據時間的改變而依次被用于所述地面控制臺向所述無人機發送語音指令。
優選地,所述多個彼此協作的無人機進行密鑰協商。由于所有節點私有的第二部分均是s0h1(timei),因此可以把s0h1(timei)作為群組會話密鑰或以s0h1(timei)為種子生成群組會話密鑰。
優選地,在所述解密期間,還包括對從節點進行密鑰撤銷。現有技術中并不存在密鑰撤銷處理,然而經申請人研究和試驗發現,這種撤銷能夠有效地保障多個彼此協作的無人機之間的通信和加密、解密操作的流程控制順暢,進而為本發明的主或從無人機節點的有效性更新提供極富價值的參考。設當前時間階段為ti,時間參數為timei,私鑰撤銷包括三部分:異常通知,當節點b偵測到節點a的異常行為時,b將會生成并簽名一個針對節點a的指控信息
其中的“簽密”過程是指帶簽密的加密過程。設已知:h1:{0,1}*→g*;
1:節點idi隨機選擇b∈z*q;
2:計算u=b·p和v=b-1·(h4(m)·w1+h2(u)·m0h1(idi))
3:計算g=e(h1(idj),w1)b和
4:節點idj用自己的私鑰m0h1(idj)計算
5:節點idj驗證消息m,如果
以上結合附圖詳細說明了本發明,但是本領域的普通技術人員知道,說明書僅是用于解釋權利要求書。但本發明所要求的保護范圍并不局限于說明書。任何熟悉本技術領域的技術人員在本發明批露的技術范圍內,可輕易想到的變化或者替換,都應涵蓋在本發明所要求的保護范圍之內。因此,本發明的保護范圍應該以權利要求書的保護范圍為準。