CHƢƠNG 7: CÀI ĐẶT CHƢƠNG TRÌNH

Một phần của tài liệu Áp dụng phương pháp PSOLA trong tổng hợp tiếng nói tiếng Việt (Trang 78)

7.1 Lựa chọn công cụ 7.2 Phƣơng pháp tổng hợp 7.2 Phƣơng pháp tổng hợp 7.3 Giao diện chƣơng trình 7.4 Kết luận

7.1 Lựa chọn công cụ

Tôi lựa chọn bộ công cụ Microsoft Visual Studio .NET 2003 để xây dựng ứng dụng này bởi khả năng hỗ trợ rất tốt về mặt ngôn ngữ lập trình. Hơn nữa nó là nền tảng đang đƣợc sử dụng rộng rãi nhất hiện nay, phần lớn các ứng dụng ở Việt Nam đều phát triển trên môi trƣờng Windows nên khả năng triển khai rộng rãi là rất cao. Mặt khác bộ công cụ này hỗ trợ Unicode một cách đầy đủ nên tiết kiệm đƣợc công sức chuyển đổi. Các thƣ viện của chƣơng trình đƣợc xây dựng bằng ngôn ngữ C#, là thế hệ tiếp theo của C và C++ nên khả năng xử lý mức hệ thống rất tốt, phần giao diện và các tính toán đơn giản đƣợc lập trình bằng ngôn ngữ Visual Basic .NET cho phép dễ dàng tạo ra các chƣơng trình với thời gian ngắn nhất.

Với mục đích là thử nghiệm các thuật toán tiếng nói nên giao diện chƣơng trình tƣơng đối đơn giản. Ngƣời viết bỏ qua phần xử lý ngôn ngữ và phân tích cú pháp. Văn bản sau khi đƣợc phân tích để tránh nhập nhằng và xử lý các ký hiệu, ký tự đặc biệt sẽ đƣợc telex hoá. Đây là đầu vào của các modul tổng hợp tiếng nói.

7.2 Phƣơng pháp tổng hợp

Phƣơng pháp tổng hợp đƣợc sử dụng là phƣơng pháp xích chuỗi miền thời gian bởi tốc độ tính toán nhanh và chất lƣợng âm tổng hợp rất cao. Đơn vị âm đƣợc sử dụng là phụ âm và phần vần có dấu. Ví dụ /c/, /ông/, /ngh/, /ệ/ là hai đơn vị âm. Số lƣợng âm thu đƣợc là khoảng 2600 âm đƣợc lƣu trữ dƣới dạng các file .wav với tên file dƣới dạng telex. Đây là các file với chất lƣợng âm thanh cao bởi nó là file gốc và chƣa hề bị nén hay biến đổi. Quá trình thu âm đƣợc thực hiện bằng cách thu trực tiếp tiếng nói đọc từ một văn bản cho trƣớc. Văn bản này có độ dài bao trùm đại đa số các phần vần và phụ âm tiếng Việt.

Quá trình tổng hợp đơn giản bằng cách ghép nối các file âm thanh có sẵn sau khi đã phân tích văn bản đầu vào. Với âm tiết "ngoèo" sẽ đƣợc phân tích thành "ng" và "oèo". Khi tổng hợp ta chỉ gọi hai file là ng.wav và oeof.wav để thực hiện ghép nối.

Quá trình ghép nối và phát âm ra các thiết bị phải là quá trình song song, tức là việc phát âm sẽ đƣợc tiến hành sau một khoảng thời gian nào đấy sau khi đã ghép nối đƣợc một ngữ đoạn. Điều này rất cần thiết bởi nếu chỉ phát sau khi đã hoàn thành việc ghép nối thì sẽ mất rất nhiều thời gian đồng thời cũng bị chiếm nhiều bộ nhớ trong quá trình xử lý. Âm thanh sau khi phát xong có thể đƣợc giải phóng khỏi bộ nhớ để tiếp tục quá trình đồng bộ "tổng hợp-phát âm" khác.

7.3 Giao diện chƣơng trình

Chƣơng trình gồm các chức năng chính sau:

+ Phát âm thanh từ một văn bản đƣợc nạp từ file hoặc gõ trực tiếp vào một hộp văn bản

+ Phát âm thanh từ một file wave sẵn có.

+ Lƣu file âm thanh đọc từ văn bản dƣới dạng wave. + Biểu diễn file âm thanh dƣới dạng biểu đồ sóng.

Trong đó modul tổng hợp tiếng Việt từ văn bản sử dụng phƣơng pháp PSOLA để ghép nối các thành phần âm.

7.4 Kết luận

Chƣơng trình minh hoạ tuy rất thô sơ nhƣng thể hiện đầy đủ kết quả của thuật toán PSOLA trong việc so sánh chất lƣợng âm thanh gốc và âm thanh sau khi áp dụng thuật toán. Chƣơng trình có thể nâng cấp thêm về mặt giao diện là có thể trở thành một ứng dụng hoàn chỉnh hoặc theo hƣớng xây dựng thành một dịch vụ web (web service) để áp dụng cho các hệ thống đọc tự động (cơ chế này đƣợc hỗ trợ đầy đủ trong bộ công cụ Microsoft .Net) hoặc xây dựng các ứng dụng trên nền di động (mobile platform).

ĐÁNH GIÁ KẾT QUẢ VÀ ĐỊNH HƢỚNG NGHIÊN CỨU

Tổng hợp tiếng nói từ văn bản (text to speech) là một vấn đề thực sự khó, tuy nhiên khả năng ứng dụng của nó vào cuộc sống là vô cùng to lớn. Ngoài ra nó còn đem lại ý nghĩa văn hoá và xã hội rất sâu sắc. Tuy vậy các nghiên cứu của tôi cũng mới chỉ đạt đƣợc kết quả ban đầu và hết sức khiêm tốn.

Các kết quả đạt đƣợc của luận văn:

+ Tìm hiểu các đặc trƣng về mặt âm học của tiếng Việt. Từ đó lựa chọn đƣợc phƣơng pháp tổng hợp tiếng nói có nhiều ƣu điểm nổi trội.

+ Xây dựng cơ sở dữ liệu âm một cách đầy đủ phục vụ quá trình ghép nối. + Tìm hiểu và xây dựng thành công thuật toán biến đổi PSOLA áp dụng trên các âm ghép nối để biến đổi cao độ cũng nhƣ trƣờng độ nhằm tạo ra tiếng nói có chất lƣợng cao.

Hƣớng phát triển trong thời gian tới:

+ Nghiên cứu và sử dụng mô hình Fujisaki cho việc tổng hợp thanh điệu. + Tối ƣu hoá thuật toán và cơ sở dữ liệu để triển khai trên các ứng dụng nhúng nhƣ các thiết bị trợ giúp cá nhân, điện thoại di động.

+ Xây dựng bộ tham số đầy đủ và đa dạng cho mỗi đơn vị âm.

Nếu phát triển thành công theo định hƣớng trên sẽ cho phép xây dựng đƣợc một bộ tổng hợp mềm dẻo và có miền ứng dụng rộng rãi hơn, nhất là trong một thế giới di động nhƣ ngày nay.

TÀI LIỆU THAM KHẢO Tài liệu tiếng Anh

[1] An Introduction to Text-to-Speech Synthesis by Thierry Dutoit, Kluwer Academic Publishers.

[2] Spoken Language Processing - A Guide to Theory, Algorithm and System Development (2001). XueDong Huang, Alex Axero, Hsiao Wue Hon.

[3] Building Synthesis Voice – Alan W Black and Kevin A.Lenzo.

Tài liệu tiếng Việt

[4] Nhập môn ngôn ngữ học, Vũ Ngọc Cân, Lê Đình Tƣ, Trƣờng Đại học Ngoại ngữ Hà Nội.

[5] Gán nhãn âm vị trong quá trình xây dựng cơ sở dữ liệu tiếng Việt. Đặng Ngọc Đức. Công ty liên doanh thiết bị viễn thông Alcatel.

[6] Ứng dụng mô hình nguồn âm và bộ lọc của quá trình tạo tiếng nói để khảo sát nguồn âm có mang tính thanh điệu và dạng tuyến âm một số nguyên âm tiếng Việt. Phan Quốc Thắng, Trịnh Đăng Khánh - Học viện Kỹ thuật Quân sự.

[7] Một số phƣơng pháp Nâng cao chất lƣợng hệ thống Tổng hợp tiếng Việt V-Talk. KS. Trịnh Anh Tuấn.

Tài liệu trực tuyến

[8] http://www.vietlex.com Trung Tâm Từ Điển Học VietLex [9] http://ngonngu.net Diễn đàn ngôn ngữ tiếng Việt

Một phần của tài liệu Áp dụng phương pháp PSOLA trong tổng hợp tiếng nói tiếng Việt (Trang 78)

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

(83 trang)