Báo cáo Nghiên cứu giải pháp giảm nhiễu sử dụng bộ lọc kalman nhằm nâng cao chất lượng tiếng nói

pdf 70 trang thiennha21 14/04/2022 9030
Bạn đang xem 20 trang mẫu của tài liệu "Báo cáo Nghiên cứu giải pháp giảm nhiễu sử dụng bộ lọc kalman nhằm nâng cao chất lượng tiếng nói", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbao_cao_nghien_cuu_giai_phap_giam_nhieu_su_dung_bo_loc_kalma.pdf

Nội dung text: Báo cáo Nghiên cứu giải pháp giảm nhiễu sử dụng bộ lọc kalman nhằm nâng cao chất lượng tiếng nói

  1. ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU GIẢI PHÁP GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN NHẰM NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Mã số: T2015-07-03 Chủ nhiệm đề tài: ThS. Dương Ngọc Pháp Đà Nẵng, 12/2015
  2. ĐẠI HỌC ĐÀ NẴNG TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KHOA HỌC VÀ CÔNG NGHỆ CẤP CƠ SỞ NGHIÊN CỨU GIẢI PHÁP GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN NHẰM NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Mã số: T2015-07-03 Xác nhận của cơ quan chủ trì đề tài Chủ nhiệm đề tài Đà Nẵng, 12/2015
  3. MỤC LỤC MỤC LỤC DANH MỤC HÌNH VẼ 1 DANH MỤC BẢNG BIỂU 3 DANH MỤC TỪ VIẾT TẮT 4 THÔNG TIN KẾT QUẢ NGHIÊN CỨU 6 MỞ ĐẦU 8 I. TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU THUỘC LĨNH VỰC ĐỀ TÀI TRONG VÀ NGOÀI NƯỚC 8 1. NGOÀI NƯỚC 8 2. TRONG NƯỚC 8 II. TÍNH CẤP THIẾT CỦA ĐỀ TÀI 8 III. MỤC TIÊU CỦA ĐỀ TÀI 8 IV. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 9 1. ĐỐI TƯỢNG NGHIÊN CỨU 9 2. PHẠM VI NGHIÊN CỨU 9 V. NỘI DUNG NGHIÊN CỨU 9 CHƯƠNG 1:TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI 10 1.1. GIỚI THIỆU CHƯƠNG 10 1.2. NHIỄU 10 1.3. NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI 13 1.4. CÁC KỸ THUẬT GIẢM NHIỄU 14 1.5. KẾT LUẬN CHƯƠNG 15 CHƯƠNG 2:THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 16 2.1. GIỚI THIỆU CHƯƠNG 16 2.2. BỘ LỌC KALMAN 16 2.2.1. Tổng quan về bộ lọc Kalman 16 2.2.2. Mã hóa dự đoán tuyến tính 17 2.2.3. Cấu trúc bộ lọc Kalman 17 2.2.4. Ưu nhược điểm của bộ lọc Kalman 23 2.2.5. Bộ lọc Kalman mở rộng 24 2.3. THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 25 2.3.1. Sơ đồ khối hệ thống 25 2.3.2. Giảm nhiễu sử dụng bộ lọc Kalman 27 2.3.3. Ước lượng hệ số mô hình 31 2.3.4. Ước lượng nhiễu 32 2.4. KẾT LUẬN CHƯƠNG 35 CHƯƠNG 3:CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ 36 i
  4. MỤC LỤC 3.1. GIỚI THIỆU CHƯƠNG 36 3.2. CƠ SỞ DỮ LIỆU 36 3.3. CÁC TIÊU CHÍ ĐÁNH GIÁ 37 3.3.1. Phương pháp đánh giá chủ quan 37 3.3.2. Phương pháp đánh giá khách quan 40 3.4. KẾT LUẬN CHƯƠNG 44 CHƯƠNG 4:THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ 45 4.1. GIỚI THIỆU CHƯƠNG 45 4.2. KẾT QUẢ ĐÁNH GIÁ VÀ PHÂN TÍCH 45 4.2.1. Kết quả đánh giá theo phương pháp SegSNR 45 4.2.2. Kết quả đánh giá theo phương pháp LLR 48 4.2.3. Đánh giá theo phương pháp cảm quan PESQ trên các môi trường nhiễu khác nhau 51 4.2.4. Đánh giá hiệu quả giảm nhiễu trên các môi trường nhiễu khác nhau 54 4.2.5. Kết quả đánh giá CEP-PESQ-WSS-SegSNR với các thuật toán giảm nhiễu 58 4.3. KẾT LUẬN CHƯƠNG 63 KẾT LUẬN 64 KIẾN NGHỊ 64 ii
  5. DANH MỤC HÌNH VẼ DANH MỤC HÌNH VẼ Hình 1.1. a) Biên độ và b) Trung bình phổ biên độ nhiễu xe (Car) 10 Hình 1.2. a) Biên độ và b) Trung bình phổ biên độ nhiễu đường phố (Street) 11 Hình 1.3. a) Biên độ và b) Trung bình phổ biên độ nhiễu nhà hàng (Restaurant) 11 Hình 1.4. Mô hình nhiễu cộng 12 Hình 1.5. Dạng sóng tín hiệu tiếng nói trong miền thời gian ứng với tín hiệu sạch x(n), tín hiệu bị nhiễu y(n) và tín hiệu sau khi được giảm nhiễu 퐱(퐧) 12 Hình 1.6. Dạng sóng và ảnh phổ của các tín hiệu tiếng nói: sạch, bị nhiễu 13 Hình 1.7. Sơ đồ khối tổng quát thuật toán giảm nhiễu 13 Hình 2.1. Cơ chế tạo tiếng nói theo mô hình LPC 17 Hình 2.2. Quá trình thực hiện lọc Kalman 22 Hình 2.3. Sơ đồ thực hiện lọc Kalman với các phương trình toán 23 Hình 2.4. Sơ đồ khối toàn hệ thống 26 Hình 2.5. Kỹ thuật phân khung 26 Hình 2.6. Thuật toán bộ lọc Kalman 30 Hình 2.7. Sơ đồ khối ước lượng ma trận hệ số hồi quy 31 Hình 2.8. Sơ đồ ước lượng công suất nhiễu tác động 33 Hình 2.9. (a) Tín hiệu bị gây nhiễu 5dB, (b) SNR trước ξ ước lượng, (c) xác suất vắng mặt tiếng nói PH0|Y, (d) xác suất hiện diện tiếng nói PH1|Y 34 Hình 3.1. Đáp ứng tần số của bộ lọc IRS 36 Hình 4.1. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn ôtô (Car) 45 Hình 4.2. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn đám đông (Bable) 46 Hình 4.3. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu trắng (White) 46 Hình 4.4. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tàu hỏa (Train) 47 Hình 4.5. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu đường phố (Street) 47 Hình 4.6. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng 48 Hình 4.7. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng 49 Hình 4.8. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng 49 Hình 4.9. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tàu hỏa (Train) 50 Trang 1
  6. DANH MỤC HÌNH VẼ Hình 4.10. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng 50 Hình 4.11. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền thời gian theo thông số PESQ cho 5 môi trường nhiễu 51 Hình 4.12. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền tần số biến đổi Fourier nhanh theo thông số PESQ cho 5 môi trường nhiễu 52 Hình 4.13. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền tần số biến đổi Fourier thời gian ngắn theo thông số PESQ cho 5 môi trường nhiễu 52 Hình 4.14. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-TD 54 Hình 4.15. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-FFT 55 Hình 4.16. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-STFT 56 Hình 4.17. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu ôtô 58 Hình 4.18. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu đám đông 59 Hình 4.19. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu trắng 60 Hình 4.20. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu tàu hỏa 61 Hình 4.21. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu đường phố 62 Trang 2
  7. DANH MỤC BẢNG BIỂU DANH MỤC BẢNG BIỂU Bảng 3.1: Đánh giá liên quan đến tất cả các trật tự thuận và nghịch trong sắp xếp của tín hiệu cần đánh giá và tín hiệu mẫu cũng như tất cả những kết hợp có thể giữa các tín hiệu mẫu 38 Bảng 3.2: Thang đánh giá DCR 38 Bảng 3.3: Thang đánh giá CCR 39 Bảng 3.4. Thang đánh giá MOS 40 Trang 3
  8. DANH MỤC TỪ VIẾT TẮT DANH MỤC TỪ VIẾT TẮT Từ viết tắt Tiếng Anh Tiếng Việt Đánh giá theo giá trị ACR Absolute Categories Rating tuyệt đối CCR Compison Category Rating Đánh giá bằng cách so sánh CEP Cepstrum Distance Khoảng cách Cepstrum DCR Degradation Category Rating Đánh giá suy giảm chất lượng DFT Discrete Fourier Transform Phép biến đổi Fourier rời rạc DWT Discrete Wavelet Transform Phép biến đổi Wavelet rời rạc FFT Fast Fourier Transform Phép biến đổi Fourier nhanh FRs Frames Số khung Phép biến đổi ngược Fourier IDFT Inverse Discrete Fourier Transform rời rạc Phép biến đổi ngược Wavelet IDWT Discrete Wavelet Transform rời rạc Institute of Electrical and IEEE Viện kỹ nghệ Điện và Điện tử Electronics Engineers Hệ thống tham chiếu trung IRS Intermediate Reference System gian International Telecommunications Hiệp hội tiêu chuẩn viễn ITU-T Union-Telecomunication thông quốc tế LLR Log Likelihood Ratio Logrithm Minium Mean-Squed Sai lệch trung bình bình LogMMSE Error phương tối thiểu-Logarit LPC Linear Predictive Coding Mã hóa dự đoán tuyến tính MIMO Multi Input Multi Output Multi đầu vào, Multi đầu ra MISO Multi Input Singel Output Multi đầu vào, một đầu ra Sai lệch trung bình bình MMSE Minimum Mean Sque Error phương tối thiểu MOS Mean Opinion Scores MSS Magnitude Spectral Subtraction Trừ phổ biên độ NOIZEUS Noisy Speech Corpus NSS Non-line Spectral Subtraction Trừ phổ phi tuyến. OE Objective Evaluation Đánh giá khách quan PDF Probability Density Function Hàm mật độ xác suất Trang 4
  9. DANH MỤC TỪ VIẾT TẮT Perceptual Evaluation of Speech Đánh giá cảm quan chất PESQ Quality lượng thoại PSD Power Spectral Density Mật độ phổ công suất Đo đạc cảm quan chất lượng PSQM Perceptual speech quality measure thoại PSS Power Spectral Subtraction Trừ phổ công suất SE Subjective Evaluation Đánh giá chủ quan SE Speech Enhancement Tăng cường tiếng nói SegSNR Segmental Signal-to-Noise Ratio SNR trên từng khung SIMO Singel Input Multi Output Một đầu vào, nhiều đầu ra SISO Singel Input Singel Output Một đầu vào, một đầu ra SNR Signal-to-noise ratio Tỷ số tín hiệu trên nhiễu SPP Speech Presence Probability Xác suất hiện diện tiếng nói SS Spectral Subtraction Phương pháp trừ phổ. Phép biến đổi Fourier thời STFT Short Time Fourier Transform gian ngắn TD Time Domain Miền thời gian Thăm dò sự hoạt động của VAD Voice Activity Detection tiếng nói WF Wiener Filter Bộ lọc Wiener WSS Weighted Spectral Slope Độ dốc phổ được trọng số hóa Trang 5
  10. THÔNG TIN KẾT QUẢ NGHIÊN CỨU ĐẠI HỌC ĐÀ NẴNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG CĐ CÔNG NGHỆ THÔNG TIN Độc lập – Tự do – Hạnh phúc THÔNG TIN KẾT QUẢ NGHIÊN CỨU 1. Thông tin chung: - Tên đề tài: NGHIÊN CỨU GIẢI PHÁP GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN NHẰM NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI - Mã số: T2015-07-03 - Chủ nhiệm: DƯƠNG NGỌC PHÁP - Thành viên tham gia: không - Cơ quan chủ trì: Trường Cao đẳng Công nghệ thông tin – Đại học Đà Nẵng - Thời gian thực hiện: từ ngày 01/01/2015 đến ngày 31/12/2015 2. Mục tiêu: - Nghiên cứu mô hình cấu trúc, thuật toán của bộ lọc Kalman ứng dụng trong việc giảm nhiễu cho tín hiệu tiếng nói. - Đánh giá hiệu quả kỹ thuật giảm nhiễu cho tín hiệu tiếng nói sử dụng bộ lọc Kalman, qua đó so sánh với các kỹ thuật đã nghiên cứu trước đó. 3. Tính mới và sáng tạo: - Mô hình hồi qui với các hệ số của bộ lọc Kalman được xây dụng cho cả tín hiệu tiếng nói và nhiễu ước lượng cho kết quả giảm nhiễu khá tốt với nhiều loại nhiễu khác nhau trong môi trường thực. 4. Tóm tắt kết quả nghiên cứu: - Nghiên cứu đặc điểm tiếng nói, tính chất của nhiễu, nguyên lý bộ lọc Kalman và ứng dụng trong xử lý tín hiệu thống kê. - Xây dựng thuật toán giảm nhiễu sử dụng bộ lọc Kalman với các hệ số hồi qui được thực hiện cho cả tín hiệu tiếng nói và nhiễu ước lượng. - Mô phỏng thuật toán với nhiều loại nhiễu và mức nhiễu khác nhau sử dụng ngôn ngữ lập trình Matlab. - So sánh, đánh giá kết quả mô phỏng với các kỹ thuật giảm nhiễu đã được nghiên cứu trước đó (kỹ thuật trừ phổ, kỹ thuật cực tiểu hóa bình phương biên độ, sử dụng bộ lọc phần trăm). 5. Tên sản phẩm: - Báo cáo tổng kết đề tài; - Bài báo đăng trên kỷ yếu hội thảo cấp trường; Trang 6
  11. THÔNG TIN KẾT QUẢ NGHIÊN CỨU - Bài báo đăng trên tạp chí khoa học công nghệ Đại học Đà Nẵng. 6. Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp dụng: - Về mặt giáo dục - đào tạo: phục vụ công tác giảng dạy, nghiên cứu. - Về mặt khoa học: đóng góp đáng kể của đề tài là trình bày một kỹ thuật giảm nhiễu sử dụng bộ lọc Kalman điều chỉnh với các hệ số bộ lọc được xây dựng cho cả tín hiệu tiếng nói và nhiễu, qua đó so sánh đánh giá kết quả giảm nhiễu nâng cao chất lượng tiếng nói với các thuật toán đã nghiên cứu trước đó. - Về sản phẩm ứng dụng: ứng dụng thuật toán trong việc xây dựng phần mềm giảm nhiễu nâng cao chất lượng tiếng nói. 7. Hình ảnh, sơ đồ minh họa chính: Hình 4.1. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn ôtô (Car) Đà Nẵng, ngày 20 tháng 12 năm 2015 Cơ quan chủ trì Chủ nhiệm đề tài Dương Ngọc Pháp Trang 7
  12. MỞ ĐẦU MỞ ĐẦU I. TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU THUỘC LĨNH VỰC ĐỀ TÀI TRONG VÀ NGOÀI NƯỚC 1. Ngoài nước Trong cuộc sống con người phương thức giao tiếp chủ yếu với nhau là tiếng nói. Với sự phát triển mạnh mẽ của điện thoại tế bào, nhu cầu giao tiếp tại mọi lúc, mọi nơi, mọi hoàn cảnh đã trở thành thiết yếu. Hầu hết chất lượng tiếng nói trong các hệ thống thông tin liên lạc đều bị suy giảm do tác động bởi nhiễu. Vì vậy việc nghiên cứu và đưa ra các kỹ thuật nhằm loại bỏ nhiễu đóng vai trò quan trọng trong việc đảm bảo chất lượng và tính trung thực của tín hiệu tiếng nói trong các hệ thống thông tin liên lạc, mặc dù công việc này là không đơn giản do đặc điểm của từng loại nhiễu và cường độ nhiễu khác nhau. 2. Trong nước Việc nâng cao chất lượng tiếng nói bao gồm việc cải thiện chất lượng, tính dễ hiểu và giảm sự khó chịu cho người nghe bằng cách giảm tối đa nhiễu tác động vào tiếng nói. Các kỹ thuật giảm nhiễu cho tín hiệu tiếng nói đã được nghiên cứu, đánh giá bao gồm kỹ thuật giảm nhiễu dựa trên thuật toán trừ phổ (SS), kỹ thuật giảm nhiễu với ước lượng MMSE, kỹ thuật giảm nhiễu sử dụng bộ lọc Wiener (WF), Wavelet đã được nghiên cứu và thực hiện cho các ứng dụng giảm nhiễu. II. TÍNH CẤP THIẾT CỦA ĐỀ TÀI Các phương pháp giảm nhiễu dựa trên thuật toán trừ phổ, ước lượng MMSE, bộ lọc Wiener, gặp khó khăn với các loại nhiễu khác nhau trong môi trường thực khi phổ nhiễu ảnh hưởng không đồng nhất lên tín hiệu tiếng nói, trong đó nhiều loại nhiễu không ổn định theo thời gian (không phải là các quá trình dừng), và nhiều trường hợp không thể ước lượng được. Trên cơ sở đó, yêu cầu một kỹ thuật có khả năng giảm nhiễu cho tín hiệu tiếng nói trong môi trường với nhiều loại nhiễu và mức nhiễu khác nhau. Đề tài “Nghiên cứu giải pháp giảm nhiễu sử dụng bộ lọc Kalman nhằm nâng cao chất lượng tiếng nói” đề xuất kỹ thuật giảm nhiễu cho tín hiệu tiếng nói dựa trên phương pháp tính toán truy hồi sử dụng bộ lọc Kalman. Kỹ thuật này khá hiệu quả với các loại nhiễu khác nhau trong môi trường thực. III. MỤC TIÊU CỦA ĐỀ TÀI Mục tiêu 1: Nghiên cứu mô hình cấu trúc, thuật toán của bộ lọc Kalman ứng dụng trong việc giảm nhiễu cho tín hiệu tiếng nói. Trang 8
  13. MỞ ĐẦU Mục tiêu 2: Đánh giá hiệu quả kỹ thuật giảm nhiễu cho tín hiệu tiếng nói sử dụng bộ lọc Kalman, qua đó so sánh với các kỹ thuật đã nghiên cứu trước đó. IV. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 1. Đối tượng nghiên cứu - Mô hình âm học, đặc điểm tiếng nói, đặc tính của nhiễu. - Cấu trúc bộ lọc Kalman. - Ngôn ngữ Matlab thực hiện thuật toán. - Nghiên cứu các phương pháp đánh giá. 2. Phạm vi nghiên cứu - Các đặc điểm của tín hiệu tiếng nói. - Lý thuyết ước lượng và dự đoán. - Các kỹ thuật giảm nhiễu cho tín hiệu tiếng nói. - Ứng dụng bộ lọc Kalman để giảm nhiễu cho tín hiệu tiếng nói. V. NỘI DUNG NGHIÊN CỨU 1. Trình bày về đặc điểm tiếng nói, tính chất của nhiễu, nguyên lý bộ lọc Kalman và ứng dụng trong xử lý tín hiệu thống kê. 2. Ứng dụng bộ lọc Kalman cho việc giảm nhiễu nâng cao chất lượng tiếng nói. 3. Kết quả mô phỏng sử dụng ngôn ngữ Matlab. 4. Đưa ra các đánh giá, so sánh kết quả thu được với các kỹ thuật giảm nhiễu đã nghiên cứu. Trang 9
  14. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI 1.1. GIỚI THIỆU CHƯƠNG Chương này sẽ trình bày tổng quan về các loại nhiễu và cường độ nhiễu trong môi trường tác động lên tín hiệu tiếng nói, từ đó yêu cầu phải có các kỹ thuật giảm nhiễu nhằm nâng cao chất lượng tiếng nói. Các kỹ thuật được đưa ra để phân tích sẽ được sử dụng để so sánh, đánh giá về hiệu quả giảm nhiễu với các môi trường nhiễu khác nhau với thuật toán sử dụng bộ lọc Kalman sẽ được trình bày ở chương tiếp theo. 1.2. NHIỄU Nhiễu tồn tại mọi nơi, ví dụ nhiễu trên đường phố (Street: phương tiện giao thông, công trường đang thi công), nhiễu trong xe hơi (Car: tiếng ồn động cơ, gió), nhiễu trong văn phòng (Office: tiếng ồn quạt máy tính để bàn, máy điều hòa không khí), nhiễu trong nhà hàng (Restaurant: tiếng xì xào), Đặc tính khác của các kiểu nhiễu khác nhau là giản đồ phổ tín hiệu, liên quan đến sự phân bố năng lượng nhiễu trong miền tần số. Ví dụ, năng lượng chính của nhiễu gió tập trung ở dải tần số thấp, thường là dưới 500Hz. Ví dụ minh họa về các loại nhiễu được trình bày ở hình 1.1, hình 1.2 và hình 1.3 về so sánh biên độ và phổ biên độ của các loại nhiễu xe (Car), nhiễu đường phố (Street) và nhiều nhà hàng (Restaurant). a) b) Hình 1.1. a) Biên độ và b) Trung bình phổ biên độ nhiễu xe (Car) Trang 10
  15. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI a) b) Hình 1.2. a) Biên độ và b) Trung bình phổ biên độ nhiễu đường phố (Street) a) b) Hình 1.3. a) Biên độ và b) Trung bình phổ biên độ nhiễu nhà hàng (Restaurant) Trong 3 nguồn nhiễu được ví dụ ở trên, nhiễu trong xe hơi (Car) có mật độ phổ phẳng, được xem là ổn định theo thời gian (hình 1.1) trong khi nhiễu tiếng ồn đường Trang 11
  16. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI phố (Street) và nhiễu trong nhà hàng (Restaurant) có mật độ không đồng đều theo thời gian. Như đã đề cập từ đầu thì đề tài này chỉ giới hạn giải pháp giảm nhiễu cho tín hiệu tiếng nói đơn kênh bị suy hao do cơ chế tác động nhiễu cộng âm học (additive acoustic noise). Như trình bày ở hình 1.4, tín hiệu tiếng nói bị nhiễu y(n) nhận được tại microphone thực chất được tạo ra từ một nguồn tín hiệu tiếng nói sạch x(n) cộng với nhiễu nền v(n). (푛) (푛) Noise ̂(푛) reduction 푣(푛) Hình 1.4. Mô hình nhiễu cộng Với giả thiết tín hiệu x(n) và v(n) là không tương quan, bài toán đặt ra ở đây là thiết kế bộ giảm nhiễu (noise reduction) để tái tạo tín hiệu tăng cường tại ngõ ra x̂(n) có chất lượng gần giống với tín hiệu gốc x(n) nhất. Hình 1.5. Dạng sóng tín hiệu tiếng nói trong miền thời gian ứng với tín hiệu sạch x(n), tín hiệu bị nhiễu y(n) và tín hiệu sau khi được giảm nhiễu 퐱̂(퐧) Trang 12
  17. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Các thuật toán nâng cao chất lượng tiếng nói thường bị giới hạn với dải các mức tỷ số tín hiệu trên nhiễu (SNR) khác nhau của tín hiệu tiếng nói trong môi trường thực. Và yêu cầu quan trọng là các thuật toán cần phải hiệu quả trong việc giảm nhiễu và cải thiện chất lượng tiếng nói với nhiều mức SNR khác nhau. 1.3. NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Nâng cao chất lượng tiếng nói là việc cải thiện (tăng cường) các khía cạnh nhận thức của tiếng nói bị tác động bởi nhiễu môi trường với sự hỗ trợ của các công cụ xử lý tín hiệu. Trên cơ sở đó yêu cầu xây dựng các kỹ thuật giảm nhiễu có khả năng giảm các mức nhiễu khác nhau nhằm nâng cao chất lượng tiếng nói, hoạt động được mô tả như sơ đồ ở hình sau: Hình 1.6. Dạng sóng và ảnh phổ của các tín hiệu tiếng nói: sạch, bị nhiễu và tín hiệu đã được tăng cường Sơ đồ khối của thuật toán giảm nhiễu được trình bày như trong hình 1.7. ෠(푛) Y(n) Phân tích tín FFT/ Hàm xử lý IFFT/ Xếp hiệu thành các chồng và DWT giảm nhiễu IDWT cộng frame Tín hiệu Tín hiệu bị sạch nhiễu Ước lượng nhiễu Hình 1.7. Sơ đồ khối tổng quát thuật toán giảm nhiễu Trang 13
  18. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI Trong mô hình cải thiện chất lượng tín hiệu tiếng nói bị nhiễu này tín hiệu ngõ vào đầu tiên được phân tích thành các khung ngắn (frames) có cấu trúc ổn định. Tiếp theo đó sẽ thực hiện phép biến đổi Fourier nhanh (FFT) hoặc phép biến đổi Wavelet rời rạc (DWT) được áp dụng để có thể biểu diễn và khai thác đặc tính của tín hiệu và nhiễu hiệu quả hơn trong miền biến đổi, đồng thời giúp cho việc áp dụng các kỹ thuật ước lượng nhiễu tương ứng trong mỗi miền đạt độ chính xác cao hơn. Dựa trên kỹ thuật giảm nhiễu với mức nhiễu đã được ước lượng, các khung tín hiệu sau khi được giảm nhiễu trong miền tần số hoặc miền Wavelet sẽ được biến đổi ngược lại (IDFT/IDWT) qua miền thời gian trước khi được tổng hợp lại bằng phương pháp cộng xếp chồng (overlap and adding) ghép khung để khôi phục tín hiệu tiếng nói tại ngõ ra. Có 4 hướng nghiên cứu chính để thiết kế các quy luật giảm nhiễu: - Dựa trên tính tuần hoàn (periodicity) của tín hiệu tiếng nói. - Dựa trên việc mô phỏng mô hình thính giác (auditory model). - Sử dụng các bộ ước lượng tuyến tính tối ưu (linear estimators). - Dựa trên mô hình thống kê (statistical models) sử dụng các phương pháp ước lượng phi tuyến tối ưu (non-linear estimators). Trong đề tài này xây dựng thuật toán giảm nhiễu dựa trên mô hình thống kê với các bộ ước lượng tuyến tính tối ưu. Các kỹ thuật ước lượng tuyến tính tối ưu được lựa chọn vì khá đơn giản để thực hiện và rất hiệu quả cho các loại nhiễu không quá phức tạp. Huấn luyện các mô hình thống kê để mô hình hóa đặc tính của tín hiệu tiếng nói cũng như đặc tính của các nguồn nhiễu khác nhau. 1.4. CÁC KỸ THUẬT GIẢM NHIỄU Như vậy, từ các yêu cầu trình bày ở trên thì nhiều thuật toán với mục đích giảm nhiễu nâng cao chất lượng tiếng nói ra đời. Những thuật toán này có thể được chia thành ba nhóm chính: - Các thuật toán trừ phổ: là phương pháp khôi phục công suất hay biên bộ phổ của tín hiệu tiếng nói bị tác động bởi nhiễu cộng. Khi đó thuật toán sẽ có nhiệm vụ ước lượng phổ nhiễu trung bình khi vắng mặt tiếng nói và thực hiện trừ nhiễu khỏi tín hiệu tiếng nói bị nhiễu. - Các thuật toán dựa trên mô hình thống kê: nguyên lý của các kỹ thuật này dựa trên nền tảng ước lượng thống kê. Với các thông số đo lường được biểu diễn bằng các hệ số biến đổi Fourier của tín hiệu tiếng nói bị nhiễu để đưa ra các ước lượng tuyến tính (hoặc phi tuyến) các thông số của tín hiệu tiếng nói sạch. - Các thuật toán không gian con: không giống như các thuật toán ở trên, các thuật toán không gian con có nguồn gốc dựa vào lý thuyết đại số tuyến tính. Cụ thể, các Trang 14
  19. Chương 1: TỔNG QUAN VỀ NÂNG CAO CHẤT LƯỢNG TIẾNG NÓI thuật toán này dựa trên nguyên lý tín hiệu sạch có thể bị giới hạn trong không gian con của không gian Euclidean. Trên thực tế thì các thuật toán giảm nhiễu chỉ có thể cải thiện được một phần chất lượng của tiếng nói. Nó có thể làm giảm được nhiễu nền trong tiếng nói nhưng nó sẽ làm gia tăng thêm độ méo của tín hiệu tiếng nói, chính điều này làm giảm đi tính dễ nghe của tiếng nói. Do đó, việc thiết kế một thuật toán giảm nhiễu phải đảm bảo yêu cầu là giảm được nhiễu và không được gây ra méo trong sự cảm nhận tín hiệu tiếng nói. 1.5. KẾT LUẬN CHƯƠNG Như vậy chương đầu tiên đã trình bày tổng quan về môi trường nhiễu tác động lên tín hiệu tiếng nói, sơ đồ khối và các yêu cầu cơ bản để xây dựng kỹ thuật giảm nhiễu nhằm nâng cao chất lượng tiếng nói. Những cơ sở lí thuyết cơ bản đó sẽ là tiền đề để tiếp tục tập trung vào khảo sát, xây dựng sơ đồ khối cho thuật toán giảm nhiễu sử dụng bộ lọc Kalman ở những phần tiếp theo. Trang 15
  20. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 2.1. GIỚI THIỆU CHƯƠNG Bộ lọc Kalman được sử dụng rộng rãi trong xử lý tín hiệu thống kê và lý thuyết ước lượng, đặc biệt là các hệ thống nhân quả, ứng dụng thời gian thực. Ứng dụng của bộ lọc Kalman cho việc nâng cao chất lượng tiếng nói bị tác động bởi nhiễu môi trường sẽ được trình bày ở chương này. Các hệ số của mô hình hồi quy cho cả tín hiệu tiếng nói và nhiễu sẽ được xác định dựa trên việc phân tích mô hình LPC. Đồng thời, việc ước lượng nhiễu sẽ được thực hiện dựa trên xác suất hiện diện tiếng nói (SPP). Từ đó thực hiện mô hình hóa hệ thống và lựa chọn các thông số cho bộ lọc Kalman để chạy thử nghiệm thuật toán trên các tín hiệu mẫu. 2.2. BỘ LỌC KALMAN Bộ lọc Kalman là một trong những công cụ quan trọng được ứng dụng trong việc ước lượng các quá trình ngẫu nhiên từ các đo lường có nhiễu. Năm 1960, Rudolph E. Kalman công bố bài báo nổi tiếng về mô tả phương pháp tính truy hồi để giải quyết bài toán lọc thông tin rời rạc tuyến tính: “A New Approach to Line Filtering and Prediction Problems” [7]. Từ đó đến nay, cùng với sự phát triển kỹ thuật số, bộ lọc Kalman với nhiều biến thể đã trở thành chủ đề nghiên cứu sôi nổi và được ứng dụng trong nhiều nghành kỹ thuật khác nhau: trong tự động hóa, trong định vị cũng như trong viễn thông và nhiều lĩnh vực khác Theo nguyên lý bộ lọc, tín hiệu ước lượng và các giá trị đo lường được mô hình hóa bằng các phương trình trực quan, có quan hệ nghiêm ngặt và được đưa ra dựa trên nguyên tắc trực giao. 2.2.1. Tổng quan về bộ lọc Kalman Một cách khái quát, bộ lọc Kalman là tập hợp các phương trình toán học mô tả một phương pháp tính toán truy hồi cho phép ước đoán trạng thái của một quá trình sao cho trung bình sai lệch giữa giá trị thực và giá trị ước lượng là nhỏ nhất. Bộ lọc Kalman rất hiệu quả trong việc ước đoán các trạng thái trong quá khứ, hiện tại và tương lai, ngay cả khi tính chính xác của hệ thống không được xác định. Dựa trên nguyên lý xác suất thống kê, giá trị trước của quá trình được giả định thông qua giá trị trung bình và phương sai của điều kiện đầu. Và cấu trúc tự hồi quy là công cụ biểu diễn trạng thái quá trình lan truyền theo thời gian. Để lọc Kalman hiệu quả thì hệ thống cần đảm bảo 4 điều kiện: - Giá trị đo lường (quan sát) xác định với tốc độ lấy mẫu không đổi; - Nhiễu đo lường tuân theo phân bố Gauss; - Quá trình được mô hình hóa bằng các phương trình toán học; Trang 16
  21. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN - Xác định chính xác biến trạng thái cần ước lượng. Trong phần này, nguồn gốc của các phương trình lọc Kalman sẽ được tiếp cận theo nguyên tắc trực giao, là đặc tính cơ bản của các bộ ước lượng sai lệch tuyến tính tối ưu. 2.2.2. Mã hóa dự đoán tuyến tính Cơ chế tạo tiếng nói được mô hình hóa thành một mô hình dự đoán tuyến tính như hình 2.1. Mô hình này cho thấy rằng tiếng nói là đầu ra của bộ lọc số (hay bộ lọc LPC) với đầu vào là bộ tạo xung hay nhiễu ngẫu nhiên, với G là độ lợi của bộ lọc. Bộ lọc LPC bậc p được thực hiện với đáp ứng xung biểu diễn trong miền z có dạng: 1 H(z) = −1 −2 −p (2.1) 1+a1z +a2z +⋯+apz được viết dưới dạng các mẫu tín hiệu rời rạc trong miền thời gian với mẫu tại thời điểm n được tính toán bằng giá trị đệ quy của p mẫu tín hiệu trước đó: p x(n) = − ∑i=1 ai x(n − i) + Gu(n) (2.2) với ai (i=1÷ p) là bộ hệ số của bộ lọc, đặc trưng cho N mẫu trong một khung tín hiệu. Hình 2.1. Cơ chế tạo tiếng nói theo mô hình LPC 2.2.3. Cấu trúc bộ lọc Kalman Theo lý thuyết bộ lọc Kalman, nếu ký hiệu x̂ là ước lượng tuyến tính của vector ngẫu nhiên x, y là các giá trị quan sát được và điều kiện trung bình sai lệch ước lượng ϵ là nhỏ nhất thì hệ thống phải thỏa mãn ba điều kiện sau [1, tr.103–157]: 1. x̂ là hàm tuyến tính theo y 2. ϵ có kỳ vọng bằng không, E(ϵ) = 0 3. ϵ và y trực giao với nhau, E(ϵyT) = 0 a. Mô hình hệ thống Quá trình ngẫu nhiên tuyến tính rời rạc theo thời gian được mô hình hóa bằng phương trình sai phân tự hồi quy: Trang 17
  22. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN xn = Fnxn−1 + wn ; n = 1, 2, (2.3) Và vector quan sát: yn = Hnxn + vn ; n = 1, 2, (2.4) Trong đó: - Fn (n × n) là ma trận chuyển đổi quá trình từ thời điểm (n-1) sang thời điểm (n) - Điều kiện đầu cho trạng thái x0 là kỳ vọng của tín hiệu: m0 = E(x0) có ma T trận hiệp phương sai P0 = E[(m0 − x0)(m0 − x0) ] - Hn(m × n) là ma trận chuyển đổi từ trạng thái xn sang giá trị đo lường yn - wn là nhiễu quá trình tại thời điểm n được giả sử có phân bố chuẩn, hàm trọng bằng 0 và ma trận hiệp phương Qn: p(w)~N(0, Q) - vn là nhiễu đo lường tại thời điểm n được giả sử có phân bố chuẩn, hàm trọng bằng 0 và ma trận hiệp phương Rn: p(v)~N(0, R) Giả sử rằng điều kiện đầu của vector trạng thái x0, nhiễu tiến trình wn và nhiễu đo lường vn lần lượt không tương quan với nhau, ký hiệu: T T E(x0wn ) = 0 E(x0vn ) = 0 ∀n T E(wnvm ) = 0 ∀n, m T T E(wnwm ) = 0 E(vnvm ) = 0 ∀n#m T T E(wnwn ) = Qn E(vnvn ) = Rn ∀n (2.5) Ở đây, khi thực hiện bộ lọc nhân quả cơ sở, mong muốn tính toán ước lượng tối ưu của xn tại mỗi thời điểm n từ các giá trị đo lường y1, y2, , yn. Tiếp theo sẽ xây dựng mô hình tự hồi quy cho việc ước lượng quá trình này. Một cách tổng quát, ký hiệu x̂ |푙 là ước lượng tuyến tính tối ưu của giá trị xk từ các giá trị đo lường y1, y2, , y푙. Khi đó, ký hiệu ϵ |푙 = x̂ |푙 − x là sai lệch ước lượng T và P |푙 = E(ϵ |푙ϵ |푙) là ma trận hiệp phương sai lệch. b. Mô hình toán học Bây giờ giả sử tại thời điểm n đã biết trạng thái trước đó (n-1) ký hiệu là x̂n−1|n−1 thì quá trình sẽ được thực hiện theo hai bước sau: 1. Bước ước lượng (cập nhật theo thời gian), thu được x̂n|n−1 từ x̂n−1|n−1: x̂n|n−1 = Fnx̂n−1|n−1 (2.6) 2. Bước hiệu chỉnh (cập nhật từ kết quả đo lường) x̂n|n−1 từ giá trị đo lường yn để thu được x̂n|n: x̂n|n = x̂n|n−1 + Kn(yn − Hnx̂n|n−1) (2.7) trong đó Kn là ma trận trọng số, được gọi là độ lợi Kalman. Các bước này được mô tả như sau: Trang 18
  23. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 1. Bước cập nhật thời gian: ước lượng vector trạng thái xn dựa trên trạng thái trước đó xn−1. Vì xn−1 là giá trị ước lượng tối ưu từ tất cả các giá trị đo lường đã có y1, y2, , yn−1 nên dễ dàng áp dụng vào phương trình cho x̂n−1|n−1 thu được giá trị ước lượng x̂n|n−1. 2. Bước cập nhật đo lường: với giá trị đo lường yn tiến hành cập nhật cho giá trị ước lượng xn trước đó. Quá trình này phản ánh lượng thông tin chênh lệch giữa giá trị yn và ước lượng x̂n|n−1: nếu giá trị đo lường bằng với kỳ vọng từ giá trị ước lượng, Hnx̂n|n−1, thì coi như sự chênh lệch là bằng 0 và x̂n|n−1 trở thành x̂n|n. Tuy nhiên khi thực hiện sẽ có một sự chênh lệch khác 0 kết hợp với giá trị ước lượng x̂n|n−1 để thu được x̂n|n. Và trọng số quan trọng tham gia vào quá trình cập nhật này là độ lợi Kalman Kn. Như vậy theo đề cập ở trên, giả sử rằng tại thời điểm n hệ thống đã có được x̂n−1|n−1 là giá trị ước lượng tuyến tính tối ưu của giá trị thực xn−1 từ các giá trị đo lường y1, y2, , yn−1. Suy ra sai lệch ước lượng ϵn−1|n−1 = x̂n−1|n−1 − xn−1, có hàm trọng bằng 0 và trực giao với các giá trị đo lường y1, y2, , yn−1. Bây giờ, theo cách xây dựng mô hình ước lượng ở trên, ta cần kiểm tra các điều kiện của hệ thống. - Về điều kiện tuyến tính, vì x̂n−1|n−1 là hàm tuyến tính theo y nên các giá trị ước lượng x̂n|n−1 và x̂n|n theo các phương trình (2.6) và (2.7) cũng là các giá trị tuyến tính theo y. - Điều kiện kỳ vọng sai lệch bằng 0 được kiểm tra thông qua các phương trình lan truyền của sai lệch ước lượng. Từ phương trình (2.6) và (2.3) thu được: ϵn|n−1 = x̂n|n−1 − xn = Fnx̂n−1|n−1 − (Fnxn−1 + wn) = Fn(x̂n−1|n−1 − xn−1) − wn) = Fnϵn−1|n−1 − wn (2.8) Từ phương trình (2.7) và (2.4) cũng thu được: ϵn|n = x̂n|n − xn = x̂n|n−1 + Kn(yn − Hnx̂n|n−1) − xn = ϵn|n−1 + Kn(Hnxn + vn − Hnx̂n|n−1) = ϵn|n−1 + Kn(−Hnϵn|n−1 + vn) = (I − KnHn)ϵn|n−1 + Knvn (2.9) Từ các phương trình (2.8) và (2.9) lần lượt suy ra: E(ϵn|n−1) = FnE(ϵn−1|n−1) − E(wn) = 0 (2.10) Trang 19
  24. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Và: E(ϵn|n) = (I − KnHn)E(ϵn|n−1) + KnE(vn) = 0 (2.11) Vì vậy điều kiện trung bình sai lệch ước lượng bằng 0 cũng lan truyền theo trạng thái quá trình - Điều kiện trực giao sẽ được kiểm tra khi thực hiện phép trực giao giữa các giá trị sai lệch lần lượt với các giá trị đo lường. Với ϵn|n−1 là sai lệch khi ước lượng giá trị x̂n|n−1 với các giá trị đo lường được ký hiệu là yl với l = 1, 2, , n − 1. Từ phương trình (2.8) tính được: T T E(ϵn|n−1yl ) = E[(Fnϵn−1|n−1 − wn)yl ] T T = FnE(ϵn−1|n−1yl ) − E(wnyl ) = 0, l = 1, 2, , n − 1 (2.12) T T Trong đó E(ϵn−1|n−1yl ) = 0 do điều kiện tối ưu của x̂n−1|n−1 và E(wnyl ) = 0 do các giá trị đo lường yl, l = 1, 2, , n − 1 là hàm tuyến tính với các vector x0, w1, w2, , wn−1, v1, v2, , vn−1đều trực giao với wn, vì vậy các giá trị yl trực giao với wn. Tương tự ϵn|n là sai lệch khi ước lượng giá trị x̂n|n với các giá trị đo lường được ký hiệu là yl với l = 1, 2, , n. Trước tiên xét ϵn|n với các giá trị đo lường yl với l = 1, 2, , n − 1. Từ phương trình (2.9) tính được: T T E(ϵn|nyl ) = E{[(I − KnHn)ϵn|n−1 + Knvn]yl } T T = (I − KnHn)E(ϵn|n−1yl ) + KnE(vnyl ) = 0, l = 1, 2, , n − 1 (2.13) Với các điều kiện tối ưu được xét tương tự phương trình (2.12) mà đặc tính lan truyền của mô hình hệ thống không liên quan đến độ lợi Kn. Tiếp tục cập nhật giá trị đo lường yn, từ phương trình (2.4) và (2.9) rút ra được quan hệ trực giao: T T E(ϵn|nyn ) = E{[(I − KnHn)ϵn|n−1 + Knvn](Hnxn + vn) } T = E {[(I − KnHn)ϵn|n−1 + Knvn][Hn(x̂n|n−1 ± ϵn|n−1) + vn] } (2.14) Phương trình này sẽ cho ra 6 quan hệ trực giao lần lượt sau: T + E(ϵn|n−1x̂n|n−1) = 0 (2.15) vì x̂n|n−1 là hàm tuyến tính của vector đo lường yl, l = 1, 2, , n − 1, tất cả đều trực giao với ϵn|n−1 như đã xét ở phương trình (2.12). T + E(ϵn|n−1ϵn|n−1) = Pn|n−1. (2.16) T + E(ϵn|n−1vn ) = 0 (2.17) Trang 20
  25. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN vì ϵn|n−1 quan hệ tuyến tính với các giá trị đo lường yl, l = 1, 2, , n − 1, là thành phần có quan hệ tuyến tính với các vector x0, w1, w2, , wn−1, v1, v2, , vn−1đều trực giao với vn. T + E(vnx̂n|n−1) = 0 (2.18) do vn trực giao với ϵn|n−1 như đã xét ở (2.17). T + E(vnϵn|n−1) = 0 (2.19) như đã xét ở (2.17). T + E(vnvn ) = Rn (2.20) từ phương trình đo lường (2.4). Từ những kết quả trên, thay vào phương trình (2.14) có được: T T E(ϵn|nyn ) = (I − KnHn)Pn|n−1Hn + KnRn (2.21) T Để đảm bảo các điều kiện tối ưu thì E(ϵn|nyn ) phải bằng 0, nghĩa là: T T Pn|n−1Hn = Kn(HnPn|n−1Hn + Rn) (2.22) điều này dễ dàng thỏa mãn khi tìm được độ lợi Kalman có giá trị: T T −1 Kn = Pn|n−1Hn (HnPn|n−1Hn + Rn) (2.23) Vấn đề còn lại là yêu cầu tính toán hiệp phương sai lỗi trước Pn|n−1. Tại thời điểm (n − 1) thì giá trị ước lượng x̂n−1|n−1 và hiệp phương sai Pn−1|n−1 đã có. Từ (2.8) rút ra được: T Pn|n−1 = E(ϵn|n−1ϵn|n−1) T = E [(Fnϵn−1|n−1 − wn)(Fnϵn−1|n−1 − wn) ] T = FnPn−1|n−1Fn + Qn (2.24) từ đó thay Pn|n−1 vào (2.13) sẽ tính toán được độ lợi Kalman Kn. Từ phương trình (2.23) dễ dàng nhận thấy được khi phương sai đo lường Rn càng tiến gần 0 thì trọng số Kn càng có ý nghĩa lớn trong việc xác định giá trị ước lượng, nghĩa là đo lường yn đóng góp nhiều thông tin “tin cậy” vào giá trị ước lượng x̂n|n: −1 lim Kn = Hn (2.25) Rn→0 Mặt khác, khi phương sai ước lượng trước Pn|n−1 càng tiến gần 0 thì trọng số Kn càng ít có ý nghĩa trong việc xác định giá trị ước lượng, nghĩa là đo lường yn ít có ý nghĩa trong việc hiệu chỉnh giá trị ước lượng x̂n|n, khi đó thông số ước lượng Hnx̂n|n−1 được lựa chọn: lim Kn = 0 (2.26) Pn|n−1→0 Ma trận hiệp phương Pn|n−1 tiếp tục được cập nhật thành Pn|n để phục vụ cho mô hình tự lan truyền của các trạng thái tiếp theo: Trang 21
  26. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN T Pn|n = E(ϵn|nϵn|n) [(I − KnHn)ϵn|n−1 + Knvn]. = E { T} ((I − KnHn)ϵn|n−1 + Knvn) T T = (I − KnHn)Pn|n−1(I − KnHn) + KnRnKn (2.27) Kết hợp với (2.22) thì (2.27) này có thể được viết ngắn gọn thành: Pn|n = (I − KnHn)Pn|n−1 (2.28) Quan hệ trực giao giữa các tín hiệu xác định nguồn gốc của các biểu thức cần thiết để thực hiện một quá trình tự hồi quy, trong đó giá trị ước lượng tuyến tính và các ma trận hiệp phương sai lệch ước lượng từ phép tính trước kết hợp với giá trị đo lường tiến hành cập nhật trạng thái và các ma trận hiệp phương sai lệch của nó. Như vậy trong cấu trúc tự hồi quy, đầu ra của mỗi bước tính toán chính là đầu vào của bước tính tiếp theo, và điều kiện tối ưu được duy trì. Vấn đề còn lại là khởi tạo giá trị ban đầu cho bộ lọc: x̂0|0 là ước lượng ban đầu của giá trị x0 mà không có sự góp mặt của bất kỳ giá trị đo lường nào. Vì vậy, x̂0|0 được giả sử là kỳ vọng m0 của quá trình ngẫu nhiên x0. Lúc đó, ma trận hiệp phương lỗi ước lượng được tính toán: T P0|0 = E[(x̂0|0 − x0)(x̂0|0 − x0) ] T = E[(m0 − x0)(m0 − x0) ] = P0 (2.29) c. Thuật toán thực hiện bộ lọc Điều kiện đầu cho bộ lọc được ước lượng với các giá trị x̂0|0 và P0|0. Quá trình lọc Kalman được thực hiện qua 2 bước: - Cập nhật thời gian (dự đoán) - Cập nhật đo lường (hiệu chỉnh từ giá trị quan sát được) Hai bước này được thực hiện liên tục, xen kẽ nhau như mô tả bởi sơ đồ hình 2.2 dưới đây: Dự đoán Hiệu chỉnh Hình 2.2. Quá trình thực hiện lọc Kalman Ứng với sơ đồ trên, mỗi bước thực hiện được mô tả bởi các phương trình cụ thể: 1. Bước cập nhật thời gian, dự đoán quá trình: x̂n|n−1 = Fnx̂n−1|n−1 (2.30) T Pn|n−1 = FnPn−1|n−1Fn + Qn (2.31) Trang 22
  27. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 2. Bước cập nhật đo lường, hiệu chỉnh ước lượng: T T −1 Kn = Pn|n−1Hn (HnPn|n−1Hn + Rn) (2.32) x̂n|n = x̂n|n−1 + Kn(yn − Hnx̂n|n−1) (2.33) Pn|n = (I − KnHn)Pn|n−1 (2.34) Như vậy, đầu vào sơ đồ lọc Kalman là các giá trị x̂n−1|n−1 và Pn−1|n−1, đầu ra sau mỗi bước thực hiện là các giá trị x̂n|n và Pn|n. Sơ đồ thực hiện lọc Kalman với sự có mặt của các phương trình toán học được biểu diễn như sơ đồ hình 2.3 bên dưới: Hiệu chỉnh Dự đoán (1) Tính toán độ lợi Kalman: 푻 푻 − (1) Ước lượng trạng thái: 푲풏 = 푷풏|풏− 푯풏(푯풏푷풏|풏− 푯풏 + 푹풏) 풙ෝ풏|풏− = 푭풏풙ෝ풏− |풏− (2) Cập nhật ước lượng trạng thái (2) Tính toán hiệp phương sai: 풙ෝ풏|풏 = 풙ෝ풏|풏− + 푲풏(풚풏 − 푯풏풙ෝ풏|풏− ) 푻 푷풏|풏− = 푭풏푷풏− |풏− 푭풏 + 푸풏 (3) Cập nhật hiệp phương sai: 푷풏|풏 = (푰 − 푲풏푯풏)푷풏|풏− Điều kiện đầu: 풙ෝ | và 푷 | Hình 2.3. Sơ đồ thực hiện lọc Kalman với các phương trình toán Sau mỗi chu trình dự đoán và hiệu chỉnh, quá trình thực hiện bộ lọc tiếp tục lặp lại cho bước thời gian tiếp theo với giá trị ước lượng trước là cơ sở để thực hiện ước lượng tiếp theo cho tiến trình. Đặc tính tự hồi quy như vậy là một trong những đặc điểm nổi bật của bộ lọc Kalman, giúp bộ lọc khả thi hơn cho việc áp dụng vào các mô hình thực thế, là điều mà rất khó thực hiện khi sử dụng bộ lọc Wiener đã trình bày ở phần trước. 2.2.4. Ưu nhược điểm của bộ lọc Kalman a. Ưu điểm Trang 23
  28. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Cấu trúc tự hồi quy của bộ lọc được thực hiện liên tục từ giá trị khởi đầu, qua các quá trình ước lượng và cập nhật cho đến khi kết thúc tiến trình. Việc tổng hợp các giá trị trong quá khứ để đưa ra giá trị ước lượng qua mô hình tự hồi quy giúp tiết kiệm chi phí cho việc sử dụng tài nguyên bộ nhớ. Tại các thời điểm mà cấu trúc hệ thống thay đổi, từ những giá trị đo lường trong quá khứ, bộ lọc Kalman có thể đưa ra các ước lượng tiến trình ngay cả khi tính chính xác của hệ thống không được xác định. Bộ lọc Kalman sử dụng phương pháp cực tiểu trung bình sai lệch ước lượng, tập trung ước lượng tín hiệu mong muốn thay vì cố gắng ước lượng nhiễu ảnh hưởng lên tín hiệu, vì vậy hiệu quả trong dải rộng các ứng dụng. b. Nhược điểm Cần phải xác định được điều kiện đầu của bộ lọc: kỳ vọng và sai lệch ước lượng để khởi tạo cho mô hình tự hồi quy. Phải mô hình hóa tiến trình thành một hệ thống tuyến tính rời rạc. Phải có được giá trị quan sát tại những thời điểm lấy mẫu để so sánh, hiệu chỉnh giá trị ước lượng. Những nền tảng về xác suất cũng như điều kiện phân bố Gauss của các nhiễu có thể trở thành giới hạn trong nghiên cứu và ứng dụng của bộ lọc. 2.2.5. Bộ lọc Kalman mở rộng Trong thực tế có rất nhiều hệ thống không phải tuyến tính (phi tuyến, non-linear), trong trường hợp này áp dụng KF sẽ cho sai số lớn. Để khắc phục hạn chế trên, có rất nhiều phương pháp được đưa ra nhằm tuyến tính hóa (linearize) hệ thống bằng các hàm xấp xỉ như EKF, Unscented KF, Particle Filter. Một trong những cách tuyến tính hóa hệ thống một cách đơn giản là áp dụng khai triển chuỗi Taylor bậc 1. Đó chính là bộ lọc Kalman mở rộng (EKF). Ước lượng trạng thái hệ thống là một nhánh của kỹ thuật xử lý tín hiệu thích nghi. Ý tưởng của nó giống như bộ lọc đệ quy Bayes. Vấn đề ước lượng trạng thái một cách tổng quát như sau: - Giả sử trạng thái của một hệ thống biến đổi tại thời điểm k ( ) liên hệ với trạng thái −1 bởi phương trình trạng thái: = ( −1, −1) + 푤 −1 (2.35) với 푤 −1 là nhiễu hệ thống có phân bố Gaussian và hiệp phương sai là Q. Giá trị quan sát có quan hệ với hệ thống thông qua phương trình đo lường: = ( ) + 푣 (2.36) với 푣 là nhiễu đo lường có phân bố Gaussian và hiệp phương sai là R. Nhiệm vụ của bộ lọc là dựa vào quan sát và mô hình hệ thống để ước lượng tối ưu (có thể) trạng thái của hệ thống. Như đã nói ở trên, nếu cả hai phương trình trên là Trang 24
  29. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN tuyến tính và nhiễu tác động lên hệ thống là nhiễu Gaussian thì KF là bộ lọc tối ưu được sử dụng cho trường hợp này. Nếu ít nhất một trong hai phương trình ở trên là phi tuyến, ta phải sử dụng các phương pháp xấp xỉ tuyến tính. EKF sử dụng phương pháp xấp xỉ dựa vào triển khai Taylor bậc 1. Khi đó các phương trình trạng thái và đo lường được xấp xỉ bằng cách tuyến tính hóa như sau: +1 = ̃ +1 + ( − ̂ ) + 푊푤 (2.37) = ̃ + ( − ̃ ) + 푣 (2.38) Để tuyến tính hóa dựa vào khai triển Taylor bậc 1, các ma trận chuyển trạng thái A, ma trận đo H là các ma trận Jacobian, được xác định như sau: 휕 [푖] [푖, 푗] = ( ̂ , , 0) (2.39) 휕 [푗] 휕 [푖] [푖, 푗] = ( ̃ , 0) (2.40) 휕 [푗] trong đó: ̂ và ̃ là dự đoán (predicted) và ước lượng (estimated) của trạng thái . 2.3. THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 2.3.1. Sơ đồ khối hệ thống Tín hiệu tiếng nói và nhiễu tác động được xem là các mô hình hồi quy bậc p, q tương ứng. Tín hiệu đầu vào được chuẩn hóa có hàm trọng bằng 0 với giả sử nhiễu tác động lên tín hiệu tiếng nói là nhiễu cộng: y = x + v (2.41) Tín hiệu lấy ở đầu ra của hệ thống là tiếng nói đã được ước lượng. Tiến trình giảm nhiễu sử dụng bộ lọc Kalman được thực hiện thông qua các bước: Bước 1. Tín hiệu tiếng nói bị nhiễu đầu vào y được phân khung (với độ dài cửa sổ bằng W=256, hệ số chồng phổ 0.5 đối với bộ lọc Kalman trong miền thời gian và W=80, hệ số chồng phổ 0.75 đối với bộ lọc Kalman trong miền tần số [17]) sử dụng cửa sổ Hanning. Bước 2. Thực hiện ước lượng bộ hệ số của mô hình hồi quy bằng các hàm tương quan trên cơ sở nhiễu và tiếng nói ước lượng. Bước 3. Áp dụng bộ lọc Kalman để lọc tín hiệu tiếng nói và nhiễu từ tín hiệu ban đầu. Tín hiệu ở đầu vào bộ lọc có thể ở miền thời gian hoặc được biến đổi sang miền tần số (FFT và STFT). Bước 4: Thực hiện ghép khung tín hiệu đầu ra ở miền thời gian. Sơ đồ khối hệ thống thực hiện giảm nhiễu được trình bày như ở hình 2.4: Trang 25
  30. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN y Phân khung y' Ước lượng hệ số 휽풙 Kalman 휽 Filter 풗 풙෡′ Ghép khung 풙ෝ Hình 2.4. Sơ đồ khối toàn hệ thống Tín hiệu đầu vào y là tiếng nói bị nhiễu tác động, đầu ra x̂ là tín hiệu tiếng nói sau khi ước lượng sử dụng bộ lọc Kalman. Việc phân khung được thực hiện khi cho một hàm cửa sổ trượt w(m) với tín hiệu ngõ vào y(n) như sau: y′n(m) = y(n).w(n-m). Việc phân tích tín hiệu tiếng nói được thực hiện trên các khung liên tiếp nhau, thực tế để tránh mất mát thông tin thì các khung tín hiệu thường được lấy bao trùm như biểu diễn ở hình 2.5. Khi đó, hai khung liền kề nhau có ít nhất M>0 mẫu chung. Hình 2.5. Kỹ thuật phân khung Trang 26
  31. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Ở đây lựa chọn hàm cửa sổ Hanning để thực hiện phân khung. Hàm Hanning có dạng: 2π(m+0.5) 0.5 − 0.5. cos ( ) 0 ≤ m ≤ W w(m) = { W (2.42) 0 khác Các ký hiệu 훉x, 훉v lần lượt là ma trận hệ số hồi quy bậc p và q ứng với công suất tiếng nói và nhiễu được ước lượng qua từng khung tín hiệu được tính toán ở phần (2.3.3.). 2.3.2. Giảm nhiễu sử dụng bộ lọc Kalman Đầu ra của bộ lọc Kalman qua mỗi bước tính toán là ước lượng tối ưu của tín hiệu tiếng nói [1], [14], ký hiệu là: x̂n = E(xn|y0, y1, , yn) (2.43) Tín hiệu tiếng nói bị tác động nhiễu cộng dùng để đánh giá theo phương trình (2.41) được biểu diễn cho từng mẫu tín hiệu bởi phương trình sau: yn = xn + vn (2.44) Trong đó xn là vector tín hiệu tiếng nói và vn được xem là nhiễu cộng tác động lên tín hiệu xn tại mỗi thời điểm lấy mẫu thứ n. Trong phạm vi đề tài, mỗi khung tín hiệu sẽ được xử lí ở miền thời gian và miền tần số (biến đổi FFT và STFT). - Ở miền thời gian, mỗi khung tín hiệu sẽ được chia với W mẫu, được xử lí hồi quy bởi bộ lọc. - Ở miền tần số, trước khi đưa vào bộ lọc, mỗi khung tín hiệu sẽ được biến đổi sang miền tần số (FFT hoặc STFT [17], [13]) với giả sử rằng pha của tín hiệu đầu vào và tín hiệu tiếng nói ước lượng đầu ra được coi là không đổi. Bộ lọc sẽ được thực hiện trên biên độ của tín hiệu. Trường hợp xét nhiễu tác động chỉ là nhiễu trắng (nhiễu có phổ không đổi theo thời gian) thì chỉ có tiếng nói được xây dựng theo mô hình tự hồi quy [8] trong việc áp dụng bộ lọc Kalman. Tuy nhiên, xét trường hợp tổng quát nhiễu đầu vào là nhiễu màu (nhiễu có phổ không ổn định theo thời gian) thì cả tiếng nói và nhiễu đều được coi là các mô hình tự hồi quy. Giả sử trên mỗi khung tín hiệu, mô hình dự đoán tuyến tính được sử dụng cho cả tiếng nói và nhiễu. Cụ thể từ phương trình (2.44) xn được ước lượng hồi quy với bộ các hệ số của mã dự đoán tuyến tính bậc p và được xem không đổi trên khung: p xn = − ∑i=1 αi xn−i + un (2.45) Với: αi là các hệ số LPC trên một khung tín hiệu un là sai số dự đoán tuyến tính có phân bố xác suất chuẩn ~N(0, 퐉) trung 2 bình bằng 0, với 퐉 là ma trận phương sai dự đoán tuyến tính bậc p: 퐉 = [0 0 0 σu]. Trang 27
  32. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Tín hiệu nhiễu ở tại mỗi thời điểm cũng có thể được ước lượng bằng quan hệ hồi quy bậc q như sau: q vn = − ∑j=1 βj vn−j + ϑn (2.46) Với: βj là các hệ số LPC trên một khung dữ liệu ϑn là sai số dự đoán có phân bố xác suất chuẩn ~N(0, 퐑) trung bình bằng 2 0, với 퐑 là ma trận phương sai dự đoán tuyến tính bậc q: 퐑 = [0 0 0 σϑ]. Từ (2.45) và (2.46) xây dựng mô hình hệ thống theo bộ lọc Kalman điều chỉnh [14] với các phương trình ước lượng và quan sát: 퐱퐧 = Ф퐱퐧− + 퐰퐧 (2.47) 퐲퐧 = 퐇퐱퐧 (2.48) Trong đó, 퐱퐧 và 퐰퐧 lần lượt là ma trận tín hiệu tổng hợp và ma trận nhiễu truyền đạt hệ thống, có dạng: T 퐱퐧 = [xn−p+1 xn−p+2 xn−1 xn vn−q+1 vn−q+2 vn−1 vn] (2.49) T 퐰퐧 = [0 0 0 un 0 0 0 ϑn] (2.50) p q Ma trận chuyển đổi trạng thái Ф ở phương trình (2.41) có dạng: 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ⋮ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 ⋯ 1 0 0 0 ⋯ 0 훼 훼 −1 훼 −2 ⋯ 훼1 0 0 0 0 0 Ф = 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 ⋮ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 0 ⋯ 0 0 0 0 ⋯ 1 0 0 0 0 0 훽푞 훽푞−1 훽푞−2 ⋯ 훽1 Ma trận 퐇 cho mối quan hệ của phương trình (2.42): 퐇 = [0 0 1 0 0 1] (2.51) p q Ma trận sai số ước lượng cho bộ lọc Kalman điều chỉnh ký hiệu là Q có dạng tổng hợp của ma trận 퐉 và R: Trang 28
  33. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 0 ⋱ 0 2 Q = 휎 0 p ⋱ 0 2 휎휗 q 2 2 với σu và σϑ lần lượt là phương sai ước lượng LPC tại thời điểm đang xét ứng với ma trận 퐉 và R của sai lệch ước lượng tiếng nói và nhiễu. Ma trận hiệp phương sai lệch khởi tạo P0|0 được tính từ ma trận hệ số tương quan đầu vào của cả tín hiệu tiếng nói và nhiễu ước lượng, điều kiện đầu ma trận có dạng sau: P(0|0) = cov x = 푅 (0) 푅 (1) ⋯ 푅 (p-1) 0 0 ⋯ 0 푅 (1) 푅 (2) ⋯ 푅 (p-2) 0 0 ⋯ 0 ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋱ ⋮ 푅 (p-1) 푅 (p-2) ⋯ 푅 (0) 0 0 ⋯ 0 0 0 ⋯ 0 푅푣(0) 푅푣(1) ⋯ 푅푣(q-1) 0 0 ⋯ 0 푅푣(1) 푅푣(2) ⋯ 푅푣(q-2) ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ 0 푅푣(q-1) 푅푣(q-2) ⋯ 푅푣(0) với các hệ số tự tương quan R của tiếng nói và nhiễu tương ứng: 푊− 푅 ( ) = ∑푛=0 (푛). (푛 − ) với = 0 ÷ (p − 1) (2.52) 푊−푙 푅푣(푙) = ∑푛=0 (푛). (푛 − 푙) với 푙 = 0 ÷ (q − 1) (2.53) trong đó W là kích thước của mỗi khung tín hiệu, Gọi i là thứ tự khung thì 1 ≤ i ≤ FRs với FRs là tổng số khung của tín hiệu được chia với cửa sổ Hanning kích thước bằng W. Giá trị khởi tạo cho ước lượng tiếng nói 풙ෝ | = 0 cho mỗi khung tín hiệu. Các ma trận Ф푖, 푹푖, 푱푖 được tính cho mỗi khung tín hiệu theo [14]. Sơ đồ thuật toán sử dụng bộ lọc Kalman cho tín hiệu tiếng nói và nhiễu sau khi ước lượng các hệ số hồi quy được trình bày cụ thể ở hình 2.6: Trang 29
  34. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Begin Frame thứ: i = 1 Khởi tạo các thông số: H, G, 풙ෝ | = 0 Tính ma trận: Ф푖, 푅푖, 퐽푖, 푃0|0 Mẫu thứ: n = 1 Ước lượng: - ̂푛|푛−1 = Ф푖. ̂푛−1|푛−1 - Pn|n−1 = Ф푖Pn−1|n−1Ф푖 + 퐽푖 - 푒푛 = 푛 − ̂푛|푛−1 Cập nhật: - Kn = Pn|n−1 ( Pn|n−1 + 푅푖) - ̂푛|푛 = ̂푛|푛−1 + 퐾푛. 푒푛 - Pn|n = ( − 퐾푛 )Pn|n−1 Tăng n lên 1 đơn vị Sai 풏 > 푾? Đúng Tăng i lên 1 đơn vị Đúng Sai 풊 > 푭푹풔? 풙풐풖풕 End Hình 2.6. Thuật toán bộ lọc Kalman Trang 30
  35. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN 2.3.3. Ước lượng hệ số mô hình Ứng với mỗi khung thứ i của tín hiệu tiếng nói bị nhiễu, việc ước lượng các hệ số của mô hình hồi quy được thực hiện thông qua các bước sau: Bước 1. Thực thiện FFT khung tín hiệu kích thước W Bước 2. Ước lượng công suất tín hiệu 푷෡풚′ Bước 3. Ước lượng công suất nhiễu 푷෡풗 [3] Bước 4. Ước lượng công suất tiếng nói 푷෡풙 bằng thuật toán trừ phổ Bước 5. Ước lượng các hệ số bậc p và bậc q cho tiếng nói và nhiễu bằng phương pháp hàm tương quan Sơ đồ khối ước lượng các hệ số thực hiện như hình 2.7: y' FFT Ước lượng phổ 푷෡풚′ Ước lượng nhiễu 푷෡풗 Trừ phổ 푷෡풙 Ước lượng Ước lượng 휽풙 휽풗 Hình 2.7. Sơ đồ khối ước lượng ma trận hệ số hồi quy Công suất tiếng nói ước lượng được thực hiện theo phương pháp trừ phổ công suất điều chỉnh [11] sau khi ước lượng công suất nhiễu: P෡x = P෡v. Q(ω) (2.54) với hệ số trừ phổ Q(ω) được tính theo công thức: Trang 31
  36. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN P෡ Q(ω) = (1 − √훾. v ) (2.55) P෡y′ trong đó 훾 là trọng số trừ phổ, là hàm của SNR tín hiệu ước lượng: P෡y′−P෡v SNR̂ (ω) = 10 log10 min (qH, max ( qL, )) (2.56) P෡v với các giá trị giới hạn qH=100, qL=1 thì SNR được giới hạn trong dải 0÷20dB. Hàm ước lượng các hệ số mô hình hồi quy sẽ cho ra kết quả gồm bộ các hệ số của mô hình, sai số ước lượng và các hệ số tự tương quan của cả công suất tiếng nói và nhiễu đã được ước lượng trong từng khung tín hiệu tương ứng. Sử dụng Thuật toán Levinson-Durbin [12] giải phương trình tự tương quan Yule- Walker để tìm ra tập các hệ số hồi quy cho ma trận chuyển đổi ứng với từng khung tín hiệu. Các phương trình tương quan Yule-Walker của tiếng nói và nhiễu ước lượng có dạng: 푅 (0) 푅 (1) ⋯ 푅 (p-1) 푅 (1) 푅 (1) 푅 (0) ⋯ 푅 (p-2) 훼1 푅 (2) ⋮ ⋮ ⋱ ⋮ 훼2 ⋮ 푅 (p-1) 푅 (p-2) ⋯ 푅 (0) ⋮ = 푅 (p-2) ⋮ ⋮ ⋮ 훼 ⋮ 푅 (p-1) 푅 (p-2) ⋯ 푅 (0) 푅 (p) 푅푣(0) 푅푣(1) ⋯ 푅푣(q-1) 푅푣(1) 푅푣(1) 푅푣(0) ⋯ 푅푣(q-2) 훽1 푅푣(2) ⋮ ⋮ ⋱ ⋮ 훽2 ⋮ 푅푣(q-1) 푅푣(q-2) ⋯ 푅푣(0) ⋮ = 푅푣(q-2) ⋮ ⋮ ⋮ 훽푞 ⋮ 푅푣(q-1) 푅푣(q-2) ⋯ 푅푣(0) 푅푣(q) Bên cạnh đó, nghiệm của phương trình Yule-Walker cũng sẽ cho các giá trị sai số trong việc ước lượng các hệ số hồi quy. Các hệ số này sẽ được sử dụng để xây dựng ma trận chuyển đổi Ф cho mỗi khung tín hiệu. Đề tài lựa chọn hệ số mô hình hồi quy của tiếng nói và nhiễu ước lượng thực nghiệm là p=q=8 cho miền thời gian và p=q=2 cho miền tần số. 2.3.4. Ước lượng nhiễu Việc ước lượng nhiễu trong phạm vi đề tài sử dụng kỹ thuật ước lượng xác suất hiện diện tiếng nói SPP [3] thay cho VAD. Thực hiện ước lượng nhiễu qua các bước sau: Trang 32
  37. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Bước 1. Ước lượng công suất nhiễu 5 khung tín hiệu ban đầu (coi tín hiệu chỉ là nhiễu) Bước 2. Tính toán xác suất xuất hiện tiếng nói sau (posteriori SPP) Bước 3. Cập nhật xác suất với hệ số làm mượt α = 0.9. Bước 4. Ước lượng công suất nhiễu với ngưỡng mềm của xác suất hiện diện tiếng nói đã được tính toán (ngưỡng được chọn bằng 0.99). Bước 5. Cập nhật nhiễu với hệ số làm mượt β = 0.8 Sơ đồ khối thực hiện các bước tính toán công suất nhiễu ước lượng được biểu diễn ở hình 2.8: Ước lượng nhiễu 5 khung đầu 푷෡풚′ Ước lượng posteriori SPP Cập nhật posteriori SPP Ước lượng nhiễu Cập nhật nhiễu 푷෡ 풗 Hình 2.8. Sơ đồ ước lượng công suất nhiễu tác động Với đầu vào là công suất nhiễu ước lượng của khung trước, qua đó tính được SNR sau, đầu ra của khối thực hiện sẽ cho kết quả là công suất nhiễu ước lượng cho khung hiện tại. Xác suất hiện diện tiếng nói P(H1) khởi tạo được chọn là 0.5 trong ngữ cảnh cả tiếng nói và nhiễu đều có khả năng xuất hiện giống nhau, P(H1) = P(H0). Xác suất hiện diện tiếng nói sau (posteriori) P(H1|Y) được tính toán dựa trên SNR: 2 |Y| ξopt −1 P(H1|Y) = (1 + (1 + ξopt)exp(− 2 . ) (2.57) σෝN 1+ξopt Trang 33
  38. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN với ξopt là SNR trước (priori SNR) được chọn nằm trong dải -∞ ÷ 20dB, với giá trị tối ưu cố định [3] là: 10log10(ξopt) = 15dB (2.58) Từ đó, để cập nhật được nhiễu thì SNR sau (posteriori SNR) phải lớn hơn 1, 훾 = |Y|2 2 >1, ứng với P(H1|Y) > 0.075. Để tránh trường hợp không cập nhật được nhiễu do σෝN nhiễu được ước lượng nhỏ hơn giá trị thực, P(H1|Y) được tính hồi quy với hệ số làm mượt qua mỗi khung là α = 0.9 P̅(푙) = 0.9P̅(푙 − 1) + 0.1P(H1|Y(푙)) (2.59) với P̅(0) ban đầu được khởi tạo bằng 0.5. Hình 2.9 cho ví dụ về việc ước lượng giá trị P̅(푙) với tín hiệu đầu vào bị làm nhiễu có SNR = 5dB [10]. Hình 2.9. (a) Tín hiệu bị gây nhiễu 5dB, (b) SNR trước 훏 ước lượng, (c) xác suất vắng mặt tiếng nói 퐏(퐇 |퐘), (d) xác suất hiện diện tiếng nói 퐏(퐇 |퐘) Sau đó, P(H1|Y) được giới hạn với ngưỡng trên bằng 0.99. min (0.99, P(H1หY(푙)) P̅(푙) > 0.99 P(H1|Y(푙)) = { (2.60) P(H1|Y(푙)) khác Trang 34
  39. Chương 2: THUẬT TOÁN GIẢM NHIỄU SỬ DỤNG BỘ LỌC KALMAN Việc quyết định xác suất sau khi tính toán dựa trên ngưỡng mềm để đảm bảo tránh trường hợp ước lượng tín hiệu không có nhiễu. Trên kết quả đó, công suất nhiễu tiếp tục được cập nhật: 2 2 2 |N| = P(H0|Y)|Y| + P(H1|Y)σෝN (2.61) Với P(H0|Y) là xác suất vắng mặt tiếng nói, P(H0|Y) = 1 − P(H1|Y). Và được làm mượt với hệ số β = 0.8. 2.4. KẾT LUẬN CHƯƠNG Thuật toán bộ lọc Kalman điều chỉnh được trình bày sử dụng cho việc giảm nhiễu với tín hiệu tiếng nói bị tác động bởi các loại nhiễu khác nhau của môi trường. Đồng thời, các hệ số hồi quy cho cả tiếng nói và nhiễu được xác định theo mô hình LPC. Bộ hệ số này được xem là không đổi trong một khung tín hiệu và được cập nhật khi thuật toán xử lý trượt qua từng khung khác nhau. Bên cạnh đó, việc ước lượng công suất nhiễu được thay đổi với việc áp dụng xác suất hiện diện tiếng nói SPP để xác định ngưỡng mềm cho hệ số trừ phổ, qua đó cải thiện đáng kể khả năng ước lượng nhiễu trên từng khung tín hiệu. Trang 35
  40. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ 3.1. GIỚI THIỆU CHƯƠNG Chương 3 sẽ trình bày cơ sở dữ liệu và các tiêu chí đánh giá phục vụ cho tiến trình thực hiện mô phỏng với các thuật toán giảm nhiễu đã đề ra trên 5 loại nhiễu khác nhau sử dụng ngôn ngữ Matlab. 3.2. CƠ SỞ DỮ LIỆU Cơ sở dữ liệu đánh giá ban đầu được lấy từ thư viện NOIZEUS [18] gồm 30 câu thoại được ghi âm trong phòng thí nghiệm theo chuẩn của IEEE là tín hiệu thoại sạch. Mỗi câu dài trung bình khoảng 2s. Các tín hiệu thoại này được cộng nhiễu vào với các SNR khác nhau. Như vậy đã có sẵn tín hiệu sạch và tín hiệu bị nhiễu theo chuẩn chung đã được công bố và cung cấp rộng rãi. Đáp ứng tần số của thiết bị thu cả tiếng nói và nhiễu được biểu diễn như ở hình 3.1, gọi là bộ lọc IRS sử dụng theo chuẩn của ITU-T. Hình 3.1. Đáp ứng tần số của bộ lọc IRS Có 5 loại nhiễu được chọn để nghiên cứu trong đề tài gồm nhiễu ô tô (Car), nhiễu đám đông (Babble), nhiễu trắng (White), nhiễu từ tàu hỏa (Train) và nhiễu đường phố (Street). Nhiễu trắng có công suất phổ đều, biến động chậm, khoảng phổ tương đối hẹp và ổn định, nhiễu đám đông có dải phổ trải rộng trong toàn bộ băng tần tín hiệu tiếng nói, và nhiễu ô tô vừa có khoảng phổ rộng lại luôn luôn biến động, không có độ ổn định cao. Áp dụng phương pháp ước lượng nhiễu dựa vào xác suất hiện diện tiếng nói SPP tiến hành các thuật toán giảm nhiễu sử dụng bộ lọc Kalman trong miền thời gian và miền tần số (FFT và STFT). Tín hiệu sau khi giảm nhiễu được sử dụng để so sánh bộ 36
  41. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ lọc Kalman với các thuật toán trong miền tần số ước lượng nhiễu dùng bộ lọc PF đã có: thuật toán trừ phổ phi tuyến NSS-PF (Non Line Spectral Subtraction), thuật toán ước lượng LogMMSE-PF (Logrithm Minium Mean-Squed Error), và thuật toán MMSE-PF cải tiến. Sau khi thực hiện giảm nhiễu bằng các thuật toán đã nghiên cứu sẽ thu được các mẫu tín hiệu được tăng cường, từ đó có được cơ sở dữ liệu tương đối lớn và đa dạng được sử dụng cho việc đánh giá chất lượng của tín hiệu tiếng nói sau khi giảm nhiễu. Quá trình thực hiện các thuật toán ban đầu dựa trên 30 câu mẫu sạch, sau đó được cộng các 5 nguồn nhiễu như đã trình bày ở trên với bốn mức SNR khác nhau là 0dB, +5dB, +10dB và +15dB. Như vậy cơ sở dữ liệu ban đầu gồm 600 mẫu tiếng nói đã được cộng nhiễu. Trên cơ sở của 600 mẫu này sẽ cho xử lý giảm nhiễu thông qua 3 thuật toán giảm nhiễu trong miền tần số là NSS, MMSE và LogMMSE (đã được nghiên cứu trước đó) và 3 thuật toán giảm nhiễu dùng bộ lọc Kalman trong phạm vi đề tài. Kết quả là thu được một cơ sở dữ liệu gồm 3600 mẫu tiếng nói đã được xử lý giảm nhiễu. Như vậy đã xây dựng được một cơ sở dữ liệu lớn, đa dạng bao trùm được các đặc trưng cơ bản của nhiễu cộng với 3600 mẫu âm thanh khác nhau. 3.3. CÁC TIÊU CHÍ ĐÁNH GIÁ Đánh giá chất lượng có thể thực hiện bằng cách sử dụng phương pháp đánh giá theo cảm nhận của người nghe theo một thang đo đã được xác định trước được gọi là đánh giá chủ quan (SE – Subjective Evaluation) hoặc đánh giá khác dựa trên phép đo các thuộc tính và tham số của tín hiệu gọi là đánh giá khách quan (OE – Objective Evaluation) [6]. 3.3.1. Phương pháp đánh giá chủ quan Theo phương pháp này có hai mảng chính để thực hiện đánh giá chất lượng tiếng nói: các phương pháp dựa trên sự ưa thích giữa các mẫu âm thanh có liên hệ với nhau (đánh giá tương đối) và các phương pháp dựa trên việc cho điểm đối với chất lượng của tín hiệu âm thanh được nghe (đánh giá tuyệt đối). Trong các đánh giá tương đối, người nghe được nghe một cặp tín hiệu kích thích gồm một tín hiệu cần đánh giá và một tín hiệu mẫu để so sánh. Tín hiệu mẫu để so sánh thường có được bằng cách suy giảm chất lượng của tín hiệu gốc theo một phương pháp có tính hệ thống, cũng như sử dụng bộ lọc, hoặc cộng nhiễu vào. Người nghe được yêu cầu chọn tín hiệu nào thích nghe hơn. Với đánh giá tuyệt đối, người nghe nghe một mẫu tín hiệu kích thích và được yêu cầu cho điểm vào thang điểm đánh giá. Trong đánh giá này không cần tín hiệu mẫu. Mỗi phương pháp có những ưu điểm và nhược điểm riêng và trong thực tế, tùy theo ứng dụng cụ thể mà một phương pháp sẽ cho kết quả tốt nhất. 37
  42. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ a. Phương pháp đánh giá tương đối Được xem là một trong những phương pháp đánh giá theo cặp tín hiệu sớm nhất. Theo đó mỗi tín hiệu cần đánh giá, với cường độ khác nhau và được cộng với các mức nhiễu khác nhau, được đưa qua một hệ thống gồm các bộ lọc giới hạn dải thông mô phỏng theo các đặc tính của một hệ thống truyền tín hiệu thoại tương tự. Người nghe sẽ nghe một cặp tín hiệu và chọn mẫu tín hiệu ưa thích hơn. Phương pháp này phức tạp và tốn thời gian do sự kết hợp một lượng lớn các cường độ và mức nhiễu. Do đó một số biến thể của phương pháp này sẽ làm giảm độ phức tạp. Một phương pháp được IEEE khuyến cáo là sử dụng 5 loại tín hiệu thoại đã bị làm méo làm tín hiệu so sánh. Các loại tín hiệu này được đề cập trong bảng [3.1]. Bảng 3.1: Đánh giá liên quan đến tất cả các trật tự thuận và nghịch trong sắp xếp của tín hiệu cần đánh giá và tín hiệu mẫu cũng như tất cả những kết hợp có thể giữa các tín hiệu mẫu System Signal Discription A High-Defility speech(clean) B Speech band-pass-filtered (800-3000 Hz) C Speech low-pass-filtered (3000 Hz) and combined with low-pass- filtered white noise (500Hz). Peak SNR 10dB D Speech combined with reverberant echo. Delay of first echo 150ms E Speech peak cliped , then band-pass-filtered (300-2000Hz)  Phương pháp DCR Một phương pháp đánh giá tương đối đơn giản hơn để đánh giá chất lượng của các hệ thống viễn thông là nghe một cặp tín hiệu, tín hiệu đầu là tín hiệu tham chiếu, tín hiệu thứ hai là tín hiệu đánh giá. Người nghe sẽ nghe và đánh giá độ suy giảm chất lượng của tín hiệu cần đánh giá so với tín hiệu tham chiếu dựa trên thang điểm như trong bảng [3.2]. Phương pháp này gọi là Degradation Category Rating Method (DCR), do chỉ thực hiện phép đo độ suy giảm của tín hiệu thử so với tín hiệu tham chiếu nên phụ thuộc rất nhiều vào tín hiệu tham chiếu. Đánh giá DCR thường nhạy với khác biệt nhỏ trong chất lượng âm thanh nên thích hợp cho đánh giá các hệ thống băng rộng. Bảng 3.2: Thang đánh giá DCR 38
  43. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ Cấp độ Độ suy giảm (Degradation) 1 Rất khó chịu (Very annoying) 2 Khó chịu (Annoying) 3 Hơi khó chịu (Sightly annoying) Có nghe sự suy giảm nhưng không khó chịu (Audible but not 4 annoying) 5 Không nghe thấy sự suy giảm (Inaudible)  Phương pháp CCR Phương pháp DCR tuy cho thấy được tín hiệu nào được yêu thích hơn nhưng lại không cho thấy được mức độ yêu thích. Đánh giá CCR được xây dựng để đánh giá mức độ yêu thích của người nghe đối với mẫu tín hiệu theo thang điểm như trong bảng [3.3]. Mức 0 cho biết không có khác biệt, mức 1 là có khác biệt nhỏ, mức 2 là lớn và mức 3 là khác biệt rất lớn. Dấu “+” và ‘-’ chỉ sự khác biệt mang tính tốt hay xấu hơn so với tín hiệu mẫu . Bảng 3.3: Thang đánh giá CCR Rating Quality of Speech 3 Tốt hơn nhiều (Much better) 2 Tốt hơn (Better) 1 Hơi tốt hơn (Slightly Better) 0 Giống nhau (About the Same) -1 Hơi xấu hơn (Slightly Worse) -2 Xấu hơn (Worse) -3 Xấu hơn nhiều (Much Worse) Phương pháp đánh giá tương đối cho thấy được mức độ yêu thích của người nghe đối với một mẫu tín hiệu so với với một mẫu khác, tuy nhiên lại không chỉ ra nguyên nhân sự lựa chọn của họ. Trong một số ứng dụng, việc biết được nguyên nhân vì sao một mẫu tín hiệu được yêu thích hơn mẫu kia quan trọng hơn so với việc cho đánh giá mức độ yêu thích. Một nhược điểm khác của đánh giá tương đối là tín hiệu tham chiếu không phải lúc nào cũng được suy giảm trong phạm vi lớn mà chỉ được suy giảm ở một mức giới hạn nên có khuynh hướng khiến cho hầu hết các tín hiệu cần đánh giá hoặc là đều được thích hơn so với tín hiệu tham chiếu, hoặc đều không được thích hơn so với tín hiệu tham chiếu, làm phân cực kết quả đánh giá chất lượng. Một khuyết điểm nữa là do đánh giá tương đối phải liên quan đến tín hiệu tham chiếu nên để có thể 39
  44. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ so sánh kết quả từ hai phòng thí nghiệm khác nhau thì hai phòng thí nghiệm này cần phải cùng thực hiện với một tập tín hiệu tham chiếu giống nhau . Các khuyết điểm trên được giải quyết bằng phép đánh giá tuyệt đối, trong đó người nghe sẽ đánh giá tổng quan chất lượng mà không cần so sánh với tín hiệu khác. b. Phương pháp đánh giá tuyệt đối  Mean Opinion Scores MOS là một trong những phương pháp đánh giá tuyệt đối phổ biến được khuyến cáo bởi ITU cũng như Ủy ban IEEE về các phương pháp đánh giá chủ quan. Trong phương pháp này, người nghe sẽ đánh giá chất lượng của tín hiệu thông qua thang đánh giá 5 điểm như trong bảng [3.4]. Kết quả đánh giá sẽ được lấy trung bình trên tổng số người nghe . Quá trình đánh giá MOS gồm 2 giai đoạn: huấn luyện và đánh giá. Trong giai đoạn huấn luyện, người nghe sẽ được nghe một tập các tín hiệu tham chiếu có chất lượng cao, thấp cũng như các mức trung bình để người nghe làm quen. Quá trình này rất quan trọng và đảm bảo sẽ đồng nhất cảm quan của tất cả mọi người với nhau, hay nói cách khác, nó đảm bảo một tín hiệu được xem là “rất tốt” với người này thì những người khác cũng xem là “rất tốt” . Trong giai đoạn đánh giá này, người nghe sẽ nghe mẫu tín hiệu và đánh giá theo thang điểm như trong bảng [3.4]. Bảng 3.4. Thang đánh giá MOS Chất lượng thoại Số điểm Mức độ suy giảm (Quality of the (Score) (Level of Distortion) Speech) 5 Tuyệt vời (Excellent) Không thể nhận thấy (Imperceptible) Hơi nhận thấy nhưng không gây khó chịu 4 Tốt (Good) (Just perceptible, but not annoying) Có thể nhận thấy và chỉ hơi gây khó chịu 3 Khá tốt (Fair) (Perceptible and slight annoying) Khó chịu nhưng không quá để mức phải 2 Xấu (Poor) chú ý (Annoying but not Objectionable) Rất khó chịu và làm phải chú ý đến 1 Quá xấu (Bad) (Very annoying and Objectionable) 3.3.2. Phương pháp đánh giá khách quan 40
  45. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ Đánh giá khách quan là phương pháp đánh giá chất lượng dựa trên các phép đo thuộc tính của tín hiệu. Trong phạm vi đề tài lựa chọn các phương pháp đánh giá khách quan thực hiện đánh giá chất lượng tiếng nói qua các tiêu chí đánh giá bao gồm: - Segmental Signal-to-Noise Ratio (SegSNR) - Log Likelihood Ratio (LLR) - Cepstrum Distance (CEP) - Perceptual Evaluation of Speech Quanlity (PESQ) - Weighted Spectral Slope (WSS) a. Đo tỷ số tín hiệu trên nhiễu trên từng khung (SegSNR) Đo tỷ số tín hiệu trên nhiễu (SNR) trên từng khung trong miền thời gian là một trong những phương pháp đánh giá về mặt toán đơn giản nhất. Để phương pháp này có hiệu quả thì điều quan trọng là tín hiệu gốc và tín hiệu đã qua xử lý phải trong cùng miền thời gian và độ lệch pha hiện tại phải được hiệu chỉnh chính xác. SegSNR được xác định như sau [10] : Nm N 1 2 10 M 1 x (n) SegSNR lg n Nm m 0 Nm N 1 (3.1) M (x(n) xˆ(n))2 n Nm Trong đó x(n): tín hiệu gốc (tín hiệu sạch) x̂(n): tín hiệu đã được tăng cường N: chiều dài khung (thường được chọn từ 15-20ms) M: số khung của tín hiệu Một vấn đề với phương pháp đánh giá SegSNR là năng lượng của tín hiệu trong suốt khoảng lặng của tín hiệu thoại (xuất hiện nhiều trong các đoạn hội thoại) sẽ rất bé, dẫn đến kết quả là giá trị của tỉ số SegSNR lớn làm sai lệch toàn bộ đánh giá. Phương án giải quyết duy nhất là loại trừ những khung lặng trong biểu thức trên bằng cách đo mức năng lượng trong thời gian ngắn giảm giá trị SegSNR ngưỡng đến một giá trị bé. Nếu giá trị SegSNR được giới hạn trong khoảng [-10dB, 35dB] [4] sẽ tránh được việc cần phải dùng bộ tách tín hiệu thoại và khoảng lặng. Một cách xác định SegSNR khác được đề xuất bởi Richds trong đó hàm log có thay đổi so với công thức 3.1 [5]. Nm N 1 2 10 M 1 x (n) SegSNR lg 1 n Nm R m 0 Nm N 1 (3.2) M (x(n) xˆ(n))2 n Nm Như vậy có thể tránh được các giá trị sai lệch lớn trong suốt các khoảng lặng của tín hiệu tiếng nói. Chú ý rằng giá trị nhỏ nhất có thể đạt được của SegSNR bây giờ là 0 41
  46. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ thì đã tốt hơn nhiều so với những giá trị âm vô cùng. Ưu điểm chính của việc xác định trước phân đoạn SNR là tránh được việc cần thiết phải làm rõ ràng giữa các khoảng tiếng nói và khoảng lặng. Đo SNR cho từng khung có thể được mở rộng trong miền tần số: K B .lg F 2 (m, j)/(F(m, j) Fˆ(m, j))2 10 M 1 j 1 j   fwSegSNR . R m 0 K (3.3) M B j 1 j Trong đó Bj : Trọng số tại dải tần số thứ j K : Số dải tần M : Tổng số khung tín hiệu F(m,j) : Dãy tín hiệu gốc qua bộ lọc đã được khuếch đại tại dải lần thứ j và khung thứ m F෠(m,j): Dãy tín hiệu đã được tăng cường qua lọc khuếch đại ở cùng một dải tần với F(m,j) Ưu điểm chính của việc sử dụng SegSNR trên miền tần số thay vì miền thời gian tăng thêm tính linh động của việc phân bố trọng số của phổ khác nhau cho những dải tần khác nhau. b. Phương pháp đo LLR Là một trong ba phương pháp đo khoảng cách phổ dựa trên LPC. Phép đo Log Likelihood Ratio (LLR) được xác định theo công thức: ̅ ෝ 푅 ̅ ෝ 퐿퐿푅( , ̅ ) = lg (3.4) 푅 T ax 1, ax (1), ax (2), , ax (p): hệ số LPC của tín hiệu sạch T axˆ 1, axˆ (1), axˆ (2), , axˆ (p): hệ số của tín hiệu đã được tăng cường chất lượng. Rx là (p+1)*(p+1) ma trận tự tương quan (Toeplitz) của tín hiệu sạch. Biểu thức trên được viết lại trong miền tần số như sau [5]: 2 Ax () Axˆ () d (a ,aˆ ) lg 1 d LLR x x Ax () (3.5) ̅ Ax(ω) và Ax(ω) lần lượt là phổ của và ̅ ̂ . c. Phương pháp đo CEP Khoảng cách cepstrum CEP cung cấp ước lượng khoảng cách phổ trong miền logarit. Các hệ số cepstrum có thể được tính đệ quy từ các hệ số LPC {am} theo biểu thức sau: 42
  47. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ = + ∑ −1 ( ) 1≤m≤p (3.6) =1 − Trong đó p là bậc của phân tích LPC. Phép đo khách quan dựa trên hệ số cepstrum được tính như sau: 10 2 ( ⃗ , ⃗ ) = √2 ∑ [ ( ) − ( )] (3.7) 푃 푙표 10 =1 Với ⃗ , ⃗ lần lượt là vectơ hệ số cepstrum của tín hiệu sạch và tín hiệu được cải thiện. d. Phương pháp đánh giá cảm quan chất lượng thoại PESQ Các phương pháp đánh giá chủ quan trước ước lượng chỉ trong một mảng có giới hạn các phần méo mà không bao gồm các méo dạng chung gặp phải khi tiếng nói đi qua một hệ thống mạng. Mất gói tin, trễ tín hiệu, biến dạng mã có thể làm các thông số đo đạc dự đoán không chính xác chất lượng tiếng nói. Do vậy vào năm 2000, ITU-T chọn Perceptual Evaluation of Speech Quality (PESQ) để thay cho Perceptual speech quality measure (PSQM). Trong tất cả các phương pháp đánh giá thì PESQ là phương pháp phức tạp nhất và được khuyến nghị bởi ITU-T P.862 [15] để nhận biết chất lượng tiếng nói băng tần hẹp 3,2kHz. Quá trình thực hiện phép đo PESQ được biểu diễn như sau: tín hiệu gốc và tín hiệu bị suy giảm trước hết được cân bằng (level-equalized) theo một mức độ nghe chuẩn (standard listening level), và được lọc bởi bộ lọc với đáp ứng tương tự như mẫu điện thoại cầm tay (telephone handset). Tín hiệu sau đó được sắp xếp đúng theo thứ tự độ trễ theo thời gian, sau đó được xử lý thông qua một hàm biến đổi âm thanh (auditory transform) tương tự như trong BSD để có được phổ loudness spectra. Sự khác nhau giữa các phổ loudness gọi là disturbance được tính toán và lấy trung bình theo thời gian và tần số một cách tương quan với dự đoán của subjective MOS score là average disturbance 푠 và average asymmetrical disturbance 푠 . Các giá trị của PESQ nằm trong khoảng 0.5 đến 4.5. Các giá trị cao tương ứng với chất lượng càng tốt. PESQ có sự tương quan lớn với các test thử trong nhiều điều kiện kiểm tra với các ứng dụng trên voice-over-internet protocol. PESQ được tính bởi công thức: PESQ a0 a1dsym a2dasym Với 0 = 4.5, 1 = 0.1, 2 = 0.0309 [5]. PESQ là một trong những phương pháp đánh giá khách quan phức tạp nhưng đáng tín cậy và có độ tương quan khá cao so với đánh giá chủ quan. e. Phương pháp đo WSS Phương pháp đánh giá WSS (Weighted Spectral Slope) này được tính bởi dốc phổ đầu tiên được tìm thấy của mỗi dải phổ. Xét Cx(k) là phổ dải tới hạn của tín hiệu 43
  48. Chương 3: CƠ SỞ DỮ LIỆU VÀ TIÊU CHÍ ĐÁNH GIÁ sạch và Cxˆ (k) là của tín hiệu tăng cường, xét trong đơn vị dB. Phương trình sai phân bậc nhất được dùng để tính độ dốc phổ được cho như sau: 푆 ( ) = ( + 1) − ( ) 푆 ̅ ( ) = ̅ ( + 1) − ̅ ( ) (3.8) Với 푆 ( ) và 푆 ̅ ( ) lần lượt biểu diễn cho độ dốc dải tần thứ k của tín hiệu sạch và tín hiệu tăng cường. Sự khác nhau giữa các độ dốc phổ phụ thuộc vào trọng số một là dải tần gần với đỉnh hoặc rãnh, hai là đỉnh lớn nhất của phổ. Trọng số của dải thứ k, ký hiệu W(k) được tính như sau [10]: Kmax Kloc max W(k) . (3.9) Kmax Cmax Cx (k) Kloc max Cloc max Cx (k) Cmax là độ rộng loga lớn nhất của phổ trong tất cả các băng, Clocmax là giá trị của đỉnh gần với băng k nhất, và Kmax, Klocmax là hằng số có được bằng phép phân tích hồi quy để cực đại hóa sự tương quan giữa đánh giá chủ quan và giá trị của đánh giá khách quan. Với những thí nghiệm đã được thực hiện thì người ta tìm được sự tương quan lớn nhất sẽ có được với Kmax= 20 và Klocmax = 1 [9]. Phép đo WSS tính cho mỗi khung của tín hiệu thoại: ̅ 퐿 ̅ 2 푊푆 ( , ̂) = ∑ =1 푊( )[푆 ( ) − 푆 ̂( )] (3.10) với L là số lượng dải tới hạn. Giá trị WSS được tính bằng cách lấy trung bình các giá trị WSS thu được từ các khung trong câu. WSS là phương pháp đánh giá khá hấp dẫn bởi vì nó chỉ chú ý tới vị trí đỉnh phổ và ít nhạy cảm với các đỉnh xung quanh cũng như các chi tiết của phổ ở các vùng thấp. Đánh giá LPC cơ bản (ví dụ như đánh giá LLR) nhạy với sự thay đổi biên độ và sự thay đổi độ nghiêng phổ. Đánh giá WSS mang lại một sự tương quan lớn (ρ=0.74) hơn đánh giá LPC [5]. 3.4. KẾT LUẬN CHƯƠNG Như vậy chương 3 đã trình bày cơ sở dữ liệu đánh giá đa dạng, tương đối đầy đủ các tệp tin khác nhau về người nói, ngữ điệu, và các mức nhiễu tác động; đồng thời các tiêu chí đánh giá cũng đảm độ tin cậy khi so sánh giữa các kỹ thuật giảm nhiễm khác trong trong các môi trường nhiễu khác nhau. 44
  49. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ 4.1. GIỚI THIỆU CHƯƠNG Trong chương 4 sẽ tiến hành phân tích, đánh giá các kết quả thu được, làm cơ sở đánh giá so sánh hiệu quả giảm nhiễu cho tín hiệu tiếng nói sử dụng bộ lọc Kalman với các phương pháp khác. 4.2. KẾT QUẢ ĐÁNH GIÁ VÀ PHÂN TÍCH Với cơ sở dữ liệu tương đối lớn gồm 3600 câu thoại đã được xử lý giảm nhiễu so với 600 câu thoại đã được cộng nhiễu ban đầu, đề tài lựa chọn phương pháp đánh giá khách quan với việc thực hiện đo lường theo 5 tiêu chí đánh giá khách quan đã trình bày ở trên. Sau đó tiến hành tính giá trị trung bình của các chỉ số ứng với 4 mức SNR trong 5 môi trường nhiễu khác nhau, làm cơ sở để so sánh, phân tích các kết quả thu được. 4.2.1. Kết quả đánh giá theo phương pháp SegSNR Trong phần này phương pháp SegSNR sẽ được lựa chọn để đánh giá 6 kỹ thuật giảm nhiễu với 5 mức nhiễu khác nhau, qua đó phân tích các kết quả thu được, so sánh 3 kỹ thuật đã nghiên cứu: NSS, MMSE và LogMMSE với 3 kỹ thuật giảm nhiễu dùng bộ lọc Kalman (Kalman-TD, Kalman-FFT, Kalman-STFT). Nhiễu tiếng ồn xe ôtô (Car) Hình 4.1. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn ôtô (Car) 45
  50. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tiếng nói đám đông (Babble) Hình 4.2. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn đám đông (Bable) Nhiễu trắng (White) Hình 4.3. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu trắng (White) 46
  51. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tàu hỏa (Train) Hình 4.4. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tàu hỏa (Train) Nhiễu tiếng ồn đường phố (Street) Hình 4.5. Kết quả đánh giá SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu đường phố (Street) 47
  52. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Dựa vào kết quả đánh giá trên có nhận xét rằng: - Các thuật toán giảm nhiễu đều cho chỉ số SegSNR tốt hơn nhiều so với tín hiệu gốc, nghĩa là đã đảm bảo yêu cầu giảm nhiễu cho tín hiệu tiếng nói. - Kết quả đánh giá SegSNR cho thấy các thuật toán sử dụng bộ lọc Kalman có khả năng giảm nhiễu tốt hơn hẳn so với các thuật toán khác (trừ trường hợp thuật toán Kalman-STFT cho kết quả nén thấp ở tín hiệu có SNR cao), với tỷ lệ giảm nhiễu khá tương đồng cho cả 5 loại nhiễu. - Với loại nhiễu trắng, các thuật toán đa phần cho chỉ số SegSNR cao hơn các loại nhiễu khác. - Trong các loại nhiễu thì nhiễu tiếng ồn đám đông cho kết quả SegSNR thấp nhất. Đánh giá theo thông số SegSNR được đánh giá khá tin cậy theo tiêu chuẩn của IEEE, phản ánh trung thực về khả năng giảm nhiễu nhằm tăng cường chất lượng của tín hiệu thoại. 4.2.2. Kết quả đánh giá theo phương pháp LLR Nhiễu tiếng ồn xe ôtô (Car) Hình 4.6. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn ôtô (Car) 48
  53. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tiếng nói đám đông (Babble) Hình 4.7. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tiếng ồn đám đông (Bable) Nhiễu trắng (White) Hình 4.8. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu trắng (White) 49
  54. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tàu hỏa (Train) Hình 4.9. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu tàu hỏa (Train) Nhiễu tiếng ồn đường phố (Street) Hình 4.10. Kết quả đánh giá LLR của 6 thuật toán tăng cường chất lượng tiếng nói với loại nhiễu đường phố (Street) 50
  55. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Từ kết quả đánh giá trên cho thấy rằng: - Nhiễu tiếng ồn đám đông và nhiễu từ ôtô cho thấy chỉ số LLR thấp hơn với dải biến thiên hẹp hơn so với các loại nhiễu khác. - Với loại nhiễu có tính ổn định cao như nhiễu trắng, các thuật toán đều cho ra kết quả chỉ số LLR tốt hơn hẳn, đặc biệt là thuật toán Kalman-TD. - Trong số 6 thuật toán sử dụng để tăng cường chất lượng tiếng nói các chỉ số LLR chỉ ra rằng lọc nhiễu dùng các thuật toán sử dụng bộ lọc Kalman cho kết quả đánh giá khá cao với dải biến thiên rộng hơn so với các thuật toán khác. 4.2.3. Đánh giá theo phương pháp cảm quan PESQ trên các môi trường nhiễu khác nhau Bên cạnh phương pháp đánh giá SegSNR, PESQ cũng cho kết quả đánh giá khá tin cậy với các tín hiệu tiếng nói đã được tăng cường. Thuật toán Kalman-TD Hình 4.11. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền thời gian theo thông số PESQ cho 5 môi trường nhiễu 51
  56. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Thuật toán Kalman-FFT Hình 4.12. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền tần số biến đổi Fourier nhanh theo thông số PESQ cho 5 môi trường nhiễu Thuật toán Kalman-STFT Hình 4.13. Kết quả đánh giá hàm giảm nhiễu Kalman trong miền tần số biến đổi Fourier thời gian ngắn theo thông số PESQ cho 5 môi trường nhiễu Dựa vào kết quả thu được có những nhận xét sau: - Đánh giá các thuật toán giảm nhiễu sử dụng bộ lọc Kalman theo phương pháp PESQ cho kết quả khá thấp cho tất cả các loại nhiễu. 52
  57. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ - Thuật toán sử dụng bộ lọc Kalman ở miền thời gian Kalman-TD cho kết quả tốt hơn hai thuật toán còn lại. - Bộ lọc Kalman ở miền tần số (Kalman-FFT và Kalman-STFT) cho kết quả tương đồng với nhau, trong đó nhiễu trắng cho chỉ số PESQ cao hơn các loại nhiễu khác. Qua thông số này cho thấy cần điều chỉnh thuật toán Kalman để cải thiện hiệu quả giảm nhiễu theo tiêu chí đánh giá PESQ. 53
  58. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ 4.2.4. Đánh giá hiệu quả giảm nhiễu trên các môi trường nhiễu khác nhau Thuật toán Kalman-TD Hình 4.14. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-TD 54
  59. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Thuật toán Kalman-FFT Hình 4.15. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-FFT 55
  60. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Thuật toán Kalman-STFT Hình 4.16. Kết quả đánh giá theo các chỉ số CEP, PESQ, WSS, SegSNR cho thuật toán Kalman-STFT 56
  61. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ - Nhìn chung cả 3 thuật toán đều cho thấy phương pháp CEP, WSS cho hiệu quả giảm nhiễu với loại nhiễu trắng cao hơn so với các loại nhiễu khác. Các loại nhiễu còn lại cho kết quả khá kém ở cả 3 kỹ thuật giảm nhiễu. - Ở phương pháp đánh giá PESQ cho kết quả khá thấp cho tất cả các loại nhiễu. - Với phương pháp đánh giá SegSNR, thuật toán Kalman-TD cho kết quả với nhiễu trắng có chỉ số cao hơn, trong khi 2 phương pháp còn lại cho thấy kết quả với nhiễu trắng không cao hơn các loại nhiễu khác. Để đánh giá các phương pháp khác nhau với các loại nhiễu khác nhau, qua đó so sánh các thuật toán giảm nhiễu, phần tiếp theo sẽ trình bày kết quả đánh giá theo 4 phương pháp với 6 kỹ thuật giảm nhiễu đã đề cập. 57
  62. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ 4.2.5. Kết quả đánh giá CEP-PESQ-WSS-SegSNR với các thuật toán giảm nhiễu Nhiễu tiếng ồn ôtô (Car) Hình 4.17. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu ôtô 58
  63. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tiếng ồn đám đông (Babble) Hình 4.18. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu đám đông 59
  64. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu trắng (White) Hình 4.19. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu trắng 60
  65. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu tàu hỏa (Train) Hình 4.20. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu tàu hỏa 61
  66. Chương 4: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Nhiễu đường phố (Street) Hình 4.21. Kết quả đánh giá CEP, PESQ, WSS, SegSNR của 6 thuật toán tăng cường chất lượng tiếng nói với nhiễu đường phố 62
  67. Chương 3: THỰC HIỆN GIẢM NHIỄU VÀ ĐÁNH GIÁ KẾT QUẢ Kết quả đánh giá cho thấy rằng: - Nhìn chung các thuật toán giảm nhiễu cho kết quả tiếng nói được tăng cường có các chỉ số đánh giá khá tốt so với chưa xử lý. - Phương pháp SegSNR cho thấy chỉ số ở kết quả thu được khá cao, đặc biệt là trong môi trường nhiễu trắng, loại trừ thuật toán Kalman-STFT chưa có sự điều chỉnh thuật toán phù hợp. - Chỉ số PESQ cho kết quả tốt với thuật toán Kalman-TD, còn 2 thuật toán giảm nhiễu Kalman trong miền tần số chưa thu được kết quả khả quan. - Bên cạnh đó, 2 phương pháp đánh giá CEP và WSS cho thấy chất lượng thoại khá kém trong các môi trường nhiễu xấu. Hai kỹ thuật giảm nhiễu Kalman-FFT và Kalman-STFT cho kết quả tốt với phương pháp CEP; đồng thời cả 3 kỹ thuật giảm nhiễu Kalman, đặc biệt là Kalman-TD cho kết quả tốt với phương pháp đánh giá WSS ở nhiễu tiếng ồn đám đông. Còn loại nhiễu xe hơi cũng cho kết quả đánh giá khá tương đồng với nhiễu tiếng ồn đám đông, cho thấy khả năng giảm nhiễu của các kỹ thuật với 2 loại nhiễu này gần giống nhau theo các tham số đánh giá. - Các phương pháp đánh giá này dựa vào việc phân tích phổ tín hiệu, cho nên các thuật toán nén nhiễu càng mạnh thì cũng dễ dàng làm mất mát phần tín hiệu của tiếng nói có ích, phát sinh nhiễu âm học “musical tone” gây méo dạng tín hiệu, cho kết quả đánh giá theo các chỉ số này không cao. - Đối với các loại nhiễu tác động tương ứng SNR thấp cho thấy thuật toán giảm nhiễu sử dụng hàm LogMMSE-PF và Kalman-TD cho kết quả khá tốt, đặc biệt là đối với trường hợp nhiễu trắng. 4.3. KẾT LUẬN CHƯƠNG Kết quả đánh giá dữ liệu tiếng nói sau khi được tăng cường sử dụng các thuật toán đã trình bày cho thấy các tiêu chí đánh giá khác nhau có sự thay đổi nhất định trong các môi trường nhiễu khác nhau và bởi các kỹ thuật giảm nhiễu khác nhau. Tuy nhiên, nhìn chung tín hiệu tiếng nói bị tác động bởi nhiễu trắng cho kết quả sau tăng cường tốt hơn vì có mật độ phổ phẳng. Trong các kỹ thuật giảm nhiễu sử dụng bộ lọc Kalman, kỹ thuật giảm nhiễu trong miền thời gian được điều chỉnh cho kết quả khá tốt. Việc ước lượng nhiễu quá lớn cũng có thể gây ảnh hưởng đến phổ tiếng nói được tăng cường, làm méo dạng tín hiệu và cho các kết quả đánh giá không tốt theo các chỉ số WSS, PESQ, CEP. 63
  68. KẾT LUẬN VÀ KIẾN NGHỊ KẾT LUẬN Đề tài đã trình bày thuật toán giảm nhiễu sử dụng bộ lọc Kalman trong cả miền thời gian và miền tần số. Việc ước lượng công suất nhiễu được thực hiện sử dụng kỹ thuật ước lượng dựa trên xác suất hiện diện tiếng nói SPP, qua đó cho kết quả ước lượng khá tốt. Việc sử dụng bộ lọc Kalman điều chỉnh làm nhiệm vụ ước lượng tín hiệu tiếng nói khi kết hợp với mô hình hồi quy cho cả tiếng nói và nhiễu có khả năng làm tăng hiệu quả ước lượng cho tín hiệu tiếng nói tốt hơn. Tuy nhiên, việc sử dụng mô hình hồi quy bậc càng cao càng làm cho thuật toán thực hiện nhiều vòng lặp, làm tăng thời gian xử lý của hệ thống, gây khó khăn cho việc thực hiện trong các hệ thống thời gian thực. KIẾN NGHỊ Bên cạnh các kết quả thu được, tác giả định hướng tiếp tục nghiên cứu, tìm hiểu các vấn đề như sau: - Các thuật toán giảm nhiễu sử dụng bộ lọc Kalman ở miền tần số hiện tại cho cho kết quả chưa cao, sẽ tiếp tục điều chỉnh các thông số của hệ thống gắn liền với việc so sánh đánh giá để cải thiện đặc tính của thuật toán. - Việc điều chỉnh hệ thống nhằm cải thiện thời gian xử lý thuật toán sẽ được chú trọng nhằm mục đích đưa vào phát triển trên các hệ thống xử lý thời gian thực, trên các kit phát triển DSP, FPGA để kiểm chứng thuật toán trên thiết bị phần cứng thực. - Tiếp tục nghiên cứu, phát triển, đánh giá bộ lọc Kalman trong miền biến đổi Wavelet để tiến hành đánh giá hiệu năng của bộ lọc Kalman ứng với các miền xử lý khác nhau. 64
  69. TÀI LIỆU THAM KHẢO TÀI LIỆU THAM KHẢO Tiếng Anh: [1] Benesty, Jacob. “Springer handbook of speech processing”. Springer Science & Business Media, 2008. [2] Ephraim, Yariv, and David Malah. “Speech enhancement using a minimum mean-square error log-spectral amplitude estimator”. Acoustics, Speech and Signal Processing, IEEE Transactions on 33.2 (1985): 443-445. [3] Gerkmann, Timo, and Richard C. Hendriks. “Noise power estimation based on the probability of speech presence”. Applications of Signal Processing to Audio and Acoustics (WASPAA), 2011 IEEE Workshop on. IEEE, 2011. [4] Hansen, John HL, and Bryan L. Pellom. “An effective quality evaluation protocol for speech enhancement algorithms”. ICSLP. Vol. 7. 1998. [5] Hu, Yi, and Philipos C. Loizou. “Evaluation of objective quality measures for speech enhancement”. Audio, Speech, and Language Processing, IEEE Transactions on 16.1 (2008): 229-238. [6] Hu, Yi, and Philipos C. Loizou. “Subjective comparison of speech enhancement algorithms”. Acoustics, Speech and Signal Processing, 2006. ICASSP 2006 Proceedings. 2006 IEEE International Conference on. Vol. 1. IEEE, 2006. [7] Kalman, Rudolph Emil. “A new approach to linear filtering and prediction problems”. Journal of Fluids Engineering 82.1 (1960): 35-45. [8] Kuldip K. Paliwal, A. Basu, “A speech enhancement method based on Kalman filtering”. Proc. IEEE ICASSP (IEEE, Dallas 1987) pp. 177–180. [9] Klatt, Dennis. “Prediction of perceived phonetic distance from critical-band spectra: A first step”. Acoustics, Speech, and Signal Processing, IEEE International Conference on ICASSP'82 Vol. 7. IEEE, 1982. [10] Philipos C. Loizou. “Speech enhancement: theory and practice”. CRC press, 2013. [11] Martin, Rainer. “Spectral subtraction based on minimum statistics”. power 6 (1994): 8. [12] M.H. Hayes. “Statistical Digital Signal Processing and Modeling”. Wiley, New York 1996. [13] Kuldip K. Paliwal, Kuldip, Kamil Wójcicki, and Belinda Schwerin. “Single- channel speech enhancement using spectral subtraction in the short-time iv
  70. TÀI LIỆU THAM KHẢO modulation domain”. Speech communication 52.5 (2010): 450-475. [14] Popescu, Dimitrie C., and Ilija Zeljkovic. “Kalman filtering of colored noise for speech enhancement”. Acoustics, Speech and Signal Processing, 1998. Proceedings of the 1998 IEEE International Conference on. Vol. 2. IEEE, 1998. [15] Recommendation, I. T. U. T. “Perceptual evaluation of speech quality (PESQ), an objective method for end-to-end speech quality assessment of narrowband telephone networks and speech codecs”. ITU-T Recommendation (2001): 862. [16] S.F. Boll, “Suppression of acoustic noise in speech using spectral subtraction”. IEEE T. Acoust. Speech 24(April), 113–120 (1979). [17] So, Stephen, Kamil K. Wójcicki, and Kuldip K. Paliwal. “Single-channel speech enhancement using kalman filtering in the modulation domain”. INTERSPEECH. 2010. Trang Web: [18] Philipos C. Loizou. “NOIZEUS: A noisy speech corpus for evaluation of speech enhancement algorithms” truy cập lần cuối 30/11/15 . v