Đồ án Nghiên cứu mạng Neurral và xây dựng ứng dụng nhận dạng tiếng Việt

Từ rất lâu, con người đã mong muốn xây dựng và phát triển các hệ thống có khả năng thông minh như con người. Trong nhiều hướng nghiên cứu nhằm triển khai các hệ thống thông minh, mạng Neural đang là sự lựa chọn khá phổ biến. Chúng là cơ sở cho các giải pháp nhận dạng, tự động hóa điều khiển, trí tuệ nhân tạo Mạng Neural nhân tạo là hệ thống xử lý thông tin mới mẻ trong việc ứng dụng vào điều khiển và tự động hóa. Với việc kết hợp chặt chẽ các hệ logic mờ, mạng Neural nhân tạo đã tạo nên một cuộc cách mạng thực sự trong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao trong giai đoạn hiện nay và cả trong tương lai. Cùng với sự phát triển của công nghệ thông tin không thể không kể đến công nghệ xử lý tiếng nói như: nhận dạng tiếng nói, chuyển lời nói thành chữ viết và ngược lại Mục tiêu đặt ra xây dựng một hệ thống nhận dạng tiếng nói bằng máy tính. Tuy nhiên đây là vấn đề rất phức tạp vì độ biến động của mẫu âm thanh là vô cùng lớn, cùng với yếu tố cơ bản là cơ quan phát âm còn có sự ảnh hưởng nhiễu của môi trường truyền âm, ngoài ra giọng nói của mỗi người mỗi khác, mỗi địa phương mang một sắc thái riêng Đó là một trong nhiều nguyên nhân làm bài toán nhận dạng tiếng nói mặc dù đã được nghiên cứu từ lâu nhưng kết quả vẫn còn hạn chế. Bài toán nhận dạng tiếng nói thường được chia thành các bài toán nhỏ hơn như: nhận dạng thanh điệu, nhận dạng với số từ hữu hạn, nhận dạng các từ phát âm rời rạc, nhận dạng câu, nhận dạng phụ thuộc người nói, nhận dạng độc lập người nói.v.v. Vấn đề nhận dạng tiếng nói ngày càng trở nên cấp thiết, với ứng dụng rộng, thiết thực vào mọi lĩnh vực của cuộc sống. Các nước trên thế giới đều đang cố gắng xây dựng chương trình nhận dạng tiếng nói cho mình.

doc68 trang | Chia sẻ: tuandn | Lượt xem: 2177 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án Nghiên cứu mạng Neurral và xây dựng ứng dụng nhận dạng tiếng Việt, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lời nói đầu Từ rất lâu, con người đã mong muốn xây dựng và phát triển các hệ thống có khả năng thông minh như con người. Trong nhiều hướng nghiên cứu nhằm triển khai các hệ thống thông minh, mạng Neural đang là sự lựa chọn khá phổ biến. Chúng là cơ sở cho các giải pháp nhận dạng, tự động hóa điều khiển, trí tuệ nhân tạo… Mạng Neural nhân tạo là hệ thống xử lý thông tin mới mẻ trong việc ứng dụng vào điều khiển và tự động hóa. Với việc kết hợp chặt chẽ các hệ logic mờ, mạng Neural nhân tạo đã tạo nên một cuộc cách mạng thực sự trong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao trong giai đoạn hiện nay và cả trong tương lai. Cùng với sự phát triển của công nghệ thông tin không thể không kể đến công nghệ xử lý tiếng nói như: nhận dạng tiếng nói, chuyển lời nói thành chữ viết và ngược lại… Mục tiêu đặt ra xây dựng một hệ thống nhận dạng tiếng nói bằng máy tính. Tuy nhiên đây là vấn đề rất phức tạp vì độ biến động của mẫu âm thanh là vô cùng lớn, cùng với yếu tố cơ bản là cơ quan phát âm còn có sự ảnh hưởng nhiễu của môi trường truyền âm, ngoài ra giọng nói của mỗi người mỗi khác, mỗi địa phương mang một sắc thái riêng… Đó là một trong nhiều nguyên nhân làm bài toán nhận dạng tiếng nói mặc dù đã được nghiên cứu từ lâu nhưng kết quả vẫn còn hạn chế. Bài toán nhận dạng tiếng nói thường được chia thành các bài toán nhỏ hơn như: nhận dạng thanh điệu, nhận dạng với số từ hữu hạn, nhận dạng các từ phát âm rời rạc, nhận dạng câu, nhận dạng phụ thuộc người nói, nhận dạng độc lập người nói.v.v. Vấn đề nhận dạng tiếng nói ngày càng trở nên cấp thiết, với ứng dụng rộng, thiết thực vào mọi lĩnh vực của cuộc sống. Các nước trên thế giới đều đang cố gắng xây dựng chương trình nhận dạng tiếng nói cho mình. Đối với tiếng Việt, hiện nay đang trong quá trình nghiên cứu và kết quả vẫn còn nhiều khiêm tốn. Do đó nhu cầu giải quyết bài toán nhận dạng tiếng nói tiếng Việt càng trở nên cần thiết. Với lý do đó em đã chọn hướng nghiên cứu trong đồ án về lĩnh vực nhận dạng tiếng nói và giải quyết bài toán nhỏ trong nhận dạng tiếng nói là nhận dạng một số từ tiếng Việt với số người nói hữu hạn. Qua việc nghiên cứu về mạng Neural em đã sử dụng mạng để giải quyết bài toán nhận dạng tiếng Việt với số người nói hữu hạn. Một số mục tiêu chính trong đồ án: ■ Tìm hiểu về đặc điểm âm thanh tiếng Việt. ■ Các vấn đề của phân tích tiếng nói: 1. Các kỹ thuật tiền xử lý âm thanh. 2. Các đặc trưng của âm thanh và phương pháp trích trọn đặc trưng. ■ Nghiên cứu mạng Neural: Ứng dụng mạng trong giải quyết bài toán nhận dạng âm thanh tiếng Việt. ■ Xây dựng, thử nghiệm chương trình nhận dạng một số từ tiếng Việt. Trong thời gian làm đồ án, với sự cố gắng nỗ lực của bản thân, dưới sự hướng dẫn tận tình của thầy giáo Đại tá, PGS.TS Nguyễn Văn Xuất, cùng với sự quan tâm, giúp đỡ của các thầy cô giáo trong khoa công nghệ thông tin và tập thể lớp tin học 38, em đã hoàn thành đề tài “Nghiên cứu mạng Neurral và xây dựng ứng dụng nhận dạng tiếng Việt”. Nội dung đồ án được chia thành các chương như sau: Chương 1: Cấu trúc ngôn ngữ tiếng Việt. Chương 2: Các kỹ thuật phân tích dữ liệu tiếng nói. Chương 3: Tìm hiểu về mạng Neural. Chương 4: Ứng dụng mạng Neural nhận dạng một số từ tiếng Việt. Mặc dù đã có nhiều cố gắng nhưng đồ án không tránh khỏi thiếu sót, em rất mong được sự chỉ bảo của các thầy cô giáo và sự đóng góp ý kiến của các đồng chí và các bạn. Em xin trân trọng cảm ơn! Chương 1. CẤU TRÚC NGÔN NGỮ TIẾNG VIỆT 1.1 Tiếng nói và nhận dạng tiếng nói. Tiếng nói được dùng để trao đổi thông tin giữa người nói và người nghe, tiếng nói có một vị trí quan trọng trong xã hội loài người bởi vì tiếng nói và lao động là các nhân tố tạo lên sự phát triển của xã hội loài người. Tiếng nói, hay ngôn ngữ là một vấn đề vô cùng phức tạp và đã được nhiều các nhà khoa học trên thế giới quan tâm nghiên cứu dưới nhiều góc độ khác nhau. Dưới góc độ CNTT tiếng nói và nhận dạng tiếng nói có một vai trò to lớn giải quyết nhiều bài toán hóc búa mà từ trước nay con người đang quan tâm. Bài toán thông dịch các ngôn ngữ khác nhau, bài toán giao tiếp giữa người và máy, bài toán cho người khiếm thị sử dụng máy tính...đều liên quan nhiều đến nhận dạng tiếng nói. Trên thế giới các nhà khoa học đã nghiên cứu nhiều về vấn đề này nhưng nhận dạng tiếng Việt đã và đang là vấn đề mới được các nhà khoa học ở Việt nam nghiên cứu. Với một vị trí quan trọng trong nhiều lĩnh vực, tiếng Việt và nhận dạng tiếng Việt cần phải được quan tâm nghiên cứu nhiều hơn nữa. Dưới góc độ nghiên cứu học hỏi, bước đầu tôi đã nghiên cứu âm thanh, tiếng nói và nhận dạng với các phát âm từ đơn và nghiên cứu các vần và phụ âm trong Tiếng Việt. Quá trình phát âm của con người có thể được mô tả như sau: + Khí được đẩy từ phổi qua vòm họng ra miệng phát thành âm. + Khi dây thanh quản rung tạo ra các xung âm thanh và phát ra tiếng kêu (voiced sound). + Nếu dây thanh quản không rung nhưng mở liên tục tạo ra âm câm (Unvoice). + Khi nói hình dạng vòm họng, thanh quản thay đổi tạo ra các âm khác nhau. + Hình dạng vòm họng thay đổi chậm trong khoảng từ 10 đến 100ms. + Lượng khí từ phổi đẩy ra xác định âm lượng phát ra. Cách tạo ra tiếng nói như trên là nguyên lý cơ bản cho các tiếng nói chung trên thế giới nhưng đi sâu vào nghiên cứu thì mỗi tiếng nói của các nước khác nhau nó có điểm chung và điểm riêng biệt khác nhau chính điểm riêng biệt khác nhau này là một thuộc tính quan trọng để có thể nhận dạng tốt được các loại tiếng nói của các nước khác nhau. Bài toán nhận dạng tiếng nói là một bài toán khó, ví dụ một số đặc điểm sau cần quan tâm: -Kích thước từ điển: Với hệ thống có kích thước từ điển nhỏ thì hiệu quả nhận dạng không cao, còn hệ thống nhận dạng có bộ từ điển lớn thì không gian lưu trữ có hạn và việc tính toán nhận dạng cũng phức tạp. -Môi trường phát âm để nhận dạng là một yếu tố quan trọng trong nhận dạng âm thanh. Với môi trường yên tĩnh thì hiệu quả nhận dạng cao nhưng với môi trường nhiều tạp âm thì hiệu quả nhận dạng thấp có khi không nhận dạng được. -Ngữ pháp của tiếng nói cũng là một vấn đề phức tạp trong nhận dạng, với mỗi quốc gia có kiểu nói và ngữ pháp của ngôn ngữ khác nhau do đó để nhận dạng tốt với mỗi tiếng nói là việc rất phức tạp, đã được rất nhiều các nhà khoa học nghiên cứu và đã đi theo nghiên cứu nhận dạng theo các hướng sau: -Hệ thống nhận dạng tiếng nói độc lập hay phụ thuộc vào người nói: Hệ thống nhận dạng phụ thuộc người nói được dùng để thực hiện học và nhận dạng cho một người nói. Hệ thống này nhận dạng có hiệu quả tương đối cao so với hệ thống nhận dạng độc lập với người nói vì hệ thống này khi học sẽ dùng nhiều mẫu học của nhiều người nói khác nhau và khi nhận dạng cũng phải nhận dạng nhiều người nói. Tuy nhiên ở kiểu nhận dạng phụ thuộc người nói có yếu điểm là phải học lại mẫu khi nhận dạng với một người nói mới chưa được học qua hệ thống. Cả hai kiểu nhận dạng trên đều được dùng khi nhận dạng tiếng nói. -Nhận dạng phát âm từ đơn lẻ hay nhận dạng phát âm liên tục Hệ thống nhận dạng từ đơn được học với các đơn vị nhỏ nhất của phát âm hay còn gọi là các âm tiết. Ở kiểu nhận dạng này người nói phải nghỉ với một khoảng thời gian dài giữa hai phát âm. Công việc phát hiện ra điểm đầu và điểm cuối của một phát âm tạo ra một khung bao của phát âm để nhận dạng. Khi từ điển cho nhận dạng phát âm từ đơn quá lớn, chúng ta phải cấu trúc lại cách học với kiểu dùng chung các phát âm của một từ. Nhận dạng phát âm liên tục là một hệ thống nhận dạng phức tạp được dùng để nhận dạng các phát âm liên tục, ở hệ thống này thời gian nghỉ giữa hai âm vị là tương đối ngắn, các nói tự nhiên trong thực tế là một mô hình của cách phát âm liên tục.Ở hệ thống nhận dạng này, đầu tiên hệ thống nhận dạng phải có khả năng xác định được các khung bao của các phát âm, sau đó hệ thống nhận dạng phải biểu hiện các đặc tính của tín hiệu phát âm để nhận dạng. Với hệ thống nhận dạng các phát âm liên tục không nhất thiết yêu cầu nhiều mẫu của nhiều người nói mà điểm mạnh của nó thể hện qua thuật toán nhận dạng với các đặc trưng quan trọng nhất của một phát âm. Nhận dạng phát âm liên tục là hệ thống được dùng nhiều trong các ứng dụng trong thực tế. -Nhận dạng tiếng nói kết nối là một kiểu nhận dạng phát âm liên tục với bộ từ điển nhận dạng nhỏ. Ở kiểu nhận dạng này câu phát âm được cắt ra thành các phát âm nhỏ, hệ thống nhận dạng các phát âm cắt ra sau đó được ghép nối lại. 1.2 Hệ thống ngữ âm tiếng Việt. 1.2.1 Khái niệm. Chuỗi lời nói của con người được chia ra thành nhiều đoạn nhỏ như câu, từ, cụm từ... và cuối cùng là âm tiết. Âm tiết là đơn vị phát âm nhỏ nhất, không phân chia được nữa dù nói chậm đến đâu (mà vẫn giữ đúng ý nghĩa âm tiết đó). Mỗi âm tiết bao gồm nhiều yếu tố ngữ âm tạo thành và các yếu tố ngữ âm hầu như phát âm cùng lúc để tạo nên đúng âm tiết đó. Bên cạnh đó người ta còn xem âm tiết bao gồm nhiều yếu tố đoạn tính – là các yếu tố có giới hạn phân đoạn trong âm tiết như phụ âm, vần và âm đệm – và các yếu tố siêu đoạn tính – các yếu tố mà không giới hạn trong âm tiết như ngữ điệu, thanh điệu. Đặc điểm riêng của âm tiết tiếng Việt là đơn âm và mang thanh điệu. 1.2.2 Cấu trúc âm tiết tiếng Việt. Cấu trúc âm tiết tiếng Việt được xem xét theo nhiều cách, nhưng chúng ta cũng có thể xem xét theo quan điểm sau: Ta thấy rằng quan niệm truyền thống tiếng Việt có bảng chữ cái gồm 17 phụ âm, 10 vần và 5 dấu, trên cơ sở đó tất cả các từ đơn được sinh ra. Các từ đơn này là cơ sở tạo ra tất cả các từ trong tiếng Việt. Với cách quan niệm trên, người ta có thể phân tích, nghiên cứu tiếng Việt ở nhiều khía cạnh khác nhau như vần, điệu, ngữ pháp, ngữ nghĩa, cách phát âm, v.v. Tuy nhiên với cách quan niệm trên làm cho chúng ta gặp nhiều khó khăn về thuật toán như làm tăng dung tích bộ nhớ, tăng thời gian xử lý. Do đó để đơn giản hoá khi nghiên cứu nhận dang tiếng Việt người ta có thể quan niệm toàn bộ tiếng Việt được xây dựng từ một bảng gồm 26 phụ âm và 620 vần, đồng thời có 620 vần. Như thế chúng ta có thể xem mọi từ trong tiếng Việt có cấu trúc như sau: [] & [] (*) Trong đó có thể có hoặc không, thành phần bắt buộc phải có. Theo dạng (*) khi đó toàn bộ tiếng Việt có: 26*620+620=16.740 từ Dưới đây là là bảng các phụ âm và vần được phân chia theo độ dài: Bảng các phụ âm: Các phụ âm Số lượng Phụ âm đơn b,c,d,đ,g,h,k,l,m,n,p,q,r,s,t,v,x 17 Phụ âm ghép Ch,kh,nh,gh,th,ng,ngh,tr 9 Bảng vần đơn: Các vần đơn Số lượng a A,à,á,ả,ã,ạ,ă,ắ,ằ,ẳ,ẵ,ặ,â,ầ,ấ,ậ,ẫ,ẩ 18 o O,ò,ó,ỏ,õ,ọ,ô,ồ,ố,ổ,ỗ,ộ,ơ,ờ,ớ,ở,ỡ,ợ 18 e E,è,é,ẻ,ẽ,ẹ,ê,ề,ế,ể,ễ,ệ 12 i I,ì,í,ỉ,ĩ,ị 06 u U,ù,ú,ủ,ũ,ụ,ư,ừ,ứ,ử,ữ,ự 12 y Y,ý,ỳ,ỷ,ỹ,y 06 Vần kép loại 1: a Ai,ài,ái,ải,ãi,ại; ao,ào,áo,ảo,ão,ạo, ay,ày,áy,ảy,ãy,ạy; âi,ầi,ấi, ẩi,ẫi,ậi, ăi, ằi,ắi,ẳi,ẵi,ặi, au, àu,áu,ảu,ãu, ạu,âu,ấu,ầu,ẩu,ẫu,ậu; ây,ấy,ầy,ẩy,ẫy ậy; 48 e Ei, éi, èi,ẻi,ẽi,ẹi, eo,éo,ẻo,ẽo,ẹo; eu,éu,èu,ẻu,ẽu,ẹu,êi,ềi,ếi,ểu,ễi,ệi,êu,ếu,ều,ểu,ễu,ệu; 30 o Oa,oà,oá,oả,oã,oạ; oe,oè,oé,oẻ,oẽ,oẹ; oi,òi,ói,ỏi,õi,ọi,ôi ối,ồi,ổi,ỗi,ội 24 u Ua,úa,ùa ủa,ụa,ui,úi,ùi,ủi, ũi, ụi, uê, uế, uễ, uệ, ưi, ừi ứi, ửi, ữi, ựi, ưu, ừu, ứu, ửu, ữu, ựu, uy, uý, uỳ, uỷ, uỹ, uỵ; 48 Vần kép loại 2: c Ác, ạc, ắc, ặc, ấc,ậc, éc, ẹc, ếc, ệc, íc, ịc, óc, ọc, ốc, ộc, ớc, ợc, úc, ục, ức, ực 22 t Át,ạt, ắt, ặt, ất, ật, ét, ẹt, ết,ệt, ít, ịt, ót, ọt, ốt,ột,ớt,ợt,út, ụt, ứt, ựt 22 p Áp, ạp, ắp, ặp, ấp , . . . .. ., ...............,ứp,ựp 22 m Am, ám,àm ảm, ãm ạm ,........ ,........,ữm,ựm 60 n An, án, àn, ản, ãn, ạn, . . . . , ,. . . . ,ữn, ựn 60 Vần kép ba: nh Anh, ành, ánh, ảnh, ãnh, ạnh; inh, ính, ình,ỉnh,ĩnh, ịnh; ênh, ềnh, ểnh ễnh, ệnh; 18 ng Ang, àng,áng,ảng,ãng,ạng; ăng, ằng, ắng,ẳng, ẵng, ặng; Âng,ấng,ầng,ẩng, ẫng, ậng; ing,...... Eng, ;êng Ong, ;ông Ung ;ưng 60 ch Ách,ạch,ấch,ậch, ích,ịch, ếch, ệch, óch, ọch, úch, ụch 12 n Oen, oèn, oén, oẻn, oẽn; Ian; iàn, ián, iản, iạn, oan, oàn, oán, oản, oãn, oạn 18 i/y Oai,oài,oái, oải, oại, oay, oày, oáy, oảy, oãy, oạy 12 o Iao, iào, iáo, iảo, ião, iạo 06 Bảng vần bốn: nh Uanh,uành,uánh, uảnh,uạnh,uynh,uỳnh, ýnh, uỷnh, uỹnh, uỵnh; oanh, oành, oánh, oảnh, oãnh, oạnh 18 ng Uang, uàng, uáng, uảng, ũng, uạng; uâng, uầng, uấng, uẩng, uẫng, uậng, uông, uồng, uống, uổng, uỗng,uộng, ương, ường, ưỡng, ưởng, ượng; Iang, iàng, iáng, iảng, iạng, iêng, iềng, iếng, iểng, iễng, iệng; oang, oàng, oáng, oảng, oãng, oạng; oăng, oằng, oắng, oẳng, oẵng, oặng 48 Từ cách phân loại trên ta thấy: Có: 26 phụ âm 72 vần đơn 150 vần kép loại 1 186 vần kép loại 2 126 vần 3 66 vần 4 Để nhất quán trong các quy tắc chúng ta quy ước y và các từ có ký tự y đứng đầu đều là vần. Số từ bắt đầu bằng từ y trong tiếng Việt có tất cả 30 từ. Với quan niệm từ tiếng việt có cấu trúc [] & [] thì số lượng từ tăng lên so với quan niệm truyền thống, vì một loạt từ dạng như po, pó, py, pý, poăng, poặng... bây giờ là từ Việt, nhờ đó việc phiên âm để đọc tiếng nước ngoài đơn giản hơn. Trong phạm vi nghiên cứu của luận văn này tôi đã đi theo quan điểm thứ hai để nghiên cứu áp dụng cho nhận dạng các vần và phụ âm trong tiếng Việt. CHƯƠNG 2. KỸ THUẬT PHÂN TÍCH DỮ LIỆU TIẾNG NÓI Trong xử lý tiếng nói bao gồm: Phân tích tiếng nói, tổng hợp tiếng nói và nhận dạng tiếng nói. Việc phân tích tiếng nói là vấn đề quan trọng, quyết định đến kết quả của xử lý tiếng nói theo các hướng nhận dạng hay tổng hợp. Việc phân tích tiếng nói tốt sẽ cho ta trích chọn được các đặc trưng cơ bản, quan trọng nhất của tiếng nói để phục vụ cho công việc nhận dạng. Như vậy mục đích của việc phân tích tiếng nói nhằm tách ra được các tham số đặc trưng cho tín hiệu tiếng nói. Các tham số này sẽ được ứng dụng trong nhận dạng hay tổng hợp tiếng nói. Mục đích của đồ án là trích chọn ra các đặc trưng về: năng luợng và độ lớn trung bình thời gian ngắn, tần số cắt không trung bình thời gian ngắn, tần số Pitch. Việc xác định tốt được các đặc trưng nói trên sẽ cho phép ta xây dựng được hệ thống nhận dạng tiếng nói đạt chất lượng cao. Có nhiều kỹ thuật phân tích âm thanh khác nhau, trong đó kỹ thuật phân tích trực tiếp trên tín hiệu trong miền thời gian yêu cầu khối lượng tính toán nhỏ và cung cấp lượng thông tin lớn để xác định các đặc trưng của tiếng nói. Tín hiệu tiếng nói là một loại tín hiệu biến đổi theo thời gian. Điều này có thể thấy rõ khi biểu diễn tiếng nói dưới dạng sóng. Vấn đề ở chỗ cần phân tích chuỗi tín hiệu này để trích rút ra được các đặc trưng để phân biệt các tiếng nói với nhau. 2.1. Cấu trúc File “.Wav”. Một file wave là một phần của một lớp file lớn hơn dùng bởi các hàm Multimedia của Windows là các file RIFF (Resource Interchange File Format). Một file RIFF bao gồm một hoặc nhiều chunk. Mỗi chunk có con trỏ chỉ đến chunk kế tiếp. Mỗi chunk có một mô tả kiểu theo sau bởi một số dữ liệu. Một ứng dụng để đọc các file RIFF có thể đi qua một số chunk, đọc các chunk cần quan tâm và bỏ qua các chunk không liên quan. •Cấu trúc file.wav gồm những phần sau: - RIF chunk: kích thước 12 byte. + 0 –3 : “RIF” (mã tự ASCII), đây là xâu ký tự định danh các file âm thanh có đuôi *.wav. + 4 –7: độ dài tổng cộng của thông tin phần sau, nó được tính bằng công thức: độ dài tổng cộng = độ dài của file *.wav –8. + 8 –11: là xâu “WAVE”. - FORMAT chunk: kích thước 24 byte. + 0 – 3: là xâu ký tự bắt đầu khối định dạng dữ liệu. + 4 – 7: độ dài của FORMAT chunk. + 8 – 9: 0x01. + 10 –11: số chanel (kênh) (0x01 = mono, 0x02 = stero). + 12 –15: sample rate (tốc độ lấy mẫu), thường là các giá trị xác định như: 11.025 kHz, 22.5 kHz, 44.1 kHz. + 16 –19: bytes per second, giá trị này cho biết số byte được truy xuất trong 1 giây. + 20 –21: bytes per sample (1 =8 bit mono, 2 =8 bit stereo hoặc 16 bit mono, 4= 8 bit stereo), giá trị này cho biết số byte dùng để mã hoá một mẫu trong quá trình lượng tử hoá. + 22 –23: bits per sample, là số bit trong một mẫu được lấy. - DATA chunk: + 0 –3: là xâu “data”, xâu là báo hiệu bắt đầu phần dữ liệu. + 4 –7: độ dài dữ liệu. + 8 - hết: là dữ liệu. Tóm tắt cấu trúc của wave file như sau: Kích thước (số bytes) Giá trị 4 “RIFF” 4 Kích thước file RIFF 4 “WAVE” 4 “fmt ” 4 Kích thước subchunk “fmt ” 2 Kiểu mã hoá dữ liệu của file wave 2 Số kênh: + 1 – mono + 2 – stereo 4 Số mẫu /1giây 4 Số bytes/1giây 2 Số bytes/1mẫu 2 Số bits/1mẫu 4 “data” 4 Kích thước vùng dữ liệu Dữ liệu sóng âm 2.2. Các kỹ thuật tiền xử lý. 2.2.1. Các đơn vị cơ bản. Các đơn vị cơ bản của tín hiệu tiếng nói bao gồm: Tần số lấy mẫu, tần số cơ bản, Formant, biên độ, và nhiễu. *Tần số lấy mẫu: Bản chất của âm thanh là các sóng âm. Đây là tín hiệu tương tự. Để có thể biểu diễn âm thanh trong máy tính và áp dụng các kỹ thuật xử lý tín hiệu số thì bước đầu tiên là phải chuyển đổi các tín hiệu tương tự thành các dãy số. Quá trình này được thực hiện bằng cách lấy mẫu tín hiệu âm thanh theo một tần số lấy mẫu thích hợp ( tần số lấy mẫu là số mẫu lấy trong một đơn vị thời gian). Với tín hiệu tương tự x(t), chu kỳ lấy mẫu T (tần số lấy mẫu 1/T) thu được dãy số X(n): X(n)=x(n*T) với -¥ < n < ¥ Để đảm bảo quá trình số hoá không làm mất mát thông tin của phổ tín hiệu thì tần số lấy mẫu Fs=1/T phải đủ lớn. Giá trị đủ lớn của Fs phải tuân theo định lý lấy mẫu: Tín hiệu liên tục theo thời gian có bề rộng phổ hữu hạn với tần số cao nhất f Hz có thể được khôi phục một cách duy nhất từ các mẫu nếu quá trình lấy mẫu được thực hiện với tốc độ Fs>=2f mẫu trên một giây. Đối với chuẩn của file âm thanh thì tần số lấy mẫu thấp nhất là 8000Hz điều này có nghĩa là quá trình số hóa chỉ áp dụng với các tín hiệu tương tự có tần số cao nhất là 4000Hz-phù hợp với tiếng nói con người có tần số từ 40Hz-4000Hz. *Formant: Formant hay còn gọi là các họa âm, đóng vai trò tạo nên âm sắc của âm thanh. Formant là giải tần số được tăng cường do hiện tượng cộng hưởng, đặc trưng cho âm sắc của mỗi vần.Trong mỗi dải tần như thế có một tần số được tăng cường hơn cả và được gọi là đỉnh của Formant. Một vần do người phát ra có nhiều Formant, trong số đó có 2 Formant ứng với hộp cộng hưởng miệng và hộp cộng hưởng yết hầu, các Formant khác đặc trưng cho giọng nói từng người. *Tần số cơ bản: Sóng âm thanh do con người phát ra rất phức tạp. Nó có dạng đường cong phức tạp, có chu kỳ. Khi phát ra một âm có tần số f1 thì con người cũng đồng thời phát ra âm có tần số 2f1, 3f1, 4f1... Âm có tần số f1 được gọi là âm cơ bản, tần số f1 được gọi là tần số cơ bản. Các âm khác được gọi là các hoạ âm (Formant) thứ nhất, hoạ âm thứ 2... Âm cuối cùng (âm nghe được) là âm tổng hợp của âm cơ bản và các hoạ âm. Do đó đường biểu diễn của nó là một đường cong phức tạp có tần số là tần số cơ bản. *Biên độ: Biên độ là một đặc trưng quan trọng của sóng âm, đó là li độ lớn nhất của sóng âm so với vị trí cân bằng. Sóng âm thanh khi thu vào máy tính sẽ được số hoá thành một chuỗi các số rời rạc với miền giá trị tuỳ theo độ phân giải, số kênh, tần số lấy mẫu. Độ phân giải được hiểu theo nghĩa là số bit được dùng để biểu diễn một mẫu thu được trong quá trình lấy mẫu. Với độ phân giải 8bit, miền giá trị của các mẫu là khoảng đóng [0,255]; độ phân giải 16bit, miền giá trị này là khoảng đóng [0,65535]. Do đó xác định chính xác biên độ của sóng là một bài toán khó và trên thực tế là không cần thiết phải giải quyết tuyệt đối chính xác vì cái mà ta thực sự quan tâm là sự biến thiên của biên độ. Do đó bài toán này thường được giải quyết bằng phương pháp giải gần đúng. Trước hết ta xác định gần đúng ngưỡng không, sau đó biên độ sẽ được tính bằng trị tuyệt đối hiệu của giá trị số hoá trừ đi giá trị của ngưỡng không. Giá trị của ngưỡng không tuỳ thuộc vào từng Soundcard. *Nhiễu: Nhiễu là một trong những yếu tố làm cho bài toán nhận dạng trở nên vô cùng phức tạp. Nhiễu được xem xét như một đại lượng ngẫu nhiên, làm biến đổi tín hiệu cần nhận dạng. Do đó, lọc nhiễu là một khâu cần thiết phải tiến hành trong quá trình tiền xử lý tín hiệu. 2.2.2. Chuẩn hóa biên độ. Để tránh mất mát đặc trưng do âm thanh quá to hoặc quá nhỏ, đồng thời làm tăng ý nghĩa cho các đặc trưng để nhận dạng ta tiến hành chuẩn hóa biê