Đề tài Nghiên cứu, ứng dụng công nghệ SAPI và xây dựng hệ thống STT, TTS trong nhận dạng tiếng nói

SpRecoContext object

Đối tượng này dùng để tạo ra các view và context khác nhau cho engine SR. Mỗi đối

tượng này có thể chứa các sự kiện SR khác nhau và các ngữ pháp n hận dạng khác nhau. Mỗi

ứng dụng sử dụng speech phải có ít nhất một đối tượng SpRecoContext (được implement từ

ISpRecoContext) để tiếp nhận sự nhận dạng. Nếu ứng dụng có nhiều kiểu nhận dạng khác

nhau, người ta cũng có thể tạo ra nhiều đối tượng SpRecoContext này. Inteface này cho phép

ứng dụng tạo và load grammar và kích hoạt bộ nhận dạng. SAPI khai báo engine SR của mỗi

đối tượng SpRecoContext thông qua 2 hàm: OnCreateRecoContext và OnDeleteRecoContext.

SpRecoGrammar object

Đối tượng này quản lý các từ và mệnh đề mà SR engine sẽ nhận dạng.

Một đối tượng SpRecoContext có thể có một hoặc nhiều đối tượng SpRecoGrammar

tương tác với nó. Mối quan hệ giữa 2 đối tượng này cho phép ứng dụng tách các kiểu mệnh đề

và nội dung nhận dạng thành các đối tượng riêng biệt để ứng dụng logic, rõ ràng hơn. Mỗi đối

tượng SpRecoContext cũng có thể có context-free grammar và dictation grammar được load

đồng thời.

SpRecognizer object

Cho phép ứng dụng quản lý SR engine. Mỗi đối tượng mô tả 1 engine SR riêng lẻ và

có thể kết nối đến 1 hay nhiều đối tượng SpRecoContext để điều khiển ngữ pháp nhận dạng,

bắt đầu hay kết thúc sự nhận dạng, nhận sự kiện và các kết quả nhận dạng. Ngoài ra, nó còn

điều khiển các thiết bị nhập âm thanh. Có một thuận lợi cho lập trình viên đó là chúng ta

không cần phải gọi quá nhiều hàm của đối tượng này để thiết lập mọi thứ cho engine vì SAPI

đã thiết lập các thông số mặc định cho engine.

 

pdf5 trang | Chia sẻ: netpro | Lượt xem: 1756 | Lượt tải: 2download
Bạn đang xem nội dung tài liệu Đề tài Nghiên cứu, ứng dụng công nghệ SAPI và xây dựng hệ thống STT, TTS trong nhận dạng tiếng nói, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Tuyển tập Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 54 NGHIÊN CỨU, ỨNG DỤNG CÔNG NGHỆ SAPI. XÂY DỰNG HỆ THỐNG STT, TTS TRONG NHẬN DẠNG TIẾNG NÓI RESEARCH, APPLY SAPI TECHNOLOGY. BUILDING STT, TTS SYSTEM IN SPEECH RECOGNITION. SVTH: LÊ QUỐC HƯỞNG - TRẦN BỬU DUNG PHAN PHẠM THỊ MY LY - 03T4 Khoa Công nghệ Thông tin, Trường Đại học Bách Khoa GVHD: KS. MAI VĂN HÀ Khoa Công nghệ Thông tin - Trường Đại học Bách Khoa TÓM TẮT: Bài báo này giới thiệu công nghệ SAPI của Microsoft trong nhận dạng tiếng nói và một số kết quả đạt được khi ứng dụng công nghệ này vào việc chuyển từ giọng nói sang text cũng như chuyển từ text sang giọng nói bằng tiếng Anh. Trong thời gian đến, chúng tôi sẽ ứng dụng thành công công nghệ này vào việc xây dựng “hệ thống nhập và thông báo điểm thi tuyển sinh bằng tiếng Việt“. SUMARY: This article introduces SAPI technology of Microsoft in speech recognition and some achieved results when we apply this technology in speech to text (STT), text to speech(TTS) process by English. In the next time, we’ll apply this technology successful to build “inputing and notifying university entrance marks system by Vietnamese“. 1. Giới thiệu Hiện nay, trên thế giới việc sử dụng các phần mềm về âm thanh không còn là một vấn đề quá mới mẻ. Tuy nhiên, mỗi quốc gia đều có một đặc thù ngôn ngữ khác nhau nên không có các quy tắc, các luật chung trong việc xử lý từ. Là một người Việt Nam, chúng tôi luôn tự hỏi làm thế nào để nhận dạng tiếng Việt. Xuất phát từ ý tưởng đó, chúng tôi đã lựa chọn và nghiên cứu đề tài này. Trong quá trình tìm hiểu, chúng tôi nhận thấy rằng một số hãng phần mềm lớn như Microsoft, Sun, IBM… đã xây dựng sẵn các engine trong việc nhận dạng và xử lý tiếng nói. Trong đó chỉ có một số ít các công ty cung cấp các công nghệ với mã nguồn mở để các lập trình viên xây dựng nên các ứng dụng phù hợp với mục đích sử dụng của họ. Để giảm thời gian xây dựng engine, chúng tôi đã lựa chọn công nghệ SAPI của Microsoft vì hiệu quả xử lý cao và window là hệ điều hành đa người dùng. Hiện tại, chúng tôi đã đạt được một số kết quả trong việc chuyển từ tiếng nói sang text và text sang tiếng nói bằng tiếng anh dựa trên nền tảng công nghệ SAPI của Microsoft. Việc nghiên cứu đề tài này đã tạo ra nền tảng bước đầu cho việc xây dựng ứng dụng trong lĩnh vực nhận dạng tiếng nói. Hệ thống này mang tính thực tiễn cao vì nó sẽ làm giảm đến mức tối thiểu các sai sót trong quá trình nhập điểm. ` Trong bài báo này, chúng tôi trình bày những vấn đề cơ bản liên quan đến việc phát triển hệ thống này. 2. Công nghệ sapi - mô tả chương trình 2.1. Công nghệ SAPI 2.1.1. Giới thiệu công nghệ Tuyển tập Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 55 SAPI là một API (Application Programming Interface) được phát triển bởi Microsoft, cho phép nhận dạng và phân tích giọng nói trong các ứng dụng window (như Microsoft Ofice, Microsoft Agent, Microsoft Speech Server). Kiến trúc SAPI Hình 1. Kiến trúc của SAPI 2.1.2. Engine Speech Recoginize (SR) SR là một tiến trình chuyển từ ngôn ngữ nói thành dạng text. Tiến trình bao gồm: 1. Thu nhận và số hóa âm thanh của người nói. 2. Chuyển và số hóa âm thanh thành những âm vị cơ bản. 3. Xây dựng những từ (word) từ những âm vị cơ bản đó. 4. Phân tích ngữ cảnh xuất hiện của từ để chắc chắn đánh vần đúng từ được nói. Hình 2. Quá trình chuyển từ speech to text 2.1.3. Các interface trong SAPI SpRecoContext object Đối tượng này dùng để tạo ra các view và context khác nhau cho engine SR. Mỗi đối tượng này có thể chứa các sự kiện SR khác nhau và các ngữ pháp nhận dạng khác nhau. Mỗi ứng dụng sử dụng speech phải có ít nhất một đối tượng SpRecoContext (được implement từ ISpRecoContext) để tiếp nhận sự nhận dạng. Nếu ứng dụng có nhiều kiểu nhận dạng khác nhau, người ta cũng có thể tạo ra nhiều đối tượng SpRecoContext này. Inteface này cho phép ứng dụng tạo và load grammar và kích hoạt bộ nhận dạng. SAPI khai báo engine SR của mỗi đối tượng SpRecoContext thông qua 2 hàm: OnCreateRecoContext và OnDeleteRecoContext. SpRecoGrammar object Đối tượng này quản lý các từ và mệnh đề mà SR engine sẽ nhận dạng. Một đối tượng SpRecoContext có thể có một hoặc nhiều đối tượng SpRecoGrammar tương tác với nó. Mối quan hệ giữa 2 đối tượng này cho phép ứng dụng tách các kiểu mệnh đề và nội dung nhận dạng thành các đối tượng riêng biệt để ứng dụng logic, rõ ràng hơn. Mỗi đối tượng SpRecoContext cũng có thể có context-free grammar và dictation grammar được load đồng thời. SpRecognizer object Cho phép ứng dụng quản lý SR engine. Mỗi đối tượng mô tả 1 engine SR riêng lẻ và có thể kết nối đến 1 hay nhiều đối tượng SpRecoContext để điều khiển ngữ pháp nhận dạng, Tuyển tập Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 56 bắt đầu hay kết thúc sự nhận dạng, nhận sự kiện và các kết quả nhận dạng. Ngoài ra, nó còn điều khiển các thiết bị nhập âm thanh. Có một thuận lợi cho lập trình viên đó là chúng ta không cần phải gọi quá nhiều hàm của đối tượng này để thiết lập mọi thứ cho engine vì SAPI đã thiết lập các thông số mặc định cho engine. 2.2. Mô tả chương trình 2.2.1. Hoạt động của hệ thống Text To Speech Hình 3. Lưu đồ thuật toán text to speech Bắt đầu Khởi tạo engine text to speak Kiểm tra text trong control CÓ TỒN TẠI Đưa stream vào hàng đợi của engine Engine cung cấp cho mỗi stream 1 số Nói từng stream theo thứ tự số KHÔNG TỒN TẠI Kết thúc Thiết lập thiết bị ra cho âm thanh Chuyển text thành chuỗi kí tự Tuyển tập Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 57 2.2.2. Hoạt động của hệ thống Speech To Text Hình 4. Lưu đồ thuật toán speech to text Hình 5. Giao diện chính của chương trình. Baét ñaàu TRUE Thu nhận âm thanh của người nói vào engine Thiết lập trạng thái kích hoạt cho dictation Chuyển âm thanh sang text FALSE Giải phóng grammar Keát thuùc Khởi tạo recognize engine Khởi tạo recognize context Thiết lập các event message Thiết lập các interest Tạo đối tượng audio Tạo dictation Load dictation Tuyển tập Báo cáo “Hội nghị Sinh viên Nghiên cứu Khoa học” lần thứ 6 Đại học Đà Nẵng - 2008 58 3. Những đóng góp của đề tài 3.1. Ý nghĩa khoa học  Việc ứng dụng công nghệ SAPI của Microsoft giúp tiết kiệm thời gian xây dựng engine nhận dạng tùy theo mục đích của mỗi nhà phát triển phần mềm. Đồng thời, windows là hệ điều hành đa người dùng nên chương trình có thể tích hợp trong các ứng dụng dễ dàng hơn.  Những nghiên cứu và kết quả đạt được tạo ra các bước cơ sở cho việc xây dựng thành công hệ thống nhập và thông báo điểm thi tuyển sinh bằng tiếng Việt. 3.2. Hiệu quả kinh tế xã hội  Đây là một công nghệ được cung cấp miễn phí bởi Microsoft, điều này góp phần làm giảm đáng kể các chi phí về mặt bản quyền.  Xây dựng thành công hệ thống sẽ tiết kiệm được thời gian và giảm thiểu các sai sót trong quá trinh nhập và thông báo điểm. 3.3. Phạm vi ứng dụng Vì hệ thống mới được nghiên cứu và phát triển nên chưa thể ứng dụng vào thực tiễn. Trong thời gian đến, chúng tôi sẽ nghiên cứu sâu hơn về đặc điểm của tiếng Việt để xây dựng hệ thống hoàn chỉnh, phù hợp với yêu cầu thực tế. 4. Kết luận Chương trình đã đáp ứng được các yêu cầu cơ bản trong việc nhận dạng và xử lý giọng nói bằng tiếng Anh như : + Nhận dạng được giọng nói + Đọc các đoạn text bằng giọng tiếng anh chuẩn. + Ghi âm, load file .wav + Chuyển từ âm thanh ra text. Tuy nhiên, trong thời gian tới chúng tôi cần nghiên cứu sâu hơn để xử lý được tiếng Việt và tăng độ chính xác nhận dạng và xử lý của hệ thống. TÀI LIỆU THAM KHẢO [1] Chương trình VnSpeech của nhóm BK02 Bách khoa Hà Nội. [2] Microsoft Speech SDK Version 5.1 [3] Trịnh Văn Loan, Tài liệu xử lý tiếng nói . [4] Đồng Thị Bích Thủy, Hồ Bảo Quốc, Xử lý ngôn ngữ tự nhiên trong hệ thống tìm kiếm trên văn bản Tiếng Việt, Đại học Khoa học Tự nhiên TP HCM. [5] Hồ Bảo Tú, Lương Chi Mai , Xử lý tiếng Việt trong CNTT, Viện Công nghệ Thông tin, Viện Khoa học Công nghệ Tiên tiến Nhật Bản. [6] Word Segmentation for Vietnamese Text Categorization: An online corpus approach - Thanh V. Nguyen, Hoang K. Tran, Thanh T.T. Nguyen and Hung Nguyen

Các file đính kèm theo tài liệu này:

  • pdfNghiên cứu, ứng dụng công nghệ sapi Xây dựng hệ thống stt, tts trong nhận dạng tiếng nói.pdf