LỜI MỞ ĐẦU Nhận dạng tiếng nói tự động hiện nay đã không còn xa lạ với con người. Đã có những hệ thống được xây dựng có sử dụng nhận dạng tiếng nói như điều khiển máy tính bằng giọng nói, quay số điện thoại bằng giọng nói… Tuy nhiên, các hệ thống đó đều được phát triển dựa trên nền công nghệ hiện đại với hệ thống máy tính lớn và cơ sở dữ liệu tiếng nói khá hoàn chỉnh (ngôn ngữ chủ yếu là tiếng Anh, tiếng Pháp). Ở Việt Nam, việc nghiên cứu và phát triển hệ thống nhận dạng tiếng nói vẫn còn đang ở bước đầu và chủ yếu thực hiện trên máy tính và việc phát triển hệ thống nhận dạng tiếng nói trên các hệ nhúng chưa được nghiên cứu nhiều. Với mục đích tìm hiểu và góp phần phát triển chương trình nhận dạng tiếng nói trên hệ nhúng, tác giả đã thực hiện đề tài “Thiết kế hệ nhúng nhận dạng tiếng Việt nói”.
Đề tài này thực hiện việc tìm hiểu và thiết kế hệ nhúng có khả năng nhận dạng từ tiếng Việt rời rạc, số lượng từ vựng hạn chế. Để hoàn thành được luận văn, tôi xin cảm ơn TS. TRỊNH VĂN LOAN, mặc dù rất bận rộn nhưng đã dành thời gian hướng dẫn tận tình và cho tôi những lời khuyên rất quý báu. Đại học Bách khoa Hà Nội, 11/2009 Học viên thực hiện Lê Bá Vui Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -2- MỤC LỤC PHẦN I.
TỔNG QUAN VỀ HỆ NHÚNG. Giới thiệu chung. Đặc điểm hệ nhúng. Các kiến trúc phần mềm hệ thống nhúng.
Giới thiệu một số hệ nhúng. TÌM HIỂU DSPIC30F6014A VÀ CODEC SI3000. Vi điều khiển dsPIC30F6014A. Giới thiệu chung.
Nhân vi điều khiển dsPIC30F6014A. Giới thiệu chung về module DCI. Hoạt động của khối DCI. Đặc điểm của codec Si3000.
Mô tả chức năng. TỔNG QUAN VỀ LÝ THUYẾT NHẬN DẠNG TIẾNG NÓI. Giới thiệu chung. Cơ chế tạo tiếng nói.
Biểu diễn tín hiệu tiếng nói. Trích chọn tham số tiếng nói. Phương pháp tiên đoán tuyến tính .52 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -3- 3. Phương pháp phổ mel – tần số.
Trích chọn các tham số đặc trưng tiếng nói theo phương pháp phổ mel – tần số. Xác định khoảng lặng. Lọc hiệu chỉnh. Lấy cửa sổ.
Băng lọc tam giác. Biến đổi Cosine rời rạc. Cepstral có trọng số. Lượng tử hóa vector.
Đặc điểm của lượng tử hóa vector. Xây dựng codebook. Mô hình Markov ẩn. Giới thiệu chung về mô hình Markov ẩn.
Mô hình Markov rời rạc về mặt thời gian. Mô hình Markov ẩn rời rạc về mặt thời gian. Ba bài toán cơ bản của mô hình Markov ẩn. Bài toán thứ nhất, đánh giá xác suất.
Bài toán thứ hai, tìm dãy trạng thái tối ưu. Bài toán thứ ba, ước lượng tham số của mô hình. Những vấn đề khác trong mô hình Markov ẩn. Các loại mô hình Markov ẩn.
Mật độ quan sát rời rạc và mật độ quan sát liên tục. Huấn luyện với nhiều dãy quan sát. Khởi tạo các tham số ước lượng của mô hình .77 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -4- PHẦN IV. THIẾT KẾ HỆ THỐNG NHÚNG.
Yêu cầu chung của hệ thống. Thiết kế sơ đồ khối hệ thống nhúng. Thiết kế chi tiết phần cứng. Khối vi điều khiển dsPIC.
Khối giao tiếp Codec. Khối giao tiếp MMC. Khối ghép nối LCD. Khối ghép nối UART.
Khối cung cấp nguồn. Khối ghép nối các nút bấm. Khối giao tiếp Led. Khối tạo dao động.
Khối ghép nối với kit lập trình. Thiết kế chi tiết phần mềm. Giao tiếp với Codec. Giao tiếp với MMC.
Giao tiếp với LCD. Giao tiếp với nút bấm. Giao tiếp với Led. Giao tiếp UART.
Mô đun trích chọn đặc trưng. Mô đun nhận dạng. Mô đun tạo codebook (thực hiện trên PC). Mô đun huấn luyện (thực hiện trên PC).
Một số phương pháp tối ưu chương trình. KẾT QUẢ THỬ NGHIỆM HỆ THỐNG. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .110 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -5- PHỤ LỤC Bài báo dự kiến tham gia hội nghị FAIR tháng 12 năm 2009 tại Hà Nội .111 TÀI LIỆU THAM KHẢO .122 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -6- MỤC LỤC HÌNH Hình 1. Kit xử lý tín hiệu số C6713.
Kit T-Engine SH7760. Sơ đồ khối kit T-Engine SH7760. Sơ đồ các chân của dsPIC30F6014A-30I/PF. Sơ đồ khối module DCI.
Khung đồng bộ thời gian, chế độ đa kênh. Khung đồng bộ thời gian, AC-link Start của khung. Khung giao diện I2S đồng bộ thời gian. Sơ đồ cấu tạo chân Si3000.
Sơ đồ mô tả chức năng của Si3000. Giản đồ thời gian khi yêu cầu một khung thứ cấp. Giản đồ thời gian của chu kỳ viết trong khung thứ cấp. Giản đồ thời gian của chu kỳ đọc trong khung thứ cấp.
Hệ thống phát clock Si3000. Sơ đồ quá trình hình thành và cảm nhận tiếng nói. Bộ máy phát âm của con người. Sơ đồ khối bộ máy phát âm.
Biểu diễn tín hiệu trong miền thời gian. Biểu diễn tín hiệu trong miền tần số. Biểu diễn Spectrogram của tín hiệu. Mô hình của tuyến âm.
Các bước tính toán cepstrum thực.Cepstrum của tín hiệu kích thích và bộ lọc tuyến âm. Đồ thị hàm chuyển đổi giữa Hz và mel. Sơ đồ trích chọn tham số đặc trưng tiếng nói .57 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -7- Hình 3. Phân khung tín hiệu tiếng nói.
Sơ đồ các băng lọc tam giác. Mô hình Markov ẩn liên kết đầy đủ với 4 trạng thái. Mô hình Markov ẩn liên kết trái-phải với 4 trạng thái. Sơ đồ khối của hệ nhúng.
Vi điều khiển dsPIC. Giao tiếp với Codec Si3000. Giao tiếp với thẻ nhớ MMC. Ghép nối với LCD.
Ghép nối với máy tính thông qua UART. Khối cung cấp nguồn cho hệ thống. Giao tiếp với nút bấm. Giao tiếp với các đèn Led.
Khối tạo dao động. Khối ghép nối với kit lập trình. Sơ đồ thực hiện mô đun nhận dạng. Sơ đồ thực hiện việc tạo codebook.
Sơ đồ thực hiện module huấn luyện mô hình. Hệ nhúng nhận dạng tiếng Việt rời rạc .103 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -8- MỤC LỤC BẢNG Bảng 1. Các đặc tả cơ bản về T-Engine SH7760. Tần số clock tương ứng với tốc độ lấy mẫu.
Chức năng các chân của Si3000. Các chế độ của Si3000. Thử nghiệm hệ thống nhận dạng cho một người nói đã được huấn luyện. Thử nghiệm hệ thống nhận dạng cho một người nói chưa được huấn luyện.
Thử nghiệm hệ thống nhận dạng với nhiều người nói đã được huấn luyện. Thử nghiệm hệ thống nhận dạng với người nói chưa được huấn luyện.109 Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói -9- PHẦN I. TỔNG QUAN VỀ HỆ NHÚNG 1. Giới thiệu chung Hệ thống nhúng (embedded system) được định nghĩa là một hệ thống máy tính chuyên biệt được thiết kế để thực hiện một chức năng chuyên dụng.
Hệ thống nhúng được sử dụng trong rất nhiều lĩnh vực từ các thiết bị cao cấp như vệ tinh, tên lửa, tàu con thoi đến các thiết bị tiêu dùng như lò vi ba, máy sấy, máy hút bụi… Thị trường phần mềm cho hệ thống nhúng lớn hơn gấp nhiều lần so với phần mềm của những chiếc máy tính cá nhân PC. Chẳng hạn, trong một chiếc xe hơi đời mới có tới trên 80 chương trình xử lý cho các ứng dụng từ điều khiển, phanh, nạp nhiên liệu, dẫn đường cho tới túi khí…Và số lượng vi xử lý trên các hệ thống hiện đại ngày càng tăng. Theo thống kê của BCC Research Group, đến năm 2009, tổng thị trường của các hệ thống nhúng toàn cầu sẽ đoạt khoảng 88 tỷ USD. Trong đó phần cứng là 78 tỷ USD và phần mềm chiếm 3,5 tỷ.
Tuy nhiên tốc độ tăng trưởng của phần mầm nhúng sẽ cao hơn và hiện tại đang ở mức 16%/năm. Đặc điểm hệ nhúng Hệ thống nhúng thường có một số đặc điểm chung như sau: • Các hệ thống nhúng được thiết kế để thực hiện một số nhiệm vụ chuyên dụng chứ không phải đóng vai trò là các hệ thống máy tính đa chức năng. Một số hệ thống đòi hỏi ràng buộc về tính hoạt động thời gian thực để đảm bảo độ an toàn và tính ứng dụng; một số hệ thống không đòi hỏi hoặc ràng buộc chặt chẽ, cho phép đơn giản hóa hệ thống phần cứng để giảm thiểu chi phí sản xuất. • Một hệ thống nhúng thường không phải là một khối riêng biệt mà là một hệ thống phức tạp nằm trong thiết bị mà nó điều khiển.
• Phần mềm được viết cho các hệ thống nhúng được gọi là firmware và được lưu trữ trong các chip bộ nhớ chỉ đọc (read-only memory) hoặc bộ nhớ flash chứ không phải là trong một ổ đĩa. Phần mềm thường chạy với số tài nguyên phần cứng hạn chế: không có bàn phím, màn hình hoặc có nhưng với kích thước nhỏ, bộ nhớ hạn chế. Sau đây, ta sẽ đi sâu, xem xét cụ thể đặc điểm của các thành phần của hệ thống nhúng. Lê Bá Vui – Lớp Cao học Xử lý Thông tin và Truyền thông 2007 – 2009 Thiết kế hệ nhúng nhận dạng tiếng Việt nói - 10 - Giao diện Các hệ thống nhúng có thể không có giao diện (đối với những hệ thống đơn nhiệm) hoặc có đầy đủ giao diện giao tiếp với người dùng tương tự như các hệ điều hành trong các thiết bị để bàn.
Đối với các hệ thống đơn giản, thiết bị nhúng sử dụng nút bấm, đèn LED và hiển thị chữ cỡ nhỏ hoặc chỉ hiển thị số, thường đi kèm với một hệ thống menu đơn giản.