陰艷麗
(遼寧省盤錦市遼河油田通信公司,遼寧 盤錦 124010)
正弦交流信號與方波信號是兩種應用極為廣泛的信號,它們通常作振蕩電路產生的,然后將得到的正弦波經過電壓比較器或積分電路,則可輸出一個方波信號。正弦波振蕩電路是一。在MATLAB 中,[y,fs,bits]=wavread('Blip',[N1 N2]);用于讀取語音,采樣值放在向量y 中,fs 表示采樣頻率(Hz),bits 表示采樣位數。[N1 N2]表示讀取從N1點到N2點的值(若只有一個N的點則表示讀取前N點的采樣值)。sound(x,fs,bits);用于對聲音的回放。向量y 則就代表了一個信號(也即一個復雜的“函數表達式”)也就是說可以像處理一個信號表達式一樣處理這個聲音信號。
1.1 GUI設計模板
在MATLAB 主窗口中,選擇File 菜單中的New 菜單項,再選擇其中的GUI 命令,就會顯示圖形用戶界面的設計模板。MATLAB為GUI設計一共準備了4 種模板,分別是Blank GUI(默認)、GUI with Uicontrols(帶控件對象的GUI 模板)、GUI with Axes and Menu(帶坐標軸與菜單的GUI 模板)與Modal Question Dialog(帶模式問話對話框的GUI 模板)。當用戶選擇不同的模板時,在GUI設計模板界面的右邊就會顯示出與該模板對應的GUI 圖形。
1.2 GUI設計窗口
在GUI設計模板中選中一個模板,然后單擊OK 按鈕,就會顯示GUI設計窗口。選擇不同的GUI設計模式時,在GUI設計窗口中顯示的結果是不一樣的。GUI設計窗口由菜單欄、工具欄、控件工具欄以及圖形對象設計區(qū)等部分組成。GUI設計窗口的菜單欄有 File、Edit、View、Layout、Tools和Help 6個菜單項,使用其中的命令可以完成圖形用戶界面的設計操作。
1.3 GUI設計窗口的基本操作
在GUI設計窗口創(chuàng)建圖形對象后,通過雙擊該對象,就會顯示該對象的屬性編輯器。例如,創(chuàng)建一個Push Button 對象,并設計該對象的屬性值。下面的一段程序是語音信號在MATLAB中的最簡單表現,它實現了語音的讀入打開,以及繪出了語音信號的波形頻譜圖。
下面的一段程序是語音信號在MATLAB中的最簡單表現,它實現了語音的讀入打開,以及繪出了語音信號的波形頻譜圖。
2.1 語音信號的讀入與打開
[x,fs,bits]=wavread('ding.wav',[10245120]);
sound(x,fs,bits);
X=fft(x,4096);
magX=abs(X);
angX=angle(X);
subplot(221);plot(x);title('原始信號波形');
subplot(222);plot(X);title('原始信號頻譜');
subplot(223);plot(magX);title('原始信號幅值');
subplot(224);plot(angX);title('原始信號相位');
2.2 語音信號的定點分析
已知一個語音信號,數據采樣頻率為100Hz,試分別繪制N=128點DFT的幅頻圖和N=1024點DFT 幅頻圖。編程如下:
MATLAB 中圖形用戶界面的制作有兩種方法:M 文件和GUIDE,本設計采用GUIDE的方法制作GUI。
3.1 新建一個空白GUI 模板:進入MATLAB程序界面以后執(zhí)行File→New→GUI 過程,即可進入
3.2 選擇空白模板選項條,單擊OK,一個空白GUI 模板生成
3.3 拖拉白色框的右下角調整界面大小,現在就可以開始設計GUI 功能界面了。從左邊控件框選擇所需要的控件放置在GUI 面板中,然后對各個控件進行編輯,包括位置、大小、顏色、名稱以及編寫回調函數等。本設計主要用到下拉菜單、坐標系、框架和按鈕,現分別介紹。
3.4 按鈕設計:按鈕鍵又稱命令按鈕或按鈕,是小的長方形屏幕對象,常常在對象本身標有文本。將鼠標指針移至對象,單擊鼠標按鈕執(zhí)行由回調字符串所定義的動作。單擊空間框左側的Push Button 按鈕,在圖形編輯框中確定其位置后單擊鼠標左鍵即可放置現在開始編寫回調函數,確定按鈕功能。在按鈕上單擊鼠標右鍵,選擇view-callbacks→callback 即可在M 文件中找到該按鈕的回調函數位置。然后編寫功能函數,本設計中該按鈕的功能是繪制原始波形,那么只需要讀取語音信號并畫出波形。
3.5 坐標系設計:坐標軸對象是許多圖形對象的父對象,每一個可視化顯示用戶數據的圖形窗口都包含一個或多個坐標軸對象。坐標軸對象確定了圖形窗口的坐標系統(tǒng),所有繪圖函數都會使用當前坐標軸對象或創(chuàng)建一個新的坐標軸對象,用于確定其繪圖數據點在圖形中的位置。單擊空間框左側的Axes 按鈕,在圖形編輯框中確定其位置后單擊鼠標左鍵即可放置
3.6 框架設計:框架對象僅是帶色彩的矩形區(qū)域,框架提供了視覺的分隔性,框架的style 屬性值是Frame。在其他對象放入框架之前,框架應事先定義,否則框架可能覆蓋控制框使他們不可見。語音信號處理是語音學與數字信號處理技術相結合的交叉學科,課題在這里不討論語音學,而是將語音當做一種特殊的信號,即一種“復雜向量”來看待。也就是說,課題更多的還是體現了數字信號處理技術。用到了處理數字信號的強有力工具MATLAB,通過MATLAB 里幾個命令函數的調用,很輕易的在實際化語音與數字信號的理論之間搭了一座橋。我們可以像給一般信號做頻譜分析一樣,來給語音信號做頻譜分析,也可以較容易的用數字濾波器來對語音進行濾波處理。利用MATLAB的gui 界面設計。設計出了一個簡易的用戶應用界面,可以讓人實現界面操作。更加方便的進行語音的頻譜分析與濾波處理。
[1] 王備戰(zhàn).基于KM的電子政務技術的研究與實現[D].西北工業(yè)大學,2003.
[2] 付中華.說話人識別系統(tǒng)魯棒性研究[D].西北工業(yè)大學,2004.
[3] 蘇宏濤.基于統(tǒng)計特征的人臉識別技術研究[D].西北工業(yè)大學,2004.