Đánh giá chất lượng tiếng nói đã được xử lý

Một phần của tài liệu Xử lý nâng cao chất lượng tiếng nói (Trang 71)

4.6.1 Cơ sở dữ liệu cho việc đánh giá

Là 30 câu thoại được ghi âm trong phòng thí nghiệm theo chuẩn của IEEE [32] là tín hiệu thoại sạch. Mỗi câu trung bình khoảng 2s. Nội dung các câu đều có sự cân bằng về mặt ngữ âm nên có thể thấy được sự tác động của thuật toán lên tất cả các âm vị có thể có trong tín hiệu thoại

Các tín hiệu thoại đó sau đó được cộng nhiễu vào ( gồm có loại nhiễu có trong thế giới thực, với các tỷ số SNR khác nhau. Như vậy ta đã có sẵn tín hiệu sạch và tín hiệu bị nhiễu theo chuẩn chung.

Hai loại nhiễu được dùng là: nhiễu xe hơi (car noise) được dùng làm dữ liệu chính để xử lý và đánh giá, và nhiễu do những người nói xung quanh (babble noise) để kiểm tra tác động của thuật toán trong môi trường nhiễu khác, với các SNR 0dB, 5dB, 10dB, 15dB.

Sau khi tăng chất lượng tiếng nói từ các tín hiệu tiếng nói bị nhiễu bằng các thuật toán đã nghiên cứu là SS và WF, có được tín hiệu tiếng nói đã được tăng cường. Như vậy ta có được cơ sở dữ liệu cho việc đánh giá chất lượng của tín hiệu tiếng nói sau khi đã được tăng cường.

4.6.2 Tổng quan về quy trình đánh giá

Để đánh giá chất lượng tiếng nói sau khi đã xử lý sử dụng cả hai phương pháp đánh giá dựa trên chất lượng do người nghe cảm nhận được (SE) và đánh giá dựa trên các phép đo thuộc tính của tín hiệu (OE). Trong đồ án này phương pháp đánh giá chính được dùng là OE, SE được dùng làm phương pháp đánh giá bổ sung và được thực hiện bởi các thành viên trong nhóm thực hiện .

Do đặc tính của các thuật toán giảm nhiễu được sử dụng trong đề tài là có các thống số ảnh hưởng đến cách thức xử lý nếu chỉnh các thông số này ta sẽ có

các kết quả khác nhau có thể tốt, có thể xấu đối với một file âm thanh. Để có thể có các thông số tốt nhất và có các nhận xét về tính ổn định, thuật toán tốt hay xấu ta phải thực hiện quá trình tinh chỉnh thông số để được các kết quả khác nhau từ đó so sánh và đưa ra các thông số tối ưu nhất có thể. Quá trình này là thực hiện đánh giá thuật toán.

Các thuật toán giảm nhiễu

Tín hiệu sạch Đánh giá OE Tiếng nói đã đợc giảm nhiễu Đánh giá SE Nhận xét

Chỉnh sửa các thông số của thuật toán giảm nhiễu

Hình 4.8 Quy trình thực hiện đánh giá

4.6.3 Kiểm tra độ tin cậy của các phương pháp đánh giá

Các đánh giá OE được dùng là : SNRseg, IS, LLR, WSS.

Kiểm tra độ ổn định của các phương pháp đánh giá trên bằng cách so sánh tín hiệu tiếng nói bị nhiễu xe hơi và nhiễu người nói xung quanh chưa được xử lý với tín hiệu sạch

Hình 4.9. Đồ thị kiểm tra độ ổn định của đánh giá OE đối với nhiễu xe hơi

Hình 4.10. Đồ thị kiểm tra độ ổn định của đánh giá OE đối với nhiễu người

nói xung quanh

 Đối với đánh giá SNRseg đồ thị đi lên theo chiều tăng dần của SNR

 Đối với đánh giá LLR, IS và WSS thì đồ thị có hướng đi xuống và variance cũng giảm dần theo chiều tăng dần của SNR chứng tỏ phổ của tín hiệu có SNR cao gần với phổ tín hiệu sạch hơn

Qua kiểm tra thấy được các phương pháp đánh giá trên đều ổn định và đủ tin cậy để thực hiện đánh giá đối với các tín hiệu tiếng nói đã qua xử lý.

4.6.4 Thực hiện đánh giá

Trong quá trình nghiên cứu và triển khai thuật toán ta nhận thấy các thông số sau ảnh hưởng lớn đến thuật toán:

- NoiseMargin :là ngưỡng để nhận biết nhiễu trong VAD .Mặc định của thuật toán Noise margin sẽ là 3db.

- IS :hệ số chỉ thời gian không có tiếng nói đầu tiên trong mỗi file âm thanh được dùng để tính toán nhiễu ban đầu. Do khi kiểm tra những đoạn im lặng ban đầu trong các file sạch ta nhận thấy rằng đối với từng file thì từ 0.15s đến

0.2s là những đoạn im lặng.Ta lựa giá trị IS là 0.2

- Đối với thuật toán WF thì ta có thêm hệ số alpha là hệ số làm trơn trong phương pháp ước lượng tỉ số Priori SNR.

-Đối với thuật toán SS thì có hệ số Gramma là hệ số quyết định nhiễu sẽ được trừ theo biên độ hay năng lượng. Ta chọn giá trị Gramma là 1 tức là thuật toán Subtraction sẽ trừ nhiễu theo biên độ.

4.6.4.1 Đánh giá thuật toán với các hệ số dự đoán ban đầu

Hệ số IS=0.2, NoiseMargin=3

 Đánh giá OE

Sau khi thực hiện thuật toán SS và WF với các thông số alpha=0.9, gamma=1, NoiseMargin=3,IS=0.2 ta có đồ thị của đánh giá bằng SNR, LLR, IS, WSS như sau

Hình 4.11 Đồ thị đánh giá Objective với hệ số IS=0.2, NoiseMargin=3

Theo đồ thị ta có các nhận xét như sau :

Đối với thông số đánh giá SNR cho ta thấy tỉ số SNR đã có tăng hơn so với file chưa xử lý. Chứng tỏ thuật toán đã loại trừ môt phần nhiểu ra khỏi file sạch. Nhưng đối với so sánh IS, LLR, WSS thì ta lại thấy file chưa xử lý lại có kết quả tốt hơn file đã xử lý. Do đánh giá IS, LLR, WSS là so sánh khoảng cách phổ giữa file đã xử lý và file sạch rồi tính giá trị trung bình nên ta có thể dự đoán là năng lượng của file đã xử lý lệch rất nhiều với file sạch có thể do thuật toán tồi hoặc là năng lượng tín hiệu sạch bị nén một phần .

 Đánh giá SE

Sau khi kiểm tra các file đầu ra bằng phương pháp nghe thử ta có các nhận xét sau đây: Một số file đầu ra của các thuật toán SS và WF có mức độ nén nhiễu khác cao dẫn tới việc mất một phần tiếng nói.

 Kết luận và tối ưu các thông số cho thuật toán VAD

Qua các nhận xét về đánh giá OE và SE ta rút ra kết luận như sau:

Do thuật toán VAD với các thông số đề ra là IS=0.2 và NoiseMargin=3 là không tốt nên một phần âm thanh bị ước lượng là nhiễu nên đã bị thuật toán nén đi dẫn tới việc mất năng lượng của phần âm thanh sạch.

Đối với thông số IS ta phải thay đổi như sau : Do đoạn lặng trong file sạch chỉ nằm trong khoảng 0.15s đến 0.2s. Nếu ta để 0.2 là quá lớn đối với một sô file nên một phần năng lượng tiếng nói trong những file nay sẽ được thuật toán VAD xem là nhiễu vì thế một phần tiếng nói sẽ bị loại bỏ. Đó là một hạn chế của thuật toán VAD được dùng trong đề tài : giữ cứng giá trị IS( đoạn im lặng) để cài đặt nhiễu là không phù hợp cho tất cả mọi file âm thanh.

Đối với thông số NoiseMargin: Vì ta chọn mức ngưỡng để nhận biết nhiễu là 3dB là khá lớn nên tương tự như giá trị IS với mức ngưỡng như vậy một phần tín hiệu sạch sẽ bị loại bỏ do khác gần với nhiễu dù IS có tối ưu thế nào đi nữa. Qua thực nghiệm ta có hệ số NoiseMargin tối ưu là 2. Đó là giá trị mà tín hiệu sạch không bị ước lượng là nhiễu.

Vậy các giá trị tối ưu cho thuật toán VAD là : hệ số IS phải điều chỉnh lại là 0.15s, hệ số NoiseMargin là 2.

Hệ số IS=0.15 ,hệ số NoiseMargin=2

 Đánh giá OE

Sau khi thuật hiện lại thuật toán SS và WF với hệ số IS=0.15,hệ số NoiseMargin=2 ta có đồ thị đánh giá IS, SNR, WSS, LLS như sau :

Ta nhận thấy thông số SNR tương tự như trường hợp IS = 0.2 và NoiseMargin=2. Nhưng ta các giá trị LLR và IS của so sánh tín hiệu đã xử lý bằng SS và WF đã giảm, trong đó giá trị IS đã giảm đáng kể.Đặc biệt với thuật toán SS giá trị IS đã xuống dưới ngưỡng của file nhiễu. Điều đó chứng tỏ các thông số này thật sự tốt. Nhưng các giá trị IS còn rât lớn đối với thuật toán WF và các mức SNR 0dB và 10dB và các giá trị IS của thuật toán Wiener vẫn còn nằm trên giá trị IS của file chưa xử lý và file sạch.

 Đánh giá SE

Sau khi nghe thử các file đầu ra của thuật toán SS và thuật toán WF. Ta nhận thấy thuật toán SS thật sự làm viêc tốt đã hạ được mức nhiễu của các file âm thanh. Nhưng đối với thuật toán WF mặc dù đã hạ được mức nhiễu của các file âm thanh nhưng một số file vẫn bị mất tiếng nói điều đó chứng tỏ hệ số của thuật toán WF chưa tốt.

 Kết luận

Kết hợp giữa nhận xét trong OE và SE ta có kết luận là với hệ số IS=0.15 và NoiseMargin=2 thì thuật toán VAD làm việc thật sự tối ưu cho nhiễu xe hơi. Và hệ số của thuật toán Wiener chưa tối ưu đó chính là hệ số alpha.

4.6.4.2 Tối ưu hệ số alpha cho thuật toán WF

Ta đánh giá hệ số alpha cho thuật toán WF qua các trường hợp hệ số alpha=0.5, 0.8,0.9 với IS=0.15 và NoiseMargin = 2 để chọn ra trường hợp tốt nhất.

Hình 4.14 Đồ thị đánh giá objective với hệ số alpha=0.5, 0.8,0.9 với

IS=0.15 và NoiseMargin = 2

Qua đồ thị SNR ta nhận thấy hệ số alpha càng lớn thì mức nhiễu bị nén càng lớn (tỉ số SNR lớn). Qua đồ thị IS ta thấy hệ số alpha càng nhỏ thì tác động vào file tỉ số SNR càng lớn càng tốt. Giá trị alpha=0.9 tác động vào file có SNR=10 dB cho ra file output có khoảng cách phổ xa hơn so với file sạch và file nhiễu. Còn lại các giá trị alpha khác và alpha=0.9 với các mức file nhiễu có tỉ số SNR khác đều cho ra kết quả tốt hơn so với file sạch và file nhiễu.Và hệ số alpha bằng 0.5 có vẻ rất tốt trên đồ thị is đặc biêt là với file nhiễu có tỉ số SNR=15dB

tác động rất ổn định (variant nhỏ).

 Đánh giá subjective

Qua việc kiểm tra subjective ta nhận thấy với hệ số alpha=0.5 tác động rất ổn định và tốt với file nhiễu có mức SNR=15dB cho ra file rất sạch. Nhưng với các mức dB khác thì ko tốt bằng so với các hệ số alpha khác, nhiễu còn tương đối nhiều.Đối với hệ số alpha là 0.9 thì với mức file nhiễu có SNR=10dB tác động không tốt, một số file cả tín hiệu sạch cũng bị nén.

Qua các nhận xét về đánh giá SE và OE ta rút ra kết luận là hệ số alpha=0.8 là hệ số tối ưu nhất cho tất cả các trường hợp có thể nó nén nhiễu không nhiều bằng hệ số alpha nhưng không nén luôn tín hiệu sạch, bảo đảm tín hiệu vẫn còn nghe tốt, nhiễu bị hạ xuống tương đối nhiều.

Ta có thêm nhận xét về cách đánh giá OE là không phải lúc nào cũng hoàn toàn chính xác như đối với hệ số alpha=0.5 trên đồ thị IS nó là tốt nhất nhưng với việc kiểm tra bằng SE thì nó chỉ tốt nhất trong trường hợp 15dB hay đối với đồ thị SNR thì hệ số alpha tốt nhất nhưng có một số trường hợp tín hiệu sạch đã bị nén luôn.

4.6.4.3 Hệ số gamma cho thuật toán SS

Vì thuật toán SS là thuật toán trừ nhiễu nên ta có 2 cách trừ nhiễu là trừ theo năng lượng và trừ theo biên độ nên ta cung cấp hệ số gamma nếu gamma=1 thì trừ theo biên độ gamma =2 thì trừ theo năng lượng. Sau đây ta sẽ đánh giá và tìm ra cách trừ nào là tốt nhất( gamma=1 hay 2).

 Đánh giá OE

Ta nhận thấy đối với cả thông số SNR và IS thì hệ số gamma=2 tức là trừ theo năng lượng đều tốt hơn ngoại trừ đối với file nhiễu có SNR là 10dB.Và gamma=1 hay gamma = 2 đều đưa ra đồ thị tốt hơn đồ thị giữa file nhiễu với file sạch

 Đánh giá SE

Sau khi kiểm tra SE ta nhận thấy rằng đối với hệ số gamma=2 tức là trừ theo năng lượng thì nhiễu bị nén rất ít, file đầu ra không tốt bằng hệ số gamma=1.

 Kết luận

Sau khi so sánh OE và SE ta có kết luận là mặc dù trên đồ thị phản ánh hệ số gamma=2 tốt hơn nhưng trên thực tế thì hệ số gamma=1 mới tốt hơn.Chứng tỏ việc đánh giá OE như nói ở trên không phải lúc nào cũng đúng.

Ta chọn hệ số gamma tối ưu là 1.

4.6.4.4 Đánh giá thuật toán sau khi đã tối ưu

Sau khi thực hiện một loạt các hệ số thử nghiêm ta chọn ra hệ số tối ưu là : -Thuật toán VAD: hệ số IS=0.15, NoiseMargin = 2.

-Thuật toán WF hệ số alpha=0.8. -Thuật toán SS trừ theo biên độ.

Và việc đánh giá OE chỉ đánh giá về mặt toán không phải lúc nào cũng

Hình 4.16 Đồ thị đánh giá với IS=0.15 NoiMargin= 2 và alpha = 0.8 cho

thuật toán WF, gama=1 cho thuật toán SS.

4.6.4.5 Đánh giá độ ổn định của thuật toán trong môi trường nhiễu khác

 Đánh giá OE

Thực hiện nghe đối với tín hiệu đã qua xử lý thấy rằng một số file tín hiệu có những đoạn chỉ nghe được nhiễu chứ không nghe được tiếng nói. Điều này được giải thích là do nhiễu người nói có năng lượng nhiễu tương đương với năng lượng tiếng nói, trong một số file thì tín hiệu tiếng nói có mức năng lượng thấp hơn mức năng lượng của nhiễu nên đoạn tiếng nói đó bị trừ mất chỉ còn lại nhiễu.

 Đồ thị

Áp dụng các thông số tối ưu đối với nhiễu xe hơi cho nhiễu người nói xung quanh có đồ thị đánh giá như sau

Hình 4.17 Đồ thị đánh giá OE với nhiễu người nói xung quanh.

 Nhận xét

Nhận xét theo đồ thị đối với cả bốn phép đánh giá ta thấy đối với nhiễu người nói xung quanh thì SS có vẻ xử lý tốt hơn WF.

Nhưng đối với cả ba phương pháp đánh giá đầu tiên thì cả ba giá trị WSS, LLR, IS của các tín hiệu đã được xử lý so với tín hiệu sạch lại không tốt bằng giá trị của tín hiệu nhiễu chưa xử lý so với tín hiệu sạch (so sánh của tín hiệu đã xử lý có giá trị lớn hơn).

Riêng với phép đánh giá IS ta thấy thuật toán xử lý nhiễu có tác động tốt đối với nhiễu 0dB và 5dB. Bên cạnh đó variant còn lớn vì có một số file có giá trị so sánh lớn hơn giá trị của các file khác rất nhiều (điều này cũng xảy ra đối với car noise) được thể hiện trong bảng giá trị IS [matlab file]. Lý giải cho điều này là do một số tín hiệu bị nhiễu đột biến.

 Đánh giá SE

Khi thực hiện nghe đối với các file âm thanh bị nhiễu người nói xung quanh được xử lý bằng SS và WF thì có một số đoạn tiếng nói bị mất, chỉ nghe được nhiễu chứ không nghe được tiếng nói.

Điều này được lý giải là do nhiễu người nói xung quanh có mức năng lượng tương đương với mức năng lượng của tiếng nói nên một số file âm thanh có đoạn tiếng nói có mức năng lượng thấp hơn mức năng lượng của nhiễu thì tiếng nói đó sẽ bị trừ mất chỉ còn lại nhiễu.

 Nhận xét chung

Khi đem các thông số tối ưu để xử lý nhiễu xe hơi áp dụng với người nói xung quanh thì kết quả không tốt.

Đối với nhiễu người nói xung quanh thì thuật toán SS tác động tớt hơn WF.

4.6.5 Kết luận chương

Qua kết quả đánh giá bằng OE và SE đưa ra được kết luận là :

- Đối với từng loại nhiễu khác nhau thì tác động của các thuật toán tăng cường là khác nhau.

- Đối với từng mức nhiễu khác nhau thì thuật toán cũng tác động cũng khác nhau.

Đồ án tốt nghiệp

TÀI LIỆU THAM KHẢO

[1]. Ramabadran, T.,Ashley, J., and McLaughin, M.(1997), Background noise suppression for speech enhancement and coding, Proc. IEEE Workshop Speech Coding Telecommun.

[2]. Ths.Hoàng Lê Uyên Thục, Giáo trình xử lý tín hiệu số, Đại học Bách Khoa – Đại học Đà Nẵng.

[3].Hu, Y. and Loizou, P(2006), Subjective comparison of speech enhancement

Một phần của tài liệu Xử lý nâng cao chất lượng tiếng nói (Trang 71)

Tải bản đầy đủ (DOC)

(92 trang)
w