Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 85 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
85
Dung lượng
1,66 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ PHẠM VĂN HẬU THỰC THI THỜI GIAN THỰC MÔ HÌNH THUẬT TỐN MELP TRÊN BỘ XỬ LÝ TÍN HIỆU SỐ TMS320C5509 LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỂN TỬ - VIỄN THÔNG Hà Nội - 2014 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ PHẠM VĂN HẬU THỰC THI THỜI GIAN THỰC MƠ HÌNH THUẬT TỐN MELP TRÊN BỘ XỬ LÝ TÍN HIỆU SỐ TMS320C5509 Ngành: Công nghệ Điện tử Viễn thông Chuyên ngành: Kỹ thuật điện tử Mã số: 60 52 02 03 LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ VIỄN THÔNG NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS TS TRẦN ĐỨC TÂN Hà Nội - 2014 LỜI CAM ĐOAN Tôi xin cam đoan cơng trình nghiên cứu riêng tơi Các số liệu, kết nêu luận văn trung thực chưa công bố công trình khác Tác giả Phạm Văn Hậu MỤC LỤC LỜI CAM ĐOAN MỤC LỤC MỤC LỤC BẢNG BIỂU MỤC LỤC HÌNH VẼ DANH MỤC VIẾT TẮT MỞ ĐẦU 1 Chương - TỔNG QUAN NÉN THOẠI 4 1.1 Cấu trúc hệ thống nén thoại 4 1.2 Các thuộc tính lý tưởng nén thoại 6 1.3 Trễ nén 7 1.4 Ứng dụng mơ hình nén thoại 9 Chương - MƠ HÌNH NÉN THOẠI MELP 10 2.1 Mơ hình tạo tiếng nói MELP 10 2.2 Biên độ Fourier (Fourier Manitudes) 11 2.3 Bộ lọc định hình 15 2.4 Pitch period ước lượng voice strength 17 2.5 Hoạt động mã hóa 24 2.6 Hoạt động giải mã 27 2.7 Kết chương 30 Chương - CHIP XỬ LÝ TÍN HIỆU SỐ TMS320C55xx 32 3.1 Giới thiệu 32 3.2 Kiến trúc họ TMS32C55xx 32 3.3 Công cụ phát triển 37 3.4 Các chế độ địa TMS320C55x 42 3.5 Đường ống chế song song 44 3.6 Tập lệnh TMS320C55x 47 3.7 Lập trình hỗn hợp C Assembly 48 Chương - CÀI ĐẶT VÀ THỬ NGHIỆM 51 4.1 Cài đặt MELP thời gian thực C5509 C5510 51 4.2 Thực cài đặt 52 4.3 Đánh giá kết 59 KẾT LUẬN 63 Kết đạt luận văn 63 Định hướng nghiên cứu 63 TÀI LIỆU THAM KHẢO 64 PHỤ LỤC i A. Mơ hình mã hóa dự đốn tuyến tính LPC i B. Thuật toán Levinson-Durbin iii C. Lượng tử hóa véc-tơ nhiều lớp (MSVQ) vii MỤC LỤC BẢNG BIỂU Bảng 2-1: Sơ đồ cấp phát bit mã hóa MELP 27 Bảng 3-1: Ví dụ mã C mã hợp ngữ trình biên dịch C55x sinh 37 Bảng 3-2: Ví dụ tệp lệnh liên kết sử dụng cho mô C55x 39 Bảng 3-3: Gán loại tham số tới ghi 49 Bảng 3-4: Sử dụng trì ghi 50 Bảng 4-1: Một số tệp dự án 52 Bảng 4-2: Bảng cho điểm MOS 60 Bảng 4-3: Mẫu âm dùng để đánh giá 61 Bảng 4-4: Đánh giá PESQ cài đặt C55x MELP 61 Bảng A-1: Bảng so sánh MC độ phân giải thường gặp x MỤC LỤC HÌNH VẼ Hình 1-1: Mơ hình hệ thống nén thoại Hình 1-2: Mơ hình nén thoại Hình 1-3: Mơ hình xác định trễ Hình 1-4: Mơ tả thành phần trễ nén Hình 1-5: Đồ thị mẫu truyền bit hai chế độ liên tục (trên) gói (dưới) Hình 2-1: Mơ hình tạo tiếng nói 10 Hình 2-2: Mơ xử lý tín hiệu với lọc tạo xung 12 Hình 2-3: Mơ hình tính tốn lượng tử hóa biên độ Fourier 12 Hình 2-4: Q trình tạo kích thích xung 14 Hình 2-5: Sơ đồ lọc tạo hình xung 16 Hình 2-6: Vị trí cửa sổ khác tương ứng với khung tín hiệu 18 Hình 2-7: Mơ ước lượng Pitch period bước 19 Hình 2-8: Mơ ước lượng voice strength băng thơng 20 Hình 2-9: Một số tín hiệu giá trị đỉnh 22 Hình 2-10: Đỉnh chuỗi xung không gian đồng 22 Hình 2-11: Sai số dự đốn có từ sóng âm (bên trái) đo đạc đỉnh áp dụng cho sai số dự đoán (bên phải) 23 Hình 2-12: Mơ hình mã hóa MELP 24 Hình 2-13: Mơ hình giải mã MELP 28 Hình 2-14: Đáp ứng xung (trái) đáp ứng biên độ (phải) lọc phân tán xung 30 Hình 3-1: Sơ đồ khối CPU TMS320C55x 33 Hình 3-2: Sơ đồ đơn giản hóa IU 34 Hình 3-3: Mơ hình đơn giản hóa PU 34 Hình 3-4: Bộ điều khiển luồng liệu địa C55x 35 Hình 3-5: Mơ hình cấu trúc tính tốn liệu 36 Hình 3-6: Cơng cụ Luồng phát triển phần mềm TMS320C55X 38 Hình 3-7: Phát triển phần mềm TMS320C55X với CCS 40 Hình 3-8: Ví dụ lệnh hợp ngữ TMS320C55X 41 Hình 3-9: Sơ đồ hoạt động đường ống C55x 46 Hình 4-1: Mơ hình hệ thống cho phát triển mơ hình MELP 51 Hình 4-2: Mơ hình triển khai thời gian thực trực tuyến 52 Hình 4-3: Mơ hình tổng qt phương pháp đo phổ biến 60 Hình 4-4: Tệp Vn_M gốc qua xử lý C55x MELP 62 Hình 4-5: Tệp Vn_F gốc (và qua xử lý C55x MELP 62 DANH MỤC VIẾT TẮT Từ viết tắt Tiếng Anh đầy đủ Nghĩa tiếng Việt 2-D 2-Demensional Hai chiều AbS Analysis-by-synthesis Phân tích cách tổng hợp ACELP Algebraic code-excited prediction Absolute category rating ACR linear Dự đoán tuyến tính mã kích thích đại số Tỉ lệ phân loại tuyệt đối APCM Adaptive differential pulse code Điều chế mã xung sai phân thích nghi modulation Adaptive pulse code modulation Điều chế mã xung thích nghi AR Tự hồi quy Tự hồi quy ARMA Tự hồi quy moving average Trung bình dịch chuyển tự hồi quy CCR Comparison category rating Tỉ lệ phân loại so sánh CDMA Code division multiple access Đa truy cập chia theo mã CELP Code-excited linear prediction Dự đốn tuyến tính mã kích thích CS-ACELP Conjugate structure algebraic code- Dự đốn tuyến tính mã kích thích đại số excited linear prediction cấu trúc liên hợp DC Direct current Dòng chiều DCR Degradation category rating Tỉ lệ phân loại suy giảm DFT Discrete Fourier transform Biến đổi Fourier rời rạc DPCM Differential pulse code modulation Điều chế mã xung sai phân DSP Digital signal processing/processor Xử lý tín hiệu số DTAD Digital telephone answering device Thiết bị trả lời thoại số DTFT Discrete time Fourier transform Biến đổi Fourier thời gian rời rạc DTMF Dual-tone multifrequency Âm kép đa tần EFR Enhanced full rate Tăng cường đầy đủ tỉ lệ FFT Fast Fourier transform Biến đổi Fourier nhanh FIR Finite impulse response Đáp ứng xung hữu hạn FM Frequency modulation Điều tần FS Federal Standard Chuẩn liên bang GLA Generalized Lloyd algorithm Thuật toán Generalized Lloyd IDFT Inverse discrete Fourier transform Biến đổi Fourier rời rạc nghịch đảo IIR Infinite impulse response Đáp ứng xung vô hạn LD-CELP Low-delay prediction LMS Least mean square ADPCM code-excited linear Dự đốn tuyến tính mã kích thích trễ thấp Bình phương trung bình tối thiểu LP Linear prediction Dự đốn tuyến tính LPC Linear prediction coding/coefficient Mã hóa dự đốn tuyến tính MA Moving average Trung bình dịch chuyển MNB Measuring normalizing block Khối chuẩn hóa đo đạc MP–MLQ MSE Multipulse–maximum quantization Mean square error Sai số bình phương trung bình MSVQ Multistage vector quantization Lượng tử hóa vector đa lớp PCM Pulse code modulation Điều chế mã xung PESQ PSQM Perceptual evaluation of speech Đánh giá cảm nhận chất lượng thoại quality Perceptual speech quality measure Đo đạc chất lượng thoại PVQ Predictive vector quantization QCELP Qualcomm prediction RC Reflection coefficient Hệ số phản xạ RV Random variable Biến ngẫu nhiên SD Spectral distortion Sự biến dạng phổ SNR Signal to noise ratio Tỉ lệ tín hiệu nhiễu SPG Segmental prediction gain SSE Sum of squared error Tổng sai số bình phương SSNR Segmental signal to noise ratio Tỉ lệ tính hiệu phân đoạn nhiễu TDMA Time division multiple access Đa truy cập phân chia thời gian TI Texas Instruments VoIP Voice over internet protocol Truyền âm qua giao thức internet VQ Vector quantization Lượng tử hóa véc-tơ VSELP Vector sum prediction likelihood Chuẩn hóa dạng tối đại đa xung code-excited excited Lượng tử hóa vec-tơ dự đốn linear Dự đốn tuyến tính kích thích mã Qualcomm linear Dự đốn tuyến tính kích thích tổng vectơ MỞ ĐẦU Lý chọn đề tài Hiện nay, nén liệu âm nói chung nén liệu tiếng nói nói riêng nhà khoa học, công nghệ giới quan tâm nghiên cứu, kết đạt được ứng dụng nhiều lĩnh vực truyền thông giải trí Đặc biệt, điều kiện cơng nghệ thơng tin, truyền thông phát triển mạnh vấn đề xử lý âm thanh, tiếng nói nghiên cứu ứng dụng rộng rãi Đã có nhiều thuật tốn mơ hình xử lý tiếng nói nghiên cứu sử dụng, đó, mơ hình dự đốn tuyến tính (LPC) phần thiếu hầu hết tất giải thuật mã hóa thoại đại ngày Ý tưởng mẫu thoại xấp xỉ kết hợp tuyến tính mẫu khứ Trong khung tín hiệu, trọng số dùng để tính tốn kết hợp tuyến tính tìm cách tối thiểu hóa bình phương trung bình sai số dự đoán; trọng số tổng hợp, hệ số dự đốn tuyến tính dùng đại diện cho khung cụ thể Mơ hình MELP (dự đốn tuyến tính kích thích hỗn hợp) thiết kế để vượt qua số hạn chế mơ hình LPC, sử dụng mơ hình tạo tiếng nói phức tạp hơn, với thông số bổ xung để cải thiện độ xác MELP bắt đầu phát triển McCree từ năm 1995, tích hợp nhiều nghiên cứu tiến vào thời điểm đó, bao gồm lượng tử hóa vec-tơ, tổng hợp tiếng nói cải tiến từ mơ hình LPC Hiệu MELP chứng minh thực tế NATO Mỹ chấp nhận sử dụng nhiều thiết bị quân Tuy nhiên Việt Nam MELP chưa ý nghiên cứu, phát triển tính ứng dụng hẹp: chủ yếu lĩnh vực quân Xuất phát từ lý mà chọn đề tài: “Thực thi thời gian thực mơ hình thuật tốn MELP xử lý tín hiệu số TMS320C5509” Mục tiêu nhiệm vụ nghiên cứu Mục tiêu luận văn triển khai thời gian thực thuật toán nén thoại MELP xử lý tín hiệu số TMS320C55xx, với nội dung sau: - Phân tích tổng quan nén thoại - Mơ hình nén thoại MELP - Phân tích, nghiên cứu xử lý tín hiệu số TMS320C55X 62 Hình 4-4 4-5 cho thấy hình phổ tệp Vn_M.wav (câu nam giới nói “nào sẵn sàng chưa niên”) Vn_F.wav (câu nữ giới nói “vậy giải thích họ có lý”), tệp gốc qua xử lý C55x MELP tương ứng Vn_M gốc Vn_M qua C55x MELP Vn_M original speech MELP processed Vn_M speech 0.4 0.4 0.2 0.2 0 -0.2 -0.2 -0.4 5000 10000 Hình 4-4: 15000 -0.4 5000 10000 15000 Tệp Vn_M gốc qua xử lý C55x MELP Vn_F gốc Vn_F xử lý qua C55x MELP Vn_F original speech 0.4 0.2 -0.2 -0.4 0.5 Hình 4-5: 1.5 Tệp Vn_F gốc (và qua xử lý C55x MELP Thông qua thực nghiệm, ta thấy rằngC55x MELP thực nhiều cho kết gần giống với sản phẩm MELP thị trường với tệp âm đầu vào cho trước Cụ thể, C55x MELP làm việc tốt so với Vocal tồi Signalogic, khác biệt không đáng kể, khoảng 0.1 điểm PESQ Thực thêm thí nghiệm chun sâu với tập hợp tiếng nói khác khẳng định chất lượng cài đặt C55x MELP dựa điểm số PESQ đánh giá nghe trực tiếp Với cấu hình thời gian thực trực tuyến minh họa hình 4-2, hệ thống hoạt động ổn định, cho kết âm có chất lượng mong đợi Tức là, hệ thống có khả làm việc chế độ song công đầy đủ: mã hóa giải mã phải thực đồng thời 63 KẾT LUẬN Kết đạt luận văn Luận văn thực nghiên cứu lý thuyết mơ hình nén thoại xử lý tiếng nói, đặc biệt sâu vào mơ hình MELP, từ triển khai cài đặt thời gian thực mơ hình MELP chip TMS320C55X DSP Chương luận văn mô tả triển khai cài đặt thời gian thực MELP mạch xử lý tín hiệu số TMS320C5509A DSK với chương trình viết Code composer studio 3.3 Các kết thử nghiệm cho thấy triển khai thời gian thực hoạt động hiệu cho kết so sánh với số sản phẩm MELP thương mại: C55x MELP có khả tạo tiếng nói có chất lượng tốt, songcơng thời gian thực với hiệu cao tốc độ 2400bps Kết nghiên cứu triển khai thời gian thực MELP TMS320VC55x tổng hợp thành báo khoa học đăng Tạp chí Nghiên cứu KH &CN quân sự, số 02-2014 [1] Định hướng nghiên cứu Bên cạnh kết đạt được, số vấn đề cần giải sâu Thứ nhất, ta cần có sở liệu tiếng nói lớn để thử nghiệm, đặc biệt sở liệu tiếng Việt, để chứng minh rõ ràng hiệu cài đặt Thứ hai, luận văn đánh giá kết so sánh C55x MELP với sản phẩm thương mại khác dựa chất lượng tiếng nói, cịn vấn đề khác độ phức tạp (trên tảng phần cứng) tiêu hao tài nguyên cần nghiên cứu sâu Thứ ba, việc tinh chỉnh tối ưu cài đặt cần thiết để chứng minh chất lượng tiếng nói, tăng cường hiệu giảm thiểu tiêu hao tài nguyên dẫn tới cài đặt nhiều MELP chip DSP Một hướng nghiên cứu khác khai thác thuật toán MELP nâng cao (MELPe, NATO STANAG-4591) cho tốc độ liệu thấp (không 2400bps mà hỗ trợ 1200bps, 600bps) cho chất lượng thoại tốt 64 TÀI LIỆU THAM KHẢO Bài báo liên quan Phạm Văn Hậu, Đinh Văn Ngọc, Nguyễn Anh Đức, Thái Trung Kiên (2014), Real-time Implemetation of MELP vocoder on TI fixed-point TMS320C55X DSP, Tạp chí Nghiên cứu KH&CN Quân sự, 02-2014, p715 Tài liệu tham khảo Sen M Kou, Bob H Lee (2001), Real-Time Digital Signal Processing – Implementations, Aplications and Experiments with the TMS320C55X, A JOHN WILEY & SONS, INC., PUBLICATION, p35-75 USDoD,MIL-STD-3005,Department of Defense Telecommunications Systems Standard, 1999 Wai C Chu (2003), Speech coding algorithms – Foundation and evolution of standardized coders, A JOHN WILEY & SONS, INC., PUBLICATION, chapter 1,9,17, pp 1-32, 264-268, 454-485 MELP product provided by Signalogic http://www.signalogic.com/index.pl?page=codec_samples MELP product provided by Vocal http://www.vocal.com/audio-examples/ i PHỤ LỤC A Mơ hình mã hóa dự đốn tuyến tính LPC Hệ số lọc Cơng-tắc chuyển có âm/khơng âm Pitch Period Bộ tạo chuỗi xung Tạo nhiễu trắng Lọc tổng hợp Voicing Hình A-1: Tiếng nói Gain Mơ hình tạo tiếng nói LPC [4] LPC dựa mơ hình đơn giản hóa để tạo tiếng nói, mơ tả hình A-1 Mơ hình xuất phát từ quan sát tính chất tín hiệu tiếng nói nỗ lực để mơ chế tạo tiếng nói người Những kết hợp quản, hình mơi thể lọc tổng hợp Tín hiệu đầu vào lọc tín hiệu kích thích mơ hình hóa chuỗi xung (tiếng nói có âm) nhiễu ngẫu nhiên (tiếng không âm) Do đó, tùy vào trạng thái tín hiệu có âm hay không âm, công tắc chuyển thiết lập để lựa chọn đầu vào phù hợp Mức lượng đầu điều khiển tham số gain Các mẫu tiếng nói tách thành khung rời nhau, với độ dài khung đủ lớn thuộc tính tín hiệu gần khơng đổi Trong khung, tham số mơ hình ước lượng từ mẫu tín hiệu, bao gồm: - Voicing: xác định xem khung tiếng nói có âm hay khơng âm Gain: liên quan chủ yếu đến mức lượng khung Hệ số lọc: đặc tả đáp ứng lọc tổng hợp Pitch period: khung có âm, khoảng thời gian xung kích thích liên tiếp Q trình ước lượng tham số lặp lặp lại khung tạo thành thông tin đại diện cho khung Như thế, thay phải truyền mẫu PCM, ta cần truyền tham số mô hình Nhờ việc xếp cẩn thận bit cho tham số để giảm thiểu biến dạng ta có tỉ lệ nén cao ii Việc ước lượng tham số trách nhiệm mã hóa Bộ giải mã nhận tham số sử dụng mơ hình tạo tiếng nói để tổng hợp tiếng nói Mơ hình hoạt động mà dạng sóng đầu hồn tồn khác so với tín hiệu ban đầu? Trên thực tế, dạng sóng đầu sử dụng tập hợp tham số điều kiện lọc ban đầu khác nhiễu trắng tạo ngẫu nhiên Mật độ phổ tiếng nói ban đầu lọc tổng hợp thu giữ lại, mật độ phổ tiếng nói tổng hợp gần với gốc nhờ vào phổ phẳng kích thích đầu vào Cách tiếp cận loại bỏ hết thơng tin pha dạng sóng ban đầu mà giữ lại biên độ phổ tần số Âm đầu tổng hợp nghe giống gốc, người nghe, pha có phạm vi tương đối thấp so với thông tin biên độ Dự đốn tuyến tính phương pháp thực hành ước lượng phổ, mật độ phổ giữ lại thông qua hệ số, hệ số sử dụng để tạo thành lọc tổng hợp Bộ lọc tổng hợp tạo hình phổ phẳng nhiễu đầu vào, để tạo mô phổ ban đầu Điều kích thích nhiễu trường hợp khơng âm, nhiên, trường hợp có tiếng, đầu vào chuỗi xung, chuỗi xung cách đều, điều lại vi phạm giả thiết mơ hình tự hồi quy Trong mơ hình tự hồi quy, tín hiệu kích thích có phổ phẳng, điều thỏa mãn nhiễu trắng xung đơn lẻ Đối với chuỗi xung, phổ tương ứng phẳng khoảng cách xung đủ lớn Sự vi phạm mơ hình Tự hồi quy tín hiệu có âm hạn chế mơ hình LPC Chuỗi xung cho kích thích cho cơng thức: [ n - iT ] i n0 1, T chu kì, số dương Sử dụng với [n] n0 0, chuỗi xung tuần hồn để tạo dạng sóng đầu tuần hồn, tín hiệu đầu có mật độ phổ gần giống với tín hiệu có âm Do hệ số lọc tổng hợp phải lượng tử hóa truyền đi, nên có số tính tốn để trì bit-rate thấp Sử dụng dự đốn bậc 10 nói chung đủ để thu toàn phổ cần thiết Bậc dự đốn dùng cho khung khơng âm Đối với khung có âm ta cần sử dụng bậc cao tùy thuộc vào tương quan mẫu khác Mơ hình LPC giải vấn đề cách sử dụng đầu vào chuỗi xung: chu kì kích thích đầu vào phù hợp với giá trị Pitch period ban đầu, chu kì tiếng iii nói tổng hợp với mật độ phổ tương tự gốc Theo cách này, ta tránh dự đoán bậc cao, đảm bảo mục tiêu bit-rate thấp B Thuật toán Levinson-Durbin [4] Phương trình vi phân tối ưu LPC xác định sau: M a R [i - k ] - R [ k ] , i 1 i s s k = 1,2, ,M Dưới dạng ma trận, ta có phương trình sau, gọi phương trình chuẩn: R s a = -rs Trong đó: Rs [1] Rs [M-1] Rs [0] R [1] Rs [0] Rs [M-2] s Rs Rs [0] Rs [ M -1] Rs [ M - 2] a a1 a2 rs R s [1] a M T R s [2] R s [M ] T Giả thiết nghịch đảo ma trận tương quan Rs tồn tại, véc-tơ LPC tối ưu là: a = -Rs-1rs Phương trình cho phép ta tìm LPC ta biết giá trị tự tương quan s[n] (tính hiệu Tự hồi quy), với l = 0,1,2, ,M Phương trình chuẩn hóa giải cách tìm ma trận nghịch đảo Rs Nói chung, việc nghịch đảo ma trận tính tốn tương đối dễ, có nhiều thuật tốn để giải phương trình này, dựa vào ưu điểm cấu trúc đặc biệt ma trận tương quan Phần phụ lục giới thiệu thuật toán Levinson-Durbin, thuật toán tốt phù hợp cho cài đặt thực tế Xét phương trình dạng ma trận: R[1] R[M] J R[0] R[1] R[0] R[M-1] a1 R[0] aM R[ M ] R[ M ] iv Với mục tiêu xác định nghiệm cho LPC: ai, i=1,2, ,M biết giá trị tự tương quan R[i] J giá trị sai số dự đoán bình phương trung bình tối thiểu phương sai nhiễu trắng đầu vào tổng hợp trình AR Trong thực hành, giá trị tự tương quan ước lượng từ mẫu tín hiệu J thường chưa biết; nhiên thuật tốn Levison-Durbin giải vấn đề tốt Thuật toán Levinson-Durbin tìm kiếm nghiệm cho dự đốn bậc M từ dự đốn bậc M-1 Đây q trình lặp đệ quy với nghiệm dự đoán bậc tìm thấy từ đầu, dừng lặp chạm đến bậc mong muốn Thuật tốn dựa hai tính chất ma trận tương quan: - Ma trận tương quan với kích thước cho trước chứa khối ma trận tương quan bậc thấp - Thứ hai, R[M] a0 b0 R[0] R[1] R[1] R[0] R[M-1] a1 b1 R[0] aM bM R[ M ] R[ M ] Thì: R[1] R[M] aM bM R[0] R[1] R[0] R[M-1] aM 11 bM 1 R[0] a0 b0 R[ M ] R[ M ] Tức là, ma trận tương quan bất biến với thay đổi cột hàng Tính chất suy trực tiếp từ định lý ma trận tương quan Toeplitz Một ma trận vuông Toeplitz phần tử đường chéo nhau, phần tử đường chéo song song với đường chéo Dự đốn bậc khơng Xét phương trình R 0 J Đối với bậc không, dự đốn ln ln 0; sai số dự đốn với tín hiệu Mở rộng phương trình thành chiều ta có: R[0] R[1] 1 J R[1] R[0] 0 , 0 v Đây trường hợp chiều với a1 = Do a1 = nên điều kiện lý tưởng đạt được, hạng tử xuất vế phải để cân phương trình, R 1 Từ tính chất thứ hai ma trận tương quan, ta có: R[0] R[1] 0 R[1] R[0] 1 J Dự đoán bậc Ta cần giải phương trình R[0] R[1] J1 R[1] R[0] a(1) Với a1(1) LPC dự đốn, số kí hiệu bậc dự đoán J1 giá trị sai số dự đốn bình phương trung bình tối thiểu có từ dự đoán bậc Như ta cần tìm hai giá trị Xét nghiệm có dạng: 1 0 k a (1) 1 , với k1 số Nhân hai vế với ma trận tương quan, ta có: R[0] R[1] R[0] R[1] 1 R[0] R[1] 0 k R[1] R[0] a (1) R[1] R[0] 0 R[1] R[0] 1 Thế hai phương trình dự đốn bậc vào, ta có: 0 J1 J k J 0 0 Suy ra: k1 R[1] J0 J0 Vậy ta có: a1(1) k1 , J1 J0 (1 k12 ) Như vậy, dự đốn bậc hồn thành Tham số k1 gọi hệ số phản chiếu (RC), suy từ bước dự đoán bậc Tương tự, ta mở rộng ba chiều sau: R[0] R[1] R[2] J1 R[0] R[1] R[2] 1 R[1] R[0] R[1] a (1) R[1] R[0] R[1] a (1) R[2] R[1] R[0] J1 R[2] R[1] R[0] 1 vi Với 1 phần tử thêm vào để cân phương trình: 1 R[2] a1(1) R[1] Dự đoán bậc hai Ta cần giải phương trình R[0] R[1] R[2] J R[1] R[0] R[1] a(2) R[2] R[1] R[0] a2(2) Giá trị chưa biết a1(2) , a2(2) giá trị sai số dự đốn bình phương trung bình tối thiểu J2 Nghiệm phương trình có dạng: a(2) a(1) k a(1) , với k2 RC a2(2) Nhân hai vế với ma trận tương quan, biến đổi phương trình bậc 1, ta có: J J1 1 k 2 1 J1 k2 R[2] a1(1) R[1] J1 Cuối cùng, ta có giá trị cần tìm là: a2(2) k2 a1(2) a1(1) k2a1(1) J2 J1(1 k22 ) Dự đoán bậc ba Nghiệm dự đốn bậc ba có dạng: a(3) a (2) (2) k a2 a2(3) a2(2) a1(2) (3) a3 Thực tương tự bậc 2, ta có giá trị cần tìm là: k3 R[3] a1( 2) R[2] a2( 2) R[1] J2 vii a3(3) k3 a2(3) a2(2) k3a1(2) a1(3) a1(2) k3a2(2) J J (1 k32 ) Thủ tục lặp lặp lại gặp bậc mong muốn Thuật tốn Levinson-Durbin tóm tắt sau Đầu vào thuật tốn hệ số tự tương quan R[l], đầu tham số LPC RC + Khởi tạo: l=0, ta có: R 0 J + Bước lặp: Đối với giá trị l = 0,1,2, , M - Bước 1: Tính RC thứ l: kl l 1 R l ai(l 1) R[l - i] [ ] J l 1 i 1 - Bước 2: Tính tốn LPC dự đoán bậc l: al( l ) kl ai(l ) ai(l 1) kl al(l i 1) , i = 1,2,3, , l – Dừng lại l = M - Bước 3: Tính tốn sai số dự đốn bình phương trung bình tối thiểu liên quan đến nghiệm bậc l: Jl Jl 1 (1 kl2 ) Đặt l = l + 1, quay lại Bước Giá trị LPC cuối là: ai( M ) , C i 1,2, , M Lượng tử hóa véc-tơ nhiều lớp (MSVQ) [4] Lượng tử hóa véc tơ (VQ): lượng tử véc-tơ Q với số chiều M kích thước N ánh xạ từ véc-tơ x không gian Ơ-cơ-lit M chiều RM vào tập hợp hữu hạn Y chứa N đầu điểm M chiều, gọi codevector codeword: Q : RM Y , x x1 , x2 , , x M , y1 , y2 , , yN Y , y i yi1 , y i , , y iM , T T i 1,2, , N Y gọi codebook lượng tử hóa Q ( x ) yi , i 1, , , N Độ phân giải (resolution): Độ phân giải lượng tử hóa véc-tơ xác định là: viii r lgN Đây số bit cần thiết để xác định codeword Mã hóa giải mã: Một lượng tử hóa véc-tơ bao gồm hai thành phần: mã hóa giải mã Mã hóa E ánh xạ từ RM vào tập số I = {1,2, ,N}, giải mã D ánh xạ từ tập số I vào tập tái tạo Y Cơng việc mã hóa nhận dạng vùng mà véc-tơ đầu vào nằm Giải mã đơn giản tìm kiếm bảng để xác định codebook Hoạt động tổng quát lượng tử hóa véc-tơ mơ tả qua phương trình sau: xˆ Q ( x ) D ( E ( x ) ) y i Khoảng cách phép đo sai lệch: Một khoảng cách phép đo biến dạng giá trị không âm d(x,Q(x)) liên quan đến q trình lượng tử hóa véc-tơ đầu vào x thành véc-tơ kết Q(x): 0, d ( x, Q( x)) 0, Q( x ) x Q( x ) x Gọi X véc-tơ ngẫu nhiên phân bố liên tục không gian RM với hàm mật độ xác suất fX(x), giá trị khoảng cách tính theo cơng thức: D = E{ d(X,Q(X))} = RM d(x,Q(x))fX(x)dx Nếu véc-tơ đầu vào có phân bố rời rạc, hàm khối lượng xác suất pX(x) sử dụng thay thế: D = E{ d(X,Q(X))} = d(xk,Q(xk))pX(xk) k Người ta thường sử dụng phép đo khoảng cách Ơ-cơ-lít hai véc-tơ: d ( x , xˆ ) x xˆ M ( xi xˆi ) i 1 Cài đặt VQ: Cài đặt lượng tử hóa véc-tơ cần phải tính chi phí khơng gian (bộ nhớ cần thiết cho codebook – chi phí nhớ) thời gian (các hoạt động cần thiết cho tìm kiếm codeword tốt – chi phí tính tốn) Để giảm thiểu chi phí cài đặt, vài cấu trúc đưa nhằm giảm chi phí khơng gian thời gian, hai Phụ lục giới thiệu sơ lược lược đồ cấu trúc cài đặt, gọi lượng tử hóa véc-tơ nhiều lớp, giúp tiết kiệm chi phí không gian thời gian Trong thực tế, tiết kiệm chi phí thường làm giảm hiệu hoạt động ứng dụng ix x Tính tốn khoảng cách Cực tiểu hóa y(1) i1 D1 i1 D2 i2 DK iK y(2) i2 (K) yi K i1 D1 y(1) i1 y(2) i2 D2 iK DK Hình A-2: i2 Q(x) y(K) i K Mã hóa (trên) giải mã (dưới) MSVQ Hình vẽ A-2 mơ tả sơ đồ mã hóa giải mã cho MSVQ với K lớp Trong giai đoạn mã hóa, véc-tơ đầu vào x so sánh với: xˆ yi(1) yi(22 ) yi(KK ) Trong đó, yi(l ) codevector thứ i từ codebook lớp thứ l Tức là, codebook Y1 có kích thước N1 chấp nhận codevector y i(1) , codebook Y2 có kích thước N2 chấp nhận codevector y Tất codevector có số (2) i2 chiều với véc-tơ đầu vào Bộ giải mã từ D1 tới DK lớp khác tạo codevector sử dụng số đầu vào.Bằng cách lựa chọn số khác nhau, mã hóa cố gắng cực tiểu hóa khoảng cách x xˆ Tập hợp số i1, i2 , , iK dùng để cực tiểu hóa truyền tới mã hóa MSVQ, codevectors từ lớp khác tổng hợp lại thành lượng tử hóa đầu vào Với MSVQ K lớp với codebook kích thước N1, N2, , NK Độ phân giải lớp là: x r1 lg N1, r2 lg N2 , , rK lg NK Và độ phân giải chung là: K r rl lg Nl lg Nl , l 1 l 1 l 1 K K (bits) Giả thiết ô nhớ cần thiết để lưu codevector chi phí nhớ (MC- memory cost) cho MSVQ K lớp là: K K l 1 l 1 MC N l rl Như thế, ta cần MC ô nhớ để lưu trữ toàn codebook Bảng A-1: Bảng so sánh MC độ phân giải thường gặp Độ phân giải(bits) VQ MSVQ lớp MSVQ lớp 64 16 (3,3) 12 (2,2,2) 256 32 (4,4) 20 (2,3,3) 10 1024 64 (5,5) 32 (3,3,4) 15 32768 384 (7,8) 96 (5,5,5) 20 1048576 2048 (10,10) 320 (6,7,7) Bảng A-1 cho thấy so sánh kết MC độ phân giải thường gặp Cột thứ giá trị phân giải (tính bits), cột thứ hai giá trị MC VQ khơng ràng buộc, tính 2r, cột thứ ba thứ tư MSVQ lớp lớp tương ứng Giá trị ngoặc giá trị r1, r2 r3: r = r1+r2+r3 Quan sát từ bảng ta thấy giá trị MC cho MSVQ thấp, đặc biệt độ phân giải tăng lên Chẳng hạn, độ phân giải r = 10, VQ không ràng buộc dùng tới 16 lần khối lượng nhớ cần cho MSVQ lớp Khi số lượng lớp MSVQ tăng lên cần nhớ Nói chung, hệ thống chi phí cao cần nhiều nhớ cung cấp hiệu tốt Thủ tục tìm kiếm: MSVQ K lớp với codebook kích thước N1, N2, , NK Cơng việc mã hóa tìm kiếm số tốt tạo thành véc-tơ i = [i1, i2, , iK] để cực tiểu hóa sai số lượng tử hóa Có nhiều kĩ thuật tìm kiếm khác dẫn đến thủ tục thiết kế, độ phức tạp tính tốn, hiệu tổng qt khác Việc tìm kiếm số tối ưu địi hỏi phải tìm kiếm tồn (vét cạn) tất tập số Thực tế người ta thường sử dụng kĩ thuật tìm nghiệm tối ưu cục nhằm giảm độ phức tạp tính tốn Tìm kiếm tuần tự, bước tiến hành tìm số tối ưu, sau cố định số tìm được, xi tiếp tục tìm số tối ưu bước Tìm kiếm theo phương pháp tổng quát tìm kiếm tuần tự, khác sang bước ta truyền tập số Độ phức tạp tính tốn (CC) Đối với tìm kiếm tồn bộ, ta cần tính tất khoảng cách tất lớp: K CC N N N K N i i 1 Đối với tìm kiếm tuần tự, bước tìm kiếm số, số lượng tính tốn là: K CC N N N K N i i 1 Đối với tìm kiếm theo cây, nói chung số lượng tính tốn khoảng cách là: C C N m in ( N , M a ) N m i n ( m i n ( N , M a ) N , M a ) N Ở lớp thứ nhất, N1 số tính tốn khoảng cách cần thiết để xác định codevector Ma Ở lớp thứ hai, N2 số tính tốn khoảng cách cần thiết cho Ma N1 (tùy xem giá trị nhỏ hơn) Thiết kế codebook Thiết kế codebook dựa phép đo khoảng cách bình phương Ơ-cơ-lít nhằm cực tiểu hóa tổng khoảng cách: D ( x k xˆ k ) T W k ( x k xˆ k ) , k Trong đó, Wk ma trận trọng số đường chéo liên kết với xk Mở rộng phương trình này, ta có: ( xk Bk y )T Wk ( xk Bk y ) D k xkTWk xk y T BkTWk xk y T BkTWk Bk y k k k Đặt: v BkT Wk xk , k Q BkT Wk Bk , k Do xkT Wk xk k xii Ta có: D Do yT v yT Qy Để cực tiểu hóa D, người ta tiến hành sai phân phương trình để tìm y(l) 1 đưa kết 0, dẫn tới: v(l ) Q(l ) y (l ) hay y (l ) Q(l ) v(l ) Các nghiên cứu Q(l) ma trận đường chéo với phần tử đường chéo khác 0, nghịch đảo tồn dễ tìm