張 湃
(唐山學院 智能與信息工程學院,河北 唐山 063000)
利用先進的信息技術方法輔助課堂教學,可以生動、直觀地展示學生難以理解的抽象理論概念,有利于他們對知識的掌握和擴展,而且在課堂中能夠加強與學生的互動,增強學生的參與感[1-2]。
“數字信號處理”課程是電子信息及通信專業的一門理論性較強的專業基礎課,它集“高等數學”“電路原理”和“信號與系統”等多門課程為一體,涉及內容廣泛,通過此課程的學習,可為后續專業課程的學習和實踐奠定重要的理論基礎。該課程的教學目標除了講授基本原理和基本方法外,還要培養學生的實踐能力和動手能力[3-4]。但此課程的傳統教學一般以教師為主體,側重理論講授,實踐演示較少,導致學生聽課效率較低,尤其是對于重點、難點內容,學生普遍感到理解困難。
為提高課堂教學效果,加強師生間的互動,本研究在Matlab GUI仿真平臺上設計了一款數字信號處理教學演示系統。該系統能夠在課堂上對課程主要原理和方法進行在線演示。在演示過程中,該系統可靈活地進行參數調整,并可生成可執行文件,方便教學應用演示,而且能夠使學生直觀感受數字信號處理算法的效果,幫助學生加深對重點、難點知識的理解,培養學生理論聯系實際的能力,從而獲得良好的教學效果。
本系統集成了“數字信號處理”課程的各類經典算法和綜合案例,共分為六大模塊。其中經典算法包括運算、卷積、傅里葉變換、信號采樣與重構、數字濾波器設計;綜合案例為語音信號處理。每個模塊都有相應的子模塊,基本涵蓋了“數字信號處理”課程的主要教學內容。教學演示系統的總體框架如圖1所示。

圖1 數字信號處理教學演示系統的總體框架
所設計的基于Matlab GUI的教學演示系統具有主控界面與子控界面回調、切換等功能,在系統的主界面點擊菜單欄中的按鍵就可打開相應的子模塊界面。該系統功能強大,界面友好,具有很好的擴展性,可根據實際需要增刪模塊或調整主界面的外觀。
教學演示系統主界面由兩部分組成(如圖2所示),主界面的上方為菜單項,包含各個演示模塊的基本功能;左側下方空白處為序列波形顯示區域;右側下方區域用于序列的產生及分析。

圖2 數字信號處理教學演示系統主界面
在系統主界面,選擇與實驗內容相應的菜單項,即可進入對應實驗模塊的子界面;點擊“退出”菜單,即可關閉演示主界面。
在圖2中,按鍵功能分為六大部分。
(1)運算:點擊菜單欄中的“運算”按鍵,即可對序列實現倍率、折疊、移位等運算,若同時產生兩個序列則可實現序列相加、相乘等運算。在演示過程中,通過該模塊可以向學生直觀展現序列運算后的結果,例如序列的長度、幅值等。通過設置不同序列,還可以進行結果對比,加深學生對該知識點的理解。
(2)序列傅里葉變換:點擊菜單欄中的“DTFT與DFT分析”按鍵,可以得到序列幅度譜和相位譜,DTFT的數字頻率等分間隔以及DFT的周期均可設置。通過該模塊的演示,學生能夠觀察序列連續譜DTFT和離散譜DFT的關系,由兩者幅度譜和相位譜對比反映出DTFT與DFT的物理意義。
(3)卷積循環移位:點擊菜單欄中的“卷積”按鍵,可得到二級菜單——“線性卷積”和“圓周卷積”,通過設定圓周卷積的長度可展示兩種卷積的關系,即當圓周卷積長度大于等于線性卷積長度時,兩者相等,以此幫助學生直觀地理解循環卷積的本質,同時增加教學的趣味性。
(4)信號采樣與重構:通過下拉菜單選擇不同的抽樣頻率,學生由此可觀察抽樣信號與頻譜以及原連續信號與頻譜之間的關系,從而掌握時域與頻域的對應關系,理解信號抽樣過程與恢復過程。
(5)數字濾波器設計:點擊菜單欄中的“數字濾波器設計”按鍵,可得到下拉菜單,分為“IIR數字濾波器設計”和“FIR數字濾波器設計”。通過設置濾波器參數,可執行IIR模擬濾波器的設計以及觀察模擬濾波器映射為數字濾波器的實現過程;在“FIR數字濾波器設計”中,可通過窗函數法直接呈現FIR濾波器線性相位及其在濾波器中的作用。由此,將抽象的概念直觀表示,便于學生理解。
(6)語音信號處理:點擊菜單欄中的“語音信號處理”按鍵,選擇系統自帶的音頻文件,再分別選擇低通、高通或帶通濾波器實現對原音頻信息的濾波,可得到不同的音頻處理結果。分析濾波后的音頻信息,可使學生明白濾波器的濾波原理;設置濾波器不同的參數來實現結果的對比分析,可使學生將數字信號處理理論知識與實際一維信號(音頻信號)處理知識相融合;而且案例分析可使學生更好地理解序列傅里葉變換、濾波器等相關理論的實際應用問題。
本系統與現有的數字信號處理演示系統相比,具有以下特點。
(1)演示系統操作方便。本系統可生成exe可執行文件,各模塊功能強大,參數可任意設置,結果顯示快速、直觀,方便課堂演示。
(2)功能齊全。本系統基本涵蓋了“數字信號處理”課程的主要教學內容,并設計了語音信號處理綜合案例,使學生能夠將所學基本理論應用到實際問題中,加深對理論知識的理解。
(3)便于二次開發。本系統不僅可以作為在線課堂演示系統,還可根據學生以及實驗課程需要,實現系統的二次開發,方便學生自學和實驗。
數字信號處理教學演示系統的設計注重理論基礎和應用實例的結合。下面分別以“IIR數字濾波器設計”以及“語音信號處理”為例展示演示系統的操作過程及效果。
2.1.1 IIR數字濾波器設計原理
IIR數字濾波器設計屬于對濾波器理論的應用。采用間接設計法根據設計指標設計相應的模擬濾波器,并將模擬濾波器映射成數字濾波器。模擬濾波器常采用巴特沃斯和切比雪夫原型濾波器(包括切比雪夫Ⅰ型和切比雪夫Π型),其中,N階巴特沃斯模擬低通濾波器的幅度平方函數為:
(1)
式中,N為濾波器的階數,Ωc為3 dB截止頻率,Ω是角頻率。
N階切比雪夫Ⅰ型模擬低通濾波器的幅度平方函數為:
(2)

模擬濾波器到數字濾波器的映射可采用脈沖響應不變法或雙線性變換法獲取最終的數字濾波器。
2.1.2 IIR數字濾波器設計內容
在本演示系統中,為了方便學生直觀了解IIR數字濾波器的設計結果,分別在下列四個方面進行了設計。
(1)在設計方法上,設計了雙線性變換法和脈沖響應不變法(如圖3所示),用于模擬域到數字域的映射。

圖3 IIR數字濾波器設計方法選擇對話框
(2)在濾波器的類型上,構造了低通、高通、帶通、帶阻四種經典數字濾波器(如圖4所示),以方便觀察四種濾波器的濾波特點。

圖4 IIR數字濾波器設計類型選擇對話框
(3)在模擬原型濾波器上,選用巴特沃斯、切比雪夫I型和II型以及橢圓濾波器(如圖5所示),選擇不同的原型濾波器得到的數字濾波器在時域上略有不同,可進行對比分析。

圖5 IIR數字濾波器設計模擬原型濾波器選擇對話框
(4)在參數選擇上,可按要求設置通帶最大衰減αp,阻帶最小衰減αs,通帶頻率ωp,阻帶頻率ωs以及采樣頻率Fs。設置不同參數可以得到具有不同頻率的截止濾波器。以上功能均可在相應位置上通過下拉按鈕選擇得出,如圖6所示。

圖6 IIR數字濾波器設計參數選擇對話框
2.1.3 操作過程及處理結果演示
首先點擊菜單欄“數字濾波器設計”,出現下拉菜單;然后選擇“IIR數字濾波器設計”,即出現圖7;設置參數后,點擊“確定”按鍵,出現圖8,顯示設計結果。若調整參數設置,可將結果顯示在同一幅結果圖中,方便對比,圖9是分別采用雙線性變換法和脈沖響應不變法所得到的低通數字濾波器的設計結果。

圖7 IIR數字濾波器設計選擇對話框

圖8 切比雪夫I型低通濾波器振幅和相位波形

圖9 兩種方法設計切比雪夫I型低通數字濾波器結果對比圖
2.2.1 語音信號處理原理
語音信號處理屬于對數字信號處理基礎理論的應用,其基本原理是對輸入信號進行濾波,讓輸入信號中的有用頻率成分以較高的保真度通過,濾除(阻止)某些無用的頻率成分,實現對輸入信號的選頻處理。
由于IIR數字濾波器的最大缺點是不容易實現線性相位,而語音、圖像、數據通信等系統普遍要求數字濾波器具有線性相位特性,FIR數字濾波器正是因為具有線性相位特性而獲得廣泛的應用。另外,FIR數字濾波器的H(z)是穩定的,這也是其另一個突出優點。因此在系統設計中,選用FIR數字濾波器實現語音信號的濾波處理。
采用窗函數法設計FIR數字濾波器,設計目標選擇有限長的h(n),使其傳輸函數Hd(ejω)滿足技術要求。對于理想低通數字濾波器,其傳輸函數H(ejω)應為:
(3)
單位采樣響應hd(n)可由Hd(ejω)經傅里葉反變換求得。求出的hd(n)為雙邊信號,因為該信號不是因果信號,在實際系統中無法實現。
窗函數法的目標就是找到一個有限長的h(n)來逼近無限長的hd(n)。
h(n)=hd(n)w(n)。
(4)
按照線性相位濾波器的工作要求,h(n)必須是偶對稱的。
2.2.2 語音信號處理的設計內容
使用FIR數字濾波器對語音信號進行處理,可以得出不同濾波器下信號對應的頻率響應;對濾波前后的信號進行對比,可分析信號的變化,并且能夠回放語音信號。
在本演示系統中,為了方便學生能夠直觀了解FIR數字濾波器的設計結果,分別在下列四個方面進行了設計。
(1)在語音信號文件上,有三種音頻文件可供選擇(如圖10所示),并可任意替換音頻文件。

圖10 語音信號文件選擇對話框
(2)在FIR數字濾波器設計類型上,設計了低通、高通、帶通三種經典數字濾波器(如圖11所示),可清楚觀察三種濾波器的濾波特點。

圖11 FIR數字濾波器設計類型選擇對話框
(3)在窗函數上,可選用矩形窗、三角窗、漢寧窗、哈明窗、Blackman窗五種窗函數(如圖12所示),選擇不同的窗函數得到的數字濾波器在時域上略有不同,可進行對比分析。

圖12 FIR數字濾波器設計窗函數選擇對話框
(4)在參數選擇上,可按要求設置通帶最大衰減αp,阻帶最小衰減αs,通帶頻率ωp,阻帶頻率ωs以及采樣頻率Fs。設置不同參數可以得到具有不同頻率的截止濾波器。以上功能均可在相應位置上通過下拉按鈕選擇得出,如圖13所示。

圖13 FIR數字濾波器設計參數選擇對話框
2.2.3 操作過程及處理結果演示
首先點擊菜單欄中的“數字濾波器設計”,出現下拉菜單;然后選擇“FIR數字濾波器設計”,即出現語音信號處理選擇對話框(圖14);設置參數后,點擊“確定”按鍵,出現圖15和圖16,顯示設計的結果,其中圖15顯示的是低通數字濾波器的設計結果,圖16是語音信號濾波處理后的結果。

圖14 語音信號處理選擇對話框

圖15 低通數字濾波器的幅頻響應

圖16 原始波形和頻譜經低通數字濾波器濾波后的波形和頻譜
由圖16可見,原始信號濾波前后波形上有差異,但無規律可循;而濾波后的頻譜只剩下低頻成分,與濾波前頻譜差異明顯。通過語音的回放可以發現,濾波前信號清晰,保真度高,而濾波后的信號低沉,存在較嚴重的失真。這是因為語音信號經過低通數字濾波器濾波后濾除了信號的高頻成分,導致信號出現失真現象。3 結語
基于Matlab GUI的數字信號處理教學演示系統具有用戶界面友好、交互性強﹑易于擴展等特點。該系統用于輔助性教學,可使理論講授變得可視化,學生能夠直觀地觀察信號運算及處理過程,并可對處理結果進行分析、討論,因此,該系統的應用可增強學生對理論知識的理解,激發學生學習的興趣﹐而且可提升教學效果。