Đồ án tốt nghiệp: Tìm hiểu thuật toán trừ phổ (Spectral Subtraction) trong xử lý tiếng nói

Đồ án tốt nghiệp phân tích thuật toán trừ phổ trong xử lý tiếng nói. Tìm hiểu nguyên lý, ưu nhược điểm và ứng dụng thực tế trong lọc nhiễu.

Chuyên ngành

Tin học Viễn thông

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp
54
0
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

DANH MỤC CÁC TỪ VIẾT TẮT VÀ CÁC THUẬT NGỮ TIẾNG ANH

DANH MỤC BẢNG BIỂU

DANH MỤC HÌNH ẢNH

MỞ ĐẦU

1. 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

1.2. Nâng cao chất lượng tiếng nói là gì ?

1.3. Tín hiệu, hệ thống và xử lý tín hiệu

1.3.1. Tín hiệu

1.3.2. Nguồn tín hiệu

1.3.3. Hệ thống và xử lý tín hiệu

1.3.4. Phân loại tín hiệu

1.4. Lý thuyết về nhiễu

1.4.1. Nguồn nhiễu

1.4.2. Nhiễu và mức tín hiệu tiếng nói trong các môi trường khác nhau

1.5. Tín hiệu rời rạc theo thời gian

1.5.1. Tín hiệu bước nhảy đơn vị

1.5.2. Tín hiệu xung đơn vị

1.5.3. Tín hiệu hàm sin rời rạc

1.6. Phép biến đổi Fourier của tín hiệu rời rạc DTFT

1.6.1. Sự hội tụ của phép biến đổi Fourier

1.6.2. Quan hệ giữa biến đổi Z và biến đổi Fourier

1.6.3. Phép biến đổi Fourier ngược

1.6.4. Các tính chất của phép biến đổi Fourier

1.6.5. Phân tích tần số (phổ) cho tín hiệu rời rạc

1.6.6. Phổ biên độ và phổ pha

1.7. Các thuật toán sử dụng nâng cao chất lượng tiếng nói

1.7.1. Mô hình thống kê

1.7.2. Cơ chế tạo tiếng nói

1.7.2.1. Bộ máy phát âm của con người
1.7.2.2. Mô hình kỹ thuật của việc tạo tiếng nói
1.7.2.3. Phân loại âm
1.7.2.4. Thuộc tính âm học của tiếng nói

1.8. Kết luận chương

2. CHƯƠNG 2: ĐÁNH GIÁ CHẤT LƯỢNG TIẾNG NÓI

2.1. Giới thiệu chương

2.2. Phương pháp đánh giá chủ quan

2.2.1. Các phương pháp đánh giá tuyệt đối

2.2.2. Các phương pháp đánh giá tương đối

2.2.2.1. Đánh giá bằng phương pháp so sánh các mẫu tín hiệu
2.2.2.2. Phương pháp đánh giá theo sự suy giảm chất lượng

2.3. Phương pháp đánh giá khách quan

2.4. Kết luận chương

3. CHƯƠNG 3: THUẬT TOÁN SPECTRAL–SUBTRACTION

3.1. Giới thiệu chương

3.2. Thuật toán Spectral Subtraction

3.2.1. Giới thiệu chung

3.2.2. Nguyên tắc cơ bản của thuật toán

3.2.3. Spectral subtraction đối với phổ biên độ

3.2.4. Spectral subtraction đối với phổ công suất

3.3. Sơ đồ khối của thuật toán Spectral Subtraction

3.3.1. Phân tích tín hiệu theo từng frame

3.3.2. Overlap và Adding

3.3.3. Hàm xử lý giảm nhiễu

3.3.4. Ước lượng và cập nhật nhiễu

3.3.4.1. Voice activity detection
3.3.4.2. Quá trình ước lượng và cập nhật nhiễu

3.4. Kết luận chương

4. CHƯƠNG 4: MÔ PHỎNG BẰNG MATLAP

4.1. Giới thiệu chương

4.2. Giới thiệu chung về phần mềm Matlab

4.2.1. Khái niệm về Matlab

4.2.2. Các tính năng chính

4.3. Quy trình thực hiện và đánh giá thuật toán

4.4. Lưu đồ thuật toán Spectral Subtraction

4.5. Thực hiện và đánh giá thuật toán

4.6. Kết luận chương

4.7. Matlap Code của thuận toán giảm nhiễu

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI

TÀI LIỆU THAM KHẢO

PHỤ LỤC

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Tóm tắt

I. Đồ án tốt nghiệp Khám phá trừ phổ trong xử lý tiếng nói hiệu quả

Trong kỷ nguyên số, tín hiệu tiếng nói đóng vai trò cực kỳ quan trọng trong thông tin liên lạc và nhiều ứng dụng xử lý tiếng nói khác. Tuy nhiên, sự xuất hiện của nhiễu môi trường làm suy giảm nghiêm trọng chất lượng tiếng nói gốc, gây khó khăn cho người nghe và các hệ thống tự động. Vấn đề này thúc đẩy sự ra đời của các kỹ thuật tăng cường tiếng nói (Speech Enhancement) nhằm khôi phục độ rõ tiếng nói và giảm nhiễu nền. Đề tài đồ án tốt nghiệp tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói này tập trung vào một trong những phương pháp giảm nhiễu tiếng nói cơ bản và hiệu quả: thuật toán trừ phổ (Spectral Subtraction).

Nghiên cứu này khám phá nguyên lý hoạt động, cách triển khai và đánh giá hiệu quả của thuật toán trừ phổ trong việc loại bỏ nhiễu. Mục tiêu chính là cung cấp một cái nhìn toàn diện về phương pháp này, từ cơ sở lý thuyết xử lý tín hiệu số đến ứng dụng thực tiễn. Thuật toán trừ phổ dựa trên nguyên tắc đơn giản: ước lượng phổ nhiễu và trừ nó khỏi phổ tín hiệu bị nhiễu trong miền tần số. Mặc dù không thể khôi phục hoàn toàn tín hiệu gốc, phương pháp này giúp cải thiện đáng kể trải nghiệm nghe và hiệu suất của các hệ thống dựa trên tiếng nói.

Đồ án được cấu trúc để đi sâu vào từng khía cạnh: từ tổng quan về nâng cao chất lượng tiếng nói, các loại nhiễu, đến lý thuyết phép biến đổi Fourierphép biến đổi Fourier sóng ngắn (STFT). Đặc biệt, tài liệu này nhấn mạnh tầm quan trọng của việc phân tích phổ để hiểu rõ thành phần của tín hiệu và nhiễu. Bằng cách nghiên cứu các bước triển khai và mô phỏng trên phần mềm Matlab, đồ án cung cấp một lộ trình rõ ràng để sinh viên và nhà nghiên cứu tiếp cận và ứng dụng thuật toán trừ giảm nhiễu tiếng nói hiệu quả.

1.1. Tầm quan trọng của tiếng nói và thách thức chất lượng

Tiếng nói là phương tiện truyền tải thông tin cơ bản trong cuộc sống hàng ngày. Từ giao tiếp cá nhân đến các dịch vụ thoại phức tạp, nhu cầu về chất lượng tiếng nói cao là không thể phủ nhận. Tuy nhiên, trong quá trình truyền tải, tín hiệu tiếng nói thường xuyên bị ảnh hưởng bởi nhiễu môi trường (như tiếng ồn xe cộ, công trường, hoặc tiếng vang). Sự suy giảm này không chỉ làm giảm độ rõ tiếng nói mà còn gây khó chịu cho người nghe, làm mất đi thông tin quan trọng. Mục tiêu của tăng cường tiếng nói là giải quyết thách thức này, bảo toàn nội dung thông tin và nâng cao trải nghiệm người dùng.

1.2. Giới thiệu tổng quan về thuật toán trừ phổ Spectral Subtraction

Thuật toán trừ phổ (Spectral Subtraction - SS) là một trong những kỹ thuật giảm nhiễu tiếng nói sớm nhất và được sử dụng rộng rãi. Phương pháp này dựa trên một nguyên tắc cơ bản: thừa nhận sự có mặt của nhiễu trong tín hiệu bị nhiễu và ước lượng phổ của tiếng nói sạch bằng cách trừ đi phổ của nhiễu. Phổ của nhiễu thường được ước lượng và cập nhật trong các khoảng thời gian không có tiếng nói hoạt động. Sự đơn giản trong triển khai và hiệu quả nhất định đã biến thuật toán trừ phổ thành một điểm khởi đầu quan trọng cho các nghiên cứu về tăng cường tiếng nói.

II. Giải pháp nào tăng cường tiếng nói trước nhiễu môi trường

Để đối phó với sự suy giảm chất lượng tiếng nói do nhiễu môi trường, việc hiểu rõ bản chất của nhiễu và áp dụng các kỹ thuật xử lý tín hiệu số phù hợp là điều cần thiết. Tín hiệu tiếng nói trong môi trường thực tế luôn chịu ảnh hưởng từ nhiều nguồn nhiễu khác nhau, từ tiếng ồn tĩnh của quạt máy đến tiếng ồn động và thay đổi liên tục trong nhà hàng hay trên phương tiện giao thông. Các loại nhiễu này không chỉ khác nhau về nguồn gốc mà còn về đặc tính phổ và hành vi theo thời gian.

Việc đánh giá tỷ số tín hiệu trên nhiễu (SNR) là một chỉ số quan trọng để xác định mức độ ảnh hưởng của nhiễu. Theo tài liệu, mức độ nhiễu và tín hiệu tiếng nói biến thiên rất lớn tùy thuộc vào môi trường, từ 5-15 dB SNR trong môi trường yên tĩnh (phòng học) đến gần 0 dB SNR trong môi trường ồn ào (máy bay, tàu điện ngầm). Điều này đặt ra thách thức lớn cho các thuật toán giảm nhiễu khi phải thích ứng với nhiều kịch bản nhiễu khác nhau.

Nền tảng của các giải pháp tăng cường tiếng nói nằm ở xử lý tín hiệu số. Việc chuyển đổi tín hiệu tiếng nói từ miền thời gian sang miền tần số thông qua phép biến đổi Fourier và đặc biệt là phép biến đổi Fourier sóng ngắn (STFT) cho phép phân tích phổ chi tiết. Phân tích phổ giúp xác định các thành phần tần số của tín hiệu và nhiễu, từ đó tạo cơ sở cho việc tách chúng ra. Kiến thức vững chắc về các phép biến đổi này là chìa khóa để triển khai và tối ưu hóa các thuật toán giảm nhiễu tiếng nói như trừ phổ.

2.1. Phân loại nhiễu và tác động đến chất lượng tiếng nói

Nhiễu môi trường bao gồm nhiều dạng khác nhau, từ tiếng xe chạy, tiếng ồn công trường đến tiếng quạt máy tính. Đặc điểm của nhiễu có thể là tĩnh (không đổi theo thời gian) hoặc động (thay đổi liên tục). Ví dụ, nhiễu do gió thường tập trung năng lượng ở tần số thấp dưới 500Hz, trong khi nhiễu nhà hàng có năng lượng phân bố trên dải tần số rộng. Mức độ tỷ số tín hiệu trên nhiễu (SNR) đo lường mức độ tương đối của tín hiệu mong muốn so với nhiễu. Mức SNR thấp chỉ ra rằng nhiễu môi trường đang ảnh hưởng mạnh mẽ đến chất lượng tiếng nói, đòi hỏi các thuật toán giảm nhiễu phải hoạt động hiệu quả hơn.

2.2. Nền tảng xử lý tín hiệu số cho việc giảm nhiễu tiếng nói

Xử lý tín hiệu số cung cấp các công cụ cần thiết để phân tích và thao tác với tín hiệu tiếng nói. Để áp dụng các thuật toán giảm nhiễu, tín hiệu tiếng nói liên tục được chuyển đổi thành tín hiệu rời rạc theo thời gian, sau đó được phân tích trong miền tần số bằng phép biến đổi Fourier hoặc phép biến đổi Fourier sóng ngắn (STFT). Quá trình phân tích phổ này cho phép nhận diện và tách biệt các thành phần nhiễu khỏi tiếng nói. Hiểu biết sâu sắc về các khái niệm như phổ biên độ và phổ pha là nền tảng để triển khai hiệu quả thuật toán trừ phổ.

III. Hướng dẫn cơ bản thuật toán trừ phổ Giảm nhiễu tiếng nói

Thuật toán trừ phổ (Spectral Subtraction) là một trong những thuật toán giảm nhiễu tiếng nói được đề xuất sớm nhất và vẫn là nền tảng cho nhiều phương pháp sau này. Nguyên lý cơ bản của trừ phổ khá trực quan: giả sử tín hiệu bị nhiễu y[n] là tổng của tín hiệu sạch x[n] và tín hiệu nhiễu d[n]. Khi chuyển sang miền tần số bằng phép biến đổi Fourier rời rạc (DFT) hoặc biến đổi Fourier sóng ngắn (STFT), ta có Y(ω) = X(ω) + D(ω). Mục tiêu là ước lượng phổ nhiễu |D(ω)| và trừ nó khỏi phổ tín hiệu bị nhiễu |Y(ω)| để có được phổ tiếng nói sạch ước lượng |X(ω)|.

Có hai biến thể chính của thuật toán trừ phổ: trừ phổ biên độ và trừ phổ công suất. Trong phương pháp trừ phổ biên độ, phổ tiếng nói sạch ước lượng được tính bằng |X̂(ω)| = [|Y(ω)| - |D̂(ω)|]. Tương tự, trừ phổ công suất sử dụng công suất phổ: |X̂(ω)|^2 = |Y(ω)|^2 - |D̂(ω)|^2. Việc lựa chọn giữa hai phương pháp này có thể ảnh hưởng đến kết quả cuối cùng, tùy thuộc vào đặc tính của nhiễu và mục tiêu tăng cường tiếng nói. Tài liệu này nhấn mạnh rằng trừ phổ công suất đôi khi hoạt động tốt hơn.

Một thách thức cố hữu của thuật toán trừ phổ là khả năng phổ tiếng nói ước lượng có giá trị âm nếu phép trừ phổ quá lớn, điều không thể xảy ra với biên độ phổ thực. Giải pháp được đưa ra là chỉnh lưu bán sóng: gán giá trị 0 cho các thành phần phổ âm. Tuy nhiên, kỹ thuật này có thể dẫn đến hiệu ứng nhiễu nhạc (musical noise) – một loại nhiễu nhân tạo nghe như những tiếng huýt sáo không liên tục. Điều này đòi hỏi các kỹ thuật cải tiến để khắc phục và tối ưu hóa độ rõ tiếng nói sau xử lý. Sự hiểu biết về các nguyên lý và hạn chế này là cốt lõi để triển khai một hệ thống giảm nhiễu tiếng nói hiệu quả.

3.1. Nguyên lý hoạt động và công thức cơ bản của trừ phổ

Thuật toán trừ phổ dựa trên giả định rằng nhiễu và tín hiệu tiếng nói không tương quan và cộng tính trong miền tần số. Tín hiệu bị nhiễu y[n] được phân tích bằng biến đổi Fourier sóng ngắn (STFT) để có được phổ Y(ω). Phổ của nhiễu D(ω) được ước lượng phổ nhiễu trong các khoảng lặng. Sau đó, phổ ước lượng của tiếng nói sạch X̂(ω) được tính bằng cách trừ phổ nhiễu đã ước lượng khỏi phổ tín hiệu bị nhiễu. Công thức cơ bản thể hiện nguyên lý này, là trọng tâm để giảm nhiễu tiếng nói.

3.2. Spectral Subtraction Phổ biên độ và phổ công suất

Thuật toán trừ phổ có thể áp dụng cho phổ biên độ hoặc phổ công suất. Đối với phổ biên độ, ta trừ trực tiếp độ lớn của phổ nhiễu khỏi phổ tín hiệu bị nhiễu: |X̂(ω)| = [|Y(ω)| - |D̂(ω)|]. Với phổ công suất, phép trừ được thực hiện trên bình phương biên độ: |X̂(ω)|^2 = |Y(ω)|^2 - |D̂(ω)|^2. Tài liệu nghiên cứu chỉ ra rằng trừ phổ công suất có thể cho kết quả tốt hơn trong một số trường hợp nhất định. Cả hai phương pháp đều phải đảm bảo phổ tiếng nói ước lượng không âm thông qua kỹ thuật chỉnh lưu.

IV. Bí quyết tối ưu trừ phổ Ước lượng nhiễu và chất lượng âm thanh

Hiệu quả của thuật toán trừ phổ phụ thuộc rất lớn vào hai yếu tố then chốt: độ chính xác của quá trình ước lượng phổ nhiễu và khả năng giảm thiểu hiệu ứng nhiễu nhạc (musical noise). Nếu phổ nhiễu được ước lượng không chính xác, chất lượng tiếng nói sau xử lý sẽ bị ảnh hưởng nghiêm trọng. Ước lượng quá nhỏ sẽ làm nhiễu còn sót lại, trong khi ước lượng quá lớn sẽ gây ra méo tiếng nói, làm giảm độ rõ tiếng nói.

Sơ đồ khối của thuật toán trừ phổ bao gồm các bước: phân tích tín hiệu thành các frame, áp dụng biến đổi Fourier sóng ngắn (STFT), ước lượng phổ nhiễu, hàm xử lý giảm nhiễu tiếng nói, và sau đó là ghép lại tín hiệu bằng kỹ thuật Overlap-Add với phép biến đổi Fourier ngược (IDFT). Mỗi bước đều đóng vai trò quan trọng. Đặc biệt, quá trình ước lượng phổ nhiễu thường sử dụng phát hiện hoạt động tiếng nói (VAD) để xác định các đoạn không có tiếng nói, nơi nhiễu có thể được đo lường và cập nhật.

Tuy nhiên, các phương pháp VAD truyền thống hiệu quả với nhiễu trắng gaussian nhưng gặp khó khăn với nhiễu môi trường có đặc tính biến đổi liên tục. Sự biến đổi này khiến việc ước lượng phổ nhiễu trở nên phức tạp hơn, ảnh hưởng đến khả năng tăng cường tiếng nói. Vấn đề hiệu ứng nhiễu nhạc (musical noise) là một nhược điểm nổi bật của trừ phổ cổ điển, gây ra do các thành phần phổ âm bị gán bằng 0 đột ngột. Để khắc phục, nhiều biến thể và kỹ thuật làm mịn phổ đã được phát triển, nhằm tạo ra tiếng nói sau xử lý tự nhiên hơn và ít méo mó hơn, đồng thời cải thiện tỷ số tín hiệu trên nhiễu (SNR).

4.1. Vai trò then chốt của ước lượng phổ nhiễu trong trừ phổ

Việc ước lượng phổ nhiễu chính xác là yếu tố quyết định sự thành công của thuật toán trừ phổ. Theo tài liệu nghiên cứu, nếu nhiễu được ước lượng quá nhỏ, nhiễu sẽ vẫn còn trong tín hiệu, gây khó chịu cho người nghe. Ngược lại, nếu nhiễu được ước lượng quá lớn, tín hiệu tiếng nói sẽ bị méo, làm giảm độ rõ tiếng nói. Phương pháp phổ biến để ước lượng phổ nhiễu là sử dụng phát hiện hoạt động tiếng nói (VAD) để nhận biết các khoảng im lặng và tính toán phổ trung bình của nhiễu. Tuy nhiên, hiệu quả của VAD giảm khi đối mặt với nhiễu môi trường biến đổi.

4.2. Khắc phục hiệu ứng nhiễu nhạc và các biến thể trừ phổ

Hiệu ứng nhiễu nhạc (musical noise) là một nhược điểm thường gặp của thuật toán trừ phổ do việc gán các thành phần phổ âm bằng 0. Điều này tạo ra các thành phần tần số rời rạc, không tự nhiên trong tín hiệu đã được tăng cường tiếng nói. Để khắc phục, các biến thể của thuật toán trừ phổ như over-subtraction (trừ đi một lượng lớn hơn) hoặc sử dụng các hàm làm mịn phổ đã được đề xuất. Mục tiêu là làm cho tiếng nói sau xử lý mượt mà hơn, giảm thiểu các âm thanh nhân tạo và cải thiện chất lượng tiếng nói cảm nhận được.

V. Kết quả thực nghiệm trừ phổ trong xử lý tiếng nói với Matlab

Để đánh giá hiệu quả của thuật toán trừ phổ, quá trình mô phỏng và thực nghiệm trên phần mềm Matlab đã được tiến hành. Quy trình này bao gồm các bước cụ thể từ xây dựng lý thuyết đến triển khai mã nguồn và đánh giá kết quả thực tế. Matlab là một công cụ lý tưởng cho xử lý tín hiệu số nhờ khả năng tích hợp tính toán mạnh mẽ, hỗ trợ lập trình ngôn ngữ bậc cao dựa trên các phép toán vectơ, mảng và ma trận. Điều này cho phép các nhà nghiên cứu dễ dàng thực hiện phép biến đổi Fourier sóng ngắn (STFT), phân tích phổ, và các thao tác cần thiết khác để triển khai thuật toán trừ phổ.

Trong phần thực nghiệm, thuật toán trừ phổ đã được áp dụng để giảm nhiễu tiếng nói trên các file âm thanh với các mức tỷ số tín hiệu trên nhiễu (SNR) khác nhau, cụ thể là 15dB và 5dB. Các tham số như cửa sổ Hamming, tỷ lệ chồng lấp (SP = 0.4), độ dài frame (L = 25ms) và hệ số Gamma (1 cho trừ phổ biên độ, 2 cho trừ phổ công suất) đã được điều chỉnh và kiểm tra. Kết quả mô phỏng được thể hiện qua dạng sóng và phổ của tín hiệu sạch, tín hiệu bị nhiễu, và tín hiệu sau khi xử lý bằng trừ phổ.

Nhận xét từ thực nghiệm cho thấy thuật toán trừ phổ hoạt động hiệu quả hơn ở môi trường có SNR cao. Cụ thể, với SNR = 15dB, tín hiệu đầu ra gần như sạch hoàn toàn. Tuy nhiên, ở SNR = 5dB, nhiễu vẫn còn tương đối nhiều. Tài liệu cũng chỉ ra rằng việc sử dụng hệ số Gamma = 1 (trừ phổ biên độ) mang lại kết quả tốt hơn so với Gamma = 2 (trừ phổ công suất) trong các thử nghiệm này. Điều này chứng minh rằng việc lựa chọn các tham số và biến thể của thuật toán giảm nhiễu có ảnh hưởng đáng kể đến chất lượng tiếng nói cuối cùng.

5.1. Quy trình mô phỏng và cài đặt thuật toán trừ phổ trên Matlab

Quy trình mô phỏng trên Matlab bao gồm ba giai đoạn chính: xây dựng thuật toán dựa trên cơ sở toán học của xử lý tín hiệu số, triển khai mã nguồn bằng ngôn ngữ lập trình Matlab, và thực hiện xử lý tín hiệu tiếng nói bị nhiễu. Matlab là một môi trường mạnh mẽ với các thư viện sẵn có cho phép biến đổi Fourier, phân tích phổ, và các công cụ trực quan hóa dữ liệu, giúp dễ dàng cài đặt và kiểm tra thuật toán trừ phổ. Quá trình này giúp chuyển hóa lý thuyết thành ứng dụng thực tiễn để giảm nhiễu tiếng nói.

5.2. Đánh giá hiệu quả giảm nhiễu và chất lượng tiếng nói sau xử lý

Các thực nghiệm đã so sánh hiệu quả của thuật toán trừ phổ ở các mức tỷ số tín hiệu trên nhiễu (SNR) khác nhau (15dB và 5dB). Kết quả cho thấy trừ phổ có khả năng giảm nhiễu tiếng nói tốt hơn trong môi trường SNR cao. Cụ thể, với SNR = 15dB, tín hiệu đầu ra rất sạch. Tuy nhiên, ở SNR = 5dB, nhiễu còn tồn tại đáng kể. Đặc biệt, việc trừ phổ theo biên độ (Gamma = 1) đã cho thấy hiệu quả vượt trội hơn so với trừ phổ theo công suất (Gamma = 2) trong việc cải thiện chất lượng tiếng nói sau xử lý. Các chỉ số khách quan như SNR hoặc PESQ có thể được sử dụng để đánh giá định lượng.

VI. Tương lai của thuật toán trừ phổ Hướng phát triển giảm nhiễu

Thuật toán trừ phổ là một nền tảng vững chắc trong lĩnh vực giảm nhiễu tiếng nói, mang lại hiệu quả nhất định và dễ dàng triển khai. Tuy nhiên, những hạn chế cố hữu như hiệu ứng nhiễu nhạc (musical noise) và hiệu suất kém trong môi trường nhiễu môi trường biến đổi nhanh chóng đòi hỏi các hướng nghiên cứu và phát triển tiếp theo. Mục tiêu không chỉ dừng lại ở việc tăng cường tiếng nói cơ bản mà còn hướng tới việc tạo ra tiếng nói tự nhiên hơn, với độ rõ tiếng nói cao hơn trong mọi điều kiện.

Các nghiên cứu tương lai có thể tập trung vào việc cải tiến quá trình ước lượng phổ nhiễu. Thay vì chỉ dựa vào các đoạn không có tiếng nói, các thuật toán mới có thể tích hợp mô hình nhiễu thích nghi hơn, có khả năng cập nhật phổ nhiễu ngay cả khi tiếng nói đang hoạt động. Việc kết hợp thuật toán trừ phổ với các kỹ thuật tiên tiến hơn là một hướng đi hứa hẹn. Chẳng hạn, sử dụng bộ lọc Wiener hoặc các phương pháp dựa trên mạng nơ-ron giảm nhiễu (ví dụ, Deep Learning) có thể mang lại khả năng học và thích ứng tốt hơn với các loại nhiễu phức tạp, đặc biệt là nhiễu phi tĩnh.

Ngoài ra, việc tối ưu hóa các tham số và biến thể của thuật toán giảm nhiễu cũng là một lĩnh vực cần được khám phá. Nghiên cứu về ảnh hưởng của kích thước cửa sổ biến đổi Fourier sóng ngắn (STFT), hệ số over-subtraction, hoặc các hàm làm mịn phổ sẽ giúp cải thiện đáng kể chất lượng tiếng nói đầu ra. Mục tiêu cuối cùng là phát triển các giải pháp xử lý tín hiệu số mạnh mẽ hơn, ít gây méo tiếng, và có thể ứng dụng rộng rãi trong các hệ thống liên lạc, trợ lý ảo, trợ thính, và các ứng dụng xử lý tiếng nói khác, nơi tăng cường tiếng nói đóng vai trò thiết yếu.

6.1. Tóm tắt ưu điểm và hạn chế của thuật toán trừ phổ

Thuật toán trừ phổ nổi bật với ưu điểm đơn giản, dễ triển khai và hiệu quả trong việc giảm nhiễu tiếng nói, đặc biệt với các loại nhiễu tĩnh hoặc biến đổi chậm. Tuy nhiên, nó cũng có những hạn chế đáng kể: sự xuất hiện của hiệu ứng nhiễu nhạc (musical noise) và hiệu suất kém khi đối mặt với nhiễu môi trường biến đổi nhanh hoặc ở tỷ số tín hiệu trên nhiễu (SNR) rất thấp. Việc khắc phục những nhược điểm này là trọng tâm của các nghiên cứu tiếp theo để nâng cao chất lượng tiếng nói.

6.2. Các hướng nghiên cứu và phát triển cho tăng cường tiếng nói

Để vượt qua các hạn chế của thuật toán trừ phổ, các hướng nghiên cứu tương lai tập trung vào việc cải tiến quá trình ước lượng phổ nhiễu và tích hợp các kỹ thuật tiên tiến. Sự kết hợp trừ phổ với bộ lọc Wiener hoặc các mô hình học sâu như mạng nơ-ron giảm nhiễu hứa hẹn mang lại hiệu quả cao hơn, đặc biệt trong các môi trường nhiễu động. Phát triển các mô hình nhiễu thích nghi và tối ưu hóa các tham số của thuật toán giảm nhiễu sẽ tiếp tục là trọng tâm để cải thiện chất lượng tiếng nói trong nhiều ứng dụng xử lý tiếng nói khác nhau.

29/09/2025

Trích đoạn nội dung tài liệu

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 Nội dung của chương trình bày mục đích của nâng cao chất lượng tiếng nói là gì, các loại nhiễu trong tiếng nói, cách hình thành của tiếng nói và các đặc điểm cuả tín hiệu tiếng nói. Chương này còn giới thiệu khái quát về các thuật toán sử dụng trong speech enhancement.2 Nâng cao chất lượng tiếng nói là gì ? Nâng cao chất lượng tiếng nói liên quan đến việc cải thiện cảm nhận đối với tiếng nói bị suy giảm chất lượng do sự có mặt của nhiễu trong tiếng nói. Trong hầu hết các ứng dụng, thì mục đích của nâng cao chất lượng tiếng nói là sự cải thiện chất lượng và tính dễ nghe của tiếng nói đã bị suy giảm do nhiễu. Sự cải thiện về chất lượng mà tốt thì nó làm giảm đi sự khó khăn cho người nghe khi nghe và trong nhiều trường hợp nó còn giúp cho người nghe có thể nghe trong môi trường có nhiễu với mức độ cao và nhiễu đó tồn tại trong thời gian dài.

Các thuật toán nâng cao chất lượng tiếng nói làm giảm và nén nhiễu nền đến một mức độ nào đó và nó được xem như là các thuật toán nén nhiễu. Trong nhiều trường hợp, sự cần thiết của việc tăng cường trong tín hiệu tiếng nói xuất hiện khi tín hiệu tiếng nói hình thành trong vùng có nhiễu hoặc ảnh hưởng bởi nhiễu trong các kênh truyền thông. Có rất nhiều kịch bản yêu cầu đặt ra đối với Speech enhancement trong nhiều trường hợp khác nhau, ví dụ đối với thông tin thoại, trên các hệ thống điện thoại tế bào thì chịu sự ảnh hưởng nhiễu nền từ ô tô, nhà hàng,. khi truyền đến đích.

Chính vì vậy mà các thuật toán trong nâng cao chất lượng tiếng nói có thể được sử dụng để cải thiện chất lượng của tiếng nói tại điểm thu, mặt khác, nó có thể được sử dụng trong các khối tiền xử lý của hệ thống mã hoá tiếng nói dùng trong các điện thoại tế bào chuẩn. Khi nhận dạng tiếng nói, tiếng nói bị nhiễu được tiền xử lý bởi các thuật toán nâng cao chất lượng trước khi được nhận dạng. Trong thông tin liên lạc hàng không, các kỹ thuật nâng cao tiếng nói cần được sử dụng để cải thiện chất lượng và tính dễ nghe của tiếng nói của phi công bị ảnh hưởng bởi nhiễu trong buồng lái. Vì vậy mà nâng cao chất lượng tiếng nói cũng rất cần thiết trong thông tin liên lạc của quân sự.

Trong hệ thống hội nghị qua thoại, thì nguồn nhiễu xuất hiện ở một vùng nào đó thì nó sẽ được truyền đến tất cả các vùng khác. Các thuật toán nâng cao chất SVTH: Lương Văn Phượng_CCVT03A 2 Tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói lượng tiếng nói được sử dụng như tiền xử lý hoặc làm sạch nhiễu trong tiếng trước khi được khuếch đại. Như các ví dụ minh họa ở trên thì mục tiêu của các thuật toán tăng cường tuỳ thuộc vào các ứng dụng mà chúng ta đang dùng. Xét trên phương diện lý tưởng, thì chúng ta mong muốn Speech enhancement cải thiện được cả chất lượng và tính dễ nghe hay sự trong suốt của tiếng nói.

Tuy nhiên, xét trên phương diện thực tế thì các thuật toán Speech enhancement chỉ có thể cải thiện được 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 đó, yêu cầu chính trong việc thiết kế một thuật toán Speech enhancement phải đảm bảo nén đượ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. Giải pháp tổng quát trong các vẩn đề của Speech enhancement phụ thuộc rất lớn vào ứng dụng chúng ta cần sử dụng, đó là các vần đề như là nguồn nhiễu và giao thoa gây ra nhiễu, mối liên hệ giữa nhiễu và tín hiệu sạch, số microphone và cảm biến có thể có.

Sự giao thoa có thể xem như là nhiễu hoặc được xem như tín hiệu tiếng nói, nó tuỳ thuộc vào môi trường ta đang xét, nó có thể được xem như là sự tranh chấp giữa các speaker. Đặc tính âm nhiễu có thể được cộng thêm vào tín hiệu sạch nếu âm thanh được hình thành trong căn phòng bị dội âm thanh. Hơn nữa, nhiễu có thể có tính tương quan hoặc không tương quan về mặt thống kê với tín hiệu sạch. Số lượng microphone cũng có khả năng ảnh hưởng đến tính hiệu quả của các thuật toán Speech enhancement.3 Tín hiệu, hệ thống và xử lý tín hiệu 1.1 Tín hiệu Tín hiệu(signal) dùng để chỉ một đại lượng vật lý mang tin tức.

Về mặt toán học, ta có thể mô tả tín hiệu như một hàm theo biến thời gian, không gian hay các biến độc lập khác. Chẳng hạn như, hàm: x(t) = 20t2 mô tả tín hiệu biến thiên theo biến thời gian t. Hay một ví dụ khác, hàm: s(x,y) = 3x + 5xy + y2 mô tả tín hiệu là hàm theo hai biến độc lập x và y, trong đó x và y biểu diễn cho hai tọa độ trong mặt phẳng. Hai tín hiệu trong ví dụ trên về lớp tín hiệu được biểu diễn chính xác bằng hàm theo biến độc lập.

Tuy nhiên, trong thực tế, các mối quan hệ giưa các đại lượng vật lý và các biến độc lập thường rất phức tạp nên không thể biểu diễn tín hiệu như trong hai ví dụ vừa nêu trên. SVTH: Lương Văn Phượng_CCVT03A 3 Tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói Hình 1. Lấy ví dụ tín hiệu tiếng nói – đó là sự biến thiên của áp suất không khí theo thời gian. Chẳng hạn khi ta phát âm từ “away”, dạng sóng của nó được biểu diễn như hình trên.2 Nguồn tín hiệu Tất cả các tín hiệu đều do một nguồn nào đó tạo ra, theo một cách thức nào đó.

Ví dụ tín hiệu tiếng nói được tạo ra bằng cách ép không khí đi qua dây thanh âm. Một bức ảnh có được bằng cách phơi sáng một tấm phim chụp một cảnh/đối tượng nào đó. Quá trình tạo tín hiệu như vậy thường liên quan đến một hệ thống, hệ thống này đáp ứng lại một kích thích nào đó. Trong tín hiệu tiếng nói, hệ thống là hệ thống phát âm, gồm môi, răng, lưỡi, dây thanh…Kích thích liên quan đến hệ thống được gọi là nguồn tín hiệu.

Như vậy ta có nguồn tiếng nói, nguồn ảnh và các nguồn tín hiệu khác.3 Hệ thống và xử lý tín hiệu Hệ thống là một thiết bị vật lý thực hiện một tác động nào đó lên tín hiệu. Ví dụ, bộ lọc dùng để giảm nhiễu trong tín hiệu mang tin được gọi là một hệ thống. Khi ta truyền tín hiệu qua một hệ thống, như bộ lọc chẳng hạn, ta nói rằng đã xử lý tín hiệu đó. Trong trường này, xử lý tín hiệu liên quan đến lọc nhiễu ra khỏi tín hiệu mong muốn.

Xử lý tín hiệu là ý muốn nói đến một loạt các công việc hay các phép toán được thực hiện trên các tín hiệu nhằm đạt mục đích nào đó, như là tách tin tức chứa bên trong tín hiệu hoặc là truyền tín hiệu mang tin từ nơi này đến nơi khác. Ở đây ta cần lưu ý đến định nghĩa hệ thống, nó không chỉ đơn thuần là thiết bị vật lý mà còn là phần mềm xử lý tín hiệu hoặc là sự kết hợp giữa phần cứng và phần SVTH: Lương Văn Phượng_CCVT03A 4 Tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói mềm. Ví dụ khi xử lý số tín hiệu bằng mạch logic, hệ thống xử lý ở đây là phần cứng. Khi xử lý bằng máy tính số, tác động lên tín hiệu bao gồm một loạt các phép toán thực hiện bởi chương trình phần mềm.

Khi xử lý bằng các bộ vi xử lý-hệ thống bao gồm kết hợp cả phần cứng và phần mềm, mỗi phần thực hiện các công việc riêng nào đó.4 Phân loại tín hiệu Các phương pháp ta sử dụng trong xử lý tín hiệu phụ thuộc chặt chẽ vào đặc điểm của tín hiệu. Có những phương pháp riêng áp dụng cho một loại tín hiệu nào đó. Do vậy, trước tiên ta cần xem qua cách phân loại tín hiệu liên quan đến những ứng dụng cụ thể. Chúng ta có thể phân tín hiệu thành các loại : - Tín hiệu nhiều hướng và tín hiệu đa kênh - Tín hiệu liên tục và tín hiệu rời rạc - Tín hiệu biên độ liên tục và tín hiệu biên độ rời rạc - Tín hiệu xác định và tín hiệu ngẫu nhiên 1.4 Lý thuyết về nhiễu 1.1 Nguồn nhiễu Nhiễu một hiện thực, nó tồn tại ở mọi nơi, trên đường phố, trên xe, trong văn phòng, trong nhà hàng, trong các toà nhà.

Nó có thể là tiếng xe chạy trên đường, tiếng ồn trên các công trường xây dựng, tiếng ồn phát ra từ các quạt chạy trong PC, chuông điện thoại…, nó tồn tại với các hình dạng và hình thức khác nhau trong cuộc sống hằng ngày của chúng ta. Nhiễu có thể hình thành ở một nơi cố định, và không thay đổi theo thời gian, ví dụ như là tiếng ồn phát ra từ quạt chạy trong PC. Nhiễu cũng có thể không đứng yên một chỗ, ví dụ như nhiễu trong nhà hàng, đó là tiếng nói của nhiều người xen lẫn với nhiều cách khác nhau với tiếng ồn phát ra từ nhà bếp. Các đặc tính về phổ cũng như thời gian của nhiễu trong nhà hàng thay đổi không theo quy luật nên việc nén nhiễu trong các môi trường có nhiễu thay đổi như vậy sẽ khó khăn hơn nhiều so với các nguồn nhiễu đứng yên không thay đổi.

Các đặc tính đặc biệt khác nhau của các loại nhiễu đó là hình dạng của phổ và sự phân bố của năng lượng nhiễu trong miền tần số. Ví dụ, nhiễu gây ra bởi gió thì năng lượng của nó tập trung ở tần số thấp dưới 500Hz. Nhưng đối với nhiễu trong nhà hàng, trên xe, trên tàu thì khác, năng lượng của nó được phân bố trên một dải tần số rộng. SVTH: Lương Văn Phượng_CCVT03A 5 Tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói Hình 1.2 Dạng và sự phân bố phổ năng lượng trung bình nhiễu trên xe.3 Dạng và sự phân bố phổ năng lượng trung bình của nhiễu trên tàu.

SVTH: Lương Văn Phượng_CCVT03A 6 Tìm hiểu thuật toán trừ phổ trong xử lý tiếng nói Hình 1.4 Dạng và sự phân bố phổ năng lượng trung bình của nhiễu trong nhà hàng.2 Nhiễu và mức tín hiệu tiếng nói trong các môi trường khác nhau Điểm tới hạn trong việc thiết kế các thuật toán của Speech enhancement là sự nhận biết dải biến thiên của tiếng nói và mức độ cường độ nhiễu trong môi trường thực tế.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ