Mã hóa tiếng nói và ứng dụng trong liên lạc di động
I. GIỚI THIỆU
Tiếng nói là phương tiện chủ yếu mà con người sử dụng để liên lạc và giao tiếp hằng ngày.
Ngày nay khi các phương tiện truyền thông phát triển và số người sử dụng các phương tiện
liên lạc tăng lên thì mã hoá tiếng nói được nghiên cứu và ứng dụng rộng rãi trong các cuộc gọi
điện thoại truyền thống, gọi qua mạng di dộng, qua mạng Internet, qua vệ tinh, v.v...
Mặc dù với sự phát triển của công nghệ truyền thông qua cáp quang đã làm cho băng thông
không còn là vấn đề lớn trong giá thành của các cuộc gọi truyền thống. Tuy nhiên, băng thông
trong các cuộc gọi đường dài, các cuộc gọi quốc tế, các cuộc gọi qua vệ tinh hay các cuộc gọi
di động thì cần phải duy trì băng thông ở một mức nhất định. Vì vậy việc mã hoá tiếng nói là rất
cần thiết, giúp giảm thiểu số lượng tín hiệu cần truyền đi trên đường truyền nhưng vẫn đảm
bảo chất lượng của cuộc gọi.
II. CÁC VẤN ĐỀ CƠ BẢN TRONG MÃ HOÁ TIẾNG NÓI
1. Mô hình hoá quá trình tạo tiếng nói
Khi không khí bị ép từ phổi lên đi qua các dây thanh âm dao động (theo sự điều khiển của não
bộ) và đi dọc theo cơ quan phát âm sẽ tạo ra tiếng nói. Sự dao động của các dây thanh âm tạo
ra sự đóng mở tương tự như một cánh cửa (thanh môn). Sự đóng mở này sẽ làm cho luồng
không khí từ phổi đi lên bị ngắt quãng khác nhau, làm cho tiếng nói tạo ra cũng khác nhau.
Ngoài sự tác động của các dây thanh âm, tiếng nói tạo ra còn phụ thuộc vào sự thay đổi của
cơ quan phát âm gồm: vòm họng, lưỡi, miệng, khoang mũi và mũi. Hình 1 biểu diễn mô hình
cơ học của cơ quan phát âm.
Hình 1. Mô hình cơ học cơ quan phát âm người
Với mô hình cơ học như trên, có thể biểu diễn cơ quan phát âm bằng một mô hình gần đúng
gồm các hình trụ có độ dài bằng nhau nhưng có đường kính khác nhau như trong Hình 2.
Chính hình dáng này đã tạo ra sự cộng hưởng âm thanh và các tần số cộng hưởng này gọi là
3. Các phương pháp mã hoá tiếng nói
Mã hoá tiếng nói được chia ra thành ba loại chính là mã hoá dạng sóng, mã hoá nguồn và mã
hoá lai. Tốc độ bit và chất lượng tiếng nói sau khi tổng hợp lại của các bộ mã hoá này được
biểu diễn ở Hình 3.Hình 3. Chất lượng tiếng nói so với tốc độ bit của các bộ mã hoá
a. Mã hoá dạng sóng: người ta chia mã hoá dạng sóng ra làm hai loại chính
Trong miền thời gian: mã hoá điều biến xung mã (PCM), điều biến xung mã sai lệch (DPCM)
và điều biến xung mã sai lệch thích nghi (ADPCM).
Trong miền tần số: mã hoá băng con SBC (subband coding) và mã hoá biến đổi thích nghi ATC
(Adaptive Transform Coding).
b. Mã hoá nguồn:
Mã hoá nguồn sử dụng mô hình quá trình tạo ra nguồn tín hiệu và khai thác các thông số của
mô hình này để mã hoá tín hiệu. Những thông số của mô hình sẽ được truyền đến bộ giải mã.
Đối với tiếng nói, các bộ mã hoá nguồn được gọi là vocoder hoạt động dựa trên mô hình cơ
quan phát âm như đã nói ở trên và được kích thích với một nguồn nhiễu trắng đối với các
đoạn tiếng nói vô thanh hoặc được kích thích bằng một dãy xung có chu kì bằng chu kì pitch
đối với đoạn tiếng nói hữu thanh. Do đó thông tin được gởi đến bộ giải mã là các thông số kỹ
thuật của bộ lọc, một thông tin chỉ định đoạn tiếng nói là hữu thanh hay vô thanh, sự thay đổi
cần thiết của tín hiệu kích thích và chu kì pitch nếu đó là đoạn tiếng nói hữu thanh.
Có nhiều kỹ thuật để mã hoá nguồn như: mã hoá kênh, mã hoá formant, mã hoá tham số và
mã hoá đồng hình. Tuy nhiên, hiện nay chủ yếu tập trung vào nghiên cứu và phát triển các bộ
mã hoá tham số như mã hoá dự đoán tuyến tính kích thích bằng hai trạng thái (mã hoá LPC),
mã hoá dự đoán tuyến tính có sự kích thích kết hợp MELP và mã hoá dự đoán tuyến tính kích
thích bằng tín hiệu sau dự đoán RELP. Các bộ mã hoá tham số này thường dùng cho điện
đó, bộ tạo tín hiệu kích thích là quan trọng nhất vì nó tạo ra hay chọn tín hiệu kích thích sao
cho sai số bình phương trung bình đã đi qua W(z) là nhỏ nhất. Tuỳ theo mỗi loại mã hoá mà bộ
tạo tín hiệu kích thích này khác nhau. Mặc dù sơ đồ trên là chung cho các bộ mã hoá lai nhưng
một số loại không sử dụng bộ lọc LTP hoặc vị trí STP và LTP thay đổi.
2. Dự đoán tuyến tính (LP) dựa trên mô hình phát âm
Dự đoán tuyến tính là một công cụ rất quan trọng trong xử lí số tín hiệu. Nó cung cấp cho
chúng ta một kỹ thuật rất mạnh để ước lượng các thông số của một đoạn tiếng nói như pitch,
tần số formant, phổ, ... với độ chính xác cao và tốc độ tính toán nhanh.
Hình 5. Sơ đồ rút gọn của quá trình tạo tiếng nói
Dựa trên hàm truyền đạt biểu diễn mô hình cơ quan phát âm và bỏ qua các yếu tố khác tác
động đến quá trình phát âm như môi, khoang mũi thì mô hình phát âm có thể được biểu diễn
một cách gần đúng như trong Hình 5.
Trong Hình 6 biểu diễn hai quá trình tổng hợp và phân tích tiếng nói. Giả sử tín hiệu kích thích
u[n] là nhiễu trắng thì tín hiệu e[n] cũng phải là nhiễu trắng nếu H(z) là một hàm truyền đạt toàn
cực, không có điểm không.
Hình 6. Quá trình tổng hợp và phân tích trong mã hoá tiếng nói
3. Dự đoán thời gian ngắn (STP) và dự đoán thời gian dài (LTP)
Bộ dự đoán thời gian ngắn thực chất là bộ lọc tổng hợp tiếng nói. Bộ lọc này sẽ thực hiện việc
tổng hợp tiếng nói khi có tín hiệu kích thích đưa đến ngõ vào của nó. Các hệ số của bộ lọc này
sẽ được xác định bằng phương pháp dự đoán tuyến tính như đã đề cập ở trên.
Các đoạn tiếng nói hữu thanh có dạng sóng tuần hoàn và sự tuần hoàn này có thể được khai
a. Mã hoá kích thích bằng xung đều RPE-LTP [1]:
Đây là loại mã hoá sử dụng tín hiệu kích thích kết hợp giữa xung đều và tín hiệu sau dự đoán
từ chu kỳ pitch trước đó (được xác định bằng một bộ dự đoán thời gian dài LTP để tính chu kì
pitch và độ lợi pitch cho tín hiệu kích thích).
b. Mã hoá kích thích bằng mã CELP và ACELP:
Mã hoá kích thích bằng mã hay bằng vectơ CELP [1] mã hoá tiếng nói ở tốc độ bit thấp hơn
mã hoá RPE-LTP nhưng tiếng nói tổng hợp vẫn có chất lượng cao tương đương với các bộ
mã hoá dạng sóng có tốc độ bit trung bình tuy nhiên độ phức tạp của bộ mã hoá CELP sẽ cao
hơn. Trong thuật toán CELP, người ta đưa ra khái niệm codebook. Đây là nơi chứa các vectơ
(hay từ mã) kích thích và mỗi vectơ đó có độ dài cố định. Các vectơ này được tạo thành từ các
dãy nhiễu Gauss. Tín hiệu kích thích cho mỗi đoạn tiếng nói sẽ được tìm kiếm trong codebook.
Do đó, mỗi vectơ kích thích trong codebook sẽ có số phần tử bằng với số mẫu trong một đoạn
tiếng nói. Ngoài codebook chứa các vectơ tín hiệu kích thích thường được gọi là stochastic
codebook, còn có một codebook khác liên quan đến bộ dự đoán LTP gọi là codebook thích
nghi (adaptive codebook). Codebook thích nghi chứa các giá trị độ trễ t (có giá trị từ 20 ¸147).
Việc tìm giá trị t và độ lợi pitch b cho bộ lọc LTP là quá trình tìm một giá trị thích hợp sao cho
tín hiệu kích thích tổng hợp đưa vào bộ lọc STP là tốt nhất, tức là làm cho sai số dự đoán là
nhỏ nhất.
Mã hoá kích thích bằng mã đại số ACELP [1] (Algebraic CELP) cũng là một dạng mã hoá
CELP. Tuy nhiên, các vectơ trong stochastic codebook ở ACELP được tạo thành từ các giá trị
nhị phân (chỉ gồm hai giá trị) hoặc tam phân (chỉ gồm ba giá trị).
c. Mã hoá kích thích bằng tổng vectơ VSELP:
Thuật toán VSELP [1] được Gerson và Jasiuk đề xuất ra ứng dụng trong truyền thông di động.
8,0 3.2 Tia IS-54 Vselp
6,5 3.2 Gsm Half-rate Vselp
8,0 3.2 Itu g.729 Acelp
Các ứng
dụng có tốc
độ bit thay
đổi
16-40 3,2 Itu g.727 Adpcm
5,3-6,3 3,2 Itu g.723.1 Mplpc, celp
4,75-12,2 3,2 Gsm Amr Acelp
1-8 3,2 Cdma IS-96 Qcelp
Liên lạc cần
bảo mật
2,4 3,2 Ddvpc Fs1015 Lpc-10
2,4 3,2 Ddvpc Melp Melp
4,8 3,2 Ddvpc Fs1016 Celp
Điện thoại
qua vệ tinh
4,15 3,2 Inmarsat M Imbe
3,6 3,2 Inmarsat Mini-m Ambe
Tài liệu tham khảo
[1]. ANDREAS SPANIAS, Speech coding: A tutorial review, Arizona State University, USA -
1994.
[2]. THOMAS P. BARNWELL III, KARMBIZ NAYEBI & CRAIG H. RICHARDSON, Speech
Coding: A computer Laboratory Textbook, John Wiley & Sons. Inc – 1996.
[3]. JOHN G. PROAKIS, DIMITRIS G. MONOLAKIS, Introduction to digital signal processing,
Macmillan Publishing Company – 1989.
[4]. N. JAYANT, Signal Compression: Coding of Speech, Audio, Text, Image and Video, World
Scientific Publishing Co. Pte. Ltd. – 1997.