CHƯƠNG 1: GIỚI THIỆU SƠ LƯỢC VỀ TÍN HIỆU TIẾNG NÓI 1.1 Mở đầu Tiếng nói, cũng như các âm thanh khác, đều là các sóng âm lan truyền trong một môi trường nhất định, và thường là không khí
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA
ĐỀ TÀI CÁN BỘ TRẺ (DO TRƯỜNG ĐẠI HỌC BÁCH KHOA QUẢN LÝ)
THỰC HIỆN THUẬT TOÁN PHÁT HIỆN
TIẾNG NÓI TRÊN KIT eZdsp5515
Mã số: T2011-02-CBT11
Chủ nhiệm đề tài: KS Nguyễn Hải Triều Anh
Đà Nẵng, 01/2012
Trang 2
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
BÁO CÁO TỔNG KẾT
ĐỀ TÀI CÁN BỘ TRẺ (DO TRƯỜNG ĐẠI HỌC BÁCH KHOA QUẢN LÝ)
THỰC HIỆN THUẬT TOÁN PHÁT HIỆN
TIẾNG NÓI TRÊN KIT eZdsp5515
Mã số: T2011-02-CBT11
Xác nhận của cơ quan chủ trì đề tài Chủ nhiệm đề tài
(ký, họ và tên, đóng dấu) (ký, họ và tên)
Đà Nẵng, 01/2012
Trang 3Danh sách thành viên tham gia nghiên cứu đề tài:
1 Nguyen Hai Trieu Anh
2 Nguyen Duy Hien
3 Nguyen Ba Tong
Trang 4Mục lục:
CHƯƠNG 1: GIỚI THIỆU SƠ LƯỢC VỀ TÍN HIỆU TIẾNG NÓI 9
1.1 Mở đầu 9
1.2 Phân loại âm 9
1.3 Mô hình phát âm đơn giản 10
1.4 Đặc điểm của tiếng nói 13
1.4.1 Băng thông 13
1.4.2 Tần số cơ bản 14
1.4.3 Các đỉnh trong phổ 14
1.4.4 Đường bao phổ công suất 14
1.5 Phân tích tiếng nói ngắn hạn 14
1.6 Kết luận 15
CHƯƠNG 2: KỸ THUẬT PHÁT HIỆN TIẾNG NÓI 16
2.1 Tổng quan 16
2.2 Giới thiệu về kĩ thuật VAD 16
2.3 Các giải pháp VAD tiêu chuẩn 17
2.3.1 VAD G.729 Annex B ITU-T 17
2.3.2 VAD ETSI ES 202 050 18
2.4 VAD sử dụng khoảng cách năng lượng của băng con 19
2.4.1 Sử dụng biến đổi DWT 19
2.4.2 Sử dụng biến đổi DFT 21
2.5 Kết luận 23
CHƯƠNG 3: THỰC HIỆN THUẬT TOÁN VAD FSDM-PF Ở THỜI GIAN THỰC TRÊN KIT ezDSP5515 24
3.1 Giới thiệu chương 24
3.2 Giới thiệu về kit ezDSP5515 24
3.2.1 Các thành phần chính 25
3.2.2 Sơ đồ khối 26
3.2.3 Bộ xử lí TMS320C5515 26
3.3 Số học số dấu chấm tĩnh 27
3.3.1 So sánh xử lí số sử dụng dấu chấm động và xử lí số dấu chấm tĩnh 27
3.3.2 Giới thiệu định dạng của số dấu chấm tĩnh 28
3.3.3 Các phép toán trên số dấu chấm tĩnh 29
3.4 Thực hiện thuật toán VAD FSDM-PF trên kit ezDsp5515 30
3.4.1 Sơ đồ khối phần cứng 30
3.4.2 Thực hiện phân khung tín hiệu bằng bộ đệm triple 30
3.4.4 Trích thuộc tính 31
3.4.5 Quyết định tiếng nói 32
3.4.6 Khối tính và cập nhật ngưỡng thích nghi 32
Trang 5Danh mục bảng biểu:
Hình 1.1 Hệ thống phát âm của con người 9
Hình 1.2 Mô hình hệ thống phát âm hữu thanh 10
Hình 1.3 Phổ âm „oh‟ và „ee‟ 11
Hình1.4a Phổ của tín hiệu từ dây thanh quản P T ( f) 11
Hình 1.4b Phổ của tín hiệu S ( f) và đường bao H v ( f) 12
Hình 1.5 Spectrogram của đoạn âm thanh “Rice university”, màu đỏ là biên độ cao, màu xanh là biên độ thấp 12
Hình 1.6 Mô hình phát âm chi tiết 13
Hình 1.7 Phân khung tín hiệu 15
Hình 2.1 Sơ đồ khối thực hiện VAD 16
Hình 2.2 Tín hiệu tiếng nói sạch và bị nhiễu 17
Hình 2.3 Sơ đồ khối VAD G.729B 18
Hình 2.4 Sơ đồ khối VAD ETSI-Nest 19
Hình 2.5 Các khung tín hiệu và DWT của mỗi khung tại các trường hợp 20
Hình 2.6 Sơ đồ khối VAD FSDM-PF 22
Hình 2.7 Tín hiệu âm thanh và 2 thuộc tính: WSDM và FSDM 23
Hình 3.1 Mặt trước của C5515 eZdsp Stick 24
Hình 3.2 Mặt sau của C5515 eZdsp Stick 25
Hình 3.3 Sơ đồ khối C5515 eZdsp Stick 26
Hình 3.4 Quan hệ vào ra của một hệ thống tuyến tính 27
Hình 3.5 So sánh xử lí số dùng số dấu chấm động và số dấu chấm tĩnh 28
Hình 3.6 Biểu diễn của số dấu chấm tĩnh 28
Hình 3.7 Cộng hai số dấu chấm tĩnh sẽ làm tăng số bit biểu diễn phần nguyên lên 1 bits 29
Hình 3.8 Nhân hai số dấu chấm tĩnh sẽ làm tăng số bits biểu diễn phần thập phân 29 Hình 3.9 Sơ đồ khối phần cứng 30
Hình 3.10 Đọc ghi dữ liệu từ bộ đệm xoay vào/ra triple 31
Hình 3.11 Sơ đồ khối của khối tính khoảng cách năng lượng 31
Hình 3.12 Đồ thị hành tansig 32
Hình 3.13 Sơ đồ khối quyết định tiếng nói 32
Trang 6Từ viết tắt:
VAD Voice activity detection
DSP Digital signal processing
WSDM Wavelet Subband Distance Measure
FSDM-PF Fourier Subband Distance Measure
based on Percentile Filter
Trang 7ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
THÔNG TIN KẾT QUẢ NGHIÊN CỨU
1 Thông tin chung:
Tên đề tài: THỰC HIỆN THUẬT TOÁN PHÁT HIỆN TIẾNG NÓI TRÊN KIT eZdsp5515
- Mã số: T2011-02-CBT11
- Chủ nhiệm: Nguyễn Hải Triều Anh
- Thành viên tham gia: Nguyễn Duy Hiển
Nguyễn Bá Tòng
- Cơ quan chủ trì: Trường Đại Học Bách Khoa – Đại Học Đà Nẵng
- Thời gian thực hiện: Từ tháng 4 năm 2011 đến tháng 10 năm 2011
2 Mục tiêu:
- Xây dựng phần mềm thực hiện phát hiện tiếng nói sử dụng số thực dấu chấm tĩnh trên
chip xử lí số C5515 ở thời gian thực
3 Tính mới và sáng tạo:
4 Tóm tắt kết quả nghiên cứu:
- Tìm hiểu vi xử lí TMS320C5515 và kit eZdsp Định dạng số thập phân Q15
- Viết phần mềm thực hiện thuật toán VAD trên kit eZdsp5515
- Khắc phục các nhược điểm Đưa ra hướng phát triển của đề tài
5 Tên sản phẩm: Chương trình VAD FSDM-PF sử dụng số thực dấu chấm tĩnh Q15
trên chip DSP C5515
6 Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp
dụng:
- Sản phẩm của đề tài là demo cho ứng dụng của xử lí tín hiệu số trong thực tiễn
- Cơ sở để thực hiện các thuật toán, thiết bị điều khiển bằng giọng nói
- Cơ hội cho các bạn sinh viên ứng dụng kiến thức đã học vào thực tiễn
Trang 8INFORMATION ON RESEARCH RESULTS
Coordinator: Nguyen Hai Trieu Anh
6 Effects, transfer alternatives of research results and applicability:
The application of this research is the demonstration for implementing DSP
in the realistic
Database for implementing voice-controlled algorithm and devices
Opportunities for students to apply the knowledge for real applications
Trang 9CHƯƠNG 1: GIỚI THIỆU SƠ LƯỢC VỀ TÍN HIỆU TIẾNG NÓI
1.1 Mở đầu
Tiếng nói, cũng như các âm thanh khác, đều là các sóng âm lan truyền trong một môi trường nhất định, và thường là không khí Các sóng âm này lan truyền đến màn nhĩ, làm cho màn nhĩ dao động Nếu các dao động này có tần số từ 16
Hz đến 20kHz thì chúng ta có thể cảm nhận được Các sóng âm có tần số nhỏ hơn 16 Hz được gọi là sóng hạ âm, trong khi các sóng âm có tần số lớn hơn 20kHz được gọi là sóng siêu âm, con người không thể nghe được các sóng này
1.2 Phân loại âm
Hình 1.1 Hệ thống phát âm của con người
Thông tin của lời nói được chứa trong tín hiệu tiếng nói, do đó muốn phân tích và xử lí tiếng nói chúng ta cần tìm hiểu về cơ chế tạo ra tiếng nói Khi ta nói, không khí đi qua dây thanh âm, sau đó qua thanh quản và miệng Tùy theo
âm tiết mà ta nói, tín hiệu tiếng nói có thể được phân thành một trong ba loại sau:
Âm hữu thanh: là âm phát ra thì có tiếng, ví dụ như ta nói “i”, “a”, “o” Các âm hữu thanh được tạo ra là do không khí qua thanh môn, làm các
Trang 10dây thanh âm dao động Ta có thể phân biệt bằng cách đặt tay lên cổ họng, nếu âm đó là âm hữu thanh thì ta sẽ cảm nhận được sự rung động
Âm vô thanh: Là âm khi tạo ra tiếng thì hai dây thanh âm không dao động hoặc dao động ít, ví dụ “h”, “p”
không khí được giải phóng một cách đột ngột, ví dụ “ch”, “t”
1.3 Mô hình phát âm đơn giản
Khi nói, lồng ngực mở rộng và thu hẹp, không khí được đẩy từ phổi vào khí quản, đi qua thanh môn do các dây thanh tạo thành Luồng khí này được gọi là tín hiệu kích cho tuyến âm vì sau đó nó được đẩy qua tuyến âm và cuối cùng tán
xạ ở môi Tuyến âm có thể xem là hệ thống âm học với đầu vào là thanh môn và đầu ra là môi Tuyến âm có dạng thay đổi theo thời gian Người ta nhận thấy phương trình truyền sóng âm có thể được mô hình hóa một cách đơn giản bằng
hệ thống tuyến tính
Đặc tính của hệ thống phát âm phụ thuộc vào chúng ta nói nguyên âm hay phụ âm , trong trường hợp ta phát âm hữu thanh, hệ thống có dạng
Hình 1.2 Mô hình hệ thống phát âm hữu thanh
Khi con người phát âm hữu thanh, không khí từ phổi sẽ tạo áp lực lên 2 dây thanh âm (vocal cords) làm chúng dao động, dao động này có thể biểu diễn bằng một hàm tuần hoàn gọi là p T (t) (trong đó T là chu kì cơ bản của tiếng nói) Tần
số cơ bản của tiếng nói là
T
F0 1 (1.1) Xung p T (t) đi qua thanh quản sẽ bị biến đổi dạng sóng phụ thuộc vào vị trí của lưỡi, răng môi Tùy theo vị trí của lưỡi, răng và môi mà đáp ứng tần số của
âm thanh sẽ có các đỉnh cộng hưởng khác nhau như ví dụ trong hình 1.3:
Trang 11Hình 1.3 Phổ âm „oh‟ và „ee‟
Các đỉnh trên được gọi là các formants Ở ví dụ trên ta có thể thấy là formant
đầu tiên F1 của âm „oh‟ lớn hơn formant đầu tiên F1 của âm „ee‟, trong khi đó formant F2 của âm „ee‟ lớn hơn rất nhiều so với âm „oh‟ Như vậy, thanh quản
có nhiệm vụ định dạng phổ của tín hiệu tuần hoàn được tạo ra từ hai dây thanh
âm Nếu ta mô hình hóa thanh quản bằng một hệ thống tuyến tính, thì phương trình mô tả hệ thống phát âm khi tạo ra âm hữu thanh trong miền tần số là:
) ( ) ( ) (f P f H f
với H v ( f) là hàm truyền của thanh quản
Hình1.4a Phổ của tín hiệu từ dây thanh quản P T ( f)
Trang 12Hình 1.4b Phổ của tín hiệu S ( f) và đường bao H v ( f)
Khi con người nói thì chu kì của xung P T ( f), và hàm truyền H v ( f) không tĩnh mà thay đổi theo thời gian do đó phổ của tín hiệu tiếng nói cũng thay đổi theo thời gian Để quan sát và phân sự thay đổi đó người ta sử dụng spectrogram Spectrogram biểu diễn sự thay đổi của đáp ứng tần số của âm thanh so với thời gian Hình 1.5 biểu diễn histogram của câu nói “Rice university”:
Hình 1.5 Spectrogram của đoạn âm thanh “Rice university”, màu đỏ là biên độ cao, màu
xanh là biên độ thấp
Trang 13Khi ta nói âm vô thanh, thanh môn sẽ mở rộng và không giao động, do đó nguồn kích âm có thể được mô hình bằng nguồn nhiễu trắng Mô hình phát âm chi tiết được cho bởi hình 1.6:
Hình 1.6 Mô hình phát âm chi tiết
Mô hình này hoạt động như sau: nguồn kích thích cho âm hữu âm được mô hình bởi nguồn tạo chuỗi xung chữ nhật với phổ là P(f) Nguồn kích thích cho
âm vô thanh được mô hình bởi nguồn nhiễu trắng N(f) Hai tín hiệu này có biên
độ qui định lần lượt bởi v và u, kết quả được cộng với nhau để trở thành phổ của tín hiệu kích thích X(f) X(f) được đi qua hệ thống H(f) (hàm truyền của thanh quản) Đặc tính phát ra âm thanh từ môi được mô hình bởi R(f), như vậy phổ tín hiệu S(f) được cho bởi:
)()
()(.)()
())
(.)(.()
1.4 Đặc điểm của tiếng nói
Người ta nhận thấy tiếng nói con người có những đặc trưng sau [1]:
Băng thông của tín hiệu là 4 kHz
Tín hiệu tuần hoàn với tần số cơ bản từ 80 Hz đến 350 Hz
Các đỉnh trong phổ tần số nằm tại
, , 2 , 1 ,
500
* ) 1 2
Đường bao phổ công suất tín hiệu giảm khi tần số tăng (-6dB/octave)
1.4.1 Băng thông
Trang 14Thực tế, băng thông của tín hiệu tiếng nói lớn hơn rất nhiều so với 4kHz như nói ở trên Tuy nhiên người ta thấy rằng, giải tần số từ 0,3kHz đến 3,4 kHz chứa
đủ thông tin cần thiết để con người có thể hiểu được
1.4.2 Tần số cơ bản
Như mô tả ở phần 1.2, đối với âm hữa thanh thì tín hiệu âm thanh phát ra sẽ tuần hoàn do thanh quản được kích thích bởi tín hiệu tuần hoàn Đối với âm vô thanh, nguồn nhiễu được dùng để làm nguồn kích thích, do đó tính hiệu sẽ không có tuần số cơ bản
1.4.3 Các đỉnh trong phổ
Thanh quản của con người, độ dài khoảng 17cm, có tác dụng định dạng phổ tín hiệu Tùy theo đường kính của các đoạn trên thanh quản mà các formants sẽ thay đổi đặc biệt là F1 và F2
1.4.4 Đường bao phổ công suất
Người ta thấy rằng phổ công suất của tín hiệu tiếng nói khi đi qua dây thanh
âm sẽ bị suy hao -12dB/octave Âm thanh thoát ra từ môi có đặc điểm giống như
bộ lọc thông cao +6dB/octave Vì vậy, phổ công suất của tín hiệu tiến nói giảm 6dB/octave
-1.5 Phân tích tiếng nói ngắn hạn
Tiếng nói có đặc điểm là phổ thay đổi theo thời gian, do đó để phân tích, người ta thường tính các thông số đặc trưng của tiếng nói trong từng khoảng thời gian nhỏ khoảng 10ms Tín hiệu âm thanh được lấy mẫu và lượng tử hóa Tần số lấy mẫu thường là 8kHz và 16kHz, số bit lượng tử hóa là 16 bits Sau đó, tiếng nói được cắt thành các đoạn ngắn bằng nhau và chồng phủ lên nhau sử dụng cửa sổ Hamming, các cửa sổ này có độ dài N, ứng với thời gian từ 16ms đến 25ms Nhân cửa sổ w(k-m) với tín hiệu để tìm được các đoạn tín hiệu v m (k):
m k m k w k s k
v m
,0
1, ,
1,);
()
(ˆ)
Trang 15Hình 1.7 Phân khung tín hiệu
Trong đó m là thời điểm bắt đầu của việc phân khung tín hiệu Hệ số m được tăng lên theo từng bước 10ms so cho các khung chồng lấn lên nhau Phổ FFT của tín hiệu v m (k), V (n)2 có các đặc điểm sau:
o Vì v m (k) có giá trị thực nên phổ đối xứng V(n) V(n) (1.6)
o V (n) tuần hoàn với chu kì N
Do tính đối xứng và tuần hoàn mà chúng ta chỉ cần sử dụng các giá trị phổ từ
2 2
) 2 / (
) 1
1.6 Kết luận
Khi phân tích hoặc xử lí tiếng nói, người ta chia tín hiệu tiếng nói thành các
) 2 / (
) 1
năng lượng để xử lí, với N là chiều dài của cửa sổ dung để phân khung tín hiệu
Trang 16CHƯƠNG 2: KỸ THUẬT PHÁT HIỆN TIẾNG NÓI 2.1 Tổng quan
Ngày nay, kỹ thuật phát hiện tiếng nói (VAD) đã được ứng dụng rộng rãi trong các lĩnh vực của xử lý tiếng nói VAD thực hiện phân loại các thành phần
có tiếng nói (speech) và không có tiếng nói (non-speech) trong tín hiệu âm thanh nhằm giảm tốc độ bit truyền trong mã hóa tiếng nói, nhận dạng tiếng nói tự động hay nâng cao chất lượng tiếng nói, Ngoài ra, VAD còn ứng dụng trong dịch
vụ thông tin di động, truyền phát tiếng nói thời gian thực thông qua Internet, giảm nhiễu trong các thiết bị số trợ thính
Có nhiều phương pháp VAD khác nhau, tuy nhiên trong báo cáo này chi giới thiệu thuật toán VAD dựa trên thuộc tính năng lượng giữa các băng con
2.2 Giới thiệu về kĩ thuật VAD
Kỹ thuật phát hiện tiếng nói nhằm mục đích phát hiện những phần có tiếng nói con người trong tín hiệu âm thanh Nói cách khác, VAD dùng để phân loại phần có tiếng nói (speech) và phần không có tiếng nói (non-speech)
Các bước thực hiện VAD được mô tả như trong hình 2.1
Hình 2.1 Sơ đồ khối thực hiện VAD
Tín hiệu tiếng nói ban đầu sẽ được tiền xử lý và phân thành các khung (frame) sau đó thực hiện kỹ thuật VAD theo các bước:
Trích thuộc tính: việc trích thuộc tính được thực hiện trên từng khung của tín hiệu đã được phân khung Khối trích thuộc tính sử dụng các phương pháp nhằm tính toán, xác định các đặc tính mang đặc trưng cho phần speech và phần non-speech như: năng lượng, ước lượng tần số cơ bản (pitch), tỷ lệ qua điểm không, sai khác về phổ giữa tiếng nói và nhiễu, v.v
Quyết định: khối quyết định sử dụng vector thuộc tính của từng khung để so sánh với một mức ngưỡng hoặc làm đầu vào của một mô hình đã được huấn luyện Mức ngưỡng bao gồm mức ngưỡng cố định và mức ngưỡng thích nghi Một số mô hình thường được sử dụng đó là mô hình hỗn hợp Gaussian (GMM),
Trang 17mô hình Markov ẩn (HMM), mạng Neural (NN) Đầu ra của khối này là các nhãn nhị phân (1/0) hay còn gọi là vector VAD Nhãn 1 ứng với khung tín hiệu đang xét là khung speech và nhãn 0 ứng với khung non-speech
Ngoài ra, vector VAD còn được làm mịn để được vector VAD cuối cùng Trong thực tế, tín hiệu âm thanh bị tác động của các loại nhiễu môi trường khác nhau như: nhiễu nền, nhiễu xe hơi, nhiễu tiếng nói, nhiễu nhà máy, v.v
Do đó, tín hiệu đầu vào khối VAD bao gồm thành phần tín hiệu sạch và thành phần nhiễu không mong muốn
Hình 2.2 mô tả một dạng sóng tín hiệu tiếng nói sạch và ảnh hưởng của
nhiễu tại các SNR khác nhau (5dB và -5dB)
Hình 2.2 Tín hiệu tiếng nói sạch và bị nhiễu
Với tín hiệu đầu vào có tỷ số tín hiệu trên nhiễu (SNR) ở mức cao thì việc phân loại speech/non-speech đơn giản hơn so với thực hiện VAD có SNR của tín hiệu đầu vào thấp Đặc biệt với các loại nhiễu có dạng phổ tương tự tín hiệu sạch: nhiễu tiếng ồn của nhiều người nói trong một phòng họp, phòng ăn hay nhiễu nhạc thì cần có các thuật toán VAD phức tạp
2.3 Các giải pháp VAD tiêu chuẩn
2.3.1 VAD G.729 Annex B ITU-T
ITU-T đã đề xuất một bộ mã hóa tiếng nói chất lượng cao, độ trễ thấp và tốc
độ 8Kb/s gọi là G.729B Thuật toán này được thiết kế để đáp ứng nhu cầu trong
kỹ thuật mã hóa tiếng nói nâng cao cho truyền thông đa phương tiện và các dịch
vụ thông tin cá nhân Theo chuẩn này, để tiết kiệm băng thông, các đoạn không
có tiếng nói trong tín hiệu được loại ra khỏi tín hiệu truyền đi Việc phát hiện
Tín hiệu sạch
Fscore
SNR = 5dB
SNR = -5dB