虛擬現實聲場元數據的處理方法
【專利摘要】本發明公開了一種虛擬現實聲場元數據的處理方法,所述處理方法包括以下步驟:判斷音頻對象的運動模式,如果音頻對象的運動模式為直線運動,令運動模式參數m=0;如果音頻對象的運動模式為曲線運動,令運動模式參數m=1;當m=0時,用直角坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也在直角坐標系中進行處理;當m=1時,用極坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也在極坐標系中進行處理;根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲。所述方法在處理直線運動和曲線運動并存的復雜對象時,能更加完美地展現音頻對象的運動方向和軌跡。在虛擬現實中提高沉浸感,更真實,更具體,更形象。
【專利說明】
虛擬現實聲場元數據的處理方法
技術領域
[0001] 本發明設及信號處理技術領域,具體設及一種虛擬現實聲場元數據的處理方法。
【背景技術】
[0002] 在用虛擬現實頭戴設備化ead-Mounted Display,HMD)向用戶呈現內容時,音頻內 容通過立體聲耳機向用戶播放。運時需要面臨如何提高虛擬環繞聲效果的問題。在虛擬現 實應用中,當通過立體聲耳機播放音頻內容時,虛擬3D音頻的目的是想要達到一種效果,讓 用戶就像用揚聲器陣列(如5.1或7.1)聽一樣,甚至像聽現實中的聲音一樣真實。
[0003] 在制作虛擬現實音頻內容時,通常有若干音源分布在不同的位置和環境一起構成 聲場。跟蹤用戶頭部動作化ead化acking),對聲音進行相應的處理。比如,如果原始聲音被 用戶感知為來自正前方,當用戶向左轉頭90度后,聲音應被處理使得用戶感知聲音來自正 右方90度。
[0004] 在運里虛擬現實設備可W有很多種類,比如帶頭部跟蹤的顯示設備,或者只是一 部帶頭部跟蹤傳感器的立體聲耳機。
[0005] 實現頭部跟蹤也有多種方法。比較常見的是使用多種傳感器。運動傳感器套件通 常包括加速度計、巧螺儀和磁力傳感器。在運動跟蹤和絕對方向方面每種傳感器都有自己 固有的強項和弱點。因此常用做法是采用傳感器"融合"(sensor化Sion),將來自各傳感器 的信號組合在一起,產生一個更加精確的運動檢測結果。
[0006] 在得到頭部旋轉角度后,需要對聲音進行相應的變化。生成虛擬現實聲場有幾種 方法,一種做法是對音頻對象,根據其位置信息,使用相應的皿TF化ead Related Transfer Function,頭相關變換函數)濾波器進行濾波,得到虛擬環繞聲。皿TF在時間域所對應的名 稱是皿IR巧ead Related Impulse Response)。另一種方式是將聲音轉到ambisonic域的B 格式信號,將該B格式信號轉換為虛擬揚聲器陣列信號,將虛擬揚聲器陣列信號通過HRTF濾 波器進行濾波,得到虛擬環繞聲。
[0007] 可W看到,運兩種方法都需要定義、設計和處理音頻對象在空間中的方位信息。一 般的做法是將空間中的位置用直角坐標系里的(x,y,z)表示。假設整個聲場空間用一個邊 長為2立方體表示(2X2X2),聽者的頭部在立方體的中屯、點,并假定該中屯、點在直角坐標 系的坐標為(〇,〇,〇),如圖1所示,假設該聲場中的音頻對象的坐標為(xi,^,zi),則可知如 下例子:
[000引正左側聲場邊緣的音頻對象坐標為(-1,0,0);
[0009] 正前方聲場邊緣的音頻對象坐標為(0,1,0);
[0010] 正上方聲場邊緣的音頻對象坐標為(0,0,1);
[0011] 右前方聲場邊緣的音頻對象坐標為(1,1,0);
[0012] 如圖2所示,其中坐標的Ξ個分量須滿足:
[0013] -l< = xi< = l
[0014] -l< = yi< = l
[0015] -K = zi< = l
[0016] 運種音頻對象方位信息的定義方法對于沿直線軌跡運動的對象很合適,比如對象 從11時刻的(X1,y 1,Z1)直線運動到t2時刻的(x2,y2,Z2),那么11和12之間的任何時刻ti對 應的對象的位置化用線性插值表示為:
[0017] P〇int_i二化int_l+(Point_2-Point_l) X ;
[001 引 其中P0int_i定義為:(xi ,yi ,zi) ;Point_l為:(xl ,yl ,ζ?);化int_2為:(x2,y2, 曲·,
[0019] 但是,如果音頻對象是沿曲線運動,運種基于直角坐標系的方位信息的元數據定 義和插值方法就不是很合適了。比如音頻對象繞著中屯、點旋轉一周,分別在前后左右標記 1、2、3、4共4個方位點(見圖3):
[0020] 正前化 int_l(0,l,0)
[0021] 正右化 int_2(l,0,0)
[0022] 正后化 int_3(0,-l,0)
[0023] 正左化 int_4(-l,0,0)
[0024] 運樣實際插值得到的運動軌跡并不是一個圓周運動,而是一個折線運動,軌跡是 一個菱形,如圖3所示,運種運動軌跡的差異會導致虛擬現實音頻內容的失真,影響音頻效 果。
[0025] 現有技術中為解決運一技術問題,采用的是在時間維度上取比較密集的采樣點, 來近似模擬曲線運動。不過運樣做的缺點是軌跡只是近似的曲線,并不完美,同時密集的采 樣點導致元數據量太大,占用了更多的帶寬。
【發明內容】
[0026] 本發明的目的在于提供一種虛擬現實聲場元數據的處理方法,用于描述虛擬現實 聲場里音頻對象曲線運動軌跡,使元數據的效率更高,同時使音頻對象在空間里做曲線運 動時軌跡更平滑,同時進一步采用hybrid(混合)方式,很好地兼容音頻對象的直線或曲線 運動。
[0027] 為實現上述目的,本發明所述的虛擬現實聲場元數據的處理方法包括W下步驟:
[0028] 判斷音頻對象的運動模式,如果音頻對象的運動模式為直線運動,令運動模式參 數m = 0;如果音頻對象的運動模式為曲線運動,令運動模式參數m= 1;
[0029] 當m = 0時,用直角坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡 也在直角坐標系中進行處理;
[0030] 當m= 1時,用極坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也 在極坐標系中進行處理;
[0031] 根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲。
[0032] 當m=0時,獲取音頻對象在tl時刻的直角坐標化int_l,獲取音頻對象在t2時刻的 直角坐標P〇int_2,令ti時刻音頻對象對應的直角坐標為Point_i,其中ti時刻為tl時刻與 t2時刻之間的任意時刻;
[0033] Point_i的具體位置坐標通過線性插值獲得,線性插值的公式為:
[0034] P〇int_i 二化int_l+(Point_2-Point_l) X 。
[0035] 當m=l時,獲取音頻對象在tl時刻的極坐標Point'_1,獲取音頻對象在t2時刻的 極坐標Point ' _2,令ti時刻音頻對象對應的極坐標為化int ' _i,其中ti時刻為11時刻與12 時刻之間的任意時刻;
[0036] 化的具體位置坐標通過線性插值獲得,線性插值的公式為:
[0037] F>〇int'_i=F*oint'_l+(F*oint'_2-Point'_l)X(ti-tl)/(t2-tl)。
[0038] 所述的根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲的具體步驟為:
[0039] 如果m=l,則獲取ti時刻音頻對象對應的極坐標化;
[0040] 如果m = 0,則將線性插值獲得的t i時刻音頻對象對應的直角坐標Po i nt_i轉化為 ti時刻音頻對象對應的極坐標化int ' _i ;
[0041] 根據ti時刻音頻對象對應的極坐標Point'_i,將音頻對象編碼到高階B-格式信 號;將所述B-格式信號轉換成虛擬揚聲器陣列信號;
[0042] 對音頻對象的所述虛擬揚聲器陣列信號基于雙耳房間脈沖響應進行雙耳轉碼,得 到音頻對象的雙耳輸出虛擬環繞聲信號。
[0043] 所述音頻對象可W為一個或多個。
[0044] 所述雙耳房間脈沖響應離線生成,采用真實測量或由軟件生成。
[0045] 本發明具有如下優點:本發明所述虛擬現實聲場元數據的處理方法在處理直線運 動和曲線運動并存的復雜對象時,能更加完美地展現音頻對象的運動方向和軌跡。在虛擬 現實中提高沉浸感,更真實,更具體,更形象,并且使運動軌跡復雜的對象處理起來更加簡 單快速,提高了沉浸感的同時也提升了工作效率。
【附圖說明】
[0046] 圖1是現有技術中用直角坐標系表示聲場空間的示意圖。
[0047] 圖2是圖1所示的直角坐標系中Ξ個坐標分量的示意圖。
[0048] 圖3是現有技術中用直角坐標系插值得到的音頻對象運動軌跡示意圖。
[0049] 圖4是本發明用極坐標表示聲場空間的示意圖。
[0050] 圖5是圖4所示的極坐標中Ξ個坐標分量的示意圖。
[0051 ]圖6是本發明用極坐標插值得到的音頻對象運動軌跡示意圖。
【具體實施方式】
[0052] W下實施例用于說明本發明,但不用來限制本發明的范圍。
[0053] 如圖4-6所示,本發明提供一種虛擬現實聲場元數據的處理方法,包括W下步驟:
[0054] 判斷音頻對象的運動模式,如果音頻對象的運動模式為直線運動,令運動模式參 數m = 0;如果音頻對象的運動模式為曲線運動,令運動模式參數m= 1;
[0055] 當m = 0時,用直角坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡 也在直角坐標系中進行處理;
[0056] 當m= 1時,用極坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也 在極坐標系中進行處理;
[0057] 根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲。
[005引當m=0時,獲取音頻對象在tl時刻的直角坐標化int_l,獲取音頻對象在t2時刻的 直角坐標P0int_2,令ti時刻音頻對象對應的直角坐標為Point_i,其中ti時刻為tl時刻與 t2時刻之間的任意時刻;
[0059] Point_i的具體位置坐標通過線性插值獲得,線性插值的公式為:
[0060] P〇int_i 二化int_l+(Point_2-Point_l) X 。
[0061 ] 其中化int_l的直角坐標定義為(xl,yl,zl),Point_2的直角坐標定義為(x2,y2, z2),Point_i的直角坐標定義為(xi,yi,zi)。
[0062] 當m=l時,獲取音頻對象在tl時刻的極坐標Point'_1,獲取音頻對象在t2時刻的 極坐標Point ' _2,令ti時刻音頻對象對應的極坐標為化int ' _i,其中ti時刻為11時刻與12 時刻之間的任意時刻;
[0063] 化的具體位置坐標通過線性插值獲得,線性插值的公式為:
[0064] F>〇int'_i=F*oint'_l+(F*oint'_2-Point'_l)X(ti-tl)/(t2-tl)。
[0065] 其中化的極坐標定義為(pi,目1,Φ l);Point'_2的極坐標定義為(p2,目2, Φ 2);化極坐標定義為(pi,目i, Φ i)。
[0066] 在極坐標中球屯、的位置定義為(0,0,0,),P1表示11時刻音頻對象距離球屯、的距 離;Θ1表示tl時刻音頻對象相對于球屯、的水平角;Φ 1表示tl時刻音頻對象相對于球屯、的仰 角。P2表示t2時刻音頻對象距離球屯、的距離;Θ2表示t2時刻音頻對象相對于球屯、的水平角; Φ 2表示t2時刻音頻對象相對于球屯、的仰角。pi表示ti時刻音頻對象距離球屯、的距離;9i表 示ti時刻音頻對象相對于球屯、的水平角;Φ i表示ti時刻音頻對象相對于球屯、的仰角。
[0067] 采用極坐標的有益效果是,假設音頻對象繞著中屯、點旋轉一周,分別在前后左右 用極坐標標記4個方位點:
[006引正前化 int_l(l,0,0)
[0069] 正右化 int_2( 1,90,0)
[0070] 正后化int_3(l ,180,0)
[0071] 正左化int_4(l ,270,0)
[0072] 那么插值得到的運動軌跡就是一個完美的圓周運動,如圖6所示。
[0073] 在處理直線運動和曲線運動并存的復雜對象時,本發明能更加完美地展現音頻對 象的運動方向和軌跡。在虛擬現實中提高沉浸感,更真實,更具體,更形象,并且使運動軌跡 復雜的對象處理起來更加簡單快速,提高了沉浸感的同時也提升了工作效率。
[0074] 本發明設計的虛擬現實聲場中音頻對象元數據的定義規格(W2個音頻對象為例) 如下:
[0075]
[0076]
[0077] 所述的根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲的具體步驟為:
[0078] 如果m=l,則獲取ti時刻音頻對象對應的極坐標化;
[0079] 如果m = 0,則將線性插值獲得的ti時刻音頻對象對應的直角坐標化int_i轉化為 ti時刻音頻對象對應的極坐標化int ' _i ;
[0080] 直角坐標(xi,yi,zi)轉化為極坐標(Pi,θi,φ i)的公式為:
[0081]
[0082] 0i=arccos(z/pi)
[0083] φ i =arctan(y/sqrt(x*x+z*z))
[0084] 其中sqd表示開平方根運算。
[0085] 根據ti時刻音頻對象對應的極坐標化,將音頻對象編碼到高階(優選為2階 或3階)B-格式信號;將所述B-格式信號轉換成虛擬揚聲器陣列信號;W-個一階B-格式信 號[Wi Xi Yi Ζι]τ為例,轉換成虛擬揚聲器陣列信號山L2…Ln]t的過程就是進行下列運算 (?中Xi = cos白1COS Ψ i;Yi = sin白1COS Ψ i;Zi = sin Ψ 1):
[0086]
[0087] 其中,N為虛擬揚聲器拓撲結構中包括的虛擬揚聲器的數目。上式中所用的G矩陣 為ambisonic解碼矩陣,可W通過求偽逆矩陣來得出。
[0088] 對音頻對象的所述虛擬揚聲器陣列信號基于雙耳房間脈沖響應(BRIR)進行雙耳 轉碼(通常是3維,即包含高度信息),得到音頻對象的雙耳輸出虛擬環繞聲信號。具體是:從 虛擬揚聲器信號轉到耳機信號對應的二路立體聲BRIR矩陣,將該二路立體聲矩陣和虛擬揚 聲器陣列信號進行矩陣乘法,得到虛擬環繞聲。BRIR矩陣3
,則虛擬環繞聲 巧
[0089] 所述音頻對象可W為一個或多個。
[0090] 所述雙耳房間脈沖響應優選為離線生成,可W采用真實測量或由專口的軟件生 成,因此不必像現有技術下采用在線生成方式時需要存儲大量的BRIR,減少了內存消耗。
[0091] 下面描述了如何將音頻對象編碼到ambisonic域。
[0092] 將音頻對象編碼到一階ambisonic信號:
[0097] Si是第i個音頻對象,i = l……k,k是音頻對象的個數。θι是平面上的角度(方位 角),Φι是垂直方向上的角度。W聲道信號表示全方向聲波,X聲道信號、Υ聲道信號和Ζ聲道 信號分別表示沿空間Ξ個互相垂直取向Χ、Υ、Ζ的聲波。
[0098] 一階Β-格式信號表不文
[0099] 同理,將音頻對象編碼到2階或3階Β-格式信號優選依照下表定義進行:
[0100]
[0101] 上表中的Ξ角函數對于方位角θ是偶函數的,則相應B-格式信號的相應分量是左 右對稱的,如果上表中的Ξ角函數對于方位角Θ是奇函數,則相應B-格式信號的相應分量是 左右相反的。W-階B-格式信號為例,從物理意義和坐標來看,w,x,z不分左右,所W如果聽 者的位置左右對稱,并且假定相應的皿TF系數也近似左右對稱,那么W,X,Z對應的雙耳輸出 的分量對于輸出的左右通道是相同的。而y對于左右正好反向。所Wy對應的雙耳輸出的分 量對于左右通道是相反的。對于具有對稱性的分量,可W采用快速算法,即運算過程中的對 稱性優化,可進一步降低運算量。
[0102] 本發明所稱左右、水平、垂直等方位均是從聽者(即用戶)的視角定義的。
[0103] 雖然,上文中已經用一般性說明及具體實施例對本發明作了詳盡的描述,但在本 發明基礎上,可W對之作一些修改或改進,運對本領域技術人員而言是顯而易見的。因此, 在不偏離本發明精神的基礎上所做的運些修改或改進,均屬于本發明要求保護的范圍。
【主權項】
1. 一種虛擬現實聲場元數據的處理方法,其特征在于,所述虛擬現實聲場元數據的處 理方法包括以下步驟: 判斷音頻對象的運動模式,如果音頻對象的運動模式為直線運動,令運動模式參數m= 〇;如果音頻對象的運動模式為曲線運動,令運動模式參數m= 1; 當m = 0時,用直角坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也在 直角坐標系中進行處理; 當m= 1時,用極坐標系表示該音頻對象的方位信息,同時音頻對象的運動軌跡也在極 坐標系中進行處理; 根據音頻對象的運動軌跡對應的位置信息生成虛擬環繞聲。2. 如權利要求1所述虛擬現實聲場元數據的處理方法,其特征在于,當m = 0時,獲取音 頻對象在tl時刻的直角坐標Point_l,獲取音頻對象在t2時刻的直角坐標Point_2,令ti時 刻音頻對象對應的直角坐標為P〇int_i,其中ti時刻為tl時刻與t2時刻之間的任意時刻; Point」的具體位置坐標通過線性插值獲得,線性插值的公式為: Point_i = Point_l+(Point_2-Point_l)X(ti-tl)/(t2-tl)〇3. 如權利要求1所述虛擬現實聲場元數據的處理方法,其特征在于,當m = 1時,獲取音 頻對象在tl時刻的極坐標Point'j,獲取音頻對象在t2時刻的極坐標Point'_2,令ti時刻 音頻對象對應的極坐標為Point'」,其中ti時刻為tl時刻與t2時刻之間的任意時刻; Point'」的具體位置坐標通過線性插值獲得,線性插值的公式為: Point '_i = Point '_1+( Point '_2_Point '_1 )X(ti_tl)/(t2_tl)。4. 如權利要求1所述虛擬現實聲場元數據的處理方法,其特征在于,所述的根據音頻對 象的運動軌跡對應的位置信息生成虛擬環繞聲的具體步驟為: 如果m= 1,則獲取ti時刻音頻對象對應的極坐標Point '」; 如果m = 0,則將線性插值獲得的t i時刻音頻對象對應的直角坐標Po in t_i轉化為t i時 刻音頻對象對應的極坐標Point'」; 根據ti時刻音頻對象對應的極坐標Point'」,將音頻對象編碼到高階B-格式信號;將 所述B-格式信號轉換成虛擬揚聲器陣列信號; 對音頻對象的所述虛擬揚聲器陣列信號基于雙耳房間脈沖響應進行雙耳轉碼,得到音 頻對象的雙耳輸出虛擬環繞聲信號。5. 如權利要求4所述虛擬現實聲場元數據的處理方法,其特征在于,所述音頻對象為一 個或多個。6. 如權利要求5所述虛擬現實聲場元數據的處理方法,其特征在于,所述雙耳房間脈沖 響應離線生成,采用真實測量或由軟件生成。
【文檔編號】H04S5/00GK106060758SQ201610391252
【公開日】2016年10月26日
【申請日】2016年6月3日
【發明人】楊洪旭, 孫學京, 張晨
【申請人】北京時代拓靈科技有限公司