CHƯƠNG 3: CÁC PHƯƠNG PHÁP TRÍCH TẠO ĐẶC TÍNH TIẾNG NÓI
3.3. Trích tạo đặc tính
3.3.1. Phương pháp tính hệ số MFCC
Ý tưởng cơ bản của phương pháp tính hệ số MFCC là mô tả cơ chế cảm thụ âm thanh của tai người. Thang đo Mel là thang đo tần số biến đổi theo hàm tuyến tính ở tần số thấp và biến đổi theo hàm logarit ở tần số cao ( 1000Hz ). Công thức chuyển đổi từ thang đo tuyến tính sang thang đo Mel.
( ) 2595lg(1 )
700
Mel f f (3.4)
:
f giá trị tần số ở thang tuyến tính (Hz)
Công thức chuyển đổi từ thang Mel sang thang tuyến tính
2595
2 ( ) 700 (10 1)
m
M l F
(3.5) :
m giá trị tần số ở thang Mel (Hz)
Hình 3.6: Đồ thị chuyển đổi giữa thang tuyến tính và thang Mel
Sơ đồ khối tính hệ số phổ theo thang đo Mel
Bộ lọc Phân khung Cửa sổ hoá DFT
Tín hiệu tiÕng nãi
X1(n) X2(k m), X3(k,m)
Lọc tần số Mel
Logarit giá trị năng luợ ng Chỉnh giá trị DCT
ceptral Tính giá trị
delta MFCC Delta(MFCC) MFCC
Hình 3.7: Sơ đồ tính hệ số Ceptral theo thang đo Mel
Tạo dãy băng lọc tam giác theo thang Mel
Công thức tính biên độ các bộ lọc
0 ( 1)
( 1) ( 1) ( )
( ) ( 1)
( ) ( 1)
( ) ( 1)
( 1) ( )
0 ( 1)
m
k f m
k f m f m k f m
f m f m
H k f m k
f m k f m
f m f m
k f m
(3.6)
1,
m M : Tổng số các bộ lọc
m( )
H k : Biên độ của bộ lọc thứ mcó tần số đỉnh là k ( )
f i : Tần số đỉnh của bộ lọc thứ i Ta có thể thấy
1
0
( ) 1
M m m
H k
(3.7)
Tính tần số đỉnh của các bộ lọc cho phổ tín hiệu có N điểm, với tần số lấy mẫu là Fs
( ) max min
min
min min
max max
( )
1
2 ( )
2 ( )
2 ( )
i M M
mel M
M H
M H
i i
Hz Mel
N f f
f f i
Fs n
f Mel Freq f f Mel Freq f f Freq Mel f
(3.8)
n: Số bộ lọc
i: Thứ tự các bộ lọc
i
fMel: Tần số đỉnh của bộ lọc tam giác thứ i(Tính theo thang Mel)
i
fHz: Tần số đỉnh của bộ lọc tam giác thứ (Tính theo thang tuyến tính)
min
fH : Tần số cực tiểu ở thang tuyến tính
max
fH : Tần số cực đại ở thang tuyến tính
min
fM : Tần số cực tiểu ở thang Mel
max
fM : Tần số cực đại ở thang Mel
Công thức chuyển đổi tần số đỉnh các bộ lọc sang thang tuyến tính
( ) max min
2 ( min )
1
i M M
Hz M
N f f
f Mel Freq f i
Fs n
(3.9)
Chọn tần số cực đại và cực tiểu ở thang tuyến tính ( fHmax, fHmin )
Theo lý thuyết thì tai người có thể nghe được các âm thanh có tần số trong khoảng từ 200Hz20000Hz. Nhưng theo Andrei Mihaila [ ], thực tế 5 các tần số cơ bản của tín hiệu tiếng nói chủ yếu nằm trong khoảng từ 100Hz3400Hz, và tai người nhạy cảm hơn với những âm có tần số trong khoảng 1kHz-4kHz. Vì vậy thường chọn fHmax 4000Hz, fHmin 0.
Hình 3.8: Dãy băng lọc tam giác được theo thang Mel
Tính hệ số phổ
DFT
sum
sum
sum
mfcc(1)
mfcc(2)
mfcc(N)
X(t) X(k)
Bộ lọc 1
Bộ lọc 2
Bộ lọc N
Hình 3.9: Sơ đồ tính hệ số MFCC
Hiệu chỉnh hệ số phổ
Logarit giá trị năng lượng
– Loại bỏ những thông tin về pha (không có ý nghĩa trong nhận dạng) – Tạo bộ số liệu biến thiên theo hàm logarit (phù hợp với đặc tính của
tai người)
– Loại bỏ nhiễu tương quan
DCT (Discrete Cosine Transform)
1
cos( ( 0,5))
N
i j
j
c m j j
N
(3.10)
N: Số mẫu trong một khung
mj : Giá trị logarit năng lượng ở mạch lọcj i: Bậc của hệ số Cepstral
So sánh với hàm DFT, hàm DCT có những ưu điểm sau – Hàm cosine rời rạc cho giá trị thực
– Giảm tính tương quan giữa các giá trị – Khả năng nén các giá trị tốt hơn
Tính các hệ số MFCC động: Mục đích của tính các hệ số MFCC động là thể hiện được sự thay đổi theo thời gian của các đặc tính tĩnh. Nó đặc trưng cho tốc độ và nhịp điệp của người nói.
Thuật toán tính các đặc tính động
Khi có các đặc tính tĩnh c1[i], [i],..., [i]c2 cN , với ck[i] là đặc tính thứ icủa khung thứ k. Ta có thể tính các đặc tính động ck[i] theo các công thức sau:
– Tính theo công thức phương sai:
[i] [ ] [ ]
k k M k M
c c i c i
(M 1,3 khung) (3.11)
– Tính dựa vào thuật toán hồi qui
2
[ ] [ ]
M m M k m
k M
m M
m c i c i
m
(3.12)
3.3.2. Phương pháp tính hệ số PLP
PLP là một kỹ thuật phân tích tín hiệu tiếng nói được Hynek Hermansky [2] đưa ra vào năm 1989. Đây là một trong những kỹ thuật đang được sử dụng có hiệu quả trong các hệ thống nhận dạng tiếng nói hiện nay. PLP được phát triển từ kỹ thuật LP (Linear prediction) và dựa trên cơ sở các đặc tính về phổ tần của tai người. Do đó so với phân tích LP thì phân tích PLP phù hợp hơn với tai người. PLP khắc phục được nhược điểm của LP đó là xấp xỉ phổ của tín hiệu tiếng nói với đáp ứng như nhau tại tất cả các tần số của dải thông phân tích.
Lọc tần số Bark
Tiền xử lý cân bằng âm
Luật cường độ nghe
Biến đổi Fourier ngược
Tính các hệ số tự tương quan Tiếng nói
Mô hình điểm cực
Hình 21: Lược đồ phân tích PLP tín hiệu tiếng nói
Chuyển đổi thang đo tần số, phân tích phổ theo các dải tần khác nhau
Công thức chuyển đổi tần số từ thang đo Hz sang thang đo Bark
2 0.5
( ) 6ln{ /1200 +[( /1200 ) 1] }
(3.13)
0 1000 2000 3000 4000 5000 6000 7000 8000 0
2 4 6 8 10 12 14 16 18 20
Frequency (Hz)
Frequency (Bark)
Hình 3.10: Chuyển đổi thang đo tần số Hz-Bark
: Tần số góc theo thang đo Bark
: Tần số góc theo thang đo Hz
Sau khi chuyển đổi thang đo tần số, phổ của tín hiệu sẽ được tính dựa vào dãy băng lọc có đường đặc tính trên miền tần số như sau
2.5( 0.5)
1( 0.5)
0 1.3
10 1.3 0.5
( ) 1 0.5 0.5
10 0.5 2.5
0 2.5
for for for for for
(3.14)
Các bộ lọc được mô tả theo hàm trên có hình dáng gần giống với hình dáng của các bộ lọc của tai người, với tần số cắt tại giá trị biên độ là -40db.
Phổ năng lượng của tín hiệu được tính dựa vào các bộ lọc theo công thức sau:
2.5
( )i 1.3P( i) ( )
(3.15) ( )
P : Phổ năng lượng của tín hiệu theo thang đo tần số Hz ( )
P : Phổ năng lượng của tín hiệu tính theo thang đo tần số Bark ( )i
: Phổ năng lượng của tín hiệu qua bộ lọc thứ icủa dãy băng lọc
Hình 3.11: Dãy băng lọc Bark
Dải tần của mỗi bộ lọc trong dãy băng lọc được lựa chọn sao cho các mẫu phổ năng lượng của tín hiệu bao phủ toàn bộ dải thông phân tích. Thông thường sử dụng 18 mẫu phổ [ ( )] tương ứng với dải tần 0 - 16.9 Bark (0 - 5 kHz, có nghĩa là mỗi bộ lọc có dải thông là 0.994 Bark..
Tiền xử lý cân bằng âm [ ( )]
đuợc tiền xử lý dựa vào đường cân bằng âm [ ( )] ( ) [ ( )]
E (3.16)
Hàm E( ) được lấy sắp xỉ với đặc tính nhạy khác nhau của tai người ở các tần số khác nhau. Và nó mô tả độ nhạy của tai người ở mức năng lượng khoảng 40db.
2 6 4 2 6 2
2 9
( ) [( +56.8 10 ) ] / [( +6.3 10 ) ( 0.38 10 )]
E
(3.17)
102 103 104 105 -400
-300 -200 -100 0 100 200 300
Magnitude (dB)
Bode Diagram
Frequency (rad/sec)
Hình 3.12: Đồ thị biên tần của hàm truyền có phương trình - mô tả như trên
Phương trình trên mô tả hàm truyền của một bộ lọc có độ dốc 12db/oct trong khoảng tần số từ 0 400Hz, 0db trong dải tần từ 400Hz - - 1200Hz, 6db trong dải tần từ 1200Hz - 3100Hz, và 0db trong dải tần từ 3100Hz Tần số - Nyquist (Tần số cực đại của tín hiệu). Hàm truyền này có thể được áp dụng cho tần số Nyquist lên tới 5000Hz. Trong những ứng dụng mà yêu cầu tần số Nyquist lớn hơn thì ta có thể sử dụng hàm truyền sau để tăng độ nhạy của tai nghe trong dải tần lớn hơn 5000Hz.
2 6 4 2 6 2
2 9 6 26
( ) [( +56.8 10 ) ] / [( +6.3 10 )
( 0.38 10 ) ( 9.58 10 )]
E
(3.18)
Luật cường độ nghe
Biên độ phổ của tín hiệu được nén theo công thức sau:
( ) ( )0.33
(3.19)
Phương trình này mô tả gần đúng với đặc tính về năng lượng của tai nghe và nó thể hiện mối quan hệ phi tuyến giữa cường độ của âm và tính chất to nhỏ của nó mà tai người cảm thụ được. Ngoài ra phương trình trên còn làm giảm mức độ biến đổi biên độ của các hệ số phổ tính theo dãy băng lọc.
Mô hình các điểm cực ( )
được lấy sắp xỉ với phổ của một mô hình toàn điểm cực sử dụng thuật toán tự tương quan (tương tự như thuật toán tính hệ số LPC). Mô hình này có các bước tính toán sau:
– Tính biến đổi Furier ngược (IDFT) tín hiệu – Tính các hệ số tương quan
– Giải phương trình Yule-Walker