Rút trích vector đặc trưng từ mẫu tín hiệu giọng nói

Một phần của tài liệu nghiên cứu sử dụng giọng nói trong xác thực và mã hóa dữ liệu trên thiết bị di động và xây dựng hệ thống demo trên android (Trang 26)

Giọng nói với những đặc trưng khác nhau, sau khi thông qua những bộ rút trích khác nhau sẽ cho ra vector có kích thước và miền trị khác nhau. Dưới đây là hai giải thuật để rút trích ra vector đặc trưng mà nhóm đã tìm hiểu được cùng với những kỹ thuật phải làm trước khi rút trích.

2.1.3.1 Phân khung (framing)

Trong nhiều kỹ thuật sử lý tín hiệu số (DSP techniques) thì việc xử lý được thực hiện trên một khoảng các giá trị của mẫu giọng nói hơn là cho từng giá trị riêng lẽ. Kỹ thuật cắt mẫu giọng nói thành những mẫu nhỏ hơn được gọi là quá trình phân khung. Điều này giúp giảm bớt chi phí tính toán cho chương trình. Độ rộng của khung và cách lấy khung cũng ảnh hưởng đến ảnh hưởng đến đầu ra của vector đặc trưng. Hình dưới mô tả cách phân chia các khung thành F1, F2, F3, F4…những khung này chồng lấp lên nhau một khoảng bằng 1/3 độ rộng của khung. Điều này làm cho kết quả phép rút trích đặc trưng có tương quan từ khung này sang khung kia.

Hình 2.1-6 Phân khung

2.1.3.2 Cửa sổ Hamming

Sau khi phân khung, từng khung giá trị sẽ được đem đi lấy cửa sổ. Kỹ thuật này là một phương pháp điều chỉnh dữ liệu để dữ liệu trở nên thích hợp hơn nhiều cho xử lý tín hiệu. Với một cửa sổ bình thường, những phần tử kề nhau sẽ có xu hướng thay đổi đột ngột từ nới có biên độ cao đến nơi có biên độ thấp. Việc lấy cửa sổ như vậy sẽ làm cho dữ liệu giống như tuần hoàn và không có sự gián đoạn đột ngột. Trong sử lý tín hiệu số, các cửa sổ thường được biểu diễn thông qua cửa sổ Hamming tổng quát:

{

( ) | | | |

Tùy vào các giá trị khác nhau của α mà ta có các cửa sổ khác nhau. Với α = 1, ta có cửa sổ chữ nhật, α = 0.5 ta có cửa sổ hanning và với α = 0.54 ta có cửa sổ hamming và cũng là loại cửa sổ được dùng nhiều trong sử lý tín hiệu số.

Hình 2.1-7 Cửa sổ Hamming

Hình 2.1-8 Cửa sổ Hanning

Hình 2.1-9 Cửa sổ chữ nhật

2.1.3.3 Giải thuật biến đổi Fourier nhanh (Fast Fourier Transform – FFT)

Giọng nói của con người có thể đặc trưng bằng miền tần số. Tuy nhiên, mẫu tín hiệu giọng nói thu được lại được đặc trưng theo miền thời gian. Do đó nếu

muốn rút trích được vector đặc trưng theo miền tần số cần phải có một phương pháp để chuyển mẫu tín hiệu giọng nói từ miền thời gian sang miền tần số, và phép biến đổi Fourier rời rạc (DFT) để làm được điều đó. DFT là phép biến đổi thuận nghịch từ miền thời gian sang miền tần số và ngược lại. Công thức:

Phép biến đổi thuận:

, k =0, 1, 2, …, N -1. Phép biến đổi nghịch:

, n =0, 1, 2, …, N -1.

Nếu biến đổi này nếu được tính toán theo định nghĩa thì đòi hỏi O(N2

) phép tính. Từ đó phương phép bến đổi Fourier nhanh (FFT) được sử dụng để tính toán DFT cho ra cùng kết quả nhưng chỉ mất O(NlogN) phép tính.

Kỹ thuật biến đổi này cũng phân chia mẫu dữ liệu giọng nói thành các khung rồi sau đó áp dụng cửa sổ hamming. Tương ứng với mỗi cửa sổ ta thu được đặc trưng miền tần số của nó. Nếu kết hợp tất cả window của giọng nói bằng cách lấy trung bình giữa chúng, ta có thể lấy được đặc trưng tần số trung bình cho mẫu từ người nói

2.1.3.4 Giải thuật mã dự đoán tuyến tính LPC (Linear Predictive Code)

Đây là một trong các phương pháp phân tích tín hiệu tiếng nói mạnh nhất và được sử dụng phổ biến. Điểm quan trọng của phương pháp này nằm ở khả năng có thể cung cấp các ước lượng chính xác của các tham số tín hiệu giọng nói và khả năng thực hiện tính toán tương đối nhanh. Ý tưởng cơ bản của phương pháp LPC là tại thời điểm n, mẫu tiếng nói S(n) có thể được xấp xỉ bởi một tổ hợp tuyến tính của p mẫu trước đó. Công thức:

Với ∑ là giá trị dự báo của S(n). Giả sử ak là hằng số trên khung dữ liệu được xem xét. Tập các hệ số ak sẽ là đặc trưng của tín hiệu

tiếng nói. Để tìm được tập các hệ số này người ta dùng phương pháp phân tích tự tương quan (autocorrelation) như sau:

 Mỗi khung sau khi lấy cửa sổ sẽ được đưa qua bước phân tích tự tương quan và cho ra (p + 1) hệ số tự tương quan. Công thức:

(adsbygoogle = window.adsbygoogle || []).push({});

Trong đó giá trị tự tương quan cao nhất, p, được gọi là cấp của phân tích LPC. Thông thường, ta sử dụng các giá trị p trong khoảng từ 8 đến 16.

 Chuyển mỗi khung gồm (p + 1) hệ số tự tương quan thành p hệ số LPC bằng thuật toán Levinson – Durbin. Lúc này, ta có thể dùng các hệ số LPC làm vector đặc trưng cho từng khung.

Một phần của tài liệu nghiên cứu sử dụng giọng nói trong xác thực và mã hóa dữ liệu trên thiết bị di động và xây dựng hệ thống demo trên android (Trang 26)