栗學麗,劉 琚
(山東大學信息科學與工程學院,山東濟南 250100)
“數字信號處理”中分段卷積的教學探討
栗學麗,劉 琚
(山東大學信息科學與工程學院,山東濟南 250100)
本文對“數字信號處理”課程中難以理解的分段卷積進行解析,并對使用中常見問題進行解答。重疊相加法和重疊保留法是分段卷積的兩種易混淆方法,通過舉例法、質疑法和實踐法等多種教學方法對它們進行分析比較,說明它們的用法,加深概念的理解,以達到學以致用的目的。
數字信號處理;分段卷積;重疊相加法;重疊保留法
分段卷積是“數字信號處理”課程中重要的應用和難點之一,它采用兩種方法實現,即重疊相加法和重疊保留法。教科書中一般都給出這兩種方法的原理和公式,或給出圖示解釋[1]。但是,我們發現,多數學生對這兩種方法不能很好地理解,也不會實際運用。本文利用Matlab GUI制作出交互式動畫課件輔助教學,把抽象的概念形象化。
對于很長序列和短序列的卷積,可采用重疊相加法和重疊保留法進行快速分段實現。設單位沖激響應h(n)的點數為M,輸入信號x(n)為很長的序列。
重疊相加法是將長序列x(n)分解為若干段,每段xi(n)長度為L(L和M為同一數量級)。將xi(n)和h(n)補零到N點(N≥L+M-1),用圓周卷積得到每段線性卷積的值。由于整個卷積值等于各分段卷積值之和,所以將相鄰兩段輸出序列的重疊區(M-1點)相加就得到正確值。
重疊保留法也是將長序列 x(n)分解為若干段xi(n),但每相鄰段重疊M-1點(對第一段采取前面補M-1個零值),使得每段長度為N點,做N點的x i(n)和h(n)圓周卷積。由于每段圓周卷積結果的前M-1點不等于線性卷積值,故將每段輸出結果的前M-1點去掉,剩下的點連結起來就是正確值[1]。
具體的證明公式見參考文獻[1],這里不再贅述。現就用舉例法、質疑法和實踐法說明它們的用法。

解法2:重疊相加法
已知 M=3,令L=5,將 x(n)分段,得

與直接卷積法結果比較,會發現y1尾部和y2頭部的M-1=2點值不對,而將y1尾部和y2頭部值重疊M-1點值相加,得到y(n)={1 2 2 2 2 2 2 2 2 2-9-10}。此值與直接法比較,兩者相等,說明此法正確。
解法3:重疊保留法
由重疊相加法可知,分段卷積結果每段前M-1點值不等于線性卷積值,所以要去除。同時,為了保證各段卷積濾波結果的連續性,每段輸入需要重疊M-1點,即為重疊保留法。
已知M=3,將x(n)重疊M-1=2點分段,每段長度為5,得x1(n)={0 0 1 2 3},x2(n)={2 3 4 5 6},x3(n)={5 6 7 8 9},x4(n)={8 9 10 0 0}。
將每段與h(n)做N=5的圓周卷積,得

由于每段圓周卷積結果的前M-1點不等于線性卷積值,故每段輸出去掉前M-1點,將剩下值連接起來,得到y(n)={1 2 2 2 2 2 2 2 2 2-9-10}。可見與直接法的結果相同。
已知x(n)=(n+1),0≤n≤9,h(n)={1,0,-1},分別用直接法、重疊相加法和重疊保留法求解 x(n)*h(n)。
解法1:直接法
通過卷積公式可知
通過這一個簡單的例題,用三種方法求解,比較它們的使用方法,使學生對這三種方法有了直觀的理解。
質疑法是對理論的進一步深化,教師提出問題,啟發學生思考,加深概念的理解。
疑問1:既然重疊保留法前M-1點不正確而要去除,能否分段時重疊處直接補零,運算是否會簡單?
現在我們就如此分段:

下面的求解過程同上,得到結果為{1 2 2 4 5 2 7 8 2 10 0-10},可見與 x(n)*h(n)值不相等。那為什么必須要保留前段的M-1個數據,而不能直接補上M-1個零值呢?啟發學生考慮因果系統的性質。如果因果系統的單位沖激響應h(n)是長度為M的序列,則當前的輸出不僅取決于當前的輸入,而且還取決于以前的M-1個輸入。這樣,在計算n時刻的卷積值時,就不僅與n時刻的輸入樣值有關,而且還與n時刻以前的M-1個樣值有關。所以,必需將前段輸入序列的后M-1個點保留在本段序列之前,即每段輸入要重疊M-1點,方可將前段對本段的影響考慮進去,這樣才不會造成輸出信號的遺漏,得出正確值。
疑問2:如果不是進行N點的圓周卷積,而是將每段后面補零到2的整數冪,便于通過 N 2點的FFT實現。這樣,每段得到N2個點值,是不是僅需要每段去掉前M-1個點就可正確相連呢?
上題令N2=8,利用FFT進行圓周卷積,得:

可見,正確的結果應是每段去掉前M-1個點,以及后N2-N個點,即將中間的第M點到第N點作為正確結果連接起來。所以嚴格的說,重疊保留法是將每段輸出結果第M點到第N點連接起來得到正確值。
疑問3:此處重疊相加法與語音信號處理中講解的重疊相加法OLA(OverLap-Add method)[3]進行語音合成是不是同一個概念?
語音信號是長時信號,它表現出短時平穩性,所以一般是采用重疊加窗分幀,也就是分段時有重疊,每段信號乘上Hamming窗或Hanning窗,然后分析得到每幀的特征參量,對特征參量進行分析、編碼、合成、識別等處理。若需要得到處理后的語音,合成時對每幀信號重疊區進行相加,即重疊相加法實現,有時也翻譯為疊接相加法。
由此可見,語音信號處理中講解的重疊相加法(分段時重疊)與我們數字信號處理講解的重疊相加法(分段時不重疊)是不同的概念,名稱相同,物理概念不同。數字信號處理講解的重疊相加法是實現分段卷積,語音信號處理中講解的重疊相加法是為了合成時去除加窗的影響。學生一旦理解了物理概念,就不會混淆了,才能正確運用。
我們利用Matlab GUI設計了一個分段卷積的交互式動態演示系統,圖1和圖2分別給出了實現重疊相加法和重疊保留法的一個動態演示界面。
我們以圖1為例來解釋該系統的用法。該系統具有交互功能,通過更改界面左側的輸入信號、單位沖激響應和分段的長度,便可觀察到相應的圖形變化。界面的中部給出所選方法的圖示。界面的右側給出五個子圖形,從上到下分別對應著輸入信號、單位沖激響應、輸入信號的每一子段、相應的中間輸出值及最終的輸出結果的波形。圖中還給出了動態顯示分段卷積過程的中間輸出值。我們可以選擇輸入信號為實際的語音信號,單位沖激響應選擇低通濾波器,通過選擇不同的實現方法,以實時可變的動態圖形展示給學生。我們可以看到這三種方法實現過程不同,所用時間不同,但是濾波的結果一致的,確實得到的是低頻信號。使學生對濾波的概念有更清楚的認識。
可見通過操作交互式動態演示系統,既能直觀驗證原理方法的正確性,又可加深學生對所學知識的理解。此外,我們還給出最新的分段卷積的研究成果鏈接,學生可以自主學習,或編程實現課堂上講授的相關知識內容,從而提高學生的分析問題能力和實際動手能力。

圖1 重疊相加法實現過程圖解

圖2 重疊保留法實現過程圖解
如何幫助學生理解與掌握“數字信號處理”課程中的基本概念、基本原理、基本分析方法以及如何提高其綜合應用所學知識解決實際問題的能力,是本課程教學中所要解決的關鍵問題[5]。
本文通過舉例法和質疑法實例講解分段卷積中重疊相加法和重疊保留法的用法,加上采用Matlab實踐應用,來幫助學生理解和應用。舉例法有利于得到直觀認識,質疑法有利于激勵創新精神,實踐法有利于倡導活學活用。這三種方法雖并非新方法,但是我們將它們有機的結合,在講述分段卷積的概念和用法上對教科書給予很好的補充,取得了較好的教學效果。
[1] 程佩青.數字信號處理教程[M].北京:清華大學出版社,2007
[2] V inay K.Ingle,etc.Digital Signal Processing U sing Matlab(影印本)[M].北京:科學出版社,2003
[3] Thomas F.Quatieri.Discrete-Time Speech Signal Processing:Principlesand Practice[M].New Jersey:Prentice HallPTR,2002
[4] 姚秀芳,崔松菲.基于MA TLAB GUIDE的程序設計[J].合肥:電腦知識與技術,2009,5(27):7767-7768
[5] 栗學麗,劉琚.討論“數字信號處理”教學中易混淆的問題[J].南京:電氣電子教學學報,2009,31(4):39-41
Teaching Methods and Analysis of Block Convolution in Digital Signal Processing
LIXue-li,LIU Ju
(Schoolo f In formation Science and Engineering,Shandong Univ.,Jinan 250100,China)
Block convolution is one of the difficulties in the course of Digital Signal Processing.In this paper,the concep t of b lock convolution is analyzed and some frequently asked questions are interp reted.Through several teachingmethods,i.e.the examp ling method,the questioning method and the practicing method,the con fusab lemeans of the overlap-add method and the overlap-savemethod for the block convolution are analyzed com paratively and explained their usage.It is help ful for the students to understand and app ly.
digital signal p rocessing;b lock convo lution;overlap-add method;overlap-savem ethod
TN911.72;G642
A
1008-0686(2011)02-0102-03
2010-07-01;
2010-12-23 基金項目:山東大學2009年教學改革項目(山大教字〔2010〕13號)
栗學麗(1972-),女,博士,副教授,主要從事數字信號處理方面的教學和科研,E-mail:lixueli@sdu.edu.cn
劉 琚(1965-),男,博士,教授,主要從事數字信號處理和通信方面的教學和科研。