4.2.1 Wavelet liên tục CWT
Wavelet là những hàm cơ sở mn(t) liên tục theo thời gian. Cơ sở là tập các hàm độc lập tuyến tính dùng tạo ra hàm f(t) nào đó:
Công thức 4.2 f(t) = tổ hợp các hàm cơ sở = , mn mn m n b t
Tính chất đặc biệt của cơ sở wavelet là tất cả các hàm mn(t)này được xây dựng từ một wavelet mẹ (t). Wavelet này là một sóng nhỏ được định vị, thay vì dao động mãi mãi, nó suy giảm nhanh xuống không. Thông thường nó bắt đầu thời điểm t = 0 và kết thúc tại t = N.
Wavelet dịch 0n(t) bắt đầu tại t = n và kết thúc tại t = n + N, đồ thị của chúng được dịch sang phải n lần. Wavelet tỷ lệ m0(t) bắt đầu tại t = 0 và kết thúc tại t = N.2m, đồ thị của chúng được nén lại 2m lần.
Hình 4.5. Wavelet tỉ lệ
Một wavelet thuần mn(t) được nén lại 2m lần và dịch n lần
Công thức 4.3
2m
mn t t n
Một thuộc tính nổi bật của wavelet là tính trực giao (orthogonality). Các wavelet trực giao khi tính vô hướng của chúng bằng không.
n mn MN m t t dt
= tích vô hướng của mn và MN(t) = 0
Nhờ đó, có thể tính được hệ số bmn một cách đơn giản hơn: nhân f(t) trong biểu thức (4.2) với MN(t) và lấy tích phân ta được:
Công thức 4.4 2 MN MN f t t dt t dt
Nhờ tính trực giao, biểu thức (4.4) loại bỏ tất chuyển các tích phân ** với
MN, trừ trường hợp m = M và n = N, tương ứng sẽ tạo ra thành phần (MN(t))2. Khi đó bMN là tỷ số của hai tích phân trong biểu thức (4.4).
Năm bước để thực hiện CWT
Biến đổi Wavelet liên tục là tổng trên suốt khoảng thời gian của tín hiệu được nhân bởi phiên bản tỉ lệ và dịch của Wavelet. Quá trình này tạo ra các hệ số Wavelet là hàm của tỉ lệ và vị trí. Có năm bước để tạo ra CWT:
Bước 1, Lấy một Wavelet và so sánh với khởi đầu của một tín hiệu nguyên thủy.
Bước 2, Tính toán giá trị C, đặc trưng cho tương quan gần của Wavelet với đoạn tín hiệu này: C càng lớn, càng có sự tương tự. Chính xác hơn, nếu năng lượng của tín hiệu và Wavelet là bằng nhau, C có thể hiểu là hệ số tương quan. Kết quả sẽ phụ thuộc vào Wavelet mẹ.
Hình 4.6 Bước 1, So sánh wavelet với tín hiệu nguyên thủy
Bước 3, Dịch Wavelet về phía bên phải và lặp lại bước 1 và 2 cho đến khi hết tín hiệu
Hình 4.7 Bước 2, Dịch wavelet
Bước 4. Định tỉ lệ kéo dãn Wavelet là lặp lại tự bước 1 đến bước 3
Hình 4.8 Bước 4, định tỉ lệ Bước 5. Lặp lại các bước từ 1 đến 4 cho mọi tỉ lệ.
Sau khi hoàn thành, ta sẽ có các hệ số ở các tỉ lệ khác nhau bởi các đoạn khác nhau của tín hiệu. Các hệ số tạo thành kết quả hồi quy của tín hiệu nguyên
thủy thực hiện trên các Wavelet. Bằng cách nào để cảm nhận các hệ số đó? Ta có thể tạo ra đồ thị với trục x thể hiện vị trí của tín hiệu theo thời gian, trục y đại diện cho tỉ lệ, màu sắc ở mỗi điểm (x,y) đại diện cho độ lớn của hệ số C. Đồ thị này còn được gọi là Scalogram của biến đổi Wavelet liên tục.
Hình 4.9 Scalogram của CWT
Các hệ số của biến đổi Wavelet liên tục vẽ ra chính xác hình ảnh thời gian-tỉ lệ của tín hiệu.
4.2.2 Biến đổi Wavelet rời rạc DWT
Tính toán các hệ số Wavelet ở mọi tỷ lệ có thể là công việc mệt nhọc và phát sinh rất nhiểu dữ liệu. Ta có thể chọn một tập con các tỉ lệ và vị trí để giảm sự phức tạp tính toán, gọi là phép biến đổi rời rạc DWT. DWT được xây dung dựa trên cấu trúc đa phân giải MRA.
Lọc một tầng: Các xấp xỉ và chi tiết
Với nhiều tín hiệu, nội dung tần số thấp là phần quan trọng nhất. Nó xác định tín hiệu. Nội dung tần số cao, nói cách khác chỉ làm tăng thêm hương vị. Ví như giọng nói con người. Nếu tách bỏ phần cao tần, giọng có khác nhưng vẫn có thể hiểu những gì đã nói. Tuy nhiên nếu loại bỏ thành phần tần số thấp đến một mức nào đó sẽ không nghe rõ nữa. Trong phân tích wavelet thường nói đến các xấp xỉ và chi tiết. Xấp xỉ ứng với thành phần tỉ lệ cao, tần số thấp, chi tíêt là thành phần tần số cao, tỷ lệ thấp.
Hình 4.10 Lọc một tầng cho xấp xỉ và chi tiết
Tín hiệu nguyên thủy gốc S đi qua 2 bộ lọc có đặc tính bù nhau và phân tách thành 2 tín hiệu. Nếu thực hiện công việc này với tín hiệu số thực ta sẽ tăng gấp đôi số dữ liệu ban đầu. Giả sử có 1000 mẫu thì đầu ra mỗi đầu là 1000 mẫu và tổng cộng là 2000 mẫu. Vì vậy ta cần giảm tần số lẫy mẫu (downsampling) đễ giữ nguyên số mẫu.
Hình 4.11 Giảm tần số lấy mẫu
Phân tách đa mức
Quá trình phân tách có thể được lặp lại, với xấp xỉ hoàn toàn được tách ra, do đó một tín hiệu được tách thành nhiều thành phần phân giải thấp hơn. Nó được gọi là cây phân tách Wavelet.
Hình 4.12 Phân tách đa mức
Quá trình phân tách về lý thuyết có thể lặp lại mãi mãi. Trong thực té, sự phân tách có thể xử lý cho đến khi chi tiết riêng chứa một mẫu hoặc pixel. Trong thực hành, bạn chọn một số thích hợp các mức dựa trên tính tự nhiên của tín hiệu, hoặc là tiêu chuẩn thích hợp như Entropy.
Tái tạo Wavelet
Quá trình kết hợp các thành phần tín hiệu thành tín hiệu nguyên thủy gọi là quá trình tái tạo hay tổng hợp Wavelet ứng vói biến đổi Wavelet ngược IDWT
Hình 4.13 Tái tạo wavelet
Trong khi phân tích Wavelet bao hàm lọc và hạ mẫu, quá trình tái tạo Wavelet bao gồm sự tăng mẫu (Upsampling) và lọc.
Hình 4.14 Tăng mẫu
4.2.3 Biến đổi Wavelet gói
Phương pháp Wavelet gói là một sự mở rộng của phân tách Wavelet. Trong đó, phần xấp xỉ chính nó lại được phân thành xấp xỉ và chi tiết mức hai và quá trình cứ được lặp lại. Trong phân tách n mức, có n + 1 cách để phân tích hoặc mã hóa tín hiệu. Trong phân tích wavelet gói, các chi tiết cũng giống như các xấp xỉ là có thể phân tích. Cây phân tách Wavelet là một phần của cây nhị phân hoàn hảo.
4.3 Sử dụng biến đổi Wavelet để xử lý nhiễu và nâng cao chất lượng tiếng nói
4.3.1 Phương pháp truyền thống của Dohono và Johnstone
Nhiễu ảnh hưởng nhiều đến hiệu quả xử lý tín hiệu, ví dụ như nhận dạng tiếng nói trong môi trường thời gian thực. Có ba nhân tố chính của nhiễu đó là:
- Nhiễu thêm vào trong tín hiệu như tiếng quạt gió, ô tô, tàu hoả
- Nhiễu gắn liền với thiết bị ghi âm
- Sự biến đổi các mức tiếng nói sinh ra từ người nói (giọng yếu hay giọng khoẻ), sự thay đổi hướng hay khoảng cách đến micro,...
Vì vậy triệt nhiễu và nâng cao chất lượng tiếng nói là một bước quan trọng trong hệ thống nhận dạng tiếng nói, đặc biệt là nhận dạng thời gian thực.
Có nhiều phương pháp triệt nhiễu trong đó triệt nhiễu bằng wavelet (wavelet denosing) là một phương pháp mạnh được sử dụng rộng rãi trong thời gian gần đây.
Ta phân tích nhiễu của tín hiệu, sau đó là các hàm tương quan đặc tính xác suất, phổ, và các hàm phân phối. Về tổng thể, với một tín hiệu thời gian rời rạc một chiều các tần số cao ảnh hưởng tới các chi tiết ở mức đầu (giá trị nhỏ của j), trong
khi các tần số thấp ảnh hưởng tới các mức sâu nhất (các giá trị lớn của j) và các xấp xỉ kết hợp.
Mô hình chung cho tín hiệu nhiễu là
Công thức 4.5
Trong đó Sk là tín hiệu tiếng nói sạch, nk là nguồn nhiễu độc lập với phương sai k (n2 = 1) (giả sử nk là nhiễu trắng). Mục đích của wavelet denoising là tối ưu sai số trung bình phương E(s^, s2
)
Công thức 4.6
Ý tưởng của phương pháp
Sử dụng DWT để phân tách tín hiệu thành phần chi tiết và xấp xỉ. Phần xấp xỉ là thông tin quan trọng còn phần chi tiết là các thông tin đặc trưng và cũng đồng thời chứa nhiễu.
Khi những thành phần chi tiết nhỏ hơn một mức cho phép nào đó (gọi là ngưỡng) chúng ta có thể loại bỏ nó mà không làm ảnh hưởng nhiều đến tín hiệu ban đầu. Vì vậy ý tưởng lấy ngưỡng các hệ số wavelet là cách để loại bỏ những thành phần chi tiết không quan trọng được coi là nhiễu.
Nguyên tắc khử nhiễu
Bước 1. Phân tách: Chọn một Wavelet, chọn mức N. Tính phân tách Wavelet của tín hiệu s ở mức N.
Bước 2. Đặt ngưỡng các hệ số chi tiết: Với mỗi mức từ 1 đến N, chọn một ngưỡng và áp dụng đặt ngưỡng cho các hệ số chi tiết.
Bước 3. Tái tạo: Tính toán tái tạo Wavelet sử dụng các hệ số xấp xỉ ban đầu ở mức N và các hệ số chi tiết đã chỉnh sửa ở các mức 1 đến N. Hai điểm cần được định rõ là cách chọn ngưỡng và cách thực hiện định ngưỡng.
Đặt ngưỡng cứng hay ngưỡng mềm?
Cho t là biểu diễn ngưỡng. Tín hiệu ngưỡng cứng là x nếu x > T, là 0 nếu
x <= T. Tín hiệu ngưỡng mềm nếu sign(x -T) nếu x > 0 và là 0 nếu x <= T. T được xác định theo Dohono và Jonhstone [21]
Công thức 4.7
(độ lệch chuẩn )
Hình 4.15 Quá trình đặt ngưỡng với mức ngưỡng cứng với T=0.4.
4.3.2 Phương pháp khử nhiễu kết hợp kỹ thuật trừ phổ và wavelet
Hình 4.16. Sơ đồ khối hệ thống khử nhiễu kết hợp kỹ thuật trừ phổ và wavelet
a, Khối trừ phổ:
Nếu chúng ta biễu diễn tín hiệu tiếng nói s(k) và nhiễu là n(k) thì tín hiệu lẫn nhiễu là x(k)
Công thức 4.8
x(k) = s(k) + n(k)
Tín hiệu sau khi cửa sổ hoá là
0 1 -1 0 1 -1 -0.5 0.5 0 1 -1 0 1 -1 -0.5 0.5
Công thức 4.9
xw(k) = sw(k) + nw(k)
Phổ của tín hiệu lẫn nhiễu là
Công thức 4.10
2 2 2 * *
|Xw( ) |w |S ww( ) | |N ww( ) | S w N ww( ). w( )S w N ww( ). w( )
Nếu chúng ta cho rằng n(k) có trung bình bằng 0 và không tương quan với s(k) thì * *
( ). ( ) ( ). ( )
w w w w
S w N w S w N w tiếntới 0. Do vậy ta có
Công thức 4.11 2 2 2 | ( ) |S w |X w( ) | E|N w( ) | Công thức 4.12 2 2 2 2 | ( ) | | ( ) | | ( ) | 1 ( ) | E N w S w X w X w Công thức 4.13 2 2 | ( ) |S w |X w( ) | . ( )G w
Gọi G(w) là hệ số trọng số phổ. Như vậy có thể thấy rằng tín hiệu sau khi được loại trừ nhiễu phải dương nên biến đổi Wiener là
Công thức 4.14 G = Max 2 2 | ( ) | 1 , 0 ( ) | E N w X w
Sử dụng phương pháp VAD và phổ năng lượng được xác định theo công thức Công thức 4.15 2 2 1 2 1 .| ( )| (1 )| ( ) | _ _ 2 | ( )| | ( ) | n n N w X w No Voice Detected w N w Otherwise N w
Đơn giản hoá 4.14 bằng biến đổi hàm trọng số ta có
G = Max 1 ( ), ( ) PSD PSD N w X w
Với là hệ số ước lượng trên và là sàn phổ được chọn tương ứng. Việc lựa chọn các hệ số trên tiến hành qua thực nghiệm sao cho không làm biến dạng tín hiệu sau khi trừ phổ.
Việc lựa chọn tham số tương ứng với một trong 2 trường hợp đó là có tín hiệu và không có tín hiệu tiếng nói. Trong khoảng có tín hiệu tiếng nói để lấy được tiếng nói chất lượng thì ngưỡng trên cần chọn gần 1 và ngưỡng dưới được chọn lớn hơn 0.2. Giá trị thực nghiệm chọn ở đây là 0.9 và 0.5, trong khoảng lặng không có tín hiệu tiếng nói thì chọn >1, <0.2
Hình 4.17 Sơ đồ chi tiết khối trừ phổ
b, Khối biến đổi Wavelet (Wavelet transform): Sử dụng phân rã wavelet gói phân rã tín hiệu thành các băng tần critical. Sơ đồ thực thi dùng cấu trúc cây đa phân giải 6 mức, sử dụng các bộ lọc 16-tap FIR nhận được từ wavelet Deubechies.
Biến đổi wavelet WT được sử dụng để phân giải tín hiệu thành các băng con.
Công thức 4.17
trong đó {Cim} là các hệ số phân rã với i tương ứng với băng con, m ứng với vị trí trên trục thời gian. Với tín hiệu tiếng nói lấy mẫu 8KHz, kết quả phân rã là 18 băng con FFT Trừ phổ nhiễu IFFT Ước lượng phổ nhiễu x(n) X(w) S(w) s(n) |N(w)|
c, Khối ước lượng ngưỡng phụ thuộc thời gian – tần số (thereshold estimation): Phương pháp ước lượng ngưỡng truyền thống của Dohono – Johnstone chỉ phù hợp với nhiễu dừng hoặc biến đổi chậm. không thích hợp để khử nhiễu với tín hiệu tiếng nói . Phương pháp sử dụng ở đây của Qiang Fu [24] ước lượng độ lệch chuẩn cho mỗi bank con trên trục thời gian.
Điều đó được thực hiện bắt đầu bằng cách phân đoạn bank con thứ i của các hệ số được phân rã Cim thành các khung Lifrm và các đoạn L iseg . Gọi là mức nhiễu ước lượng của khung thứ p và bank thư i, được ước lượng bằng các hệ số đứng trước trong đoạn với . Trước hết ta sắp xếp các hệ số theo thứ tự . Với q là một số nguyên (0<q<1), hệ số lượng tử cho đoạn là . Nhiễu được ước lượng:
Công thức 4.18
Cuối cùng ngưỡng nhiễu được ước lượng là:
Công thức 4.19
Hình 4.18 Ước lượng ngưỡng cho khung thứ p và bank con thứ i.
Một vấn đề tồn tại là tiếng nói sau khi được tổng hợp lại gặp phải một hiệu ứng gọi là “musical noise” làm cho chất lượng tiếng nói không còn tự nhiên sau khi khử nhiễu. Để khắc phục, Ephraim và Malah đã phát triển một kỹ thuật đặt ngưỡng mềm mà thực nghiệm chứng tỏ khắc phục được hiện tượng “musical noise”.
Trong phần trước chúng ta gọi là ngưỡng ước lượng ban đầu cho khung thứ p và bank chon thứ i. Ta định nghĩa tỉ lệ hệ số trên ngưỡng tiền nghiệm CTR (Cofficient to Thershold Ratio) Rim
Công thức 4.20
CTR hậu nghiệm tương ứng
Công thức 4.21
Với là một hệ số có thể thay đổi để điều khiển mức độ “trừ” phổ. 0 < < 1, Với CTR tiền nghiệm và hậu nghiệm xác định như trên ta có công thức biểu diễn bộ lọc trừ phổ .
Công thức 4.22
áp dụng bộ lọc trừ phổ này cho các hệ số đã được phân rã ci
m ta có
Công thức 4.23
e, Khối biến đổi wavelet ngược: Tổng hợp lại tín hiệu tiếng nói bằng biến đổi wavelet ngược, tín hiệu đầu ra được tổng hợp là tín hiệu tiếng nói đã được triệt nhiễu và nâng cao chất lượng.
4.4 Ứng dụng biến đổi wavelet nhận dạng tiếng nói
4.4.1 Tổng quan
Biến đổi wavelet (WT) cung cấp một công cụ thay thế biến đổi Fourier (FT) truyền thống. Giản đồ tỉ lệ Scalogram sinh ra bởi WT có nhiều ưu điểm so với giản đồ phổ Spectrogram sinh ra bởi FT. Cả cấu trúc formant và cấu trúc hài (harmonic structure) của tín hiệu tiếng nói đều có thể quan sát trên giản đồ Scalogram, từ đó các nhà nghiên cứu nảy sinh ý tưởng WT có thể phù hợp trong việc phân tích tiếng nói để tìm ra các đặc trưng phục vụ nhận dạng tiếng nói. Biến đổi CWT gần đây đã được một số nhà nghiên cứu sử dụng trong nhận dạng âm tiết, từ rời rạc tiếng Anh [31], âm tiết, từ rời rạc và thanh điệu tiếng Việt [15]. Biến đổi DWT cũng được sử dụng để nhận dạng từ rời rạc tiếng Anh [26]. Các kết quả đã chứng minh rằng DWT thực thi tốt hơn LPC với các âm vô thanh tuy nhiên với nhận dạng từ rời rạc DWT kém hơn hẳn CWT và Mel-Scale Frequency Ceptra Cofficients (MFCC). Trong phần này, chúng ta nghiên cứu về phương pháp nhận dạng dùng DWT và CWT
4.4.2 Nhận dạng tiếng nói dùng biến đổi CWT
Cấu trúc CWT đơn giản hóa được gọi là SCWT được sử dụng rộng rãi trong