Tải bản đầy đủ (.pdf) (46 trang)

NHẬN DẠNG GIỌNG nói TIẾNG VIỆT để điều KHIỂN XE lăn THÔNG MINH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.04 MB, 46 trang )

Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

i

Lời cảm ơn
Để thực hiện đề tài: “Nhận dạng giọng nói Tiếng Việt để điều khiển xe lăn
thông minh”, bản thân tôi đã nhận đƣợc rất nhiều sự chỉ dẫn, giúp đỡ và động viên
quý báu từ gia đình, thầy cô và bạn bè.
Trƣớc hết, tôi xin bày tỏ lòng cảm ơn sâu sắc đối với Thầy Huỳnh Thái
Hoàng, giáo viên hƣớng dẫn đã động viên và tận tình hƣớng dẫn cho tôi về phƣơng
pháp nghiên cứu khoa học, đã cung cấp cho tôi rất nhiều kiến thức chuyên sâu để
thực hiện đề tài này.
Tôi cũng vô cùng cảm ơn các Thầy, Cô trong Khoa Điện – Điện tử, Trƣờng
Đại Học Bách Khoa Tp.HCM đã giảng dạy và hƣớng dẫn tôi trong suốt thời gian
học đại học. Nhờ các Thầy, Cô mà tôi có đủ kiến thức và tự tin để thực hiện đề tài
nghiên cứu này cũng nhƣ các đề tài nghiên cứu khác trong tƣơng lai.
Bên cạnh đó, sự hợp tác và giúp đỡ của bạn bè và các thế hệ đàn anh đi trƣớc
cũng giúp tôi rất nhiều trong việc thực hiện đề tài này.
Tôi cũng xin cảm ơn gia đình đã luôn chăm sóc, quan tâm và động viên trong
quá trình học tập.
Và cuối cùng, tôi xin gửi lời cảm ơn tới những ngƣời đã giúp đỡ tôi trong quá
trình thực hiện Đồ án II mà tôi thiếu sót chƣa nêu tên ở đây, sự giúp đỡ của họ dù ít
hay nhiều cũng đóng góp một phần vào kết quả thực hiện đề tài đồ án môn học này
để chuẩn bị thật tốt cho đề tài luận văn sắp tới.
Tp. Hồ Chí Minh, ngày 17 tháng 06 năm 2014
Nguyễn Vũ Nhật Hoàng
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

ii



Giới thiệu đề tài:
Tiếng nói là phƣơng tiện giao tiếp cơ bản nhất của con ngƣời, sử
dụng lời nói là một cách diễn đạt đơn giản và hiệu quả nhất. Đã từ lâu,
con ngƣời luôn mơ ƣớc đến các hệ thống máy điều khiển tự động có thể
giao tiếp bằng tiếng nói tự nhiên của con ngƣời. Ngày nay, cùng với sự
phát triển của khoa học kỹ thuật và công nghệ, đặc biệt trong lĩnh vực
tin học, các hệ thống máy tự động đã dần thay thế con ngƣời trong
nhiều công việc. Nhu cầu giao tiếp với thiết bị máy bằng tiếng nói là rất
cần thiết, đó là phƣơng thức giao tiếp văn minh và tự nhiên nhất.
Nhận dạng tiếng nói là một vấn đề không mới. Trên thế giới đã và
đang có có rất nhiều công trình nghiên cứu về vấn đề này với rất nhiều
phƣơng pháp nhận dạng tiếng nói khác nhau. Và những nghiên cứu đó
cũng có những thành công đáng kể. Nhƣng đối với nƣớc ta, nhận dạng
tiếng nói vẫn là một lĩnh vực khá mới mẻ. Chỉ có một số công trình của
các nhóm nhƣ: AILab, Vietvoice, Vspeech… nghiên cứu đến vấn đề
này. Đến nay tuy đã có nhiều nghiên cứu về nhận dạng tiếng nói tiếng
Việt và đã đạt đƣợc một số thành tựu, nhƣng nhìn chung vẫn chƣa đạt
đƣợc kết quả cần thiết để có thể tạo ra các sản phẩm mang tính ứng
dụng cao.
Với mong muốn có thể dùng tiếng nói Tiếng Việt để điều khiển xe
lăn thông minh, đồ án này nghiên cứu các phƣơng pháp nhận dạng tiếng
nói Tiếng Việt, từ đó xây dựng một chƣơng trình demo nhận dạng tiếng
nói tiếng Việt để phát triển lên luận văn “ Nhận dạng giọng nói Tiếng
Việt để điều khiển xe lăn thông minh”.


Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng


iii


Đồ án gồm 05 chƣơng:
Chương 1: Tổng quan về tình hình trong và ngoài nƣớc liên
quan đến việc nhận dạng tiếng nói, mục tiêu đề tài và giới
hạn của đề tài.
Chương 2: Trình bày về hệ nhận dạng tiếng nói.
Chương 3: Các khái niệm liên quan đến hệ nhận dạng tiếng
nói và hỗ trợ cho công cụ SPHINX.
Chương 4: Giới thiệu về công cụ hỗ trợ nhận dạng tiếng nói
CMUSphinx
Chương 5: Kết quả chƣơng trình demo nhận dạng tiếng nói
Tiếng Việt dùng trong điều khiển xe lăn thông minh sử dụng
công cụ Sphinx và kết luận.

Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

iv

MỤC LỤC
Lời cảm ơn i
Giới thiệu đề tài ii
Mục lục iv
Chƣơng 1: Tổng quan 1
1.1. Tổng quan về tình hình trong và ngoài nƣớc 2
1.2. Mục tiêu đạt đƣợc 4
1.3. Giới hạn đề tài 5
Chƣơng 2: Trình bày về hệ nhận dạng tiếng nói 6

2.1. Giới thiệu 7
2.2. Phân loại các hệ thống nhận dạng tiếng nói 8
2.3. Một số phƣơng pháp nhận dạng tiếng nói 8
Chƣơng 3: Các khái niệm liên quan đến hệ nhận dạng tiếng nói và hỗ trợ cho công
cụ Sphinx 10
3.1. Rút trích đặc trƣng tín hiệu tiếng nói 11
3.1.1. Khái niệm 11
3.1.2. Làm rõ tín hiệu 12
3.1.3. Tách từ 12
3.1.4. Phân đoạn thành các khung 13
3.1.5. Lấy cửa sổ khung tín hiệu 14
3.2. Rút trích đặc trƣng bằng phƣơng pháp MFCC 15
3.2.1. Biến đổi FFT 17
3.2.2. Lọc qua bộ lọc Mel- Scale 18
3.2.3. Logarit giá trị năng lƣợng 21
3.2.4. Biến đổi cosin rời rạc 21
Chƣơng 4: Giới thiệu về công cụ hỗ trợ nhận dạng tiếng nói CMU SPHINX 23
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

v

4.1. Giới thiệu CMU Sphinx 24
4.2. Các đặc điểm của CMU Sphinx 24
4.3. Kiến trúc Sphinx 4 25
4.3.1. Bộ ngoại vi – FrontEnd 27
4.3.2. Bộ ngôn ngữ - Linguist 28
4.3.3. Bộ giải mã – Decoder 31
Chƣơng 5: Xây dựng chƣơng trình demo nhận dạng giọng nói tiếng Việt điều
khiển xe lăn 33

5.1. Cài đặt Sphinx 34
5.1.1. Chuẩn bị hệ điều hành 34
5.1.2. Chuẩn bị các gói cài đặt Sphinx 34
5.2. Cài đặt và huấn luyện 35
5.2.1. Xây dựng mô hình ngôn ngữ 36
5.2.2. Xây dựng mô hình ngữ âm 37
5.2.3. Xây dựng từ điển 37
5.3. Kết quả thử nghiệm 38
Chƣơng 5: Kết luận 39
6.1. Kết quả đạt đƣợc 40
6.2. Những hạn chế 40
6.3. Hƣớng nghiên cứu và phát triển 41



Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

1












1
TỔNG QUAN
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

2

1.1. Tổng quan về tình hình trong và ngoài nước:
Vấn đề nghiên cứu các phƣơng pháp nhận dạng tiếng nói đã và đang
thu hút rất nhiều sự đầu tƣ và nghiên cứu của các nhà khoa học trên khắp thế
giới. Ý tƣởng về xây dựng các hệ thống nhận dạng tiếng nói đã có từ những
năm 50 của thế kỷ 20 và đến nay đã đạt đƣợc nhiều kết quả đáng kể.
Trên thế giới đã có rất nhiều hệ thống nhận dạng tiếng nói tiếng Anh đã
và đang đƣợc ứng dụng rất hiệu quả nhƣ: Via Voice của IBM, Spoken
Toolkit của CSLU (Central of Spoken Laguage Under-standing), Speech
Recognition Engine của Microsoft, Hidden Markov Model toolkit của đại
học Cambridge, CMU Sphinx của đại học Carnegie Mellon,… ngoài ra, một
số hệ thống nhận dạng tiến nói tiếng Pháp, Đức, Trung Quốc,… cũng khá
phát triển.
Đối với nƣớc ta, nhận dạng tiếng nói vẫn là một lĩnh vực khá mới mẻ.
Đến nay tuy đã có nhiều nghiên cứu về nhận dạng tiếng nói tiếng Việt và đã
đạt đƣợc một số thành tựu, nhƣng nhìn chung vẫn chƣa đạt đƣợc kết quả cần
thiết để có thể tạo ra các sản phẩm mang tính ứng dụng cao. Có thể kể đến
các công trình sau:
AILab: Đây là công trình đƣợc phòng thí nghiệm Trí tuệ Nhân tạo -
AILab thuộc Đại học Khoa học Tự nhiên tạo ra dựa trên các công nghệ tiên
tiến nhất về nhận dạng và tổng hợp tiếng nói để đáp ứng nhu cầu của ngƣời
dùng. Dựa trên công nghệ xử lí tiếng nói tiếng Việt, AILab đã xây dựng phần
mềm iSago chuyên hỗ trợ tìm kiếm thông tin qua tiếng nói. Thông qua ứng
dụng phần mềm ngƣời sử dụng có khả năng hỗ trợ giao tiếp với điện thoại di

động trực tiếp bằng lời nói. Từ đó ngƣời sử dụng tìm kiếm thông tin nhà hàng,
quán Bar, Café trên địa bàn TP. HCM. Khi ngƣời dùng đặt câu hỏi bằng tiếng
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

3

nói, iSago sẽ truyền nội dung truy vấn này về server để xử lý và gửi lại kết
quả tìm kiếm, dạng một danh sách: tên nhà hàng, địa chỉ.
Vietvoice: Đây là phần mềm của một ngƣời dân Việt Nam ngụ tại
Canada. Phần mềm có khả năng nói tiếng Việt từ các tập tin. Để chạy đƣợc
chƣơng trình, cần cài đặt Microsoft Visual C++ 2005 Redistributable
Package (x86). Đối với ngƣời khiếm thị, phần mềm này cho phép sử dụng
cách gõ tắt (nhấn nút Ctrl và một chữ) để chọn lựa một trong các tính năng
hiển thị trên màn hình. Ngƣời dùng có thể cập nhật từ điển các chữ viết tắt
và các từ ngữ tiếng nƣớc ngoài.
Vspeech: Đây là một phần mềm điều khiển máy tính bằng giọng nói do
một nhóm sinh viên Đại học Bách Khoa TP. HCM viết. Phần mềm sử dụng
thƣ viện Microsoft Speech SDK để nhận dạng tiếng Anh nhƣng đƣợc chuyển
thành tiếng Việt. Nhóm đã khá thành công với ý tƣởng này, do sử dụng lại
thƣ viện nhận dạng engine nên thời gian thiết kế rút ngắn lại mà hiệu quả
nhận dạng khá tốt. Phần mềm Vspeech có các lệnh gọi hệ thống đơn giản
nhƣ gọi thƣ mục My Computer, nút Start,… Phiên bản mới nhất có tƣơng
tác với MS Word 2003, lƣớt web với trình duyệt Internet Explorer. Không
có các chức năng tùy chỉnh lệnh và gọi tắt các ứng dụng. Phần mềm chạy
trên nền Windows XP, microphone và card âm thanh sử dụng tiêu chuẩn
thông thƣờng.
Tuy nhiên việc ứng dụng nhận dạng giọng nói vào điều khiển máy tính
còn nhiều hạn chế. Ở Việt Nam thì hầu nhƣ chỉ mới có bộ phần mềm
Vspeech của nhóm sinh viên trƣờng Đại học Bách Khoa TP. HCM, các phần

mềm khác chỉ thử nghiệm trong phòng thí nghiệm, chƣa đƣợc sử dụng thực
tế vì chƣa đạt trên 100 từ. Phần mềm Vspeech đƣợc phát triển từ mã nguồn
mở Microsoft Speech SDK nhận dạng tiếng Anh, thông qua dữ liệu, phƣơng
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

4

thức trung gian, việc nhận dạng đƣợc chuyển trong Vspeech để nhận biết
tiếng Việt.

1.2. Mục tiêu đạt được:
Đồ án nghiên cứu những ý tƣởng cơ bản và các phƣơng pháp đƣợc sử
dụng trong nhận dạng tiếng nói. Đồng thời đồ án đã tìm hiểu về công cụ
nhận dạng tiếng nói SPHINX từ đó xây dựng một chƣơng trình demo nhận
dạng từ dùng để điều khiển.
Mục đích chi tiết:
 Tìm hiểu các khái niệm có liên quan đến hệ nhận dạng tiếng nói để
làm rõ hơn một số yếu tố quan trọng trong việc sử dụng công cụ hỗ
trợ SPHINX nhƣ: rút trích đặc trƣng bằng MFCC (Mel – Scale
Frequency Capstral Coefficient), mô hình Markov ẩn, mô hình âm
học, vị học áp dụng cho tiếng Việt.
 Tìm hiểu phƣơng pháp cài đặt công cụ hỗ trợ xây dựng hệ nhận dạng
tiếng nói trên hệ điều hành UBUNTU 12.04.
 Tìm hiểu xây dựng mô hình âm học, mô hình ngôn ngữ thích hợp
cho tiếng Việt.
 Xây dựng chƣơng trình demo mô phỏng, thực nghiệm giữa các mô
hình với nhau, nhận dạng khoảng 20 từ, 5 câu lệnh tiếng Việt để điều
khiển xe lăn thông minh.






Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

5

1.3. Giới hạn đề tài:
Đồ án chỉ giới hạn trong việc tìm hiểu về tiếng nói, các phƣơng pháp xử
lý tiếng nói, rút trích đặc trƣng tiếng nói; mô hình Markov ẩn, mô hình âm
học, âm vị áp dụng cho tiếng Việt; kiến trúc hệ thống nhận dạng tiếng nói
qua công cụ Sphinx. Vì thời gian hạn chế nên chƣơng trình demo chỉ dừng ở
mức nhận dạng đƣợc khoảng 10 câu lệnh cơ bản điều khiển xe lăn. Khi đọc
lệnh điều khiển, máy tính sẽ hiểu và xuất hiện dòng lệnh đó trên màn hình
của chƣơng trình.
Do thời gian có hạn nên demo chƣơng trình chỉ mới thực hiện nhận
dạng thành công với một, hai ngƣời dùng. Xác suất đúng thực tế xấp xỉ lớn
hơn 80%.
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

6







2
TRÌNH BÀY VỀ HỆ NHẬN DẠNG
TIẾNG NÓI
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

7

2.1. Giới thiệu:
Nhận dạng tiếng nói là một hệ thống tạo khả năng để máy tính nhận
biết ngữ nghĩa của lời nói. Về bản chất, đây là quá trình biến đổi tín hiệu âm
thanh thu đƣợc của ngƣời nói qua Micro thành một chuỗi các từ. Kết quả của
quá trình nhận dạng có thể đƣợc ứng dụng trong điều khiển thiết bị, nhập dữ
liệu, soạn thảo văn bản bằng lời nói, quay số điện thoại tự động hoặc đƣa tới
một quá trình xử lý ngôn ngữ ở mức cao hơn.
Tín hiệu tiếng nói đầu tiên đƣợc tiền xử lý và rút trích đặc trƣng. Kết
quả thu đƣợc sau quá trình này là tập hợp các đặc trƣng âm học (aucostic
features), đƣợc tạo dựng thành một hay nhiều vecto gọi là vecto đặc trƣng.
Để có thể thực hiện việc so sánh, trƣớc hết hệ thống phải đƣợc huấn
luyện và xây dựng các đặc trƣng, sau đó mới có thể dùng để so sánh với các
tham số đầu vào để nhận dạng.
Trong quá trình huấn luyện, hệ thống dùng các vecto đặc trƣng đƣợc
đƣa vào để ƣớc lƣợng, tính toán các tham số cho các mẫu. Một mẫu tham
khảo là bản mẫu dùng để so sánh và nhận dạng, các mẫu tham khảo này mô
phỏng cho một từ, một âm tiết, hoặc thậm chí một âm vị.
Trong quá trình nhận dạng, dãy các vecto đặc trƣng đƣợc đem so sánh
với các mẫu tham khảo. Sau đó hệ thống tính toán độ tƣơng đồng của dãy
vecto đặc trƣng và mẫu tham khảo. Việc tính toán độ tƣơng đồng đƣợc thực
hiện bằng cách áp dụng các thuật toán đã đƣợc chứng minh hiệu quả nhƣ
thuật toán Vitertbi ( trong mô hình Hidden Markov Model – HMM). Mẫu có

độ tƣơng đồng cao nhất đƣợc cho là kết quả nhận dạng.


Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

8

2.2. Phân loại các hệ thống nhận dạng tiếng nói:
Một hệ thống nhận dạng tiếng nói có thể là một trong hai dạng: nhận
dạng liên tục và nhận dạng từng từ. Nhận dạng liên tục tức là nhận dạng
tiếng nói đƣợc phát liên tục trong một chuỗi tín hiệu, chẳng hạn nhƣ một câu
nói, một mệnh lệnh hoặc một đoạn văn đƣợc đọc lên bởi ngƣời dùng. Các hệ
thống loại này rất phức tạp, nó phức tạp ở chỗ các từ đƣợc phát hiện liên tục
khó xử lý kịp, hoặc khó tách ra nếu nhƣ ngƣời nói liên tục không có khoảng
nghỉ. Kết quả là tách từ ảnh hƣởng rất lớn đến các bƣớc sau, cần xử lý thật
tốt trong quá trình này. Trái lại, đối với mô hình nhận dạng từng từ, mỗi từ
cần nhận dạng đƣợc phát âm một cách rời rạc, có các khoảng nghỉ trƣớc và
sau khi phát âm một từ. Mô hình này dĩ nhiên đơn giản hơn mô hình nhận
dạng liên tục, đồng thời cũng có những ứng dụng thực tiễn nhƣ trong các hệ
thống điều khiển bằng lời nói với độ chính xác khá cao, tuy nhiên khó áp
dụng rộng rãi với mô hình nói trên.

2.3. Một số phương pháp nhận dạng tiếng nói:
Có 3 phƣơng pháp nhận dạng tiếng nói đƣợc sử dụng phổ biến:
 Phƣơng pháp âm học- ngữ âm học
 Phƣơng pháp nhận dạng mẫu
 Phƣơng pháp ứng dụng trí tuệ nhân tạo
Đồ án này sử dụng công cụ SPHINX để nhận dạng tiếng nói nên
phƣơng pháp sử dụng ở đây là phƣơng pháp nhận dạng mẫu. Phƣơng pháp

này không cần xác định đặc tính âm học hay phân đoạn tiếng nói mà chỉ sử
dụng trực tiếp các mẫu tín hiệu tiếng nói trong quá trình nhận dạng. Các hệ
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

9

thống nhận dạng tiếng nói theo phƣơng pháp này đƣợc phát triển theo hai
bƣớc cụ thể:
Bƣớc 1: Sử dụng tập mẫu tiếng nói (cơ sở dữ liệu mẫu tiếng nói) để
đào tạo các mẫu tiếng nói) để đào tạo các mẫu tiếng nói đặc trƣng ( mẫu
tham chiếu) hoặc các tham số hệ thống.
Bƣớc 2: Đối sánh mẫu tiếng nói từ ngoài với các mẫu đặc trƣng để ra
quyết định. Trong phƣơng pháp này, nếu cơ sở dữ liệu tiếng nói cho đào
tạo có đủ các phiên bản mẫu cần nhận dạng thì quá trình đào tạo có thể
xác định chính xác các đặc tính âm học của mẫu ( các mẫu có thể là âm
vị, cụm từ …). Hiện nay, một số kỹ thuật nhận dạng mẫu đƣợc áp dụng
thành công trong nhận dạng tiếng nói là lƣợng tử hóa vector, so sánh
thời gian động(DTW), mô hình Markov ẩn (HMM) và mạng nơron
nhân tạo (ANN).
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

10





3

CÁC KHÁI NIỆM LIÊN QUAN ĐẾN
HỆ NHẬN DẠNG TIẾNG NÓI VÀ
HỖ TRỢ CHO CÔNG CỤ SPHINX
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

11

3.1. Rút trích đặc trưng tín hiệu tiếng nói:
3.1.1. Khái niệm:
Rút trích đặc trƣng của tiếng nói là một trong những khâu quan trọng
trong quá trình nhận dạng tiếng nói. Dữ liệu tiếng nói thông thƣờng dƣới dạng
sóng âm đã lƣu trữ trong máy tính là loại dữ liệu khó xử lý, học mẫu huấn
luyện và so sánh. Do đó việc trích rút đặc trƣng tiếng nói là cần thiết. Kết quả
của quá trình trích rút đặc trƣng là một hoặc nhiều vector đặc trƣng. Các
vector này chứa tham số mang giá trị quan trọng của tín hiệu tiếng nói, làm
giảm đi rất nhiều số lƣợng tính toán cần thiết, làm rõ ràng hơn sự khác biệt
giữa hai tín hiệu tiếng nói.
Hình sau minh họa cho quá trình rút trích đặc trƣng:

Hình 3.1. Qúa trình rút trích vector đặc trƣng
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

12

3.1.2. Làm rõ tín hiệu (pre – emphasis- tiền khuếch đại)
Theo các nghiên cứu về âm học thì giọng nói có sự suy giảm
20dB/decade khi lên tần số cao do đặc điểm sinh lý của hệ thống phát âm con
ngƣời. Để khắc phục sự suy giảm này, chúng ta phải tăng cƣờng độ tín hiệu

lên một giá trị gần 20dB/decade. Bên cạnh đó, hệ thống thính giác con ngƣời
có xu hƣớng nhạy cảm hơn với cùng tần số cao. Dựa vào những đặc điểm
trên, ta sẽ dùng bộ lọc thông cao để tiền xử lý các tín hiệu thu đƣợc nhằm làm
rõ vùng tín hiệu mà tai ngƣời có thể nghe đƣợc. Bộ lọc áp dụng công thức
sau:
1
( ) 1
pre pre
H z a z



Trong đó, a
pre
là hệ số nhấn mạnh, thƣờng có giá trị 0.9700002861.
Bộ lọc này có chức năng tăng cƣờng tín hiệu tại tần số cao (trên 1 KHz).
Tín hiệu tiếng nói đã đƣợc số hóa là s(n), đƣợc đƣa qua một hệ số bậc
thấp, để làm phẳng tín hiệu về phổ và làm nó ít bị ảnh hƣởng bởi các hiệu ứng
có độ chính xác hữu hạn này trong quá trình xử lý tín hiệu. Hệ thống số đƣợc
dùng trong khối tiền khuếch đại vừa cố định, vừa thích nghi chậm.
Trong trƣờng hợp sử dụng bộ lọc áp theo công thức 2.1, đầu ra của dãy
tiền khuếch đại s

(n) liên quan đến đầu vào của dãy tín hiệu s(n) theo đẳng
thức sau:
s

(n) = s(n) – a
pre
s(n-1)

3.1.3. Tách từ
Tín hiệu tiếng nói s(n) sau khi đƣợc làm rõ tín hiệu sẽ đƣợc chuyển sang
để tách từ. Đây là công đoạn chia toàn bộ tín hiệu thu đƣợc thành những đoạn
tín hiệu trong đó chỉ chƣa nội dung của một từ.
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

13

Có nhiều phƣơng pháp để tách điểm đầu và điểm cuối của một từ ra khỏi
toàn bộ tín hiệu tiếng nói, trong đó phƣơng pháp dùng hàm năng lƣợng thời
gian ngắn là phƣơng pháp phổ biến nhất. Với một cửa sổ kết thúc tại mẫu thứ
m, hàm năng lƣợng thời gian ngắn E(m) đƣợc xác định:

1
2
[ ( )* ( )]
mN
m
nm
E x n w n m





3.1.4. Phân đoạn thành các khung (Framing)
Tín hiệu tiếng nói là một đại lƣợng biến thiên theo thời gian và không ổn
định nên không thể xử lý trực tiếp trên đó đƣợc. Do đó, tín hiệu phải đƣợc
chia ra thành các khung với chiều dài tƣơng đối nhỏ để lấy đƣợc các đoạn tín

hiệu tƣơng đối ổn định và xử lý trong các bộ lọc tiếp theo. Theo các nghiên
cứu đã có thì trong khoảng thời gian 10-20 ms, tín hiệu tiếng nói tƣơng đối ổn
định. Nên ở bƣớc này ngƣời ta thƣờng phân tín hiệu thành các khung với kích
thƣớc 20-30 ms. Nhƣng để tránh mất mát và làm gián đoạn tín hiệu ban đầu,
khi phân khung, ngƣời ta chồng lấp các khung lên nhau trong khoảng 10-
15ms.
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

14


Hình 3.1.4. Ví dụ phân đoạn khung tín hiệu

3.1.5. Lấy cửa sổ khung tín hiệu
Để làm rõ tín hiệu đồng thời tính gián đoạn tín hiệu ở đầu và cuối của
mỗi khung trong quá trình xử lý đặc trƣng, khi xử lý, các khung sẽ đƣợc nhân
với hàm cửa sổ, thƣờng là cửa sổ Hamming. Kết quả là việc này làm cho
khung tín hiệu mƣợt hơn, giúp cho các thành phần có tần số cao xuất hiện
trong phổ. Công thức hàm cửa sổ tổng quát:
2
(1 ).cos ,
2
()
0,
2
n
N
n
N

wn
N
n




  








(2.5)
Trong đó: w(n) gọi là hàm cửa sổ. Tùy vào giá trị của α mà có các cửa sổ
sau :
Với α=0.54, ta có cửa sổ Hamming (Hamming Windown) :
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

15

2
0.54 0.46.cos ,
2
()
0,

2
n
N
n
N
wn
N
n












(2.6)
Với định nghĩa cửa sổ w(n) theo công thức trên,
01nN  
, thì kết quả
chia cửa sổ cho khung x(n):
1
( ) ( )w( )
t
x n x n n


01nN  
(2.7)

Ý nghĩa của việc áp cửa sổ: là nhằm mục đích có đƣợc dữ liệu theo
miền tần số chuẩn đề đƣa vào phép biến đổi Fourier rời rạc.
3.2. Rút trích đặc trưng bằng phương pháp MFCC:
Trong lĩnh vực xử lý và nhận dạng tiếng nói, việc tiền xử lý các tín hiệu
thu đƣợc và rút trích đặc trƣng là một kỹ thuật thiết yếu mà bất cứ hệ thống
nhận dạng nào cũng bắt buộc phải có. Trích rút đặc trƣng có vai trò quan
trọng quyết định hiệu suất của quá trình nhận dạng mẫu (cả trong quá trình
nhận dạng và trong quá trình huấn luyện). Công việc của bƣớc này là phân
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

16

tích phổ spectral nhằm mục đích xác định các thông tin quan trọng, đặc trƣng
của tiếng nói, cắt giảm bớt các yếu tố không cần thiết trong quá trình nhận
dạng để làm giảm khối lƣợng dữ liệu cần xử lý.
Mel Scale Frequency Cepstral Coefficients (MFCC) là một phƣơng pháp
rút trích đặc trƣng sử dụng dãy bộ lọc Davis và Mermelstein đƣa ra vào năm
1980 khi họ kết hợp các bộ lọc cách khoảng trống không đều với phép biến
đổi Cosine rời rạc (Discrete Cosin Transform) thành một thuật toán hoàn
chỉnh ứng dụng trong lĩnh vực nhận dạng tiếng nói liên tục. Đồng thời định
nghĩa khái niệm hệ số Cepstral và thang đo tần số Mel (Mel Scale).

Hình 3.1.6 Tổng quát phƣơng pháp rút trích đặc trƣng MFCC
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng


17

Tóm tắt quá trình rút trích đặc trƣng theo MFCC sẽ nhƣ sau: Ban đầu tín
hiệu sau khi qua tiền xử lý sẽ đƣợc chia thành các Frame có khoảng thời gian
ngắn. Từ mỗi frame đó sau khi áp dụng các bƣớc chuyển đổi và lọc sẽ ra đƣợc
một vecto tƣơng ứng. Và xong quá trình này, ta sẽ có đặc trƣng của dãy tín
hiệu input là một dãy vecto đặc trƣng output ra.
3.2.1 Biến đổi FFT (Fast Fourier Transform)
Biến đổi FFT thực chất là một biến đổi DFT (Discrete Fourier
Transform) nhƣng đƣợc tối ƣu bằng các thuật toán nhanh và gọn hơn đề dáp
ứng các yêu cầu xử lý theo thời gian thực trong các lĩnh vực nhƣ xử lý âm
thanh, hình ảnh,
Fast Fourier là một phép biến đổi thuận nghịch có đặc điểm bảo toàn tính
tuyến tính bất biến, tuần hoàn và tính trễ. Dùng để biến đổi tín hiệu tƣơng tự
sang miền tần số, nó sẽ gồm các công thức sau:
Công thức phép biến đổi thuận (dùng để phân tích tín hiệu):
1
2/
0
( ) ( )
N
j kn N
n
X k x n e







k = 0, 1, 2,…., N-1 (2.8)
Công thức phép biến đổi nghịch (dùng để tổng hợp lại tín hiệu):
1
2/
0
x(n) X(k)
N
j kn N
k
e





n = 0, 1, 2,…, N-1 (2.9)
Trong đó:
( ) ( ) b(n) 1x n a n  

Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

18

Kết quả chúng ta có đƣợc khi thực hiện FFT là dãy tín hiệu X
t
(k) để đƣa
và bộ lọc Mel – Scale.
3.2.2. Lọc qua bộ lọc Mel – Scale
Trong lĩnh vực nghiên cứu về nhận dạng tiếng nói, đòi hỏi chúng ta phải

hiểu và mô phỏng chính xác khả năng cảm thụ tần số âm thanh của tai ngƣời.
Chính vì thế các nhà nghiên cứu đã xây dựng một thang tần số - hay gọi là
thang tần số Mel (Mel Scale) dựa trên cơ sở thực nghiệm nhiều lần khả năng
cảm nhận âm thanh của con ngƣời. Thang tần số Mel đƣợc định nghĩa trên tần
số thực theo công thức:
10
2595log 1
700
f
m




(2.10)
Trong đó: m là tần số trong thang đo Mel, đơn vị là Mel
f là tần số thực, đơn vị là Hz.
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

19


Hình 3.1.6.b. Biểu đồ thang tần số Mel theo tần số thực
Theo biểu đồ trên thì trong khoảng tần số thấp hơn 1kHz thì đồ thị trên
gần nhƣ là tuyến tính, nghĩa là trong khoảng tần số dƣới 1kHz, tần số Mel và
tần số thực. Trong khoảng tần số trên 1kHz thì mối quan hệ này là quan hệ
Logarit.
Dựa vào các thực nghiệm trên tai ngƣời, ngƣời ta đã xác định đƣợc các
tần số thực mà tai ngƣời có thể nghe đƣợc và chứa đựng nhiều thông tin. Sau

đó chuyển các tần số này sang tần số Mel và xây dựng thang đo nhƣ sau:
Đồ án II: “ Nhận dạng giọng nói Tiếng Việt điều khiển xe lăn thông minh”
GVHD: TS. Huỳnh Thái Hoàng

20


Hình 3.1.6.b1. Băng lọc tần số Mel
Ta dùng thang đo này để áp dụng vào dãy sóng tín hiệu thu đƣợc sau khi
thực hiện FFT

Hình 3.1.6.b2. Đƣa tín hiệu vào băng lọc tần số Mel
Kết quả của bƣớc này là chúng ta sẽ có đƣợc tập hợp các tần số Y
t
(m) là
giao điểm của sóng tần số với thang tần số Mel từ dãy tín hiệu X
t
(k)

×