Tải bản đầy đủ - 0 (trang)
Chương 2: Xử lý tín hiệu tiếng nói

Chương 2: Xử lý tín hiệu tiếng nói

Tải bản đầy đủ - 0trang

Với x[n] tín hiệu vào, y[n] tín hiệu ra, w[n] hàm cửa số, h[n] thường là đáp ứng xung

của hệ thống ( nếu xét các biến trên trong một hệ thống cụ thể)

Biến đổi fourier trong khoảng thời gian hữu hạn:



Nếu ta có n cố định thì:



Hai biểu thức trên có ý nghĩa chỉ khi Xn(e^jw) là biến đổi fourier của tín hiệu liên tục

bên ngồi cửa sổ w[n] hoặc = 0.

Có các loại cửa số là: chữ nhật,hanning, hamming, tam giác…

Discrete of fourier transform

Do biến đổi discrete time fourier transform là biến đổi từ tín hiệu vơ hạn nhưng trong

thực tế tín hiệu là hữu hạn nên ta phải dùng đến phép biến đổi DFT

Tín hiệu vào x[n] rời rạc hữu hạn



7



Với M>=N và những điểm lớn hơn N đều là khơng ta được tín hiệu trong miền tần số

X[k]

Biến đổi sang miền cepstral

Mục đích nghiên cứu phép nhân chập. ( giúp tìm formant ) tìm các đặc tính của tín

hiệu tiếng nói tạo ra.

Ta có x1*x2= X1.X2=X(z) trong miền Z

Lấy logarithm của X(z) ta được

Ký hiệu các X1,X2,x1,x2 tương tự X(z) mũ phía trên.

Nếu X ˆ (z) là giá trị duy nhất hợp lệ của biến đổi z thì

ta có:

Chuyển trang biến đổi fourier z=e^-jw

Suy ra



Biến đổi fourier ngược ta được:



C[n] chính là biến đổi cepstrum.

Với trường hợp biến đổi fourier là DFT ta thấy:



Ứng dụng vào trong tín hiệu tiếng nói

Mơ hình tín hiệu tiếng nói:

Âm hữu thanh:



Âm vơ thanh:



8



Từ mơ hình ta phân tích phép nhân chập bằng cách nhân cepstrum với một cửa sổ

phù hợp:

Với e D∗ là đặc trưng của hệ thống chuyển đổi sang phép nhân chập.



Hệ thống nhận dạng tiếng nói sử dụng cách biểu diễn tín hiệu như một tập các hệ số

cepstral



2.2



Trích chọn đặc trưng MFCC



2.2.1 Tổng quan về MFCC



Hình 4: Tính 39 MFCC từ tín hiệu vào

Tín hiệu tiếng nói dạng sóng âm được xử lý chuyển thành tín hiệu điện tương

tự, tín hiệu này được chuyển sang dạng tín hiệu số qua hai bước lấy mẫu và lượng

tử hóa (q trình lấy mẫu phải thỏa mãn tiêu chuẩn Nyquist) rồi sau đó được đưa

vào hệ thống nhận dạng tiếng nói.

Trong hệ thống nhận dạng tín hiệu tiếng nói sẽ được phân tích thơng qua

q trình trích chọn đặc trưng để lấy ra các đặc trưng của tiếng nói đưa vào hệ

thống nhận dạng. Ở đây chúng ta sử dụng phương pháp trích chọn đặc trưng MFCC

gồm có các cơng đoạn được biểu diễn trên hình.

Đầu ra của MFCC là 39 đặc trưng, 12 hệ số ceptral (hệ số MFCC),12 deltas ceptral,

12 deltas deltas cepstral, 1 energy, 1 delta energy, 1 delta delta energy

2.2.2 Pre-emphasis

Do cấu trúc đặc biệt của môi trường thanh quản nên mức năng lượng (cường

độ sóng) ở tần số cao suy giảm hơn so với tần số thấp mà ở tần số cao thông tin về

Formant có nhiều giá trị cho acoustic model làm tăng độ chính xác của nhận dạng

phone do đó ta cần làm tăng energy của tín hiệu ở tần số cao, quá trình này được

gọi là preemphasis

Pre-emphasis sử dụng một bộ lọc nhận tín hiệu ở đầu vào và đầu ra là tín

hiệu mong muốn :

Đầu vào: x[n]

Đầu ra: y[n] = x[n] + αx[n-1] với 0,9≤α≤1

H(z) = 1 – αz^-1

9



2.2.3 Cửa sổ hóa

Tín hiệu tiếng nói là non-stationary signal do đó các thuộc tính thống kê

khơng phải là hằng số thay vào đó với giả thuyết tín hiệu là stationary trong một

khoảng thời gian đủ ngắn ta có sẽ có được những đại lượng đặc trưng thống kê coi

như không đổi Do đó ta có thể lấy được những đặc trưng riêng biệt của một

subphone trong một thời gian ngắn.

Để trích được tín hiệu trong khoảng thời gian ngắn ta sử dụng một cửa sổ

nhỏ và tín hiệu được tríc ra bởi cửa sổ này gọi là frame. Trên toàn bộ đoạn tín hiệu

chúng ta sẽ trích thành T frame. Đặc trưc của q trình trích rút này là bộ 3 tham số:

độ rộng frame, hình dạng cửa sổ, frameshift.

Ta sẽ lấy T frame từ tín hiệu, mỗi frame này sẽ có độ ơng trong khoảng 20-40

ms trung bình là 30ms, lấy liên tiếp các frame sao cho frameshift cách nhau chừng

10ms. Ta lấy ra mỗi frame từ tín hiệu bằng cách nhân với các hàm cửa sổ

y[n]=w[n]s[n]

Thông thường sử dụng cửa sổ hamming

2𝜋𝑛

0,54



0,46

cos

(

);0 ≤ 𝑛 ≤ 𝑁 − 1

w[n] = {

𝑁

Với N là số mẫu trong frame



0



Mỗi frame được đặc trưng bởi một bộ thông số và bộ thông số này chính là một

quan sát đầu vào ot của HMM



Hình 5: quá trình nhân với hàm cửa sổ

10



2.2.4 Biến đổi DFT

Cơng thức tính DFT



−𝑗2𝜋𝑘𝑛/𝑁

X[k] = ∑𝑁−1

𝑛=0 𝑥[𝑛]𝑒



X[k] mang thơng tin về độ lớp độ lớn và pha của thành phần tần số. Phương pháp

hiệu quả để tính DFT là FFT

Quy đổi giữa miền tần số và miền DFT

Để có đáp ứng tần số miền rời rạc ta có 2 cách là rời rạc hóa miến tần số và tính

DFT. Nhưng hai cách này phải đảm bảo các điểm có giá trị bằng đáp ứng tần số tại

điểm đó thìa trùng nhau giữa hai phương pháp.Minh họa



Hình 6: Biến đổi DFT

Như hình ta thầy mặc dù số điểm N khác nhau nhưng độ lớn khung trên dải tần số

là như nhau vậy nên sau khi biến đổi DFT N điểm thì với mọi N khoảng cách giữa 2

điểm gần nhau nhất là Fs/N.

2.2.5 Mel filterbank log

Phương pháp áp dụng trên mỗi frame

Tai nghe của con người cảm nhận sự thay đổi của âm thanh khơng tuyến tính (kém

ở tần số cao đặc biệt trên 1000hz)

Do đó để quan sát ta khơng sử dụng tần số thông thường mà dùng thang đo mel với

tần số



-



Fmel = 2595log(1+Fhz/700)

ở các tần số <1000hz quan hệ giữa Fmel và Fhz là tuyến tính

ở tần số >1000hz quan hệ giứa Fmel và Fhz là logarithm



Tai nghe con người thu nhận âm thanh như những bộ lọc và chỉ tập trung vào

những tần số nhất định. Dựa vào đặc điểm này hệ mạch lọc mel scale filter banks

11



được sử dụng (which collect energy from each frequency band) để thu thập năng

lượng trên mỗi frame. Trong miền tần số các tần số trung tâm của bộ lọc phân bố

khơng tuyến tính, các thành phần <1000hz tập trung nhiều bộ lọc hơn vì nó chứa

nhiều thơng tin hơn.

Ta sử dụng bộ lọc filter bank là bộ lọc tam giác, ta thường dùng dãy các mạch lọc

trong khoảng từ 20  40 mạch lọc

Phương pháp tìm các bộ lọc filter banks



Hình 7: Dải các bộ lọc mel

Ta thường chọn Fs/2 là uper frequency và 0 là lower frequency. Trên dải tần từ 0>Fs/2 ta tính:

Fmel(0) = 2595log(1+0/700)

Fmel(uper) = 2595log(1+Fs/2/700)

Trong thang mel khoảng từ [Fmel(0);Fmel(uper)] ta lấy các điểm cách đều nhau.

Ví dụ cầ 26 bộ lọc filter bank:

Thì trên thang mel ta lấy 26 điểm cách đều nằm trong khoảng trên và tính cả hai

điểm đầu mút của khoảng thì sẽ là 28 điểm.

Ta được bộ các tần số Fmel(i) = (Fmel(1),…,Fmel(28))

Tính ngược lại bằng cơng thức Fhz = 700exp(Fmel/1125-1)

Ta được bộ các điểm tần số Fhz(i) = (f(1),…,f(28))

Từ đây ta tìm được bộ các filterbank tam giác như sau:

“ filterbank đầu tiên bắt đầu từ điểm đầu tiên , đạt đỉnh tại điểm 2 và trở về zero tại

điểm 3. Filterbank thứ 2 bắt đầu tại điểm thứ 2, đạt đỉnh tại điểm thứ 3 và về zero tại

điểm 4… tương tự với các bộ lọc tiếp theo”.

Sau khi tìm được các filterbank việc tiếp theo là tính năng lượng trên mỗi

frame dựa vào các filterbank này

Lẫy mỗi filterbank của bộ các filterbank này đem đi lọc frame. Tức là lấy DFT của

frame * each filter bank (chú ý sau hi tính DFT kết qur được rời rạc N điểm ta phải

đổi N điểm này ra các điểm trên miến tần số với N, N  Fs)

12



Lấy tổng các điểm còn lại sau khi lọc, đưa tổng đó vào giá trị 𝑚𝑖

Làm lần lượt với tất cả các bộ lọc ta được dãy giá trị M = (m1,m2,…mk) với k là số

bộ lọc filter banks (thường k-26)

Tiếp theo lấy log( |𝑚𝑖 |2 )

2.2.6 Tính hệ số cepstral bởi IDFT (Dùng DCT), deltas, energy

Ta tính các hệ số cepstral dựa vào công thức sau:

𝐾



1 𝜋

𝐶(𝑖) = ∑ log(|𝑚𝑖| 2 )cos(𝑖(𝑗 − )

2 𝐾

𝑗=1



Ta lấy 1≤i≤12 ta được 12 hệ số MFCC

Tính ΔC: để nâng cao chất lượng nhận dạng ta đưa them giá trị đạo hàm

∑𝑁

𝑛=1 𝑛(𝐶𝑡+𝑛 − 𝐶𝑡−𝑛 )

∆𝐶(𝑡) =

2 ∑𝑁

𝑛=1 𝑛^2

Thường chọn N=2, và

Chú ý:

Ct = Ct+1-Ct với t<0

Ct=Ct-Ct+1 với t>T-N với T=12

Ta lấy 1≤t≤12 ta lại được 12 hệ số nữa.

(Có một cơng thức chuẩn hóa để tính hệ số đó là:

𝐶𝑡+1 − 𝐶𝑡−𝑛

∆𝐶(𝑡) =

; 𝑡ℎườ𝑛𝑔 𝑐ℎọ𝑛 𝑛 = 1,2 (𝑡𝑟𝑜𝑛𝑔 𝑐𝑢ố𝑛 𝑑𝑎𝑛𝑖𝑒𝑙 𝑐ℎọ𝑛 𝑛 = 1)

2𝑛

Tiếp tục tính ΔΔC : bằng cách thay Ct bởi ΔCt và t=1,…,12 ta lại được 12 hệ số

Tính energy:

𝑡2



𝐸 = ∑ 𝑥[𝑡]2

𝑡=𝑡1



Với t1 là mẫu bắt đầu frame và t2 là mẫu kết thúc frame.

Được 1 hệ số

Tiếp theo tính ΔE và ΔΔE ta được them 2 hệ số

Tổng lại ta đã được 12 hệ số cần tìm



Chương 3: Mơ hình markov ẩn

3.1



Markov chain



Markov chain hay còn gọi là xích markov là một q trình ngẫu nhiên rời rạc với

tính chất markov.

- Một q trình ngẫu nhiên có tính chất markov thì điều kiện là trạng thái tương lai

chỉ phụ thuộc vào trạng thái hiện tại và không phụ thuộc vào trạng thái quá khứ.

- Markov chain là một dãy X1,X2,…,Xn các biến ngẫn nhiên

Gọi S: tập các giá trị có thể có của Xn thì S chính là khơng gian trạng thái của hệ

- Xét chuỗi các biến ngẫu nhiên nói trên: Xn+1 chỉ phụ thuộc Xn do đó

P(Xn+1=x|X0,X1,…,Xn) = P(Xn+1=x|Xn)

 Dựa trên tính chất markov

13



Ta biểu diễn markov chain biểu diễn bởi ma trận xác suất: P(Xn+1=x|Xn=y)

Tính chất của markov chain:



Mô tả markov chain dựa trên finite automata

Markov chain là một trường hợp đặc biệt của weighted finite state automata

Ta có:

Trong khơng gian trạng thái hữu hạn S = {Si, i= 1,2,…,N}

Xác suất chuyển trạng thái:

P(Xn+1=Sj|Xn=Si) = aij(n) với i,j=1,2…N

aij được gọi là xác suất chuyển trạn thái và aij độc lập với thời gian

Một markov chain được biểu diễn bởi một finite automata có các thành phần sau:

Q = q1,q2,…,qN :Tập của N trạng thái

A = a01,a02,…an1,…,anm : ma trận chuyển trạng thái với aij là xác suất chuyển từ

trạng thái I sang trạn thái j. có ∑𝑁

𝑗=1 𝑎𝑖𝑗 =1 ∀𝑖

q0,qf : trạng thái khởi đầu và kết thúc

Trong nhiều trường hợp sẽ sử dụng đến khái niệm phân bố xác xuất khởi tạo π =

{πi} thay cho q0. Với πi là xác suất mà markov chain bắt đầu ở trạng thái Si. Nếu πi

= 0 không thể bắt đầu ở Si và ∑𝑁

𝑖=1 𝜋𝑖 = 1

QA = {…Sx,Sy…} tập chấp nhận đc là con của Q



3.2 Hidden Markov Model

Biểu diễn HMM thông qua finite automata gồm các thành phần:

Q = q1,q2,…,qN :Tập của N trạng thái

A = a01,a02,…an1,…,anm : ma trận chuyển trạng thái với aij là xác suất chuyển từ

trạng thái I sang trạn thái j. có ∑𝑁

𝑗=1 𝑎𝑖𝑗 =1 ∀𝑖

O = o1,o2,…,oT: là một chuỗi T các quan sát được tại các thời điểm t khác nhau.

Mỗi oi thuộc tập V = {v1,v2,…vm} là tập tất cả các quan sát có thể được trong mỗi

trạng thái.

B ={ bj(k) } : phân bố xác xuất các quan sát được trong trạng thái Sj. bj(k) =

P(vk=ot,qt=Sj) có bj(k) là xác xuất quan sát được sự kiện vk trong trại thái Sj.

Π = {πi} :phân bố xác suất khởi tạo.

QA = {qx,qy…} ; QA (con của Q) là tập chấp nhận được

Giả thiết markov P(qi|q1,…,qi-1) = P(qi|qi-1)

Và P(oi|q1...qi,...,qT,o1,...,oi,...,oT)= P(oi|qi)

Một mơ hình HMM được đại diện bởi bộ tham số: Λ = (A,B,π)

Ví dụ:



14



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Chương 2: Xử lý tín hiệu tiếng nói

Tải bản đầy đủ ngay(0 tr)

×