本發(fā)明涉及處理信號(hào),且具體地涉及處理頻域中的音頻信號(hào)。
背景技術(shù):
本發(fā)明涉及處理信號(hào),且具體地涉及頻域中的音頻信號(hào)。
在很多信號(hào)處理領(lǐng)域中,濾波器特性在運(yùn)行時(shí)必須改變。在此,為防止由切換(例如,在存在可聽到的音頻信號(hào)喀嗒假象(click artifact)的情況下,信號(hào)路徑中的不連續(xù))造成的干擾,漸變的平滑過(guò)渡往往是必要的。這可通過(guò)濾波器系數(shù)的連續(xù)插值或由兩個(gè)濾波器對(duì)信號(hào)同時(shí)濾波且之后逐漸地對(duì)濾波信號(hào)進(jìn)行淡入淡出來(lái)執(zhí)行。該兩種方法提供相同結(jié)果。下面,該功能將被稱為“淡入淡出”。
當(dāng)通過(guò)FIR濾波器進(jìn)行濾波(也稱為線性卷積)時(shí),可使用快速卷積算法來(lái)實(shí)現(xiàn)性能的大量提高。這些方法在頻域工作,且逐塊地工作。頻域卷積算法(例如重疊相加(Overlap-Add)和重疊保留(Overlap-save)([8]、[9]))僅將輸入信號(hào)分段(Partition),而不將濾波器分段,且因此使用較大的FFT(快速傅里葉變換),在濾波時(shí)產(chǎn)生較高的延時(shí)。均勻分段([10];[11])或非均勻分段([12];[13];[20])的分段卷積算法還將濾波器(或其脈沖響應(yīng))劃分成較小的分段。通過(guò)向這些分段、對(duì)應(yīng)延遲以及結(jié)果組合應(yīng)用頻域卷積,可實(shí)現(xiàn)所使用的FFT大小、延時(shí)和復(fù)雜度之間的良好折衷。
然而,對(duì)于所有的快速卷積方法而言,共同點(diǎn)是它們僅非常難以與漸變?yōu)V波器淡入淡出相組合。一方面,這是由于這些算法的逐塊操作模式。另一方面,在過(guò)渡的情況下出現(xiàn)的不同濾波器之間的中間值插值將會(huì)導(dǎo)致大量增加的計(jì)算負(fù)擔(dān),因?yàn)檫@些插值濾波器集合首先各自必須被轉(zhuǎn)變?yōu)檫m于應(yīng)用快速卷積算法的形式(這通常要求分段、零填充以及FFT操作)。對(duì)于“平滑的”淡入淡出,必須非常頻繁地執(zhí)行這些操作,由此極大地降低了快速卷積的性能優(yōu)勢(shì)。
具體地,可在雙耳合成領(lǐng)域中找到迄今描述的解決方案。因此,在時(shí)域卷積之后,對(duì)FIR濾波器的任一濾波器系數(shù)進(jìn)行插值[5](注意:在該公開中,濾波器系數(shù)的漸變交換被稱為“換向”)。[14]描述了在時(shí)域中的淡入淡出之后,通過(guò)應(yīng)用兩個(gè)快速卷積運(yùn)算進(jìn)行的FIR濾波器之間的淡入淡出。[16]處理在非均勻分段卷積算法中交換濾波器系數(shù)。因此,該兩個(gè)用于已分段脈沖響應(yīng)塊的淡入淡出和交換策略(目標(biāo)是漸變的淡入淡出)都被考慮到。
從算法的觀點(diǎn)來(lái)看(然而,針對(duì)不同應(yīng)用),[18]中描述用于對(duì)通過(guò)FFT獲得的頻譜進(jìn)行后置平滑(post-smoothing)的方法與此處描述的解決方案最接近。在此,通過(guò)使用僅具有3個(gè)項(xiàng)的頻域窗口函數(shù)進(jìn)行的頻域卷積來(lái)實(shí)現(xiàn)對(duì)特殊時(shí)域窗口(余弦類型,例如,Hann或Hamming窗)的應(yīng)用。作為應(yīng)用,在此不規(guī)定淡入淡出信號(hào)或淡入信號(hào)或淡出信號(hào);此外,在此描述的方法基于固定3項(xiàng)頻域窗口,該頻域窗口基于DSP中已知的窗口,且為了調(diào)整復(fù)雜度和對(duì)預(yù)定窗口函數(shù)的近似的質(zhì)量,該方法沒(méi)有展現(xiàn)出靈活性(且因此,對(duì)于針對(duì)稀疏占用窗口函數(shù)的設(shè)計(jì)方法也是一樣)。另一方面,[18]既沒(méi)有考慮使用重疊保留方法,也沒(méi)有考慮不必確定時(shí)域窗口函數(shù)的某些部分的缺省值的可能性。
雙耳合成使得可通過(guò)頭戴式耳機(jī)真實(shí)再現(xiàn)復(fù)雜的聲學(xué)場(chǎng)景,其應(yīng)用于很多領(lǐng)域,例如,如擬真通信(immersive communication)[1]、聽覺(jué)顯示[2]、虛擬現(xiàn)實(shí)[3]或增強(qiáng)現(xiàn)實(shí)[4]。還考慮到收聽者的動(dòng)態(tài)頭部移動(dòng)的渲染動(dòng)態(tài)聲學(xué)場(chǎng)景極大地提高了雙耳合成的定位質(zhì)量、真實(shí)性和合理性,而且還增加了與渲染有關(guān)的計(jì)算復(fù)雜度。提高定位精確度和自然度的不同的通常應(yīng)用的方式是添加空間反射和混響效果(例如,[1]、[5]),例如通過(guò)計(jì)算針對(duì)每個(gè)聲音對(duì)象的離散反射的數(shù)量并將它們作為附加聲音對(duì)象進(jìn)行渲染。再次地,這樣的技術(shù)極大地增加了雙耳渲染的復(fù)雜度。這強(qiáng)調(diào)了用于雙耳合成的高效信號(hào)處理技術(shù)的重要性。
圖4中示出了動(dòng)態(tài)雙耳合成系統(tǒng)的一般性信號(hào)流。通過(guò)兩只耳朵的頭部相關(guān)傳遞函數(shù)(HRTF)對(duì)聲音對(duì)象的信號(hào)進(jìn)行濾波。這些貢獻(xiàn)的累加提供了由頭戴式耳機(jī)再現(xiàn)的左耳和右耳信號(hào)。HRTF映射從源位置到耳鼓的聲音傳播,并根據(jù)相對(duì)位置改變(取決于方位角、仰角,并在某個(gè)限度內(nèi)還取決于距離[6])。因此,動(dòng)態(tài)聲音場(chǎng)景要求使用時(shí)變HRTF進(jìn)行濾波。一般而言,為了實(shí)現(xiàn)這樣的時(shí)變?yōu)V波器,需要兩種相互相關(guān)但不同的技術(shù):HRTF插值,以及濾波器淡入淡出。在該上下文中,插值指代針對(duì)通常由方位角和仰角坐標(biāo)指示的某個(gè)源位置確定HRTF。由于通常在有限空間分辨率的數(shù)據(jù)庫(kù)中提供HRTF(例如,[7]),這包括選擇適合的HRTF子集以及這些濾波器之間的插值([3]、[6])。濾波器淡入淡出(在[5]中稱為“換向”)允許在這些可能插入的HRTF之間的平滑過(guò)渡,該平滑過(guò)渡分布在某個(gè)過(guò)渡時(shí)間中。為了避免可聽到的信號(hào)不連續(xù)(例如,如喀嗒噪聲),需要這樣的漸進(jìn)過(guò)渡。本文檔關(guān)注于淡入淡出處理。
由于通常大量的聲音對(duì)象,HRTF對(duì)聲音信號(hào)進(jìn)行濾波極大地增加了雙耳合成的復(fù)雜度。降低該復(fù)雜度的適合方式是應(yīng)用頻域(FD)卷積技術(shù),例如,重疊相加或重疊保留方法[8]、[9],或分段卷積算法,例如[10]到[13]。所有FD卷積方法的共同缺點(diǎn)是濾波器之間的濾波器系數(shù)交換或漸進(jìn)過(guò)渡受到更強(qiáng)的限制,且與時(shí)域?yàn)V波器之間的淡入淡出相比通常要求更高的計(jì)算復(fù)雜度。一方面,這可歸因于這些方法的基于塊的操作模式。另一方面,對(duì)將濾波器轉(zhuǎn)移到頻域表示的要求隨著頻繁的濾波器改變必然帶來(lái)性能的大量下降。因此,濾波器淡入淡出的典型解決方案包括使用不同濾波器并之后在時(shí)域淡入淡出輸出的兩個(gè)FD卷積處理。
本發(fā)明的目的是允許處理頻域中的信號(hào)的更高效的概念。
技術(shù)實(shí)現(xiàn)要素:
該目的是由根據(jù)權(quán)利要求1的用于處理信號(hào)的設(shè)備、根據(jù)權(quán)利要求22的用于處理信號(hào)的方法、或根據(jù)權(quán)利要求23的計(jì)算機(jī)程序來(lái)實(shí)現(xiàn)的。
本發(fā)明基于以下發(fā)現(xiàn):特別是當(dāng)無(wú)論如何要進(jìn)行頻域中的處理時(shí),也可在該頻域表示中執(zhí)行加窗,該加窗實(shí)際上要在時(shí)域中發(fā)生,其逐項(xiàng)地與時(shí)域序列相乘,例如,如淡入淡出、獲得增益或任何其他信號(hào)處理。因此,要牢記的是,這樣的時(shí)域加窗在頻域中要作為卷積來(lái)執(zhí)行,且例如作為圓周卷積來(lái)執(zhí)行。這具有與分段卷積算法相結(jié)合的具體優(yōu)點(diǎn),分段卷積算法被執(zhí)行以通過(guò)頻域中的乘法替換時(shí)域中的卷積。在這樣的算法和其他應(yīng)用中,時(shí)間-頻率變換算法以及相反的頻域-時(shí)域變換算法也復(fù)雜到使得使用頻域加窗函數(shù)的頻域卷積證明了該復(fù)雜度是必要的。具體地,在為了在之后實(shí)現(xiàn)時(shí)域加窗(例如,淡入淡出或增益改變)而使頻率-時(shí)間變換將會(huì)是必要的多信道應(yīng)用中,根據(jù)本發(fā)明,在頻域中執(zhí)行實(shí)際上針對(duì)時(shí)域提供的信號(hào)處理具有很大的優(yōu)點(diǎn),頻域是已由分段卷積算法選擇的域。當(dāng)應(yīng)用適合的頻域加窗函數(shù)時(shí),其所需的頻域圓周(也稱為循環(huán)或周期性)卷積在復(fù)雜度方面不是問(wèn)題,因?yàn)樵诖丝墒∪ゴ罅康念l域-時(shí)域變換算法。
通過(guò)這樣的窗口函數(shù),非常容易近似多個(gè)必要的時(shí)域加窗函數(shù),這樣的窗口函數(shù)的頻域表示僅包括少量的非零系數(shù)。這意味著可以如此高效地執(zhí)行圓周卷積,使得通過(guò)省去頻域-時(shí)域變換所獲得的好處超過(guò)頻域圓周卷積的代價(jià)。在本發(fā)明的處理淡入、淡出、淡入淡出或改變音量的優(yōu)選實(shí)施例中,具體地通過(guò)在頻域中僅近似時(shí)域窗口函數(shù),可以實(shí)現(xiàn)復(fù)雜度的極大降低,這是通過(guò)在頻域中將系數(shù)的數(shù)量限制為例如小于18個(gè)系數(shù)來(lái)進(jìn)行的。通過(guò)利用頻域窗口函數(shù)的結(jié)構(gòu),可通過(guò)高效的圓周卷積計(jì)算規(guī)則來(lái)實(shí)現(xiàn)效率的附加增長(zhǎng)。一方面,這適用于從相應(yīng)時(shí)域窗口函數(shù)的實(shí)數(shù)取值產(chǎn)生的該窗口函數(shù)的共軛對(duì)稱結(jié)構(gòu)。另一方面,當(dāng)頻域窗口函數(shù)的相應(yīng)系數(shù)是純實(shí)數(shù)值或純虛數(shù)時(shí),可以更高效地計(jì)算圓周卷積和的被加數(shù)(summand)。
具體地,在恒定增益淡入淡出的情況下,即當(dāng)?shù)牒偷龊瘮?shù)之和在每個(gè)時(shí)間點(diǎn)處是1時(shí),可以更進(jìn)一步地降低圓周卷積的復(fù)雜度,因?yàn)閮H必須計(jì)算使用頻域?yàn)V波器函數(shù)的單個(gè)卷積,否則,僅必須形成兩個(gè)濾波信號(hào)之間的差值。
在實(shí)施例中,可通過(guò)僅單個(gè)濾波器對(duì)單個(gè)信號(hào)濾波且在之后應(yīng)用頻域窗口函數(shù),以實(shí)現(xiàn)例如已經(jīng)處于頻域中的信號(hào)的音量(volume)或增益的改變。
在旨在針對(duì)恒定增益淡入淡出(即具有恒定增益的淡入淡出)的備選實(shí)施例中,優(yōu)選首先計(jì)算兩個(gè)濾波器輸出信號(hào)之間的差值,然后將頻域窗口函數(shù)用于該差值,該兩個(gè)濾波器輸出信號(hào)是通過(guò)兩個(gè)不同的濾波器對(duì)同一輸入信號(hào)濾波而產(chǎn)生的。
在本發(fā)明的另一實(shí)施例中,對(duì)每個(gè)具有特殊頻域窗口的濾波器輸出信號(hào)進(jìn)行圓周卷積,且然后將卷積輸出信號(hào)進(jìn)行相加,以獲得頻域中示例性淡入淡出的結(jié)果。在使用兩個(gè)單獨(dú)的頻域窗口時(shí),濾波器輸入信號(hào)也可以不同。備選地,該情況還涉及擴(kuò)展僅具有一個(gè)信號(hào)的應(yīng)用的示例,以及例如擴(kuò)展到很多并行信道并利用單個(gè)再變換來(lái)進(jìn)行頻域中的信號(hào)組合的增益改變函數(shù)。
在本發(fā)明的特別優(yōu)選的實(shí)施例中,每個(gè)頻域表示的必要時(shí)域窗口函數(shù)僅是近似的。對(duì)其的使用是為了將頻域窗口函數(shù)系數(shù)的數(shù)量降低到例如最多18個(gè)系數(shù)或在極端情況下降低到僅2個(gè)系數(shù)。因此,在將這些頻域窗口函數(shù)再變換到時(shí)域時(shí),結(jié)果是與實(shí)際必需的窗口函數(shù)的偏差(deviation)。然而,已經(jīng)發(fā)現(xiàn),特別在淡入淡出、音量改變、淡出、淡入或其他信號(hào)處理的應(yīng)用中,該偏差不是問(wèn)題,或在主觀聽覺(jué)印象中不造成干擾或僅造成輕微干擾,因此該問(wèn)題如果真的存在,考慮到所獲得的效率的顯著提高,該問(wèn)題對(duì)于主觀聽覺(jué)印象而言可被很好接受。
附圖說(shuō)明
之后參考附圖,將詳細(xì)描述本發(fā)明的優(yōu)選實(shí)施例,在附圖中:
圖1示出通過(guò)頻域窗口函數(shù)和濾波器在頻域中處理信號(hào)的設(shè)備;
圖2示出通過(guò)兩個(gè)濾波器和兩個(gè)頻域窗口函數(shù)在頻域中處理信號(hào)的設(shè)備;
圖3示出通過(guò)兩個(gè)濾波器和單個(gè)頻域窗口函數(shù)在頻域中處理信號(hào)的設(shè)備;
圖4示出動(dòng)態(tài)雙耳合成系統(tǒng)的信號(hào)流;
圖5a示出用于作為恒定增益淡入淡出的示例的線性淡入淡出的時(shí)域窗口函數(shù);
圖5b示出用于作為任何種類的增益改變的示例的線性增益改變的時(shí)域窗口函數(shù);
圖6a-6f示出針對(duì)不同頻域窗口系數(shù)的窗口設(shè)計(jì)示例;
圖7a-7f示出針對(duì)圖6a-6f中示出的窗口的頻域?yàn)V波器系數(shù)的數(shù)值的圖表;
圖7g示出由近似造成的針對(duì)不同頻域窗口函數(shù)的設(shè)計(jì)誤差的圖;
圖8示出在針對(duì)每個(gè)輸出采樣有多個(gè)指令時(shí),利用濾波器淡入淡出的頻域卷積算法的復(fù)雜度的概述圖;
圖9示出與圖4類似的用于實(shí)現(xiàn)常規(guī)耳機(jī)信號(hào)處理的圖;
圖10示出根據(jù)實(shí)施例的耳機(jī)信號(hào)處理;
圖11示出用于向頻域信號(hào)提供增益改變函數(shù)的設(shè)備。
具體實(shí)施方式
圖1示出用于在頻域中處理離散時(shí)間信號(hào)的設(shè)備。向時(shí)間-頻率轉(zhuǎn)換器110饋送出現(xiàn)在時(shí)域中的輸入信號(hào)100。然后,向處理器級(jí)120饋送時(shí)間-頻率轉(zhuǎn)換器110的輸出信號(hào),處理器級(jí)120包括濾波器122和頻域窗口函數(shù)提供裝置124。然后,可以直接地或在進(jìn)行處理(例如,如與其他對(duì)應(yīng)地同等處理后的信號(hào)組合)之后向頻率-時(shí)間變換裝置或頻率-時(shí)間轉(zhuǎn)換器130饋送頻域窗口函數(shù)提供裝置124的輸出信號(hào)123。在本發(fā)明的優(yōu)選實(shí)施例中,時(shí)間-頻率轉(zhuǎn)換器110和頻率-時(shí)間轉(zhuǎn)換器130被設(shè)計(jì)用于快速卷積??焖倬矸e可例如是重疊相加卷積算法、重疊保留卷積算法或任何分段卷積算法。當(dāng)由于非分段頻域卷積算法(例如,重疊保留或重疊相加)或其他實(shí)際原因(例如,所使用的FFT的大小)造成的延時(shí)而導(dǎo)致對(duì)這些算法的直接應(yīng)用不合理時(shí),使用這樣的分段卷積算法。從而,根據(jù)對(duì)應(yīng)的卷積算法執(zhí)行對(duì)應(yīng)的分段。然后,可通過(guò)已變換輸入信號(hào)與脈沖響應(yīng)的分段頻域表示的相乘和求和來(lái)執(zhí)行框122中示出的對(duì)應(yīng)濾波,以使得可避免時(shí)域中的線性卷積。
要指出的是,該頻域表示基于對(duì)信號(hào)的逐塊分段。這也由頻域表示的特性所隱含導(dǎo)致,該頻域表示在時(shí)域和頻域中是離散的。
還已經(jīng)示出的是,分段卷積算法的著名示例是重疊相加方法,在重疊相加方法中,首先將輸入信號(hào)分段為不重疊的序列,并通過(guò)某個(gè)數(shù)量的零來(lái)補(bǔ)充。然后,形成對(duì)各個(gè)不重疊的填充零的序列和濾波器的離散傅里葉變換。然后,執(zhí)行已變換不重疊序列與濾波器的脈沖響應(yīng)的傅里葉變換(同樣通過(guò)某個(gè)數(shù)量的零采樣來(lái)補(bǔ)充)的乘法。之后,通過(guò)逆FFT將序列帶回到時(shí)域,通過(guò)重疊和相加來(lái)構(gòu)造所產(chǎn)生的輸出信號(hào)。為了使用頻域乘法(其對(duì)應(yīng)于時(shí)域中的圓周卷積)來(lái)實(shí)現(xiàn)時(shí)域中的線性卷積,需要填充零。重疊來(lái)自于以下事實(shí):線性卷積的結(jié)果將始終比原始序列長(zhǎng),且因此每次頻域乘法的結(jié)果對(duì)輸出信號(hào)的一個(gè)以上的分段造成影響。
在備選方法中(即,重疊保留方法(例如,示例[9])),形成輸入信號(hào)的重疊分段,并通過(guò)離散傅里葉變換(例如,如FFT)的方式將其變換到頻域。這些序列與濾波器的脈沖響應(yīng)逐項(xiàng)相乘,該脈沖響應(yīng)由多個(gè)零采樣填滿并被變換到頻域。通過(guò)離散傅里葉逆變換的方式將該乘法的結(jié)果再變換到時(shí)域。為了避免圓周卷積影響,從每個(gè)再變換的塊丟棄固定數(shù)量的采樣。通過(guò)將剩余序列連接在一起來(lái)形成輸出信號(hào)。
參考圖1,因此將處理器級(jí)120配置為通過(guò)具有濾波器特性的濾波器對(duì)頻域表示中出現(xiàn)的信號(hào)進(jìn)行濾波,以獲得濾波后的信號(hào)123。
然后,向?yàn)V波信號(hào)或根據(jù)濾波后的信號(hào)推導(dǎo)出的信號(hào)提供124頻域窗口函數(shù),以獲得加窗信號(hào)125,其中,提供包括:將頻域窗口函數(shù)的頻域窗口函數(shù)系數(shù)與濾波后的信號(hào)的頻譜值進(jìn)行相乘,以獲得相乘結(jié)果,并對(duì)相乘結(jié)果求和,這是頻域中的操作。優(yōu)選地,提供包括:頻域窗口函數(shù)的頻域窗口函數(shù)系數(shù)與濾波后的信號(hào)的頻譜值的圓周(周期性)卷積。轉(zhuǎn)換器130繼而被配置為:例如在132處將加窗信號(hào)或使用加窗信號(hào)確定的信號(hào)轉(zhuǎn)換到時(shí)域,以獲得處理后的信號(hào)。
除了獲得根據(jù)濾波后的信號(hào)推導(dǎo)出的信號(hào)而進(jìn)行的處理是應(yīng)用所有可能的信號(hào)修改,特別是:求和、差值計(jì)算、或形成線性組合。在圖3中具體表示的信號(hào)流中給出了示例,其中,“根據(jù)濾波信號(hào)推導(dǎo)出的信號(hào)”包含兩個(gè)信號(hào)的差值。
圖2示出了可如圖1中所示地實(shí)現(xiàn)時(shí)間-頻率轉(zhuǎn)換器110的處理器級(jí)的備選實(shí)現(xiàn)。具體地,處理器級(jí)120包括濾波器122a,濾波器122a利用第一濾波器特性H1對(duì)根據(jù)時(shí)域信號(hào)100推導(dǎo)出的頻域信號(hào)進(jìn)行濾波,以在框122a的輸出處獲得濾波后的信號(hào)。此外,處理器級(jí)被配置為:通過(guò)具有第二濾波器特性H2的第二濾波器122b對(duì)框110的輸出處的頻域信號(hào)進(jìn)行濾波,以獲得濾波后的第二信號(hào)。此外,處理器級(jí)被配置為向第一濾波后的信號(hào)提供第一頻域窗口函數(shù)124a,以獲得第一加窗信號(hào),且處理器級(jí)被配置為向第二濾波后的信號(hào)提供第二頻域窗口函數(shù)124b,以獲得第二加窗信號(hào)。然后在組合器200中組合該兩個(gè)加窗信號(hào)。例如如圖1中所示,用于組合器200的輸出處的組合頻域信號(hào)然后可被轉(zhuǎn)換器130轉(zhuǎn)換為時(shí)域信號(hào)。
圖3示出了處理器級(jí)的另一實(shí)現(xiàn),其中,通過(guò)具有第一濾波器特性H2的濾波器120a對(duì)根據(jù)時(shí)域信號(hào)100推導(dǎo)出的頻域信號(hào)105進(jìn)行濾波,以獲得第一濾波后的信號(hào)。此外,通過(guò)具有第二濾波器特性H2的濾波器122b對(duì)頻域信號(hào)105進(jìn)行濾波,以獲得第二濾波后的信號(hào)。通過(guò)組合器300來(lái)根據(jù)第一濾波后的信號(hào)和第二濾波后的信號(hào)形成差信號(hào)302,然后,將差信號(hào)302饋送給單個(gè)頻域窗口函數(shù)提供裝置122c,其中,優(yōu)選地,將該提供實(shí)現(xiàn)為差信號(hào)的頻譜系數(shù)與頻域窗口函數(shù)的系數(shù)的圓周卷積。然后,在組合器200中將加窗輸出信號(hào)與框122a的輸出處的第一濾波后的信號(hào)進(jìn)行組合。因此,當(dāng)兩個(gè)頻域窗口函數(shù)是恒定增益淡入淡出函數(shù)時(shí),即當(dāng)頻域窗口函數(shù)124a和124b的時(shí)域表示互補(bǔ)以使得其和在任何時(shí)候都等于1時(shí),圖3的組合器200的輸出處的結(jié)果與圖2的組合器200的輸出處是相同的信號(hào)。例如,當(dāng)例如如圖5a中所示,頻域窗口函數(shù)124a在時(shí)域中對(duì)應(yīng)于下降斜率且頻域窗口函數(shù)124b在時(shí)域中表示上升斜率時(shí)(或反之),該條件滿足。
對(duì)于具有任何開始值和結(jié)束值并使用“標(biāo)準(zhǔn)窗口”的恒定增益淡入淡出而言,優(yōu)選地,在求和(300)之前,通過(guò)線性因子(s或(e-s))對(duì)信號(hào)進(jìn)行縮放,如圖11中所示。結(jié)果是求和之前的可選縮放,使得組合器執(zhí)行作為對(duì)簡(jiǎn)單相加的備選的線性組合。還可以實(shí)現(xiàn)其他實(shí)施例。
此外指出了:取決于特殊實(shí)現(xiàn)的要求,淡入或淡出或淡入淡出可發(fā)生在一個(gè)或若干個(gè)塊上。
在本發(fā)明的優(yōu)選實(shí)施例中,時(shí)域信號(hào)是可在各種處理之后發(fā)送給揚(yáng)聲器或耳機(jī)的音頻信號(hào),例如,源的信號(hào)。備選地,音頻信號(hào)還可以是例如麥克風(fēng)陣列的接收信號(hào)。在又一實(shí)施例中,信號(hào)不是音頻信號(hào)而是在解調(diào)到基帶或中頻頻帶之后獲得的信息信號(hào)(即,在某傳輸距離的情況下),這被用于無(wú)線通信或光通信。因此,在使用時(shí)變?yōu)V波器且在頻域中執(zhí)行利用這樣的濾波器的卷積的所有領(lǐng)域中,本發(fā)明是有用且有利的。
在本發(fā)明的優(yōu)選實(shí)施例中,將頻域窗口函數(shù)配置為使其僅近似于所希望的時(shí)域窗口函數(shù)。然而,已經(jīng)發(fā)現(xiàn),與主觀印象有關(guān)的某些近似可被輕易容忍,并導(dǎo)致計(jì)算復(fù)雜度上的大量節(jié)省。具體地,窗口系數(shù)的數(shù)量小于等于18是優(yōu)選的,且更優(yōu)選地,小于等于15,更優(yōu)選地,小于等于8,或甚至小于等于4,或甚至小于等于3,或在極端情況下甚至等于2。然而,使用最小數(shù)量2個(gè)頻域窗口系數(shù)。
在一個(gè)實(shí)現(xiàn)中,處理器級(jí)被配置為部分或全部選擇頻域窗口的非零系數(shù),以使得它們是純實(shí)數(shù)或純虛數(shù)。此外,為了實(shí)現(xiàn)更高效率的卷積和求值,頻域窗口函數(shù)提供功能被配置為使得其在計(jì)算圓周卷積和時(shí)使用各個(gè)非零頻域窗口系數(shù)的純實(shí)數(shù)或純虛數(shù)特性。
在一個(gè)實(shí)現(xiàn)中,處理器級(jí)被配置為使用最大數(shù)量的非零頻域窗口系數(shù),其中,針對(duì)最小頻率或針對(duì)最低頻隙(bin)的頻域窗口系數(shù)是實(shí)數(shù)。此外,針對(duì)偶數(shù)頻隙或索引的頻域窗口系數(shù)是純虛數(shù),且針對(duì)奇數(shù)索引或奇數(shù)頻隙的頻域窗口系數(shù)是純實(shí)數(shù)。
在本發(fā)明的優(yōu)選實(shí)現(xiàn)中,如參考圖9并具體參考圖10所述,在其間發(fā)生淡入淡出的第一濾波器特性和第二濾波器特性是針對(duì)不同位置的頭部相關(guān)傳遞函數(shù)(HRTF),且時(shí)域信號(hào)是針對(duì)位于對(duì)應(yīng)不同的位置處的源的音頻信號(hào)。
此外,如圖10中所示,優(yōu)選使用多信道處理場(chǎng)景,在多信道處理場(chǎng)景中,頻域中的若干源信號(hào)被淡入淡出,且然后在頻域中將淡入淡出的信號(hào)相加,以在然后通過(guò)單個(gè)變換僅將最終的和信號(hào)再變換到時(shí)域。在此參考了圖9,并為了對(duì)比參考圖10。具體地,由600、602和604指示的不同源SRC1到SRCM表示各個(gè)音頻源,如圖4中在401、402和403處所示。通過(guò)具有圖9和圖10中的模擬設(shè)置的時(shí)域-頻域轉(zhuǎn)換器606、608和610將源信號(hào)變換到頻域。圖10還包含根據(jù)圖2的淡入淡出算法(兩個(gè)圓周卷積)。在此,使用圖3的改進(jìn)型恒定增益淡入淡出也是可想到的。
如前所述,源401到403移動(dòng),且為了獲得例如耳機(jī)信號(hào)713,由于源的移動(dòng),該當(dāng)前源位置所需的頭部相關(guān)傳遞函數(shù)針對(duì)每個(gè)源發(fā)生改變。如圖4中所示,存在通過(guò)某個(gè)源位置尋址的數(shù)據(jù)庫(kù)。從而,針對(duì)該源位置從數(shù)據(jù)庫(kù)獲得HRTF,或在不存在精確針對(duì)該位置的HRFT時(shí),獲得針對(duì)兩個(gè)相鄰位置的兩個(gè)HRTF,該兩個(gè)HRTF然后被插值。為了實(shí)現(xiàn)無(wú)假象(artifact)的操作,通過(guò)在第一時(shí)間針對(duì)第一位置確定的頻域乘法,由第一濾波器函數(shù)對(duì)時(shí)間-頻率轉(zhuǎn)換606之后的音頻信號(hào)進(jìn)行濾波。此外,由第二濾波器(再次地,通過(guò)與濾波器的傳遞函數(shù)相乘)對(duì)同一音頻信號(hào)進(jìn)行濾波,其中,該第二濾波器613繼而是已在稍后的第二時(shí)間針對(duì)第二位置確定的。為了獲得無(wú)假象過(guò)渡,必須發(fā)生淡入淡出,即,第一濾波器612的輸出信號(hào)持續(xù)淡出,且在同時(shí),第二濾波器613的輸出信號(hào)淡入,如時(shí)間濾波器函數(shù)706和707所示。因此,濾波器612、613的輸出處的信號(hào)被變換到時(shí)域(如IFFT框700、701所示),并在然后執(zhí)行淡入淡出,其中,將加窗的輸出處的信號(hào)進(jìn)行相加。該相加針對(duì)每個(gè)源發(fā)生,且然后在時(shí)域中在加法器712中將所有源的對(duì)應(yīng)淡入淡出信號(hào)進(jìn)行相加,以最終獲得耳機(jī)信號(hào)713。
如框614、615、702、703、708、709以及616、617、704、705、710、711所示,針對(duì)其他源發(fā)生相似處理。
創(chuàng)造性地,替代圖9的2M個(gè)IFFT框700到705,現(xiàn)在僅執(zhí)行單個(gè)IFFT框或單個(gè)IFFT操作630。在頻域中作為卷積執(zhí)行利用頻域窗口函數(shù)620、621或622、623或624、625的淡入/淡出或淡入淡出。然后,通過(guò)加法器626、627、628和629將卷積結(jié)果各自相加,然而也可直接執(zhí)行所有的加法,而無(wú)需將一方的加法器626、627、628與另一方的加法器629級(jí)聯(lián)。
這意味著節(jié)省了2M-1個(gè)IFFT操作。另一方面,在頻域中圓周卷積的復(fù)雜度可能稍有增加,然而這可通過(guò)有效的窗口近似來(lái)極大地降低,這已經(jīng)提到并在下面將更詳細(xì)地描述。
在實(shí)施例中,本發(fā)明涉及用于在頻域中直接執(zhí)行淡入淡出的新穎方法,即,兩個(gè)濾波后的信號(hào)之間平滑的漸進(jìn)過(guò)渡。其使用重疊保留算法和用于分段卷積的算法來(lái)工作。在將其分別應(yīng)用于每個(gè)HRTF濾波器處理的情況下,針對(duì)每個(gè)輸出采樣塊節(jié)省了一個(gè)逆FFT處理,導(dǎo)致復(fù)雜度的極大降低。然而,如果將所建議的FD淡入淡出方法與重建雙耳合成系統(tǒng)的信號(hào)流相結(jié)合,更加強(qiáng)大的加速也是可能的。當(dāng)在頻域中執(zhí)行組成信號(hào)的求和時(shí),針對(duì)每個(gè)輸出信號(hào)(耳朵信號(hào))僅需要單個(gè)FFT。
以下小節(jié)提供(并定義)了對(duì)兩種技術(shù)的命名的概述,該兩種技術(shù)對(duì)于所建議的FD淡入淡出算法而言是必不可少的:快速頻域卷積和時(shí)域淡入淡出。
快速卷積技術(shù)
依賴于快速變換的卷積技術(shù)使用了頻域乘法與時(shí)域卷積之間的等效關(guān)系以及用于實(shí)現(xiàn)離散傅里葉變換(DFT)的快速傅里葉變換(FFT)算法的可用性。重疊相加或重疊保留算法[8]、[9]將輸入信號(hào)劃分為塊,并將頻域乘法轉(zhuǎn)移為線性時(shí)域卷積。然而,為了高效,重疊相加和重疊保留要求較大的FFT大小,并需要較長(zhǎng)的處理延時(shí)時(shí)間。
分段卷積算法減小了這些不利之處,并允許計(jì)算復(fù)雜度、所使用的FFT大小以及延時(shí)時(shí)間之間的折衷。為此,將脈沖響應(yīng)h[n]劃分為具有均勻[10]、[11]或不均勻大小[12]、[13]的塊,且將FD卷積(通常是疊加保留)應(yīng)用于每個(gè)分段。為了形成濾波輸出,將結(jié)果對(duì)應(yīng)地進(jìn)行延遲并相加。重新使用變換操作和數(shù)據(jù)結(jié)構(gòu)作為頻域延遲線(FDL)[11]、[13]使得可高效實(shí)現(xiàn)線性卷積。
利用在HRTF濾波器中通常使用的脈沖響應(yīng)長(zhǎng)度(大致200-1000),均勻分段卷積通常是最高效的。因此,本文檔關(guān)注于該技術(shù)。然而,將相同技術(shù)應(yīng)用于非均勻分段卷積并不復(fù)雜,因?yàn)樗ㄗh的FD淡入淡出算法可分別應(yīng)用于所使用的每個(gè)分段大小。重疊保留算法可被視為均勻分段FD卷積的僅具有一個(gè)分段的極端情況。因此,所建議的FD淡入淡出也可應(yīng)用于未分段卷積。
均勻分段卷積方法將長(zhǎng)度為N的脈沖響應(yīng)h[n]劃分為各自具有M個(gè)值的個(gè)塊(表示向上取值),為了形成長(zhǎng)度為L(zhǎng)的序列hp[n],p=0,…,P-1,用零來(lái)進(jìn)行填充。對(duì)其進(jìn)行變換以形成DFT矢量H[p,k]。
H[p,k]=DFT{h[p,n]}. (2)
等式1中水平卷括號(hào)所表示的零的數(shù)量是L-M。
輸入信號(hào)x[n]被劃分為長(zhǎng)度為L(zhǎng)的重疊塊x[m,n],連續(xù)塊之間有B個(gè)采樣的領(lǐng)先。到頻域的變換產(chǎn)生矢量X[m,k]:
x[m,n]=[x[mB-L+1] x[mB-L+2] … x[mB]] (3)
X[m,k]=DFT{x[m,n]}. (4)
通過(guò)H[p,k]和X[m,k]的塊卷積來(lái)形成頻域輸出信號(hào)Y[m,k]:
其中,“·”表示復(fù)數(shù)矢量乘法。逆DFT產(chǎn)生長(zhǎng)度為L(zhǎng)的時(shí)域塊:
y[m,n]=DFT-1{Y[m,k]} (6)
針對(duì)每個(gè)輸出塊y[m,n],使用最后B個(gè)采樣來(lái)形成輸出信號(hào)y[n]的第m個(gè)塊。
y[mB+n]=y(tǒng)[m,L-B+n] n=0,...,N-1. (7)
如果應(yīng)用以下不等式,則防止了輸出信號(hào)中的時(shí)域混疊:
M≤L-B+1 (8)
[9]、[11]。分段卷積的典型選擇是L=2B(例如,[12]、[13]),其后續(xù)將被稱為標(biāo)準(zhǔn)DFT大小,并使得對(duì)于N和B的實(shí)際組合而言具有較高效率[11]。
針對(duì)具有B個(gè)采樣的每個(gè)輸出塊,用于均勻分段卷積的算法要求FFT和逆FFT、P個(gè)矢量乘法和P-1個(gè)矢量加法。對(duì)于實(shí)數(shù)取值的時(shí)域信號(hào),F(xiàn)FT和IFFT二者都要求大致p L log2(L)個(gè)實(shí)數(shù)取值操作。在此,p是取決于硬件的常數(shù),其中,典型值在p=2.5[12]與p=3[13]之間。由于針對(duì)實(shí)信號(hào)和濾波器的矢量X[m,k]、H[p,k]和Y[m,k]是共軛對(duì)稱的,可通過(guò)個(gè)復(fù)數(shù)值來(lái)對(duì)其進(jìn)行明確表示。相應(yīng)地減少了用于對(duì)共軛對(duì)稱的矢量進(jìn)行加法或乘法的操作的數(shù)量。由于可分別通過(guò)2個(gè)和6個(gè)實(shí)數(shù)取值的操作來(lái)執(zhí)行標(biāo)量復(fù)數(shù)加法和乘法,對(duì)塊卷積(6)進(jìn)行求解需要個(gè)算術(shù)指令。因此,對(duì)B個(gè)采樣進(jìn)行卷積的整體復(fù)雜度是
時(shí)域中的濾波器淡入淡出
利用時(shí)變HRTF對(duì)音頻信號(hào)進(jìn)行卷積要求濾波器特性之間的平滑過(guò)渡,因?yàn)橥蝗坏母淖儗?dǎo)致信號(hào)不連續(xù)([5]、[14]),這導(dǎo)致可聽到的假象,例如,喀嗒聲或拉鏈噪聲。在形式上,可將兩個(gè)長(zhǎng)度為N的非時(shí)變?yōu)V波器FIR h1[n]和h2[n]之間的過(guò)渡表達(dá)為時(shí)變卷積和(例如,[15]):
其中,時(shí)變?yōu)V波器h[n,k]是對(duì)由兩個(gè)函數(shù)w1[n]和w2[n](之后將其稱為時(shí)域窗口)加權(quán)的兩個(gè)濾波器的求和:
h[n,k]=w1[n]h1[n-k]+w2[n]h2[n-k]. (10)
圖5a示出這樣的窗口函數(shù)的示例。如果濾波器h1[n]和h2[n]強(qiáng)相關(guān)(對(duì)于接近的HRTF之間的過(guò)渡而言,這一般是真的),通常使用恒定增益淡入淡出。這意味著針對(duì)每個(gè)n,權(quán)重w1[n]與w2[n]之和等于1。在該情況下,可通過(guò)各個(gè)窗口函數(shù)w[n]來(lái)表達(dá)這些權(quán)重,其中,適用w1[n]=w[n],w2[n]=1-w[n]。因此,針對(duì)每個(gè)n的h[n,k]形成h1[n]與h2[n]之間的線性插值。因此,可通過(guò)單個(gè)乘法來(lái)對(duì)(10)求解:
h[n,k]=h2[n]+w[n](h1[n]-h2[n]). (11)
替代利用插值的時(shí)變?yōu)V波器系數(shù)對(duì)信號(hào)進(jìn)行卷積,利用h1[n]和h2[n]對(duì)輸入信號(hào)進(jìn)行濾波,然后利用窗口w1[n]和w2[n]進(jìn)行加權(quán)求和,導(dǎo)致如下的相同結(jié)果:
y[n]=w1[n]y1[n]+w2[n]y2[n] 其中 (12)
類似于(11),可將恒定增益淡入淡出實(shí)現(xiàn)為線性插值:
y[n]=y(tǒng)2[n]+w[n](y1[n]-y2[n]). (13)
實(shí)現(xiàn)(11)和(13)展現(xiàn)出可比的復(fù)雜度,而如果非常頻繁地更新濾波器系數(shù)(即,在要求無(wú)假象的平滑過(guò)渡時(shí)),(13)要更高效一些。此外,如果不能直接操縱濾波器系數(shù)h[n,k],例如如果使用快速卷積,可使用最后提到的形式。例如在[14]、[16]中示出了將FD卷積與輸出淡入淡出進(jìn)行組合的示例。
對(duì)于例如與FD卷積方法相組合的基于塊的操作,如果過(guò)渡的長(zhǎng)度與塊大小B相同,可以輕易地實(shí)現(xiàn)對(duì)(13)的應(yīng)用。然而,對(duì)于更長(zhǎng)的過(guò)渡周期,如果滿足兩個(gè)條件,可使用長(zhǎng)度為B的單個(gè)窗口w[n]來(lái)高效地實(shí)現(xiàn)濾波信號(hào)的淡入淡出:(a)所希望的濾波器之間的過(guò)渡要對(duì)應(yīng)于線性函數(shù)(斜率);(b)整個(gè)過(guò)渡周期Bfull要是原始?jí)K大小B的整數(shù)倍。在該情況下,可將過(guò)渡劃分為M=Bfull/B個(gè)塊??赏ㄟ^(guò)差信號(hào)y1[n]-y2[n]與各個(gè)窗口函數(shù)w[n]相乘來(lái)表達(dá)整個(gè)過(guò)渡的每個(gè)塊,窗口函數(shù)w[n]實(shí)現(xiàn)B個(gè)采樣內(nèi)從1到0的線性過(guò)渡。與y1[n]和y2[n]的線性組合產(chǎn)生針對(duì)該塊的輸出信號(hào):
y[n]=y(tǒng)2[n]+(s+[e-s]w[n])(y1[n]-y2[n]). (14)
在此,s=m/M和e=(m+1)/M(其中,m=0….M-1)指代針對(duì)跨M個(gè)塊的過(guò)渡中的第m個(gè)塊的初始系數(shù)和最末系數(shù)。
時(shí)域淡入淡出的頻域表示
該小節(jié)描述基于濾波信號(hào)的頻域描述(例如,分段卷積算法內(nèi)Y[m,k]的表示(5))運(yùn)行的算法,以實(shí)現(xiàn)最終時(shí)域輸出的軟淡入淡出。此處的主要?jiǎng)訖C(jī)是增加效率,因?yàn)閷?duì)于輸出淡入淡出而言,如果在頻域中實(shí)現(xiàn)過(guò)渡,僅需要逆FFT。
為了在頻域中表達(dá)時(shí)域淡入淡出,考慮各個(gè)信號(hào)x[n]與時(shí)域窗口w[n]的逐項(xiàng)乘法:
y[n]=x[n]·w[n], (15)
其可被視為輸出淡入淡出(12)的一部分。在“用于進(jìn)一步降低復(fù)雜度的高效實(shí)現(xiàn)”一節(jié)中將會(huì)討論對(duì)整個(gè)淡入淡出的擴(kuò)展以及對(duì)復(fù)雜度的進(jìn)一步優(yōu)化。
(15)的頻域表示來(lái)自于卷積定理的對(duì)偶性[9]、[17]:
其中,指代兩個(gè)離散時(shí)間序列的圓周卷積。因此,可通過(guò)圓周FD卷積的方式來(lái)實(shí)現(xiàn)適于淡入淡出。然后,從計(jì)算的角度而言,這樣的頻域淡入淡出并未顯得有吸引力。一般而言,兩個(gè)長(zhǎng)度為L(zhǎng)的序列的圓周卷積需要大致L2個(gè)復(fù)數(shù)乘法和加法,這遠(yuǎn)遠(yuǎn)超出了由于節(jié)省逆FFT而導(dǎo)致的大致O(Llog2L)的潛在增益。
然而,如果頻域窗口W[k]僅包含少量的非零系數(shù),與常規(guī)時(shí)域?qū)崿F(xiàn)相比,F(xiàn)D淡入淡出可變得更加高效。在[18]中給出了對(duì)可成功應(yīng)用僅具有少量頻域系數(shù)的窗口函數(shù)的第一提示,其中,由三個(gè)系數(shù)組成的頻域序列(對(duì)應(yīng)于時(shí)域Hann或Hamming窗)被用來(lái)平滑F(xiàn)FT頻譜。下面示出可如何適當(dāng)?shù)貙?duì)用于在時(shí)域淡入淡出操作中使用的這種稀疏占用的窗口進(jìn)行成形。
頻域窗口的設(shè)計(jì)
頻域窗口W[k]的設(shè)計(jì)目標(biāo)是:關(guān)于預(yù)定的誤差范數(shù),對(duì)應(yīng)的時(shí)域序列近似于所希望的窗口函數(shù)在此,圓形的重音標(biāo)記指示是可能包含圓周卷積的假象(即,時(shí)域混疊)的逆FFT結(jié)果。和二者都展現(xiàn)出長(zhǎng)度L,而用于長(zhǎng)度為B的輸出塊的時(shí)域窗口w[n]展現(xiàn)出長(zhǎng)度B。
由于取決于分段卷積方法(8)的重疊保留機(jī)制,當(dāng)對(duì)當(dāng)前框加窗時(shí),僅的最后B個(gè)值被實(shí)際使用到,而舍棄其他項(xiàng)的貢獻(xiàn)。因此,針對(duì)FD淡入淡出算法的所希望的時(shí)域窗口函數(shù)與常規(guī)時(shí)域淡入淡出的窗口w『n]展現(xiàn)出以下關(guān)系:
這意味著不對(duì)的前L-B個(gè)系數(shù)施加限制,即它們可以取任何值而不影響頻域淡入淡出的結(jié)果。在設(shè)計(jì)W[k]時(shí)可以有利地利用這些自由度。窗口函數(shù)W[k]和通過(guò)以下逆DFT彼此相關(guān):
其中,前導(dǎo)因子L來(lái)自于對(duì)卷積定理(16)的雙重表示。
為了對(duì)實(shí)數(shù)取值的信號(hào)進(jìn)行淡入淡出,時(shí)域窗口w[n]以及因此的[n]是純實(shí)數(shù)。這意味著頻域窗口是共軛對(duì)稱的:
因此,通過(guò)來(lái)明確定義W[k],例如for example這意味著W[0]是純實(shí)數(shù)取值的。此外,如果L是偶數(shù),W[L/2]也是純實(shí)數(shù)。
通過(guò)由W[k]的實(shí)數(shù)分量和虛數(shù)分量來(lái)表達(dá)W[k]:
并通過(guò)三角函數(shù)來(lái)使用歐拉恒等式替換指數(shù)值,(18)可被表示為:
因此,如果L是偶數(shù),最后一項(xiàng)將僅是非零的。通過(guò)引入基本函數(shù):
可通過(guò)緊湊的方式表示窗口
可將該形式直接用于W[k]的基于優(yōu)化的設(shè)計(jì)。
為了描述與W[k]的非零項(xiàng)有關(guān)的限制(稀疏性限制),引入以下索引集合R和I:
如果索引k包含在集合R中,實(shí)數(shù)分量Wr[k]可僅是非零的。同樣的關(guān)系在虛數(shù)分量Wi[k]與集合I之間也適用。使用該關(guān)系,可如下表達(dá)貢獻(xiàn)W[k]的非零分量的預(yù)定集合的時(shí)域窗口(24):
因此,可將W[k]的設(shè)計(jì)指示為矩陣形式中的優(yōu)化問(wèn)題:
矢量表示所希望的時(shí)域窗口(17)的最后B個(gè)采樣,而W是W[k]的非零分量的矢量:
W=[Wr[r1]…Wr[rR]Wi[i1]…Wi[iI]]T (29)
G是基本函數(shù)的矩陣:
在等式(28)中,||·||p指代在進(jìn)行最小化時(shí)使用的誤差范數(shù),例如,對(duì)于根據(jù)最小平方方法的最小化,p=2,或者對(duì)于Chebyshev(最小最大)優(yōu)化,p=∞。
在該文檔中,使用CVX(用于凸優(yōu)化的軟件包[19])來(lái)闡述并解決優(yōu)化問(wèn)題。在下面的CVC程序中表達(dá)問(wèn)題(28):
該設(shè)計(jì)規(guī)范可適于多個(gè)附加限制對(duì)應(yīng)用的相應(yīng)要求。其示例是:
-針對(duì)不同值w[9]的量的限制或上限或下限[9],例如以確保在時(shí)域窗口的開始或結(jié)束處的平滑性要求。
-w[n]的斜率限制,例如以避免時(shí)域窗口之間的沖突行為。這是通過(guò)對(duì)連續(xù)值w[n]之間的差施加限制來(lái)實(shí)現(xiàn)的。
設(shè)計(jì)示例
時(shí)域窗口長(zhǎng)度B=64且對(duì)應(yīng)標(biāo)準(zhǔn)FFT大小L=2B=128的設(shè)計(jì)示例示出了設(shè)計(jì)方法的特性和所產(chǎn)生的窗口函數(shù)的性能。所希望的時(shí)域窗口是線性斜率從1降到0。對(duì)第一個(gè)系數(shù)和最后一個(gè)系數(shù)的不均勻性限制:
防止了過(guò)渡的開始和結(jié)束處的不連續(xù)。然而,設(shè)計(jì)實(shí)驗(yàn)已經(jīng)顯示該限制僅針對(duì)非常少量的非零系數(shù)變得起作用(這影響到結(jié)果)。
設(shè)計(jì)實(shí)驗(yàn)是關(guān)于針對(duì)非零系數(shù)的不同集合的L2和L∞誤差范數(shù)執(zhí)行的,其中:
指代W[k]的非零分量的總數(shù)。圖1中示出所產(chǎn)生的窗口,且圖7g中總結(jié)了該設(shè)計(jì)。圖6(a)示出利用具有8個(gè)復(fù)數(shù)系數(shù)的整個(gè)集合的設(shè)計(jì),即,由于Wi[0]=0(19),K=15。觀察到,所產(chǎn)生的設(shè)計(jì)非常近似理想的時(shí)域窗口,其中,L2和L∞誤差范數(shù)是9.37·10-6和5.65·10-6。圖6(b)中示出了具有8個(gè)特定實(shí)數(shù)系數(shù)的設(shè)計(jì)。該圖示出了與理想窗口的可看到的偏差,從針對(duì)L2和L∞設(shè)計(jì)的誤差范數(shù)5.45·10-2和1.55·10-2,這也變得清楚。相對(duì)地,圖6(c)中示出的設(shè)計(jì)還展示了K=8個(gè)非零分量。然而,該設(shè)計(jì)幾乎達(dá)到具有8個(gè)復(fù)數(shù)系數(shù)的示例的性能,因?yàn)榉橇阒凳菑膶?shí)數(shù)和虛數(shù)分量的集合中特定地選擇的。
圖6(d)到6(f)示出了非零分量的數(shù)目減少的另一設(shè)計(jì)示例,但該非零分量是最佳地選擇的。要認(rèn)識(shí)到的是,即使在數(shù)量低至K=3,對(duì)理想時(shí)域窗口的相對(duì)良好的近似也是可能的。雖然K=2的情況下(圖6(f))的最終設(shè)計(jì)示出了與理想線性過(guò)渡的相當(dāng)大的偏離,這對(duì)于很多濾波器淡入淡出應(yīng)用而言是可接受的,因?yàn)槠涮峁┝藷o(wú)信號(hào)不連續(xù)的平滑過(guò)渡。
用于進(jìn)一步降低復(fù)雜度的高效實(shí)現(xiàn)
該小節(jié)呈現(xiàn)了針對(duì)頻域淡入淡出算法的兩個(gè)方面的最優(yōu)實(shí)現(xiàn),并分析其性能。首先,建議了稀疏占用共軛對(duì)稱序列的圓周卷積的高效實(shí)現(xiàn)。第二,描述了對(duì)在雙耳合成中使用的恒定增益淡入淡出的優(yōu)化。
利用稀疏占用序列的圓周卷積
通過(guò)以下的卷積和來(lái)定義兩個(gè)一般序列的圓周卷積:
因此,((k))L=k mod L指代索引對(duì)L取模(例如,如在[9]中)。針對(duì)每項(xiàng)Y[k],該操作要求L個(gè)復(fù)數(shù)乘法和L-1個(gè)復(fù)數(shù)加法,導(dǎo)致對(duì)于整個(gè)卷積有L2個(gè)復(fù)數(shù)乘法和L(L-1)個(gè)加法。
X[k]和W[k]的共軛對(duì)稱以及W[k]的系數(shù)占用允許更高效的表示:
因此,指代索引集合和的合集減去索引0。其從卷積定理(16)的雙重表示得出Y[k]也是共軛對(duì)稱的。因此,為了明確確定Y[k]僅需要項(xiàng)。當(dāng)通過(guò)實(shí)數(shù)值和虛數(shù)值來(lái)表達(dá)Y(1)[k]時(shí),結(jié)果是:
Y(l)[k]=(Wr[l]+jWi[l])(Xr[((k+l))L]+jXi[((k+l))L])
+(Wr[l]-jWi[l])(Xr[((k-l))L]+jXi[((k-l))L]). (36)
通過(guò)計(jì)算中間值:
X+[k,l]=X[((k+l))L]+X[((k-l))L] (37)
X-[k,l]=X[((k+l))L]-X[((k-l))L], (38)
將等式(36)高效地求解為:
結(jié)合起來(lái),對(duì)序列Y(l)[k]求解需要個(gè)實(shí)數(shù)值乘法和個(gè)加法。因此,與使用復(fù)數(shù)運(yùn)算對(duì)(35)的直接求解(其要求個(gè)實(shí)數(shù)乘法和個(gè)實(shí)數(shù)加法)相比,該實(shí)現(xiàn)更加高效。如果W[1]是純實(shí)數(shù)或純虛數(shù),Wi[1]或Wr[1]將會(huì)等于零。在該兩種情況下,復(fù)雜度降低到個(gè)實(shí)數(shù)乘法和個(gè)加法。
基于這些復(fù)雜度,結(jié)果是,根據(jù)(34)對(duì)圓周卷積的求解的整體復(fù)雜度是個(gè)實(shí)數(shù)乘法和個(gè)實(shí)數(shù)取值加法,即,總共個(gè)運(yùn)算。如(32)中定義的,K指代W[1]的非零分量的總數(shù)。因此,所提到的總復(fù)雜度考慮到了以下二者:W[0]的實(shí)數(shù)取值,以及一般復(fù)數(shù)值W[I]的索引I包含在索引集合和二者中這一事實(shí)。
通過(guò)這種方式,對(duì)圓周卷積做出貢獻(xiàn)的序列的共軛對(duì)稱使得關(guān)于復(fù)雜度存在大量的節(jié)省。通過(guò)純實(shí)數(shù)或純虛數(shù)的窗口系數(shù)可獲得進(jìn)一步的顯著降低。因此,所建議的圓周卷積算法可從稀疏占用頻域窗口函數(shù)(例如,如圖6a至6f中示出的設(shè)計(jì))獲得直接好處。
恒定增益淡入淡出
可在所呈現(xiàn)的頻域淡入淡出概念內(nèi)高效地實(shí)現(xiàn)恒定增益淡入淡出,恒定淡入淡出包括通常用于HRTF之間的過(guò)渡的線性淡入淡出。
通過(guò)兩個(gè)輸入信號(hào)與其相應(yīng)的頻域窗口的圓周卷積以及之后的求和來(lái)實(shí)現(xiàn)一般的頻域淡入淡出:
對(duì)于恒定增益淡入淡出而言,通過(guò)將時(shí)域淡入淡出函數(shù)(14)變換到頻域來(lái)獲得更高效的實(shí)現(xiàn):
在此,Yd[k]指代以下差值:
Yd[k]=Y(jié)1[k]-Y2[k].(42)
如(14)中所示,該函數(shù)允許任何初始值s與最終值e之間的淡入淡出。與(40)相比,實(shí)現(xiàn)(41)的主要優(yōu)點(diǎn)在于其僅需要單個(gè)圓周卷積,該單個(gè)圓周卷積然后表示淡入淡出算法最復(fù)雜的部分。
可通過(guò)融合圓周卷積方案(34)和(41)來(lái)實(shí)現(xiàn)復(fù)雜度的進(jìn)一步降低。將包含中央窗口系數(shù)W[0]的項(xiàng)與淡入淡出函數(shù)相組合得到以下結(jié)果:
通過(guò)這種方式,通過(guò)4.1節(jié)中描述的稀疏占用圓周卷積運(yùn)算確定恒定增益淡入淡出的計(jì)算復(fù)雜度:大小為的兩個(gè)復(fù)數(shù)矢量加法、兩個(gè)加法以及用于縮放窗口系數(shù)W[k]的2K-1個(gè)乘法??偟慕Y(jié)果是個(gè)加法和個(gè)實(shí)數(shù)取值乘法。因此,對(duì)具有B個(gè)輸出采樣的塊進(jìn)行淡入淡出需要總共個(gè)指令。
類似于圖5a,圖5b示出了對(duì)增益改變(例如,從增益因子1改變?yōu)樵鲆嬉蜃?.5)進(jìn)行表示的備選時(shí)域窗口表示。這樣的時(shí)域窗口粗略地對(duì)應(yīng)于圖5a中的淡出窗口w1。然而,在此不存在淡入。同樣對(duì)于圖5b中的時(shí)域窗口,存在可在圖1、2和3中的框124中或框124a、124b、124c中高效地使用的高效頻域窗口函數(shù)。
可通過(guò)對(duì)對(duì)應(yīng)值進(jìn)行縮放或加上/減去對(duì)應(yīng)值來(lái)從圖5a的窗口函數(shù)的頻域表示對(duì)圖5b的時(shí)域窗口的頻域窗口函數(shù)的表示進(jìn)行表示,使得不必執(zhí)行新的優(yōu)化,但例如可從基于圖5a的現(xiàn)有頻域窗口函數(shù)或如在圖6a至6f中所定義地產(chǎn)生針對(duì)頻域中的所有增益改變的對(duì)應(yīng)頻域窗口函數(shù)。因此,可通過(guò)圖5b實(shí)現(xiàn)增益降低。備選地,可通過(guò)對(duì)應(yīng)函數(shù)實(shí)現(xiàn)增益增加,其中,在此可利用對(duì)對(duì)應(yīng)(例如,恒定)值進(jìn)行縮放和/或加上對(duì)應(yīng)值來(lái)再次地使用圖5a的函數(shù)w2。
圖11示例性地示出使用單個(gè)固定頻域窗口函數(shù)的用于具有初始值和最終值的增益改變的信號(hào)處理結(jié)構(gòu)。因此,Y1[k]502表示要遭受增益改變的信號(hào)的頻域表示。該信號(hào)可例如已通過(guò)對(duì)輸入信號(hào)進(jìn)行頻域?yàn)V波而產(chǎn)生。然而,這樣的濾波器不是絕對(duì)必須的。所必須的僅是該信號(hào)出現(xiàn)在與所使用的頻域-時(shí)域變換(在說(shuō)明書中稱為“轉(zhuǎn)換器”)兼容的表示中;亦即,應(yīng)用頻域-時(shí)域變換來(lái)產(chǎn)生對(duì)應(yīng)的時(shí)域信號(hào)y1[n]。在此,通過(guò)信號(hào)塊的開始處的增益值s、信號(hào)塊的結(jié)束處的增益因子e、以及所選擇的頻域窗口函數(shù)(在此稱為W2[k])來(lái)確定增益函數(shù)的過(guò)程。示例性地,對(duì)此進(jìn)行執(zhí)行,以使得其時(shí)域?qū)?yīng)關(guān)系是從1降到0的函數(shù)。通過(guò)以下計(jì)算函數(shù)的方式(也示出在圖11中)來(lái)執(zhí)行增益改變。
通過(guò)圓周卷積的方式向信號(hào)Y1[k]提供頻域窗口函數(shù)W2[k]。通過(guò)在第一乘法器503中將矢量與值e-s逐項(xiàng)相乘來(lái)對(duì)該卷積的結(jié)果進(jìn)行縮放。由于圓周卷積的線性,也可在卷積之前將縮放應(yīng)用于Y1[k]或W2[k]。在求和器500中將該表示的結(jié)果與在第二乘法器504中通過(guò)初始增益值s進(jìn)行縮放的信號(hào)Y1[k]相加,產(chǎn)生頻域輸出信號(hào)Y[k]。通過(guò)與(43)相類似地將中央窗口系數(shù)W[0]從卷積和中分離并在縮放Y1[k]時(shí)考慮到該中央窗口系數(shù),可進(jìn)一步提高效率。
圖7a至7f示出了在圖6a至6f中出現(xiàn)在時(shí)域的頻域窗口函數(shù)的濾波器系數(shù)的圖表。頻域窗口函數(shù)是僅稀疏占用的。具體地,圖7a示出了頻域表示,其中,窗口函數(shù)的頻域表示的對(duì)應(yīng)于頻率0的頻隙(或第0個(gè)頻隙)具有值0.5。在此,確切的值“0.5”并不是絕對(duì)必要的。針對(duì)第0個(gè)頻隙的0.5意味著時(shí)域值的平均值是0.5,這甚至對(duì)于從1到0的淡入淡出是適用的。
然后,第一頻隙到第七頻隙將會(huì)具有對(duì)應(yīng)的復(fù)數(shù)系數(shù),而所有其他的更高的頻隙等于0或展現(xiàn)出小到幾乎不重要的值。因此,來(lái)自圖7a至7f的集合和值描述了頻譜系數(shù)的非零實(shí)數(shù)部分和虛數(shù)部分的索引或圖6a至6f中在時(shí)域中示出的頻域窗口函數(shù)的頻隙。圖7e和7f例如僅涉及占用窗口函數(shù)的前三個(gè)頻譜系數(shù)(圖7e)或僅占用窗口函數(shù)的前兩個(gè)頻譜系數(shù)(圖7f)。
復(fù)雜度評(píng)估
該小節(jié)將所建議的頻域淡入淡出算法的復(fù)雜度與濾波器淡入淡出的現(xiàn)有解決方案相比較。將具有如下參數(shù)的渲染系統(tǒng)作為性能評(píng)估的基礎(chǔ):針對(duì)頻域淡入淡出方法,濾波器長(zhǎng)度N=512,塊大小B=128,且對(duì)應(yīng)的標(biāo)準(zhǔn)DFT大小L=256,M=8個(gè)虛擬源以及K=4個(gè)非零系數(shù)。對(duì)每個(gè)參數(shù)進(jìn)行改變來(lái)評(píng)估器對(duì)總復(fù)雜度的影響。圖8中示出了結(jié)果。其示出了用于計(jì)算各個(gè)淡入淡出信號(hào)的采樣的乘法的數(shù)量,即,渲染系統(tǒng)中運(yùn)算的總數(shù)除以聲音源的數(shù)量??紤]三個(gè)算法:(a)其后跟隨時(shí)域淡入淡出的分段卷積,(b)針對(duì)每個(gè)源信號(hào)分別執(zhí)行的所建議的FD淡入淡出算法,以及在時(shí)域中對(duì)耳朵信號(hào)的求和,(c)頻域中對(duì)耳朵信號(hào)的FD淡入淡出和求和。
圖8(a)示出了濾波器長(zhǎng)度N的影響。針對(duì)恒定的塊大小B,復(fù)雜度對(duì)于所有算法是N的線性函數(shù),因?yàn)镹僅影響到可歸因于塊卷積(6)的復(fù)雜度,對(duì)于該三個(gè)算法而言這是相同的。然而,即使在單信道的情況下,與時(shí)域解決方案相比,所建議的FD淡入淡出算法也顯示出了明顯的改進(jìn)。第三幅圖指出了,在頻域中對(duì)耳機(jī)信號(hào)求和導(dǎo)致復(fù)雜度進(jìn)一步的大量降低,針對(duì)N=512,其從每采樣≈186指令到≈131指令。
圖8(b)中是示出了分段卷積方案的塊大小的影響。雖然FD淡入淡出在任何情況下都比時(shí)域淡入淡出更加高效,相對(duì)增益隨著塊大小B的增加而增加。這可歸因于均勻分段卷積方案的復(fù)雜度特性。對(duì)于較小的塊大小,復(fù)雜度由塊卷積(6)占主導(dǎo),而FFT和IFFT運(yùn)算的代價(jià)可忽略不計(jì)。由于IFFT數(shù)量的降低是FD淡入淡出方法的主要特征,其全部影響僅對(duì)于足夠大的塊大小才變得可看到。然而,這僅是較小的缺點(diǎn),因?yàn)樵谌魏吻闆r下,對(duì)于非常小的塊大小,均勻分段卷積變得更低效(例如,參見[12]、[13])。另一方面,如果塊大小等于濾波器長(zhǎng)度(例如,N=B=512),則做出最大的改進(jìn)。這對(duì)應(yīng)于非分段快速卷積。因此,如果將所建議的FD淡入淡出與重疊保留方案相結(jié)合所導(dǎo)致的延時(shí)時(shí)間是可接受的,則可以有利地使用所建議的FD淡入淡出與重疊保留方案的結(jié)合。
圖8(c)中示出了復(fù)雜度對(duì)FD窗口的稀疏占用(其是頻域窗口函數(shù)W[l]的值的非零實(shí)數(shù)部分和虛數(shù)部分)的依賴性。對(duì)于時(shí)域淡入淡出,在不使用這樣窗口的情況下,性能流不變。對(duì)于逐信道實(shí)現(xiàn)算法的情況,在考慮到多至大約7個(gè)非零分量的設(shè)置中,F(xiàn)D淡入淡出更加高效。在小節(jié)“頻域窗口的設(shè)計(jì)”中已經(jīng)示出了具有3到4個(gè)值的窗口通常就已經(jīng)允許對(duì)線性淡入淡出進(jìn)行非常好的近似。這允許淡入淡出的精確度和復(fù)雜度之間可實(shí)際的折中,并允許多數(shù)引用中極大的速度加快。當(dāng)對(duì)耳朵信號(hào)混頻也在頻域中執(zhí)行時(shí),對(duì)精確度或效率的進(jìn)一步極大提高也是可能的。在該情況下,在多至12個(gè)系數(shù)的FD窗口中,F(xiàn)D淡入淡出比時(shí)域方法更高效。
圖8(d)示出了所再現(xiàn)的聲學(xué)場(chǎng)景的大小(即,虛擬源的數(shù)量)對(duì)總復(fù)雜度的影響。如上所示,通過(guò)計(jì)算出的源的數(shù)量對(duì)計(jì)算出的算術(shù)運(yùn)算的數(shù)量進(jìn)行歸一化。對(duì)于時(shí)域淡入淡出和單行道FD算法,復(fù)雜度不取決于場(chǎng)景大小。此外,針對(duì)單個(gè)源的多信道FD算法與單信道FD淡入淡出相同。然而,即使對(duì)于較小的聲學(xué)場(chǎng)景(例如,針對(duì)M=2,…,8),在頻域中對(duì)淡入淡出源信號(hào)進(jìn)行組合也使得效率極大增加。更大的聲學(xué)場(chǎng)景僅使得性能有少量的進(jìn)一步增加。該漸進(jìn)線限制源自于前向FFT和塊卷積操作對(duì)總復(fù)雜度的影響。通過(guò)減少逆FFT操作的數(shù)量不能進(jìn)一步降低總復(fù)雜度。
實(shí)施例涉及將濾波信號(hào)的頻域卷積與淡入淡出相結(jié)合的高效算法。其可應(yīng)用于多個(gè)頻域卷積技術(shù),具體地,重疊保留和均勻或非均勻分段卷積。此外,其可以與濾波音頻信號(hào)之間的不同種類的平滑過(guò)渡(包括增益改變和淡入淡出)一起使用。動(dòng)態(tài)雙耳合成中通常需要的恒定增益淡入淡出(如,例如線性濾波器過(guò)渡)允許復(fù)雜度的進(jìn)一步極大降低。該新穎算法基于頻域中利用稀疏占用窗口函數(shù)的圓周卷積,該稀疏占用窗口函數(shù)僅包含少量的非零值。此外,示出了針對(duì)這種窗口的靈活的基于優(yōu)化的設(shè)計(jì)方法。設(shè)計(jì)示例確認(rèn)了可通過(guò)非常稀疏地占用的窗口函數(shù)來(lái)非常良好地近似音頻應(yīng)用中通常使用的淡入淡出行為。
所建議的實(shí)施例示出了:與基于兩個(gè)分別的卷積和時(shí)域淡入淡出的先前方案相比,性能的極大改進(jìn)。然而,僅在集成到雙耳再現(xiàn)系統(tǒng)的結(jié)構(gòu)中時(shí)才利用了針對(duì)雙耳應(yīng)用的頻域淡入淡出的全部潛力。在該情況下,該新穎的淡入淡出算法允許在頻域中執(zhí)行更大部分的處理,由此極大地減少了逆變換的數(shù)量。已經(jīng)示出了用于雙耳合成的該解決方案的優(yōu)點(diǎn)。在該應(yīng)用中,在頻域中對(duì)若干聲音源的信號(hào)進(jìn)行混頻的能力允許復(fù)雜度的極大降低。然而,所建議的算法不限于雙耳合成,而是很可能應(yīng)用于使用音頻信號(hào)的快速卷積和時(shí)變混頻這兩個(gè)技術(shù)的其他使用目的,具體地,在多信道應(yīng)用中。
下面將示出本發(fā)明的備選實(shí)施例。一般而言,本發(fā)明的實(shí)施例涉及以下幾點(diǎn)。
漸進(jìn)地淡入或淡出(濾波)信號(hào)yi[n]一般被詮釋為將信號(hào)與時(shí)域窗口函數(shù)wi[n]相乘。
因此,可通過(guò)將兩個(gè)濾波信號(hào)(y1[n]和y2[n])與窗口函數(shù)w1[n]和w2[n]相乘并然后對(duì)其求和來(lái)表示該信號(hào)之間的淡入淡出。
y[n]=w1[n]y1[n]+w2[n]y2[n] (44)
一種特殊類型的淡入淡出是所謂的恒定增益淡入淡出,其中,針對(duì)每個(gè)n,窗口函數(shù)w1[n]和w2[n]之和是值1。該種類型的淡入淡出可用在很多應(yīng)用中,特別是當(dāng)要混合的信號(hào)(或?yàn)V波器)強(qiáng)相關(guān)時(shí)。在該情況下,可通過(guò)各個(gè)窗口函數(shù)w[n]來(lái)表示淡入淡出,w1[n]=w[n],w2[n]=1-w[n],且淡入淡出(1)可被如下表示:
y[n]=y(tǒng)2[n]+w[n](y1[n]-y2[n]). (46)
該方法的主要目的是在頻域中直接執(zhí)行淡入淡出,并由此降低執(zhí)行兩個(gè)完整的快速卷積操作時(shí)產(chǎn)生的復(fù)雜度。更準(zhǔn)確地,這意味著,當(dāng)在頻域中對(duì)濾波信號(hào)進(jìn)行淡入淡出時(shí),僅需一個(gè)而不是兩個(gè)逆FFT。
為了在頻域中推導(dǎo)出淡入淡出,將僅考慮各個(gè)信號(hào)x[n]與時(shí)域窗口函數(shù)w[n]的乘法。
y[n]=x[n].w[n]. (47)
在已描述了核心算法之后,對(duì)與公式(44)和(46)一致的淡入淡出的擴(kuò)展可容易地進(jìn)行(但允許性能的進(jìn)一步增加)。
時(shí)域中的逐項(xiàng)相乘(47)對(duì)應(yīng)于頻域中的圓周(周期性)卷積。
因此,DFT{·}表示離散傅里葉變換,且表示兩個(gè)有限的在此處通常是復(fù)數(shù)的序列的圓周卷積,其長(zhǎng)度由L來(lái)指代。
通過(guò)頻域中的圓周卷積進(jìn)行的淡入淡出可集成到快速卷積算法中,如重疊保留卷積、分段卷積和非均勻分段卷積。因此,要相應(yīng)地考慮這些方法的獨(dú)特之處,例如,將對(duì)脈沖響應(yīng)分段的零填充,以及丟棄被再變換到時(shí)域的信號(hào)的一部分(以避免時(shí)域信號(hào)的過(guò)度圓周卷積(circular over-convolution),時(shí)域混疊)。在此,將淡入淡出的長(zhǎng)度確定為卷積算法的塊大小或其倍數(shù)。
卷積(48)通常比時(shí)域中的淡入淡出(47)(復(fù)雜度O(L2))復(fù)雜很多。因此,轉(zhuǎn)移到頻域一般意味著復(fù)雜度的顯著降低,因?yàn)樵摳郊訌?fù)雜度O(L2)極大地超出了通過(guò)節(jié)省FFT而導(dǎo)致的降低O(Llog2L)。此外,因?yàn)樾蛄惺菑?fù)數(shù)取值的,操作(如與(44)一致的頻域中的加權(quán)求和)耗費(fèi)更大。
一實(shí)施例是找到僅包括非常少的非零系數(shù)的頻域窗口函數(shù)W[k]。利用非常稀疏地占用的窗口函數(shù),與其后跟隨有時(shí)域中的淡入淡出的附加逆FFT相比,頻域中的圓周卷積可變得高效很多。
示出了存在這樣的窗口函數(shù),使用該窗口函數(shù)(具有少量系數(shù)),對(duì)所希望的淡入淡出特性的非常良好的近似是可能的。
引入了優(yōu)化方法,利用該方法,針對(duì)所希望的時(shí)域窗口函數(shù)以及對(duì)頻域窗口函數(shù)的哪些實(shí)數(shù)取值和虛數(shù)取值的系數(shù)可不同于零的前提條件,可發(fā)現(xiàn)最佳頻域窗口函數(shù)W[k]。
利用該優(yōu)化,可通過(guò)實(shí)用的方式利用重疊保留算法以及基于重疊保留算法的均勻分段卷積算法和非均勻分段卷積算法的特性。通過(guò)離散傅里葉逆變換僅使用最后B個(gè)采樣:
其中,B是分段卷積算法的塊大小或塊饋送(feed)(B<L)。丟棄被再變換的輸出信號(hào)的前L-B個(gè)值,且因此舍棄與的前L-B個(gè)值相乘的影響,以避免卷積算法造成的時(shí)域混疊。因此,窗口系數(shù)可取任何值,而不因此改變淡入淡出結(jié)果。當(dāng)設(shè)計(jì)具有少量非零系數(shù)的頻域窗口W[k]時(shí),這些附加的自由度導(dǎo)致極大的好處。
在設(shè)計(jì)W[k]并高效地實(shí)現(xiàn)頻域中的圓周卷積時(shí),可通過(guò)實(shí)用的方式利用頻域窗口的共軛對(duì)稱結(jié)構(gòu)。因此,分別考慮W[k]的實(shí)數(shù)分量和虛數(shù)分量是實(shí)用的。
呈現(xiàn)了針對(duì)這種頻域窗口的不同設(shè)計(jì)(其中,具有2個(gè)、3個(gè)和4個(gè)非零系數(shù)),包括對(duì)實(shí)數(shù)取值和虛數(shù)的非零系數(shù)的特定的、特殊選擇的分布。嚴(yán)格來(lái)說(shuō),所獲得的發(fā)現(xiàn)僅應(yīng)用于在此呈現(xiàn)的窗口設(shè)計(jì)(亦即,例如,針對(duì)預(yù)定值L和B以及所希望的淡入淡出的形式)。然而,底層的原理(例如,實(shí)數(shù)和虛數(shù)非零部分的有利分布)也可應(yīng)用于B和L的其他值。
實(shí)數(shù)取值和虛數(shù)非零分量的分布非常具有特色。例如,在附加的檢查中已經(jīng)發(fā)現(xiàn)在圖7g中的第三設(shè)計(jì)中使用的分布(8個(gè)非零系數(shù)、索引集合對(duì)于實(shí)施例中的其他參數(shù)組合而言也是最佳的。這意味著針對(duì)頻域窗口函數(shù)的特別適合的設(shè)置是:具有索引0和所有奇數(shù)索引的系數(shù)是純實(shí)數(shù),且具有偶數(shù)索引(從2開始)的系數(shù)是純虛數(shù)。
具有兩個(gè)非零系數(shù)的窗口函數(shù)(圖7g、圖6(f)中最后的設(shè)計(jì)示例)允許兩個(gè)濾波器或信號(hào)之間的平滑過(guò)渡,且還可用于恒定增益淡入淡出。該窗口函數(shù)對(duì)應(yīng)于具有余弦類型的半側(cè)窗口的時(shí)域窗口(例如,Hann窗或Hamming窗)。雖然該窗口函數(shù)與線性淡入淡出偏離相對(duì)較大,對(duì)于在稍有類似的濾波器之間僅需要進(jìn)行無(wú)喀嗒的淡入淡出的很多應(yīng)用,這應(yīng)該已是可使用的。
針對(duì)(在此考慮的)具有稀疏占用的共軛對(duì)稱窗口函數(shù)W[k]的圓周卷積的實(shí)現(xiàn)呈現(xiàn)了高效的實(shí)現(xiàn)和不同的優(yōu)化。因此,很清楚,分別考慮實(shí)數(shù)和虛數(shù)非零部分提供了性能優(yōu)點(diǎn)。
為了實(shí)現(xiàn)恒定增益淡入淡出,引入另一優(yōu)化計(jì)算規(guī)則。
在考慮具有若干輸入和輸出的系統(tǒng)時(shí),所描述的發(fā)明允許進(jìn)一步的大得多的性能優(yōu)點(diǎn)。在該情況下,通過(guò)在頻域中實(shí)現(xiàn)淡入淡出(或?qū)崿F(xiàn)由所使用的快速卷積算法預(yù)先確定的信號(hào)表示),整個(gè)計(jì)算的較大部分可發(fā)生在該頻域中,由此極大增加了總效率。
所描述的本發(fā)明的效果是降低計(jì)算復(fù)雜度。因此,與理想的預(yù)定形式的淡入淡出相比的某種偏離(然而,其可能是有影響的且通常保持非常小)是可接受的。
除了該效率增加之外,該概念允許將淡入淡出功能直接集成到頻域。如上所述,將淡入淡出用作要素的較大的信號(hào)處理算法可被重新構(gòu)造為使得結(jié)果是效率增加??衫缭陬l域表示中執(zhí)行整個(gè)信號(hào)處理的較大部分,由此極大地降低變換信號(hào)的復(fù)雜度(例如,時(shí)域中再變換的數(shù)量)。
一般而言,可在具有以下特征的所有應(yīng)用中使用實(shí)施例:要求具有濾波器的某個(gè)最小長(zhǎng)度(取決于硬件,從大致16-50個(gè)系數(shù)開始)的FIR卷積,且要在運(yùn)行時(shí)沒(méi)有任何信號(hào)處理假象的情況下交換濾波器系數(shù)。
音頻領(lǐng)域中的兩個(gè)應(yīng)用領(lǐng)域被認(rèn)為是非常重要的:
雙耳合成
當(dāng)通過(guò)頭戴式耳機(jī)再現(xiàn)聲音場(chǎng)景時(shí),通過(guò)兩只耳朵的所謂頭部相關(guān)傳遞函數(shù)(HRTF)來(lái)對(duì)聲音對(duì)象的信號(hào)進(jìn)行濾波,且通過(guò)對(duì)對(duì)應(yīng)組成信號(hào)的求和來(lái)形成通過(guò)頭戴式耳機(jī)再現(xiàn)的信號(hào)。HRTF取決于聲音源與收聽者的相對(duì)位置,且因此必須與移動(dòng)的聲音源或頭部移動(dòng)相交換。濾波器淡入淡出的要求是已知的,例如示例[5;14]。
用于波束成形的可變數(shù)字濾波器內(nèi)核
具有在運(yùn)行時(shí)可控的定向模式的波束成形應(yīng)用(用于揚(yáng)聲器和麥克風(fēng)陣列二者)要求可變的數(shù)字濾波器結(jié)構(gòu),使用該結(jié)構(gòu),可連續(xù)調(diào)整陣列處理的特性。因此,必須要確保模式的改變不產(chǎn)生任何干擾(例如,喀嗒假象、瞬態(tài))。在通過(guò)快速卷積的方式實(shí)現(xiàn)可變?yōu)V波器時(shí),可通過(guò)有利的方式應(yīng)用所描述的發(fā)明。
具體地,在該實(shí)現(xiàn)中,頻域信號(hào)是音頻信號(hào)。第一濾波器特性指代針對(duì)聲音轉(zhuǎn)換器陣列中適于與該聲音轉(zhuǎn)換器陣列中的其他聲音轉(zhuǎn)換器相結(jié)合來(lái)在第一時(shí)間點(diǎn)處形成所希望的第一定向模式的某個(gè)聲音轉(zhuǎn)換器(麥克風(fēng)或揚(yáng)聲器)的濾波器。第二濾波器特性描述針對(duì)聲音轉(zhuǎn)換器陣列中適于以下操作的某個(gè)聲音轉(zhuǎn)換器(麥克風(fēng)或揚(yáng)聲器)的揚(yáng)聲器:與該聲音轉(zhuǎn)換器陣列中的其他聲音轉(zhuǎn)換器相結(jié)合來(lái)在第二時(shí)間點(diǎn)處形成所希望的第二定向模式,使得定向模式通過(guò)在使用頻域窗口函數(shù)時(shí)進(jìn)行淡入淡出而隨著時(shí)間改變。
另一應(yīng)用涉及使用若干音頻信號(hào),該若干音頻信號(hào)的已濾波且已淡入淡出的頻域表示在進(jìn)行傅里葉逆變換之前組合。這對(duì)應(yīng)于通過(guò)揚(yáng)聲器陣列利用不同信號(hào)同時(shí)放射若干音頻波束,或?qū)?yīng)于在麥克風(fēng)陣列中對(duì)各個(gè)麥克風(fēng)信號(hào)求和。
可在對(duì)具有若干輸入和輸出(多輸入多輸出MIMO)的系統(tǒng)具有具體優(yōu)點(diǎn)的情況下應(yīng)用所描述的發(fā)明,例如,在若干淡入淡出同時(shí)發(fā)生時(shí),或在對(duì)若干已淡入淡出的信號(hào)進(jìn)行組合和進(jìn)一步處理時(shí)。在該情況下,有可能在頻域中執(zhí)行整個(gè)計(jì)算(或通過(guò)所使用的重疊保留或分段卷積算法預(yù)先確定的信號(hào)表示)的較大部分。通過(guò)轉(zhuǎn)移其他操作(例如,求和、對(duì)信號(hào)混頻等),可極大地降低再變換到時(shí)域的復(fù)雜度,并因此顯著地頻繁改進(jìn)總效率。如上所述,這種系統(tǒng)的示例是針對(duì)復(fù)雜音頻場(chǎng)景的雙耳渲染,或者也是波束成形應(yīng)用,在波束成形應(yīng)用中,針對(duì)不同定向模式和轉(zhuǎn)換器(麥克風(fēng)或揚(yáng)聲器)的信號(hào)是通過(guò)改變?yōu)V波器來(lái)濾波的,且必須彼此組合。
盡管已經(jīng)在設(shè)備的上下文中描述了一些方面,但是應(yīng)當(dāng)清楚的是,這些方面也表示對(duì)相應(yīng)方法的描述,使得設(shè)備的塊或要素也對(duì)應(yīng)于相應(yīng)的方法步驟或方法步驟的特征。類似地,在方法步驟的上下文中描述的方案也表示對(duì)相應(yīng)塊或細(xì)節(jié)或者相應(yīng)設(shè)備的特征的描述。方法步驟中的一些或全部可以由硬件裝置來(lái)執(zhí)行(或使用硬件裝置),例如,微處理器、可編程計(jì)算機(jī)或電子電路。在一些實(shí)施例中,最重要的方法步驟中的某一些或數(shù)個(gè)可以由這種裝置來(lái)執(zhí)行。
取決于某些實(shí)現(xiàn)要求,可以在硬件中或在軟件中實(shí)現(xiàn)本發(fā)明的實(shí)施例。可以使用其上存儲(chǔ)有電子可讀控制信號(hào)的數(shù)字存儲(chǔ)介質(zhì)(例如,軟盤、DVD、藍(lán)光光盤、CD、ROM、PROM、EPROM、EEPROM或閃存、硬盤驅(qū)動(dòng)器或另一磁存儲(chǔ)器或光學(xué)存儲(chǔ)器)來(lái)執(zhí)行實(shí)現(xiàn),該電子可讀控制信號(hào)與可編程計(jì)算機(jī)系統(tǒng)協(xié)作或者能夠與之協(xié)作從而執(zhí)行相應(yīng)方法。因此,數(shù)字存儲(chǔ)介質(zhì)可以是計(jì)算機(jī)可讀的。
根據(jù)本發(fā)明的一些實(shí)施例包括具有電子可讀控制信號(hào)的數(shù)據(jù)載體,該電子可讀控制信號(hào)能夠與可編程計(jì)算機(jī)系統(tǒng)協(xié)作從而執(zhí)行本文所述的方法之一。
通常,本發(fā)明的實(shí)施例可以實(shí)現(xiàn)為具有程序代碼的計(jì)算機(jī)程序產(chǎn)品,程序代碼可操作以在計(jì)算機(jī)程序產(chǎn)品在計(jì)算機(jī)上運(yùn)行時(shí)執(zhí)行方法之一。
程序代碼可以例如存儲(chǔ)在機(jī)器可讀載體上。
其他實(shí)施例包括用于執(zhí)行本文所述的方法之一的計(jì)算機(jī)程序,其中,該計(jì)算機(jī)程序存儲(chǔ)在機(jī)器可讀載體上。換言之,本發(fā)明方法的實(shí)施例因此是包括程序代碼的計(jì)算機(jī)程序,程序代碼用于在計(jì)算機(jī)程序在計(jì)算機(jī)上運(yùn)行時(shí)執(zhí)行本文所述的方法之一。
因此,本發(fā)明方法的另一實(shí)施例是其上記錄有計(jì)算機(jī)程序的數(shù)據(jù)載體(或者數(shù)字存儲(chǔ)介質(zhì)或計(jì)算機(jī)可讀介質(zhì)),計(jì)算機(jī)程序用于執(zhí)行本文所述的方法之一。
因此,本發(fā)明方法的另一實(shí)施例是表示計(jì)算機(jī)程序的數(shù)據(jù)流或信號(hào)序列,所述計(jì)算機(jī)程序用于執(zhí)行本文所述的方法之一。數(shù)據(jù)流或信號(hào)序列可以例如被配置為經(jīng)由數(shù)據(jù)通信連接(例如,經(jīng)由互聯(lián)網(wǎng))傳輸。
另一實(shí)施例包括處理裝置,例如,計(jì)算機(jī)或可編程邏輯器件,所述處理裝置被配置為或適于執(zhí)行本文所述的方法之一。
另一實(shí)施例包括其上安裝有計(jì)算機(jī)程序的計(jì)算機(jī),該計(jì)算機(jī)程序用于執(zhí)行本文所述的方法之一。
根據(jù)本發(fā)明的另一實(shí)施例包括被配置為向接收機(jī)傳遞計(jì)算機(jī)程序的設(shè)備或系統(tǒng),所述計(jì)算機(jī)程序用于執(zhí)行本文所述的方法至少之一??梢噪娮拥鼗蚬鈱W(xué)地執(zhí)行傳輸。接收機(jī)可以是例如計(jì)算機(jī)、移動(dòng)裝置、存儲(chǔ)裝置等。該設(shè)備或系統(tǒng)可以例如包括用于向接收機(jī)傳輸計(jì)算機(jī)程序的文件服務(wù)器。
在一些實(shí)施例中,可編程邏輯器件(例如,現(xiàn)場(chǎng)可編程門陣列FPGA)可以用于執(zhí)行本文所述的方法的功能中的一些或全部。在一些實(shí)施例中,現(xiàn)場(chǎng)可編程門陣列可以與微處理器協(xié)作以執(zhí)行本文所述的方法之一。通常,在一些實(shí)施例中,方法優(yōu)選地由任意硬件設(shè)備來(lái)執(zhí)行。這可以是通用硬件,例如,計(jì)算機(jī)處理器(CPU)或?qū)S糜诜椒ǖ挠布?例如,ASIC)。
上述實(shí)施例對(duì)于本發(fā)明的原理僅是說(shuō)明性的。應(yīng)當(dāng)理解的是:本文所述的布置和細(xì)節(jié)的修改和變形對(duì)于本領(lǐng)域其他技術(shù)人員將是顯而易見的。因此,旨在僅由所附專利權(quán)利要求的范圍而不由通過(guò)描述和解釋本文的實(shí)施例的方式給出的具體細(xì)節(jié)來(lái)限制本發(fā)明。
引用文獻(xiàn)
[1]V.R.Algazi und R.O.Duda,"Headphone-based spatial sound,″IEEE Signal Processing Mag.,Vol.28,No.1,pp.33-42,Jan.2011.
[2]R.Nicol,Binaural Technology,ser.AES Monographs.New York,NY:AES,2010.
[3]D.N.Zotkin,R.Duraiswami,und L.S.Davis,″Rendering localized spatial audio in a virtual auditory space,″IEEE Trans.Multimedia,Vol.6,No.4,pp.553-564,Aug.2004.
[4]A.J.Jakka,M.Tikander,et al.,″Augmented reality audio for mobile and wearable appliances,″J.Audio Eng.Soc.,Vol.52,No.6,pp.618-639,June 2004.
[5]J.-M.Jot,V.Larcher und O.Warusfel,"Digital signal processing issues in the context of binaural and transaural stereophony,"in AES 98th Convention,Paris,F(xiàn)rance,F(xiàn)eb.1995.
[6]H.Gamper,"Head-related transfer function interpolation in azimuth,elevation and distance,″J.Acoust.Soc.Am.,Vol.134,No.6,EL547-EL553,Dec.2013.
[7]V.Algazi,R.Duda,D.Thompson,et al.,″The CIPIC HRTF database,″in Proc.IEEE Workshop Applications Signal Processing to Audio and Acoustics,New Paltz,NY,Oct.2001,pp.99-102.
[8]T.G.Stockham Jr.,″High-speed convolution and correlation,"in Proc.Spring Joint Computer Conf.,Boston,MA,Apr.1966,pp.229-233.
[9]A.V.Oppenheim und R.W.Schafer,Discrete-Time Signal Processing,3th edition,Upper Saddle River,NJ:Pearson,2010.
[10]B.D.Kulp,"Digital equalization using Fourier transform techniques,"in AES 85th Convention,Los Angeles,CA,Nov.1988.
[11]F.Wefers und M."Optimal filter partitions for real-time FIR filtering using uniformly partitioned FFT-based convolution in the frequency-domain,"in Proc.14.Int.Conf.Digital Audio Effects,Paris,F(xiàn)rance,Sept.2011,pp.155-161.
[12]W.G.Gardner,″Efficient convolution without input-output delay,″J.Audio Eng.Soc.,Vol.43,No.3,pp.127-136,March 1995.
[13]G.Garcia,″Optimal filter partition for efficient convolution with short input/output delay,″in 113th AES Convention,Los Angeles,CA,Oct.2002.
[14]C.Tsakostas und A.Floros,″Real-time spatial representation of moving sound sources,″in AES 123th Convention,New York,NY,Oct.2007.
[15]J.O.Smith III,Introduction to Digital Filters with Audio Applications.W3K Publishing,2007.[Online].available:http://ccrma.stanford.edu/-jos/filters/.
[16]C.Müller-Tomfelde,"Time-varying filter in non-uniform block convolution,"in Proc.COST G-6 Conf.Digital Audio Effects(DAFX-01),Limerick,Ireland,Dec.2001.
[17]J.O.Smith III,Mathematics of the Discrete Fourier Transform (DFT).W3K Publishing,2007.[Online].available:http://ccrma.stanford.edu/-jos/mdft/mdft.html.
[18]R.G.Lyons,Understanding Digital Signal Processing,3rd ed.Upper Saddle River,NJ:Pearson,2011.
[19]M.C.Grant und S.P.Boyed,“Graph implementations for nonsmooth convex programs,”in Recent Advances in Learning and Control,V.Blondel,S.Boyd,und H.Kimura,Eds.,London,UK:Springer,2008,pp.95-110.
[20]F.Wefers und M.,,Optimal Filter Partitions for Non-Uniformly Partitioned Convolution”.In:Proc.AES45thInt.Conf.Espoo,F(xiàn)inland,March 2012,pp.324-332.