Phạm vi nghiên cứu Đề tài thực hiện trong phạm vi nghiên cứu nhận dạng âm thanh tiếng Việtphát âm rời rạc trên tập từ hữu hạn theo hướng nhận dạng phụ âm và nguyên âmcấu tạo nên từ, xét
Trang 1LỜI NÓI ĐẦU
Xử lý âm thanh và nhận dạng tiếng nói có một ý nghĩa quan trọng và thiếtthực trong nhiều lĩnh vực như: nhận dạng, phát thanh, truyền hình, viễn thông, vànhiều lĩnh vực khác
Nhận dạng tiếng nói là một lĩnh vực khó, một vấn đề nghiên cứu trọngđiểm được nhiều nhà khoa học quan tâm ở các lĩnh vực khác nhau : Tin học,toán học, điều khiển, điện tử, sinh học
Trước sự phát triển mạnh mẽ của công nghệ thông tin, vấn đề nhận dạngcàng được quan tâm nhiều hơn nhằm nâng cao hiệu quả giao tiếp giữa người vàmáy Chính sự quan trọng đặc biệt này mà em đã chọn âm thanh tiếng Việt là đềtài nghiên cứu
1 Mục đích của đồ án
Nghiên cứu, tìm hiểu mạng Neuron và ứng dụng trong nhận dạng tiếngnói tiếng Việt trên tập từ hữu hạn với hưóng nghiên cứu mới trên quan điểm xemxét từ ngữ tiếng Việt dưới góc độ phân tách thành phụ âm và nguyên âm trên tậpcác đặc trưng LPC, Cepstral, Cosin
Trang 23 Nhiệm vụ của đồ án.
Nghiên cứu tìm hiểu lý thuyết về tiếng nói và mô hình mạng Neuron Ứngdụng mạng neuron để nhận dạng tiếng Việt theo hướng nhận dạng nguyên âm vàphụ âm, xây dựng chương trình mô phỏng nhận dạng nguyên âm và phụ âmtiếng Việt
4 Phạm vi nghiên cứu
Đề tài thực hiện trong phạm vi nghiên cứu nhận dạng âm thanh tiếng Việtphát âm rời rạc trên tập từ hữu hạn theo hướng nhận dạng phụ âm và nguyên âmcấu tạo nên từ, xét trên tập từ 11 chữ số tiếng Việt: không, một, hai… mười với dữ liệu là các File âm thanh WAVE 8 bit, mono,11025Hz
Trang 3MỤC LỤC
5.1 Ý nghĩa các phép biến đổi toán học 33
2.2 Mạng neural với thuật giải lan truyền ngược 55
2.3 Những vấn đề quan trọng trong mạng Neural lan truyền ngược 63
Trang 4CHƯƠNG I: ÂM THANH VÀ SỐ HOÁ ÂM THANH
1.1.2 Biên độ
là độ lớn của dạng sóng hoặc cường độ của sóng cơ học, đây là đặc tínhquan trọng góp phần nhận diện sự khác biệt giữa nguyên âm và phụ âm trong âmthanh lời nói
1.1.3 Dạng sóng
là hình dạng của sóng âm thanh, sóng dạng hình sin là dạng sóng cơ bảncủa âm thanh, trên lý thuyết nếu chúng ta có thể tổng hợp một tập hợp các sónghình sin thì ta có thể tổng hợp bất kỳ âm thanh nào
Mỗi âm có một tần số riêng và đơn vị tính là héc (Hz)
1.2 Đơn vị vật lý của âm thanh
- Các dao động âm phát ra từ nguồn lan truyền trong môi trường đàn hồi nhưkhông khí dưới dạng sóng đàn hồi gọi là sóng âm Sóng âm kích động màngnhĩ tai gây cảm giác về âm Âm thanh có những đặc trưng cơ bản là: Độ cao của
âm, độ to của âm, âm sắc Do đó cần phân biệt các loại đại lượng về âm:
1.2.1Quãng độ cao (quãng tần số)
Độ cao của âm là một đặc tính sinh lý của âm, nó dựa vào đặc tính của âm làtần số Những âm có tần số khác nhau gây cho ta những cảm giác khác nhau, âm
Trang 5có tần số lớn gọi là âm cao hoặc thanh, âm có tần số nhỏ gọi là âm thấp hoặctrầm.
Quãng tần số của hai âm là khoảng cách của hai âm đó Nếu một âm tần số
là f1, một âm khác tần số là f2 (f2> f1) thì f2/f1 =2x
Khi x=1 thì f2/f1 =2 gọi là một quãng tần số (một ốc-ta)
Khi x=½ thì f2/f1 = 1.41 gọi là nửa ốc-ta
Khi x=1/3 thì f2/f1 = 1.26 gọi là 1/3 ốc-ta
-> Mức áp suất của một ốc-ta bằng mức áp suất âm của ½ ốc-ta cộng thêm3db Cao độ được tiếp nhận phần lớn là do quy định bởi tần số cơ bản của sóng
âm và một phạm vi nhỏ hơn bởi cường độ của âm Nhưng mối quan hệ giữa cao
độ và tần số cơ bản lại không mang tính chất tuyến tính và thường thay đổi cùngvới tần số đi kèm Vì quãng tần số của một âm quy định độ cao của âm đó nêncòn gọi là quãng độ cao (quãng 8 – bát bộ)
L(B) = lg(I/I0) hoặc L(dB) = 10lg(I/I0) với 1B = 10dB
Trong thực tế người ta thường dùng đơn vị dB (deciben) hơn B, khi đó L=1dB thì lớn gấp 1,26 lần I0 Đó là mức cường độ nhỏ nhất mà tai ta có thể ngheđược
Trang 6Âm sắc là một đặc tính sinh lý của âm, được hình thành trên cơ sở các đặctính vật lý của âm là tần số và biên độ thực nghiệm chứng tỏ rằng khi một nhạc
cụ hoặc một người phát ra một âm có tần số f1 thì đồng thời cũng phát ra các âm
có tần số f2=2f1, f3=3f1,…
Âm có tần số f1 gọi là âm cơ bản hay hoạ âm thứ nhất, các âm có tần số f2, f3,
… gọi là các hoạ âm thứ hai, thứ ba … Tuỳ theo cấu trúc từng nhạc cụ hoặc cổhọng từng người, mà trong số các hoạ âm cái nào có biên độ khá lớn, cái nào cóbiên độ nhỏ, cái nào chóng bị tắt đi Do hiện tượng đó, âm phát ra là sự tổng hợpcủa âm cơ bản và các hoạ âm, nó có tần số f1 của âm cơ bản nhưng đường biểudiễn của nó không còn là đường hình sin mà trở thành một đường phức tạp cóchu kỳ
Đó là sự khác nhau về âm sắc, lý do:
è Vật tạo ra âm khác nhau
è Cách làm cho vật phát âm khác nhau
è Hiện tượng cộng hưởng khác nhau
2 Qúa trình số hoá âm thanh
2.1 Quá trình lấy mẫu âm thanh tương tự
Trang 7Đây là quá trình rời rạc hoá tín hiệu âm thanh tương tự về thời gian.
Nguyên tắc cơ bản của quá trình này là tín hiệu âm thanh tương tự sẽ đượclấy mẫu với tần số lấy mẫu trong một giây (tốc độ lấy mẫu) là cố định, ví dụ: tần
số lấy mẫu là 10000Hz thì trong một giây lấy được 10000 mẫu Khi lấy mẫu phảichú ý đảm bảo tần số lấy mẫu phải lớn hơn hoặc bằng hai lần tần số lớn nhất củasóng âm tương tự để tránh hiện tượng giả tần số Nếu tần số lớn nhất của tín hiệucủa sóng âm thanh tương tự F(Hz) thì tần số lấy mẫu lớn hơn hoặc bằng 2F (gọi
là tần số Nyquist), chẳng hạn nếu ta số hoá tín hiệu lời nói ở tần số 5kHz thì tần
số lấy mẫu phải là 10kHz hoặc lớn hơn
Hình: Quá trình số hoá thành dạng sóng file Wave
2.2 Quá trình lượng tử hoá
Đây là quá trình rời rạc biên độ tín hiệu của sóng âm tương tự
Quá trình này lấy biên độ của tín hiệu tại mỗi lần lấy mẫu và biểu diễn cácbiên độ đó dưới dạng nhị phân Để lựa chọn cách thức lượng tử cần phải xem xét
Trang 8hai kía cạnh: giá trị nhỏ nhất của tốc độ dữ liệu (data rate) và giá trị lớn nhất củachất lượng âm (quality).
è Tốc độ dữ liệu được tính bằng bps (bits per sencond) dùng để địnhdạng sóng âm, nó là tích của số mẫu được lấy trong một giây (sample persecond) và số bit tương ứng một mẫu đã được lấy Do tốc độ lấy mẫu là cố địnhnên ta phải đảm bảo số bit để biểu diễn một mẫu càng lớn càng nghe trung thựcvới âm thanh thật (do nó ảnh hưởng đến sự phân giải tiêu chuẩn của tín hiệutương tự tại mỗi thời điểm lấy mẫu, và do đó ảnh hưởng đến chất lượng âmthanh cần thu)
è Giá trị lớn nhất của chất lượng âm: nghĩa là khi chuyển đổi ngượcsóng âm số sang sóng âm tương tự phải đảm bảo lỗi xảy ra là nhỏ nhất Điều nàyđồng nhất với sóng âm tương tự sau khi được chuyển ngược từ sóng âm số phảinghe giống sóng âm tương tự ban đầu được số hoá
Việc lấy mẫu của tín hiệu không gây ra sự mất mát thông tin của tín hiệutương tự cần lấy mẫu, quá trình lượng tử hoá ngược lại gây ra mất mát thông tin(hay còn gọi là lỗi lượng tử hoá) và gây ra nhiễu Hệ số nhiễu tín hiệu (Signal –
to – noise) được dùng để đánh giá chất lượng âm thanh, được tính theo côngthức:
Trang 9được lưu trữ nguyên mẫu như đã lượng tử hoá, hoặc đựơc nén rồi mới lưu trữ Taxem xét các loại file phổ biến sau.
3 Cấu trúc file WAVE
3.1 Các loại file âm thanh:
Có rất nhiều dạng file âm thanh, như dạng file “.MP3”, “.MIDI”,
“.WAV”, “.RA”, “AIFF”, “.WMA” Song phổ biến hơn là ở dạng “.wav” Dạngfile này đưa ra ở dạng thô, dữ liệu âm thanh không được nén Được phát minhđầu tiên bởi Microsoft, các file wave vẫn được sử dụng một cách rộng rãi (ví dụcác âm thanh lúc khởi động và tắt Window) Chất lượng âm thanh rất tốt nhưngkích thước file rất lớn Một bài hát pop đầy đủ ở dạng Wave có thể chiếm 40 MBcủa không gian đĩa hoặc nhiều hơn
3.2.Cấu trúc file WAVE
(1) Cấu trúc file wave: File wave là tập hợp con file RIFF của Window cho lưutrữ các file multimedia Một file RIFF có header file là một chuỗi các chunk dữliệu Một file Wave thường là file RIFF cùng với một chunk wave đơn giản, nó
có chứa 2 chunk con: một chunk “fmt” đặc tả dữ liệu và một chunk dữ liệu cóchứa các mẫu dữ liệu thực Gọi dạng này là “Canonical form”
Trang 10Dạng Header WAVE bắt đầu cùng với RIFF header
offset Size Name Description
4 4 ChunkSize 36+SubChunk2Size, chính xác hơn:
4+(8+SubChunk1Size)+(8+SubChunk2Size) Kích thước phần
Trang 11còn lại của chunk, đó là kích thước củatoàn bộ file tính theo byte trừ đi 8 byte cho
2 trường không chứa trong nó là ChunkID
và ChunkSize
Dạng file Wave có chứa 2 Subchunk :”fmt” và “data”
Subchunk “fmt” mô tả dạng của dữ liệu âm thanh
12 4 Subchunk1ID Có chứa các chữ cái “fmt” (dạng
Nếu là PCM thì không tồn tại
X ExtraParams Không gian cho các tham số thêm vào
Subchunk “data” có chứa kích thước của dữ liệu và âm thanh thực
Trang 12Offset Size Name Description
36 4 SubChunk2ID Có chứa các chữ cái “data”
(dạng 0x64617461 big - endian)
ze
=NumSamples*NumChannels*BitPerSample/8
Số các byte trong dữ liệu
Từ việc hiểu cấu trúc lưu trữ file wav trong máy tính mà ta hoàn toàn có thểthao tác xử lý các file wav một cách đơn giản như: việc cắt, dán, nối ghép, vàđiều chỉnh phát 1 đoạn trong 1 file wav bất kỳ để nghe
4 Xử lý file WAVE
Một file wave bao giờ cũng có phần header và phần dữ liệu Trong đóheader chứa các thông tin như độ dài file, số bit/mẫu, kiểu kênh mono haystereo,…
Muốn thao tác xử lý các file wave thì chúng ta phải thay đổi một số thông
số trong header như độ dài file,…sau đó ghi các dữ liệu cần thiết sau khi ghiheader mới vào
+ Các trường cần thay đổi khi thực hiện các thao tác xử lý File wav
- 2 trường SubChunk1Size và SubChunk2Size tất nhiên là phải đượccộng thêm với phần dữ liệu của File 2
Header Dữ liệu
Trang 13- Nếu 2 File khác tôc độ lấy mẫu, giả sử 2 File cùng số kênh, cùng mứclượng tử, mà File 2 có tốc độ lấy mẫu lớn hơn File 1, thì khi ghép File2vào File 1; khi phát, âm thanh File 1 như ban đầu còn file 2 sẽ phát chậmhơn (điều này tương đương với 1 dọng trầm được phát thay vì dọngcao) Ngược lại, File 2 có tốc độ lấy mẫu bé hơn File 1, thì khi ghépFile2 vào File 1, khi phát, âm thanh File 1 như ban đầu còn file 2 sẽphát nhanh hơn (điều này tương đương với 1 dọng cao được phát thay vìdọng trầm).
- Nếu 2 File cùng tốc độ lấy mẫu:
+ Giả sử cùng cùng kênh là 1 hoặc 2, nhưng mức lưọng tử khác nhau,chẳng hạn File1 là 8Bit/mẫu, File2 là 16Bit/mẫu khi ghép 2 File lại vớinhau ta cần phải thực hiện 1 phép ánh xạ 1 File về dạng cùng mức lượng tửcủa File kia bằng cách, thực hiện biến đổi giá trị mẫu từ miền [0,255] tớimiền [0,65535] hoặc ngược lại
+ Nếu cùng mức lượng tử, cùng kênh thì sao chép bình thường
+ Nếu cùng mức lượng tử nhưng khác kênh Ta cần biến đổi 1 File vềdạng cùng kênh với File kia bằng cách: Biến 1 File Mono Stereo thì mỗimẫu của File Mono được nhân lên thêm 1 mẫu nữa và chèn vào sau mẫu đó.Biến Stereo Mono bằng cách chỉ lấy mẫu của kênh trái hoặc kênh phải.Lúc này từ File Stereo ta được 2 File MonoLeft và MonoRight
Trang 14CHƯƠNG 2: TIẾNG VIỆT VÀ CÁC ĐẶC TRƯNG
1 Quá trình phát âm
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ậndạng với các phát âm từ đơn và nghiên cứu các nguyên âm và phụ âm trongTiế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
Trang 15+ 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 chungtrê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ácnhau có điểm chung và điểm riêng biệt khác nhau, chính điểm riêng biệt khácnhau này là một thuộc tính quan trọng để có thể nhận dạng tốt được các loạitiếng nói của các nước khác nhau Vì vậy cần phải hiểu rõ cấu trúc ngữ âm tiếngViệt
2 Ngữ âm tiếng Việt
2.1 Khái niệm âm tiết
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ôngphâ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ữ âmhầ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, nguyên âm 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
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 tacũng có thể xem xét theo hai quan điểm sau:
2.2.1 Quan điểm truyền thống
Cấu trúc âm tiết:
Trang 16Thanh điệu
Âm đầu Phần vần
Âm đệm Âm chính Âm cuối
Một âm tiết tiếng Việt gồm 3 phần:
+ Thanh điệu: Là yếu tố luôn có mặt trong mọi âm tiết tiếng Việt TiếngViệt bao gồm 6 thanh điệu: Ngang, huyền, sắc, hỏi, ngã, nặng
+ Âm đầu : yếu tố mở đầu âm tiết, thường độc lập với phần còn lại
+ Phần vần : gồm 3 phần:
Âm đệm: Là một bán nguyên âm chiếm vị trí trung gian giữa phụ âm và
phần vần Có thể có hay không trong âm tiết Âm đệm có chức năng tu chỉnh âmsắc của âm tiết Âm đệm có nhiệm vụ làm trầm hoá âm tiết Tiếng Việt có hai âmđệm là [o] và [u] được phát âm tương đối giống nhau
Âm chính: Là một nguyên âm (đơn hay đôi), luôn có mặt trong âm tiết, giữ
vai trò là đỉnh của âm.Trong Tiếng Việt điểm thanh tính bao giờ cũng là nguyên
âm, các tiêu chí để phân biệt nguyên âm bao gồm các tiêu chí về âm sắc và âmlượng Các âm chính là các thành phần dễ phân biệt nhất
Âm cuối: Là phụ âm hay bán nguyên âm để kết thúc âm tiết Tiếng Việt có
hai bán nguyên âm cuối là [i] và [u]
Mỗi một ngôn ngữ có những đặc điểm về ngữ âm và ngữ pháp khác nhau
Ta có thể áp dụng một phương pháp xử lý tiếng nói trên ngôn ngữ này rất hiệuquả Nhưng cùng phương pháp đó áp dụng cho một ngôn ngữ khác thì khôngphải lúc nào cũng đúng Đặc điểm của ngôn ngữ tiếng Anh là một từ được cấutrúc từ một hoặc nhiều âm vị khác nhau Vì vậy nói một từ trong ngôn ngữ này
có thể chia nhỏ ra làm một hoặc nhiều đoạn âm thanh Với ngôn ngữ tiếng Việt
Trang 17mỗi một từ được phát âm riêng biệt, không có sự biến đổi chu kỳ âm trong một
từ
Với cách quan niệm này thì để nhận dạng một từ ta phải nhận dạng lầnlượt các yếu tố về thanh điệu, âm đầu và vần; trong vần ta lại chia nhỏ để nhậndạng các phần âm đệm, âm chính, âm cuối Và như vậy ta hình dung thấy rằng,bài toán nhận dạng từ đọc của ta trở nên quá phức tạp, độ phức tạp về thời gian
là lớn, rồi việc phân chia ranh giới giữa các phần như thế nào là chuẩn, là đảmbảo yêu cầu Đây mới là vấn đề quan tâm hàng đầu Chính vì những điều khókhăn này mà ta phải nghĩ tới một hướng khác về cấu trúc từ Và đây là quanđiểm mới mà tôi muốn thảo luận
2.2.2 Quan điểm mới
Đây là quan điểm mới về cấu tạo từ ngữ trong tiếng Việt mà tôi đangquan tâm nghiên cứu
Ta thấy rằng quan niệm truyền thống tiếng Việt có bảng chữ cái gồm 17phụ âm, 10 nguyên âm 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 nhaunhư 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 đó để đơngiả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 nguyên âm, đồngthời có 620 vần ( Báo cáo khoa học 2006 của PGS.TS Nguyễn Văn Xuất )
Như thế chúng ta có thể xem mọi từ trong tiếng Việt có cấu trúc như sau:
[<PHỤ ÂM>] & [<NGUYÊN ÂM>] (*)
Trang 18Trong đó <PHỤ ÂM> có thể có hoặc không, thành phần <NGUYÊNÂM> 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à nguyên âm được phân chia theo độ dài:
Bảng các phụ âm:
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,ph,ng,ngh,tr 9
Bảng nguyên âm đơn:
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;
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
Trang 19Nguyên âm kép loạii 2:
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
Bảng nguyên âm bốn:
nh Uanh,uành,uánh, uảnh,uạnh,uynh,uỳnh, ýnh, uỷnh, 18
Trang 20uỹnh, uỵnh; oanh, oành, oánh, oảnh, oãnh, oạnh
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 nguyên âm đơn
150 nguyên âm kép loại 1
186 nguyên âm kếp laọi 2
126 nguyên âm 3
66 nguyên âm 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à nguyên âm Số từ bắt đầu bằng từ y trong tiếng Việt có tất cả 30từ
Với quan niệm từ tiếng việt có cấu trúc [<PHỤ ÂM>] & [<NGUYÊN
ÂM>] 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 nguyên âm và phụ âm trong tiếngViệt
Trang 213 Tiền xử lý tín hiệu tiếng nói
Tín hiệu tiếng nói khi đã được số hoá, trước khi trích lọc đặc trưng phảithực hiện tiền xử lý: Lọc nhiễu, chuẩn hoá biên độ, căn chỉnh thời gian động.Chương trình nhận dạng với tín hiệu tiếng nói 8bit/mẫu, tần số lấy mẫu11025Hz, Frame được lấy theo kích thước 160 mẫu , tương đương đoạn thờigian khoảng 15ms
+ Hệ thống thính giác của con người nhạy cảm với vùng tấn số cao, bước
xử lý này nhấn mạnh vùng tần số cao, trợ giúp cho quá trình mô hình hoá âmthanh sau này của hệ thống nhận dạng
Thủ tục giả mã:
Giả sử s(n) là dãy tín hiệu đầu vào, dãy tín hiệu đầu ra qua bộ lọc được tính for( i=N-1, i>0, i )
Trang 22s(i)=s(i)-a* s(i-1)
3.2 Xác định đường mức không
Tiếng nói hay âm thanh khi số hoá với độ phân giải n Bit, thì giá trị sẽ nhậntrong khoảng [0, 2n -1] Với tín hiệu ta đang nghiên cứu được số hoá ở độ phângiải 8bit, thì giá trị mẫu nhận là [0, 255], khi im lặng tín hiệu này sẽ nhận giá trị
128 và đây là giá trị đường mức không Thực tế khi thu âm, soundcard thực hiện
số hoá âm thanh có thể mức không không là giá trị nói trên Để xác định đườngmức không thực hiện như sau:
Bước 1: Lấy mức thu của soundcard
Bước 2: Đặt mức thu là nhỏ nhất
Bước 3: Thu khoảng 3s
Bước 4: Tính Histogram H của đoạn tín hiệu nói trên
Bước 5: Xác định giá trị mà có Histogram là lớn nhất, vị trí đó sẽ là giátrị đường mức không
Khi đã xác định được đường mức không, giá trị tín hiệu tiếng nói sẽ dao độngxung quanh đường mức không
3.3 Chuẩn hoá biên độ
Các tín hiệu của cùng 1 từ khi nói và thu vào máy tính có thể có cường độ( biên độ tín hiệu so với đường mức không) khác nhau, để thuận tiện cho việctrích rút đặc trưng, một trong những khâu tiền xử lý là chỉnh biên độ tín hiệutiếng nói các từ về cùng mức không, giá trị biên độ lớn nhất là như nhau
Trang 23Bước 1: Đặt L= 2n, n là độ phân giải
Bước 2: Tính biên độ lớn nhất Max so với mức không
Bước 3: Chuyển giá trị tín hiệu theo mức không
s(n)= s(n)- (Mức không)
Bước 4: Tính hệ số điều chỉnh
k=maxL , L là mức biên độ cần chuẩn tới
Bước 5: Chỉnh lại biên độ
s(n)= s(n)*k + (Mức không)
3.4 Căn chỉnh thời gian
Đây là việc mở rộng hoặc thu hẹp tín hiệu về 1 khoảng nhất định nào đó.Giả sử dãy tín hiệu s(n)= { s(1), s(2),… s(n) } có n mẫu được chuẩn hoá thờigian về dãy mới có N mẫu
Thuật toán như sau:
For(i=1; i<=N; i++)
s’(i)= s(i*n/N)
3.5 Xác định phụ âm-nguyên âm
Qua nghiên cứu phổ của bất kỳ từ nào ta đều thấy rằng, giữa phần phụ âm
và nguyên âm có sự đột biến về năng lượng, đây chính là điểm mấu chốt củahướng nghiên cứu mới này và là cơ sở cho sự quan niệm mới về cấu trúc từ nhưtrên
Ví dụ phổ của 1 số từ như sau
Trang 24BẢY
NĂM
Trang 25BA
Trang 26
* Thuật toán xác định ranh giới phụ âm- nguyên âm
Giả sử tín hiệu của 1 từ được xác định theo hàm f(t), t Є [t1, t2] là miền thờigian xác định 1 từ Gọi S là giá trị cần đánh giá phụ âm, khoảng thời gian đánhgiá là Δt, Δt đựơc gọi là khung thời gian đánh giát, Δt, Δt đựơc gọi là khung thời gian đánh giát đựơc gọi là khung thời gian đánh giá
S=
t t
t
dx x f
1
) (
Phụ âm đựơc xác định từ thời điểm đầu của một từ đến khi có sự đột biến giá trị
S so với ngưỡng xác định trước δ (δ>0) Cách làm này có ưu điểm tránh đượcnhiễu và tác động khác của môi trường
Thuật toán giải mã:
Input: Δt, Δt đựơc gọi là khung thời gian đánh giát, δ, hàm f(x), t1, t2
Output: stop ( vị trí kết thúc phụ âm)
For( t=t1; t<t2; t++)
i) Tính S S=
t t
t
dx x f
1
) (
ii) if (S> δ) stop t
Một câu hỏi đặt ra là: t , được lấy là bao nhiêu? Và có thể áp dụng chung cho các từ được không?
Câu trả lời chính là 1 phát hiện rút ra từ kết quả đồ án.
Sau khi xác định đựơc ranh giới phụ âm và nguyên âm, phần phụ âm đượccắt từ ranh giới đó trở về đầu với đô dài tương đương với 4Frame (160mẫu/ 1Frame ), phần nguyên âm được cắt từ ranh giới trở về cuối với độ dài tươngđương với 12 Frame, các Frame chồng lấp 1/3 (khoảng 50 mẫu)
Trang 273.6 Xác định âm tiết
Trước hết cần xác định đoạn tín hiệu là tiếng nói:
Dữ liệu thu được không phải lúc nào cũng là tiếng nói, nhất là khi thu động
dữ liệu sẽ thường xuyên là khoảng lặng và nhiễu Vì hệ thống nhận dạng đượcthiết kế theo hình thức so khớp tìm ra mẫu giống nhất nên dù dữ liệu thu đượckhông phải là tiếng nói mà được đưa vào thì hệ thống vẫn gán đó là một trongcác tiếng đã học mẫu dẫn đến sai hoàn toàn Trong mọi tín hiệu, dù có tiếng nóihoặc không có tiếng nói, thì luôn luôn có âm nền Khác biệt chủ yếu khi có tiếngnói là âm thanh tiếng nói sẽ là âm thanh chính Ta có thể đưa ra phương phápsau:
1 Chia đều dãy tín hiệu số thành các Frame với kích thước từ 5-10ms
2 Sau đó kiểm tra tính chứa tiếng nói của các Frame bằng cách đếm số điểmzero hoặc tính năng lượng ngắn hạn của frame có vượt qua ngưỡng
3 Nếu tổng kích thước các Frame liên tiếp được xác định có tính chứa tiếngnói lớn hơn 150ms thì có thể xem là có chứa tiếng nói
Đề tài nhận dạng với phát âm đơn, do vậy việc xác định đoạn có tiếng nói nhưsau:
1 Chia đều dãy tín hiệu số thành các Frame với kích thước 100mẫu
2 Tính năng lượng ngắn hạn của các Frame
3 Xác định vị trí mà Frame có năng lưọng cao nhất
4 Từ vị trí đã xác định ở bước 3 sẽ lan ra 2 đầu khi mà Frame còn có năng lượng lớn hơn ngưỡng
5 Sau bước 4 ta xác định được điểm đầu x1 và điểm cuối x2 của
tiếng nói
Trang 28Đoạn âm tiết được lấy từ x1 về sau 22 Frame, chồng lấp 1/3 Frame.
4 Các đặc trưng
4.1 Đặc trưng LPC
Tín hiệu được phân thành các khung có độ dài N (tương ứng với khoảng thờigian từ 15ms đến 30ms) và độ chồng lắp M=N/3 Sau đó các khung tín hiệuđược cửa sổ hóa và đưa vào phân tích LPC
Việc phân khung và cửa sổ hóa được thực hiện bằng cách cho tín hiệu quahàm cửa sổ w:
1 , 0 ),
( ).
1 , 0 ),
2 cos(
46 0 54
( )
Trong đó: p,p 1 ,P, là các hệ số dự báo cần xác định cho khung tín hiệu.Việc biểu diễn gần đúng s(n) bởi ~ n s( ) gây ra lỗi dự báo: e(n) s(n) ~s(n)
Trang 29Tổng lỗi dự báo trong toàn bộ đoạn tín hiệu là:
1 0
2 ( )
N n
n e E
Gọi r(p) là hàm tự tương quan của tín hiệu tiếng nói tại thời điểm n dời đi pmẫu:
n
P p p n s n s p
r
1 0
, 0 ),
( ) ( )
(
Thì các hệ số i trong phương trình dự báo tuyến tính (1) là nghiệm của hệphương trình (2):
M M
Trong đó: Chỉ số M ký hiệu cho ma trận hoặc véc tơ,
RM là ma trận Toeplitz có các hệ số là các phần tử của hàm tựtương quan:
2 ( ) 1 (
) 3 ( )
1 ( )
2 (
) 2 ( )
0 ( )
1 (
) 1 ( )
1 ( )
0 (
r P
r P
r
P r r
r
P r r
r
P r r
Chỉ số T ký hiệu cho các ma trận hoặc véc tơ trực giao
Để giải hệ phương trình (2), người ta dùng thuật toán Levinson-Durbin nhưsau:
Bước 1: Khởi tạo
) 0 (
) 1 (
) 0 (
Trang 30E(0) = r(0) Bước 2: Lặp
) 1 ( )
E l
2) Tính các tham số LPC ở bước thứ l:
) (
1 (
E l l
Quay lại bước (1) với l được thay bởi l+1 nếu l<P
Sau khi kết thúc thuật toán ta thay a i) - p p ,P
p , với i là chỉ số ký hiệukhung thứ i
Các đặc trưng LPC của tiếng nói là các hệ số a i) p ,P
Trang 31) ln( 2
) ) )
k
i k m
i m
P k
i k m
i m
là hệ số dư năng lượng phổ bậc P (từ thuật toán
Levinson-Durbin), việc lấy Logàit giá trị năng lượng nhằm để nén các giá trị này vào một
miền giá trị hẹp hơn, Q=3P/2
Các hệ số Cepstral được đẩy cao lên dạng búp bằng cách nhân với hàm trọng
số w để làm giảm độ nhạy với nhiễu:
Q m w
Trích chu kỳ cơ bản dùng AMDF được xác định như sau
Nếu x(n) là tín hiệu tuần hoàn với chu kỳ T (mẫu) thì hàm hiệu biên độ trungbình
sẽ đạt cực tiểu nếu tín hiệu bị dời đi 1 đoạn đúng bằng T mẫu Nhận dạng giọngcủa người có tần số cơ bản từ 80Hz (tương ứng với n1=Fs/80) đến 200Hz (tươngứng n2=Fs/200, Fs là tần số lấy mẫu)
Trang 32Sẽ tính AMDF của tín hiệu với độ dời thay đổi từ n2 đến n1 Giả sử AMDF đạtcực tiểu ứng với độ dời P0 (mẫu) Đó chính là chu kỳ của tín hiệu (hoặc gần vớichu kỳ của tín hiệu nhất), và tần số cơ bản của tín hiệu là F0=Fs/P0 Giá trị nàychính là đặc trưng của tín hiệu về mặt thanh điệu.
Bài toán sẽ sử dụng các đặc trưng LPC, CEPSTRAL, F0, và 1 vài đặc trưng rút
ra từ các phép biến đổi toán học sau
5 Một số phép biến đổi toán học
5.1 Ý nghĩa các phép biến đổi toán học
Cùng một sự vật hiện tượng, một vấn đề, song có thể nhìn nhận nó ở các hệ toạ
độ khác nhau sẽ cho ra các kết quả là các tính chất nổi bật khác nhau Ý nghĩanày giải thích rõ tại sao trong các bài toán về xử lý âm thanh và hình ảnh tathường thử chuyển đổi sang các hệ toạ độ khác nhau, như từ không gian màuRGB sang hệ YCbCr…
Ở hệ toạ độ này, phép toán phức tạp, sang hệ toạ độ khác, nó có thể trởnên đơn giản Chính vì thể mà người ta tìm đủ mọi cách biến đổi
Thí dụ: Phép biến đổi Z làm cho công thức y(n) = x(n)*h(n) trở thànhphép nhân đơn giản Y(z) = X(z)*H(z)
Phải học cái triết lý đường thẳng không phải là đường nhanh nhất
Ví dụ trên: Tính trực tiếp y(n) thì rất khó, song nếu tính Y(z) và biển đổingược sang y(n) thì lại rất đơn giản
Trang 33Các công thức theo t không thể hiện được hết tính tuyến tính Triết lý củavấn đề là phân tích bài toán, hệ thống phức tạp thành tổ hợp tuyến tính cácbài toán đơn giản, hệ thống đơn giải.
5.2 Phép biến đổi Fourier
5.2.1 Khái niệm
Biến đổi Fourier là một biến đổi tích phân dùng để khai triển một hàm sốtheo các hàm số Sin cơ sở, có nghĩa là dưới dạng tổng hay một tích phân của cáchàm số Sin được nhân với các hằng số khác nhau( còn gọi biên độ)
5.2.2 Mục đích
Nhằm chuyển tín hiệu từ miền thời gian sang miền tần số ω, sẽ đơn giản và
dễ hiểu hơn về tính chất tấn số và tính tổ hợp tuyến tính của nó
Chẳng hạn: để biểu diễn hàm số y=aSin(x) trong miền thời gian ta cần viết:For x=-∞ to +∞
y=a*Sin(x)
Tuy nhiên nếu chuyển việc biểu diễn hàm này sang miền tấn số thì chỉ là 1vạch đơn giản hay cặp (biên độ, tần số) (a,f) hay (a, ω)
5.2.3 Biến đổi Fourier liên tục
Biến đổi này biểu diễn 1 hàm bình phương khả tích f(t) bất kỳ theo tổng củacác hàm e luỹ thừa phức với tần số góc ω và biên độ phức F(ω):
F( ) j t
Trang 345.2.4 Biến đổi Fourier rời rạc
Đôi khi còn được gọi là biến đổi Fourier hữu hạn, là 1 biến đổi cho các tínhiệu thời gian rời rạc Đầu vào của biến đổi này là 1 chuỗi hữu hạn các số thựchoặc số phức, làm biến đổi này là 1 công cụ lý tưởng để xử lý thông tin trên cácmáy tính
5.2.4.1 Biến đổi thuận: DFT
Dãy của N số phức x0, x1,…, xN-1 được biến đổi thành chuỗi số phức X0, X1,
…, XN-1 bời công thức sau:
X(k)=
1 0
) (
N n
0
/ 2
) (
N n
N kn j
e n
) (
N k
0
/ 2
) (
N k
N kn j
e k
5.2.5 Ưu, nhược điểm của phép biến đổi Fourier
Biến đổi Fourier (FT) là một phép biến đổi thuận nghịch, nó cho phép sựchuyển đổi thuận nghịch giữa thông tin gốc (miền không gian hoặc thời gian) vàtín hiệu được xử lý (được biến đổi) Tuy nhiên ở một thời điểm bất kỳ chỉ tồn tạimột miền thông tin đựơc thể hiện Nghĩa là, tín hiệu trong miền thời gian không
có sự xuất hiện thông tin về tần số và tín hiệu sau biến đổi Fourier không có sựxuất hiện thông tin về thời gian
FT cho biết thông tin tần số của tín hiệu, cho biết những tần số nào có trong tínhiệu, tuy nhiên nó không cho biết tần số đó xuất hiện khi nào trong tín hiệu Nếu
như tín hiệu là ổn định thì việc xác định các thành phần tần số xuất hiện khi nào
trong tín hiệu là không cần thiết Phép biến đổi FT cũng có thể được áp dụng cho
Trang 35tín hiệu không ổn định nếu như chúng ta chỉ quan tâm đến thành phần phổ nào
có trong tín hiệu mà không quan tâm đến nó xuất hiện khi nào trong tín hiệu.Tuy nhiên, nếu thông tin về thời gian xuất hiện của phổ trong tín hiệu là cần
thiết, thì phép biến đổi FT không có khả năng đáp ứng được yêu cầu này, đây
cũng là hạn chế của phép biến đổi này.
5.3 Phép biến đổi CoSine rời rạc
5.3.1 Biến đổi DCT thuận 1 chiều
Dãy của N số x0, x1,…, xN-1 được biến đổi thành chuỗi số X0, X1,…,
XN-1 bời công thức sau:
X(k)= N2 ck
1 0
) (
N n
1
0 ,
2 1
số DC và các hệ số sau được gọi là các hệ số AC ( “direct current” và
“alternating current” ) Chú ý là các hệ số này là số thực chẵn nếu dữ liệu đầuvào là tập các số nguyên Giống như vậy, các hệ số này có thể là chẵn dươnghoặc chẵn âm nếu đầu vào là tập những số không âm Tính toán đơn giảnnhưng chậm Để phục hồi lại dữ liệu ban đầu sử dụng biến đổi ngược IDCT
Trang 365.3.2 Biến đổi DCT ngược 1 chiều (IDCT)
) (
N k
1
0 ,
2 / 1
k k
*Chú ý:
Phần đặc biệt quan trọng của biến đổi DCT là ở chỗ nó thể hiện đượctương quan dữ liệu đầu vào và tập trung năng lượng của nó chỉ ở vài hệ số biếnđổi đầu tiên Nếu đầu vào là tập các giá trị tương quan thì phần lớn N hệ số biếnđổi DCT là bằng không hoặc nhỏ, và chỉ 1 vài hệ số lớn ( thông thường chỉ hệ sốđầu tiên) Điều này đặc biệt quan trọng trong việc nén ảnh, bởi thông qua lượng
tử hoá các hệ số DCT, phần lớn là bằng không, chỉ còn vài giá trị đầu là đượclưu lại
Ta áp dụng tính chất đặc biệt này của biến đổi DCT vào việc trích rút đặctrưng của các Frame dữ liệu âm thanh, bởi vì âm thanh chính là dữ liệu tươngquan nhất, nó là tuyến tính Do vậy mỗi một Frame qua biến đổi DCT ta sẽ lấy
hệ số DC đầu tiên là 1 hệ số đặc trưng trong nhận dạng
Ta sẽ minh họa sức mạnh của biến đổi DCT 1 chiều
* Xét dữ liệu đầu vào là tương quan
Chúng ta bắt đầu với tập 8 thành phần dữ liệu tương quan p=(12, 10, 8, 10, 12,
10, 8, 11), áp dụng DCT 1 chiều ta nhận được tập các hệ số DCT sau:
28.6375, 0.571202, 0.46194, 1.757, 3.18198, -1.72956, 0.191342, -0.308709
Chúng ta lượng tử các hệ số về 28.6, 0.6, 0.5, -1.8, 0.2, -0.3 và thực hiện biếnđổi ngược IDCT
12.0254, 10.0233, 7.96054, 9.93097, 12.0164, 9.99321, 7.94354, 10.9989 Chúng ta lượng tử các hệ số chẵn hơn về 28, 1, 1, 2, 3, -2, 0, 0 và thực hiện biếnđổi ngược IDCT
12.1883, 10.2315, 7.74931, 9.20863, 11.7876, 9.54549, 7.82865, 10.6557
Trang 37Cuối cùng chúng ta lượng tử về 28, 0, 0, 2, 3, -2, 0, 0 và vẫn biến đổi ngượcIDCT được
* Xét dữ liệu đầu vào không tương quan
Giả sử đầu vào là 8 hệ số không tương quan
-12, 24, -181, 209, 57.8, 3, -184, -250
Kết quả biến đổi DCT
-117.803, 166.823, -240.83, 126.887, 121.198, 9.02198, -109.496, -185.206Khi lượng tử hoá tới (-120, 170, -240, 125, 120, 9, -119, -185 ) và phục hồingược IDCT được
Trang 38Ta sẽ minh họa sự khác nhau về hiệu quả giữa DCT và DFT Chúng ta bắt đầuvới ví dụ đơn giản, với đầu vào là chuỗi của 8 số có tương quan cao:
8, 16, 24, 32, 40, 48, 56, 64
Áp dụng DCT cho dãy ta đựơc dãy
(100, -52, 0, -5, 0, -2, 0, 0.4), khi lượng tử tới (100, -52, 0, -5, 0, 0, 0, 0) và biếnđổi ngược lại, kết quả là (8, 15, 24, 32, 40, 48, 57, 63) là một chuỗi rất sát vớichuỗi đầu vào
Áp dụng DFT cho chuỗi đầu vào, ta được chuỗi hệ số
(36, 10, 10, 6, 6, 4, 4, 4) Khi lượng tử hoá tới (36, 10, 10, 6, 0, 0, 0, 0) và thựchiện biến đổi ngược lại được (24, 12, 20, 32, 40, 51, 59, 48) sai khác vớichuỗi đầu vào rất lớn
Minh họa qua đồ thị
Trang 39
Qua ví dụ này thấy được sự khác nhau về bản chất và ứng dụng thực hiện
cho 2 phương pháp biến đổi này
* Có 4 kiểu DCT là DCT-1 đến DCT-4 Phần lớn sử dụng DCT-2 vì nó
được đưa ra là của DCT
ở đây hệ số tỉ lệ Cx được định nghĩa bởi
Trang 40
*Nhận xét
Cả DCT và IDCT đều là biến đổi trực giao, tách biệt và thực Tính chấtphân tách ở đây nghĩa là biến đổi nhiều chiều của nó có thể phân tách thành cácbiến đổi một chiều Tính chất trực giao ở đây nghĩa là nếu các ma trận của DCT
và IDCT là không bất thường và thực thì biến đổi ngược của chúng có thể đạtđược bằng cách áp dụng toán tử hoán vị Cũng như biến đổi FT, DCT cũng coi
dữ liệu đầu vào là tín hiệu ổn định ( bất biến )
5.4 Biến đổi Wavelet Haar
5.4.1 Cơ sở toán học biến đổi WAVELET
a Biến đổi Wavelet liên tục
Biến đổi Wavelet liên tục (CWT) của một hàm f(t) được bắt đầu từ mộthàm Wavelet mẹ ψ(t) Hàm Wavelet mẹ ψ(t) có thể là bất kỳ một hàm số thựchoặc phức liên tục nào thoả mãn các tính chất sau:
+) Tích phân suy rộng trên toàn bộ trục t của ψ(t) là bằng 0 Tức là:
*) Điều kiện chấp nhận được trên được giải thích như sau:
i) Điều kiện 1 có nghĩa là việc đề nghị 1 hàm phải là dao động cả 2
phía của trục t
ii) Điều kiện 2 gợi ý rằng năng lượng của hàm là hữu hạn, những hàm
được đề nghị là có năng lượng tập trung trong một khoảng giá trị