CHƯƠNG 3: ỨNG DỤNG CỦA LPC TRONG XỬ LÝ TIẾNG NÓI
3. TỔNG HỢP TIẾNG NÓI
3.2. Cơ sở lý thuyết
- Không khí được đẩy từ phổi xuyên qua tuyến âm và ra khỏi miệng từ đó hình thành nên tiếng nói.
- Với những âm hữu thanh, các dây thanh dao động (đóng và mở). Tốc độ dao động của dây thanh xác định pitch của giọng nói. Phụ nữ và trẻ em thường có pitch cao (dao động dây thanh nhanh), trong khi đó đàn ông trưởng thành thường có pitch thấp (dao động dây thanh chậm).
- Với những phụ âm xát và âm bật (âm vô thanh) thì dây thanh không dao động nhưng những phần còn lại thì luôn luôn mở.
Hình dạng của tuyến âm sẽ xác định âm thanh được tạo ra. Khi phát âm, tuyến âm sẽ thay đổi hình dạng của nó để tạo ra các âm thanh khác nhau.
- Hình dạng của tuyến âm thay đổi tương đối chậm (thay đổi từ 10 ms đến 100 ms).
- Thông lượng không khí đến từ phôi sẽ xác định độ to nhỏ của âm thanh.
Hình 2.6 Mô hình vật lý của quá trình tạo tiếng nói 3.2.2. Mô hình toán học
- Theo mô hình, tín hiệu số tiếng nói sẽ là đầu ra của bộ lọc số (bộ lọc LPC) mà có đầu vào là một chuỗi các xung hoặc một dãy nhiễu trắng.
- Mối quan hệ giữa mô hình vật lý và mô hình toán học:
Bộ lọc LPC được xác định bởi hàm truyền đạt:
Khi đó mối quan hệ giữa đầu vào và đầu ra của bộ lọc được xác định bởi phương trình sai phân tuyến tính:
Như vậy các tham số cần thiết cho một bộ tổng hợp LPC là các hệ số LPC (đặc trưng cho bộ lọc LPC) và tín hiệu nguồn kích thích.
Hình 2.7 Mô hình tạo tiếng nói LPC 3.2.3 Mô hình phân tích và tổng hợp LPC
Mô hình phân tích và tổng hợp LPC sẽ bao gồm 2 phần được mô tả như sau:
Hình 2.8 Mô hình phân tích và tổng hợp LPC 3.2.3.1. Phân tích
Quá trình phân tích sẽ sử dụng bộ lọc đảo LPC để tìm lại tín hiệu nguồn từ tín hiệu tiếng nói nhận được:
Hình 2.9 Sơ đồ phân tích LPC
Sau đó tín hiệu nguồn và các hệ số LPC sẽ được truyền đi đến phần tổng hợp để tổng hợp lại tín hiệu ban đầu.
Mối quan hệ giữa đầu vào và đầu ra của bộ lọc được thể hiện qua phương trình sau:
Y(z) = A(z).X(z)
Trong đó A(z) là hàm truyền đạt của bộ lọc đảo được tính theo công thức:
như vậy ta có:
Đây là một hệ không truy hồi bậc p, dựa trên mô hình toàn điểm không, hình sau minh hoạ cách thực hiện của hệ :
Hình 2.10 Sơ đồ thực hiện phân tích LPC 3.2.3.2. Tổng hợp LPC
Tổng hợp là quá trình ngược lại của phân tích, tức là từ tín hiệu nguồn nhận được sau quá trình phân tích, tín hiệu tiếng nói ban đầu sẽ được tổng hợp lại. Mô hình tổng quát của quá trình tổng hợp được mô tả như sau:
Hình 2.11 Sơ đồ tổng hợp LPC
Thực chất đây chính là một hệ đảo của hệ thống phân tích, do đó hàm truyền đạt của hệ thống có dạng:
Trong đó các hệ số ai và p có giá trị giống như các hệ số ai và p trong quá trình phân tích. Do đó tín hiệu đầu ra của hệ tổng hợp được xác định như sau:
Như vậy hệ tổng hợp LPC là một hệ truy hồi bậc p, dựa trên mô hình toàn điểm cực. Sơ đồ minh hoạ cách thực hiện hệ trên:
Hình 2.12 Sơ đồ thực hiện tổng hợp LPC
Như vậy trong mô hình tổng hợp LPC thì các tham số cần thiết sẽ là nguồn âm (tín hiệu kích thích) và các hệ số LPC. Các tham số này sẽ được xác định trong pha phân tích.
3.2.3.3 Xác định các hệ số LPC
Mô hình LPC bắt đầu với việc coi như một mẫu tín hiệu tiếng nói tại thời điểm n sẽ là xấp xỉ tổ hợp tuyến tính của p mẫu tín hiệu trong quá khứ, tức là mẫu tín mẫu tín hiệu tại thời điểm n sẽ là tổng có trọng lượng của p mẫu trong quá khứ, mà mỗi mẫu sẽ được nhân với 1 hằng số tương ứng, biểu thức toán học của nó có thể mô tả như sau :
Trong đó các hệ số a1, a2,..., ap gọi là các hệ số tiên đoán tuyến tính, chúng được xác định theo từng frame và không đổi trong mỗi frame.
Để xảy ra dấu “=” ta thêm vào thành phần Gu(n), khi đó biểu thức (3.1) trở thành:
Thành phần Gu(n) gọi là thành phần kích thích trong đó u(n) là tín hiệu kích thích và G là trọng số kích thích.
Thực hiện biến đổi z cả hai vế ta có:
Hàm truyền đạt của hệ thống:
Gọi x^(n) là giá trị tiên đoán của x(n) do đó:
Như vậy sai số tiên đoán sẽ là:
Đặt bi = -ai ,Vi=1,p và b0=1 khi đó ta có (3.6) trở thành:
Sai số bình phương toàn phần được xác định như sau:
Kí hiệu hàm hiệp biến:
Đẳng thức (8) có thể viết dưới dạng đơn giản là:
Các hệ số ai (hay bi) được xác định dựa trên nguyên tắc tối thiểu hoà bình phương toàn phần (tức là làm cho sai số bình phương toàn phần E đạt giá trị cực tiểu). Điều này có thể đạt được bằng cách cho bằng 0 các đạo hàm riêng của E theo bi (Vi = 0, p)
Do đó ta có hệ phương trình rút ra từ đẳng thức (3.10):
Do b0 = 1 nên hệ phương trình (3.11) tương đương với:
Thay bk = -ak với k = 1, p nên (3.12) tương đương với:
Như vậy các hệ số tiên đoán tuyến tính ak , k = 1, p có thể xác định nhờ việc giải hệ p phương trình tuyến tính (3.13), trong đó ϕ(i,k) và ϕn(i,0) với i=1, p và k = 1, p được xác định theo biểu thức (3.9).
Để xác định hệ số LPC ta có thể một trong hai phương pháp: Levinson - Durbin (tự tương quan) và phương pháp xử dụng ma trận hiệp biến.Các phương pháp này phân biệt nhau qua cách chọn các giá trị nọ và n.
Phương pháp tự tương quan
Phương pháp tự tương quan cho n0 = - ∞ và n1 = + ∞ và cho x(n) = 0 với mọi n < 0 hoặc n>=N (tức là các mẫu không thuộc khung thì giá trị được đặt bằng 0). Điều này tương đương với việc nhân tín hiệu tiếng nói ban đầu với một cửa sổ có độ dài bằng kích thước của khung đang xét, có giá trị bằng 0 với các điểm nằm ngoài cửa sổ. Với những điều kiện này đi ϕ(i,k) có thể được đơn giản hoá như sau:
Trong đó r(i-k) là hàm tương quan của (i-k).
Vì hàm tương quan là hàm chẵn, tức là r(-k)= r(k), nên r(i – k)= r(i – k|). Thay ϕ(i,k) bởi r(|i – k|) vào (3.13) ta có:
Dạng ma trận của (3.14) là: R.a =r (3.15)
Phương trình (3.15) được gọi là phương trình Yule – Walker.
Trong đó:
R là ma trận Toeplitz (ma trận đối xứng với các phần tử thuộc đường chéo chính bằng nhau) nên có một giải thuật rất hiệu quả để giải (315) đó là giải thuật Durbin - Levinson. Giải thuật Durbin - Levinson là giải thuật sử dụng truy hồi được phát biểu như sau:
Trong đó tổng sigma trong (3.17) được bỏ qua khi i=1. Các phương trình (3.16 – 3.20) được thực hiện với i lần lượt bằng 1, 2, .., p. Cuối cùng thu được lời giải của (3.15):
ak =αk p , k= 1, p
Để minh hoạ cho giải thuật Durbin xét ví dụ sau: Tìm các hệ số LPC bậc 2 (p = 2) a1, a2 từ hệ phương trình (3.21) bằng giải thuật Durbin.
Phương pháp hiệp biến
Phương pháp hiệp biến đặt n0 = 0, n1 = N - 1, như vậy sai số bình phương trung bình được tối thiểu trong đoạn [0, N - 1]. Ta có:
Bằng cách đổi biến biểu thức trên tương đương với:
Khi i=p dễ thấy (3.22) liên quan đến các mẫu từ x(-p) đến x(N - 1 - p) và khi k=0 (3.22) liên quan đến các mẫu từ x(0) đến x(N + 1). Do đó để tính theo phương pháp này cần các mẫu từ x(-p) đến x(N-1), Ngoài các mẫu trong khoảng đang xét cần thêm p mẫu trước khoảng đang xét.
Dạng ma trận của (313) là: R.a=r (3.23) Trong đó:
R là ma trận đối xứng nhưng không phải là ma trận Toeplitz. (23) cũng được giải hiệu quả nhờ sử dụng giải thuật Cholesky.