• 沒有找到結果。

2.2 聲源分離

3.1.2 參考電壓選擇電路

訊號經過放大之後,要經由 PIC18F4550 的 A/D 埠轉換為數位訊號。

因為後端用來作 A/D 轉換的單晶片 PIC18F4550 原本預設的 AD 範圍為 0~5V,但我們輸入的是有正負半周的聲音訊號,所以需要輸入適當的參考 電壓,這邊使用前端放大電路的直流正負 12V 供電,利用齊納二極體作出 分壓電路,拉出約+2V 及-2V 的參考電壓。其電路及實體圖如下:

3.1.2 單晶片

單晶片 單晶片 PIC18F4550 單晶片

訊號經過前端的放大及濾波之後,我們使用 Microchip 推出的單晶片 PIC18F4550,瑞昱科技所開發的實驗板來做訊號的收集,A/D 轉換,以及 USB 資料傳輸。

圖 3-7. 參考電壓選擇電路實體圖

圖 3-8. PIC18F4550 實驗板外觀

AD port USB port

圖 3-6. 參考電壓選擇電路圖

圖 3-9. PIC18F4550 硬體方塊圖

A/D port即為圖16中的RA0~RA5,經由前端電路放大後的訊號由RA0及 RA4輸入,參考電壓由RA2及RA3輸入做A/D轉換:

每筆資料儲存位元:8-bit。

Maximum Sampling Rate:8KHz。

Sampling Range:-2V~+2V。

以下列出較為重要的PIC 18F4550 硬體規格。

 Operating frequency up to 48MHz

 32 Kbytes Flash program memory

 5 bidirectional I/O ports

 USB2.0 Interface

 10-BIT ANALOG-TO-DIGITAL CONVERTER (A/D) MODULE

3.2 USB 傳輸裝置傳輸裝置傳輸裝置傳輸裝置

3.2.1 USB 通訊協定

通訊協定 通訊協定 通訊協定

USB 的通訊協定主要可以分為三種封包(Package):

1、執照封包(Token):指示型態與方向。包含了 PID、Address、Endpoint、

CRC。PID 包含 IN、OUT、Setup、SOF。位址跟端點提供接收裝置的位址 及接收的端點。CRC 檢測此封包是否接收正確。無論何種傳輸,每次傳輸 的第一個封包一定為執照封包。

(1)、IN:裝置送封包給主機。

(2)、OUT:主機送封包給裝置。

(3)、Setup:僅給控制傳輸使用,用來確認裝置要求。

(4)、SOF:每 1mS 發生一次,用來表示 USB Frame 的抵達。

2、資料封包(Data):實際上的傳輸資料。包含了 PID、Data、CRC。PID 包含 Data0、Data1。Data 則為實際上的傳輸資料。CRC 檢測此封包是否接 收正確。

(1)、Data0,Data1,兩種封包會交替傳送,透過主機內部的 Toggle 位 元狀態與 DATA PID 相比較,可偵測到錯誤的交握封包。

3、交握封包(Hand-Shake):USB 的傳輸狀態,有四種 PID,除了等時傳輸 之外,每次傳輸的最後一個封包必為交握封包。

(1)、ACK:成功。正確無誤的接收資料。

(2)、NAK:忙線。再試一次。

(3)、STALL:停滯。發生無法預料的問題,表示不瞭解裝置的需求。

(4)、NYET:端點忙線。資料傳輸成功,但端點尚未準備好接收下一 筆資料。

封包的接收及發送由 USB 介面處理。

3.2.2 USB 傳輸模式

傳輸模式 傳輸模式 傳輸模式

USB 系統提供了四種不同的傳輸模式:

1、 巨量傳輸(Bulk):突發性的傳輸模式。資料封包大小為 8、16、32、

64 位元組。除了資料封包之外另有交握封包(Hand-Shake Package),

及自動錯誤資料檢核機制(CRC),如資料傳送錯誤,可要求裝置重送 封包,確保資料的正確性。

2、 中斷傳輸(Interrupt):類似巨量傳輸,資料封包大小為 1~64 位元組。

高速的裝置中。需經由主機規則固定間隔詢問。

3、 等時傳輸(Isochronous):在固定的時間傳出封包,主要使用在音頻與 影 像 等 資 料 流 中 。 為 了 確 保 封 包 可 以 在 固 定 的 時 間 送 出 , 無 Hand-Shaking 封包,僅具有 CRC 錯誤檢核,資料傳輸錯誤亦不再 重送封包。時間是最重要的要求條件。

4、 控制傳輸(Control):用來配置及傳送命令給裝置,確認裝置要求。

而在實驗平臺的架設中,只用到控制傳輸及巨量傳輸。

封包大小(Byte) 時間 資 料 檢 查

應用

巨量傳輸 8、16、32、64 盡快完成 有 儲存裝置、印表機 中斷傳輸 1~64 1~255ms 有 滑鼠、鍵盤

等時傳輸 1~1024 1ms 沒有 影像

控制傳輸 盡快完成 有 命令

表 3-1. USB 四種傳輸模式比較

3.4.3 USB 裝置韌體

裝置韌體 裝置韌體 裝置韌體

USB 裝置韌體流程圖:

No

致能計時中斷 致能控制傳輸中斷

START

將 USB 裝置的設定 回傳給主機

Yes 等待主機端輸出

控制傳輸訊號

等待中斷發生

No

做 A/D 轉換,並將轉換結果 存進 Buffer

檢查 Buffer 是否已滿

將 Buffer 中的資料 利用巨量傳輸傳回主機 圖 3-11. USB 裝置韌體流程圖

Yes

No

當韌體燒入 USB 裝置的 RAM 之後,以 USB 接線與主機連接。主機 經由控制傳輸要求 USB 裝置回傳裝置描述元,主機由裝置描述元的資訊,

確認 USB 裝置,並使用相對應的驅動程式來驅動 USB 裝置,回傳的裝置 描述元主要有下列幾項:

1、 Device Descriptor:規格版本、裝置群組、VID、PID、配置數目。

2、 Configuration Descriptor:端點長度、界面數目、界面數值、電源屬性、

所需電源。

3、 Interface Descriptors:切換設定、端點數目、界面群組。

4、 Endpoint Descriptors:使用端點及方向、端點型態、最大封包大小、

輪詢間隔。

5、 String Descriptors:公司、產品名稱。

實驗平台 PIC18F4550 經由控制傳輸回傳裝置描述元,即可成功讓主 機確認 USB 裝置,使用相對應的驅動程式。主機成功確認 USB 裝置之後,

啟動計時中斷,計時中斷的產生頻率為 8KHz。

當計時中斷發生時,PIC18F4550 控制將兩聲道之輸入訊號做 A/D 轉 換,並將轉換結果存入 buffer 中;檢查是否已經將 buffer 填滿 64byte,如 未填滿則繼續等待計時中斷發生,如果已經填滿 64byte 就將 buffer 內的資 料以巨量傳輸的方式傳回主機。

每次完整的巨量傳輸資料,由 32 次計時中斷,將兩個聲道,每筆 1Byte 的語音訊號存至 buffer 內,因此傳輸的資料長度為 64Bytes,傳輸速率為

64 16 /

1 *32 8

KB s K

=

3.3 電腦端軟體實現電腦端軟體實現電腦端軟體實現電腦端軟體實現 3.3.1 軟體流程

軟體流程 軟體流程 軟體流程

START

設定錄音長度

設定計算轉移函數比值資料區段

按下開始錄音按鍵

透過 USB 接收語音資 料

讀取檔案

資料前處理:

將平均值拉回 0 10Hz 之高通濾波

依設定之資料區段 計算轉移函數比值

利用算出的轉移函數比值 做語音資料的純化處理

圖 3-12 軟體實現流程圖

3.3.2 使用流程

使用流程 使用流程 使用流程

使用 DEMO.exe 錄音

使用 shifttest2.m 將聲音檔案之平均值移至 0

並通過 10Hz 之高通濾波 寫入 2.txt、4.txt

雜訊 語音

使用 shifttest3.m 將聲音檔案之平均值移至 0

並通過 10Hz 之高通濾波 寫入 1.txt、3.txt

使用 shift_ADD.m 將語音及雜訊先經過平移

再相加 寫入 5.txt、6.txt

直接寫入 5.txt、

6.txt

使用 TFRatio.m 由 2.txt、4.txt 算出 Transfer Function Ratio

使用 directprocess.m 將 5.txt、6.txt 經由 TFRatio.m

算出的 H 處理 並寫入 result.txt

受干擾的 語音 START

圖 3-13 使用流程圖

第四章 第四章 第四章

第四章 實驗結果與結論 實驗結果與結論 實驗結果與結論 實驗結果與結論

在室內環境下,測試雜訊大小、訊號雜訊比、雜訊種類與聲源分離效 果的關係:

4.1 在不同訊號雜訊比下的實驗結果分析在不同訊號雜訊比下的實驗結果分析在不同訊號雜訊比下的實驗結果分析在不同訊號雜訊比下的實驗結果分析

為了探討在不同的訊噪比及不同的雜訊大小對實驗效果的影響,以下 在噪音極大、噪音較小、噪音極小(各相差約 5dB)三種狀況,針對各種不 同的 SNR 來做實驗分析:

如上圖,在距離雙聲道麥克風約 20 公分處的左右各 30 度位置分別放 上喇叭(噪音源)以及發出使用者語音,測試各種情況下的聲源分離效果,

下頁表 4-1 為背景音樂極大時下的實驗結果:

播放背景音樂

語音 約20cm

USB

約30度

約20cm

約30度

圖 4-1 SNR 比與雜訊大小對純化效果影響測試實驗環境示意圖

實驗 input TFR TFR Dahl Dahl

NR(noise reduction)以及 SNR(signal to noise ratio)來測量實驗的效果,其定 義如下:

表 4-1 中列出了兩種不同 SNR 的輸入訊號下之程式執行結果,並一併 列出 Dahl 之結果以作為對照,下圖 4-2 為實驗 1 之實際波形圖,圖中可 以看出,兩種方法都可以將受到雜訊嚴重干擾的語音訊號做純化的動作,

但 TFR(transfer function ratio)的方法在抑制雜訊的方面似乎效果較好。再 觀察表 4-1 可以證明此一說法,TFR 的方法在 NR(noise reduction)上,效果 比 Dahl 好上很多,無論輸入的 SNR 高低,皆可維持約 13dB 左右的 NR 值;在 SNR 的表現上,雖然訊號會略為失真,但因其優異的雜訊抑制能力,

使得 TFR 在 SNR 的表現仍然比 Dahl 來得出色。

原語音訊號 受雜訊干擾

純化後(Dahl) 純化後(TFR)

圖 4-2 純化結果比較圖(背景音樂極大)

實驗 input TFR TFR Dahl Dahl

編號 SNR NR SNR NR SNR

3 -8.2671 13.8239 -5.0285 9.3798 -7.5028 4 -3.2672 13.4725 -4.3226 8.3288 -6.6131 5 1.7327 13.4756 -3.7099 7.4792 -5.8671

上表 4-2 為背景音樂較小,約為-23dB 時的實驗結果,前面提到噪音極 大的情況下,因為噪音音量已經接近錄音設備之上限,所以沒有做 SNR 為正的情況的實驗,這邊針對 SNR 約為-8.2dB、-3.2dB、+1.7dB 三種情況 下討論其實驗結果:由表 4-2 可以再次看出,無論輸入訊號之 SNR 值為正 值或負值,TFR 的方法都可以維持在約 13dB 的 NR 值,持續展現其優異 的雜訊抑制能力,相對的 Dahl 就在輸入 SNR 值較大時,也就是輸入訊號 中雜訊就比語音訊號相對較小的時候,抑制雜訊的能力就稍微比較差了,

在 NR 上和 TFR 有約 6dB 的差距。

純化後(TFR)

原語音訊號 受雜訊干擾

純化後(Dahl)

表 4-2 背景音樂較小時的實驗結果

圖 4-3 純化結果比較圖(背景音樂較小)

實驗 input TFR TFR Dahl Dahl

編號 SNR NR SNR NR SNR

6 -8.3086 13.4675 -5.1736 9.2411 -7.5826 7 -3.3088 13.2194 -4.3895 8.1388 -6.7312 8 1.6911 13.2576 -3.7462 7.3884 -5.9206

上表 4-3 為背景音樂極小,約為-28dB 時的實驗數據,綜合觀察表 4-1、表 4-2、表 4-3,TFR 的方法無論背景音樂大小及輸入的 SNR 值,在雜訊抑制,

也就是 NR 上都有 13dB 以上的能力,雖然因為還是會對語音訊號多少造 成一點失真的情形,所以在雜訊相對於語音訊號較小,也就是輸入 SNR 值較大,約為-3.3dB 及 1.7dB 時在 SNR 方面會有反而降低的情形,但因為 仍然可以大幅抑制背景雜訊,所以在 SNR 的表現上仍然是比 Dahl 要好一 些的。下圖 4-4 為表 4-3 中實驗 6 的實際聲音波形圖。

純化後(TFR)

原語音訊號 受雜訊干擾

純化後(Dahl)

表 4-3 背景音樂極小時的實驗結果

圖 4-4 純化結果比較圖(背景音樂極小)

4.2 不同雜訊種類下的實驗結果分析不同雜訊種類下的實驗結果分析不同雜訊種類下的實驗結果分析不同雜訊種類下的實驗結果分析 4.2.1 雜訊來源為非使用者的語音

雜訊來源為非使用者的語音 雜訊來源為非使用者的語音 雜訊來源為非使用者的語音

如上圖,將雜訊來源換成另一個非使用者之語音輸入,並測試聲源分離的 效果是否會因而降低。

下頁圖 4-6 為此實驗之實際聲音檔案波形圖,圖 4-6 中左上圖為要留 下的使用者語音,右上圖則是要抑制的語音 2, 圖中可以看出,TFR 及 Dahl 兩種方法皆欲將右上的語音 2 抑制而留下左上的語音 1,但 TFR 的效 果較為明顯,再觀察接下來的表 4-4,在干擾源為較單純的語音 2 下,TFR 的 NR 效果又比干擾源為背景音樂更加明顯,達到約 17dB,皆比 Dahl 好 了約 8dB 以上。

語音2

語音1 約20cm

USB

約30度

約20cm 約30度

圖 4-5 以人聲為雜訊來源實驗環境示意圖

實驗 noise input TFR TFR Dahl Dahl

編號 energy SNR NR SNR NR SNR

1 -3.9798 17.1904 -3.8278 9.5149 -6.3004 2

-18dB

1.0201 17.191 -3.361 8.4397 -5.8099

3 -3.9797 17.19 -3.828 9.517 -6.2992

4 1.0202 17.1893 -3.3619 8.4402 -5.8094 5

-23dB

6.0201 17.1901 -3.0447 7.8476 -5.2886 6 -3.9796 17.1855 -3.8295 9.5159 -6.2987 7 1.0202 17.1872 -3.3624 8.4387 -5.8105 8

-28dB

6.0201 17.1868 -3.0457 7.8484 -5.2875 TFR

Dahl

圖 4-6 干擾源為人聲之純化結果比較圖

圖 4-6 干擾源為人聲之純化結果比較圖

相關文件