intTypePromotion=1

TIỂU LUẬN MÔN XỬ LÝ TÍN HIỆU NÂNG CAO..“NGHIÊN CỨU MÔ HÌNH MÃ HÓA TIẾNG NÓI MELP”

Chia sẻ: Nguyen Xuan Thanh | Ngày: | Loại File: DOC | Số trang:23

0
69
lượt xem
22
download

TIỂU LUẬN MÔN XỬ LÝ TÍN HIỆU NÂNG CAO..“NGHIÊN CỨU MÔ HÌNH MÃ HÓA TIẾNG NÓI MELP”

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong thông tin vô tuyến điện băng hẹp HF, VHF nói chung và thông tin vô tuyến điện quân sự nói riêng thì việc tiết kiệm băng thông, cải thiện chất lượng tín hiệu khi truyền là vấn đề rất quan trọng. Có rất nhiều thuật toán để xử lý số tín hiệu tiêngs nói khác nhau để giải quyết vấn đề này như là LPC, CVSD, Melp (Mixed-Excitation Linear Predictive) . Đối với thông tin vô tuyến điện quân sự ngoài việc tiết kiệm băng thông kênh truyền còn có nhiệm vụ quan trọng nữa đó là chống tác chiến...

Chủ đề:
Lưu

Nội dung Text: TIỂU LUẬN MÔN XỬ LÝ TÍN HIỆU NÂNG CAO..“NGHIÊN CỨU MÔ HÌNH MÃ HÓA TIẾNG NÓI MELP”

  1. HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Khoa Đào tạo quốc tế và Sau đại học ------------o0o----------- TIỂU LUẬN MÔN XỬ LÝ TÍN HIỆU NÂNG CAO “NGHIÊN CỨU MÔ HÌNH MÃ HÓA TIẾNG NÓI MELP” Giáo viên hướng dẫn: TS. Nguyễn Ngọc Minh Nhóm thực hiện: Hà Nội, tháng 5 năm 2013
  2. Nghiên cứu mô hình mã hóa tiếng nói MELP MỤC LỤC MỤC LỤC.................................................................................................... 1 LỜI NÓI ĐẦU.............................................................................................. 2 I. Khái quát chung....................................................................................... 3 II. Thủ tuc mã hoa Melp.............................................................................. 5 ̣ ́ III. Bộ giải mã............................................................................................ 13 IV. Ứng dung mã Melp trong may VHF nhay tân.....................................21 ̣ ́ ̉ ̀ DANH MỤC TÀI LIỆU THAM KHẢO........................................................22 1
  3. Nghiên cứu mô hình mã hóa tiếng nói MELP LỜI NÓI ĐẦU Trong thông tin vô tuyên điên băng hep HF, VHF noi chung và thông tin ́ ̣ ̣ ́ vô tuyên điên quân sự noi riêng thì viêc tiêt kiêm băng thông, cai thiên chât ́ ̣ ́ ̣ ́ ̣ ̉ ̣ ́ lượng tin hiêu khi truyên là vân đề rât quan trong. Có rât nhiêu thuât toan để xử ́ ̣ ̀ ́ ́ ̣ ́ ̀ ̣ ́ lý số tin hiêu tiêngs noi khac nhau để giai quyêt vân đề nay nh ư là LPC, CVSD, ́ ̣ ́ ́ ̉ ́ ́ ̀ Melp (Mixed-Excitation Linear Predictive) . Đôi với thông tin vô tuyên điên quân sự ngoai viêc tiêt kiêm băng thông ́ ́ ̣ ̀ ̣ ́ ̣ kênh truyên con có nhiêm vụ quan trong nữa đó là chông tac chiên điên tử cua ̀ ̀ ̣ ̣ ́ ́ ́ ̣ ̉ kẻ thu, nên viêc yêu câu phai tich hợp rât nhiêu dich vụ trên môt kênh truyên HF ̀ ̣ ̀ ̉ ́ ́ ̀ ̣ ̣ ̀ và VHF. Điêu nay chỉ được giai quyêt khi ta nen dữ liêu số xuông môt tôc độ ̀ ̀ ̉ ́ ́ ̣ ́ ̣ ́ rât thâp. Vì vây thuât toan Melp là đap ứng được cac yêu câu trên. ́ ́ ̣ ̣ ́ ́ ́ ̀ Mã dự đoán tuyến tính kết hợp với bộ kích thích (MELP) là m ột mã hóa tiếng nói chuẩn của Bộ Quốc Phòng và Chính Phủ Mỹ, được ứng dụng ch ủ yếu trong các ứng dụng quân sự và thông tin vệ tinh, âm thanh bảo mật và các thiết bị vô tuyến bảo mật. Được phát minh năm 1995 do Alan McCree (làm luận văn tốt nghiệp về xử lý tín hiệu và xử lý ảnh). Sau đó đ ược hãng Texas Instruments đưa vào sản phẩm thương mại (chíp DSP kèm ph ần m ềm MELP với tốc độ 2400bps). Năm 1997 đưa vào thành chuẩn quân s ự Mỹ (MIL-STD- 3005) và đến năm 2001 được đưa vào chuẩn NATO (STANAG 4591). Ngày nay chuẩn mã thoại MELP gồm 3 tốc độ (2400bps, 1200bps và 600bps). 2
  4. Nghiên cứu mô hình mã hóa tiếng nói MELP I. Khái quát chung Theo chuẩn MIL-STD-3005, mã MELP dựa trên mô hình tham số mã dự đoán tuyến tính (LPC - Linear Prediction Coding chủ yêu là LPC10) và có cải tiến, bổ xung ́ thêm năm đặc trưng nữa để khắc phục các nhược điểm của mã LPC; đó là Bộ trộn kích thích, chuỗi xung ngẫu nhiên, bộ lọc phổ thích nghi tăng cường, trải phổ xung và mô hình năng lượng Fourier, Một khung dữ liệu MELP được tạo thành từ đoạn dữ liệu âm thanh trong khoảng thời gian 22.5ms, trong đó gồm 180 mẫu với tốc độ lấy mẫu là 8,000 mẫu/giây. Sau khi qua quá trình phân tích, tính toán ra các đ ặc tr ưng, đoạn dữ liệu này sẽ được mã hóa bằng 54 bit rồi truyền đi, vậy tốc đ ộ dữ liệu (54 bit/22,5ms tương đương 2400 bit/ 1giây). Các yêu cầu về đặc tính tương tự và các tham số mã hóa cụ thể như sau: Yêu cầu về tín hiệu tương tự: Băng thông tín hiệu tương tự từ 100Hz đ ến 3800Hz; Bộ biến đổi A/D lớn nhất là 16 bit (tức là có giá trị sau biến đổi nằm trong khoảng -32768 đến 32767); Độ lợi xử lý mã phải đồng đều trên cả băng thông đ ể đảm bảo mức của tín hiệu tiếng nói đầu ra phù hợp với mức của tín hiệu ti ếng nói đầu vào. Yêu cầu các tham số mã hóa và lượng tử: Các tham số của mã MELP sau khi lượng tử hóa và được truyền đi bao gồm: chu kỳ pitch cuối cùng (P3); các giá tr ị âm thanh qua lọc băng thông (Vbpi, i = 1, 2, …, 5); giá trị 2 hệ số khuếch đại (G1, G2); các hệ số dự đoán tuyến tính (ai, i= 1, 2, …, 10); giá trị năng lượng Fourier và c ờ ngẫu nhiên. Phạm vi, giá trị cụ thể của các tham số được cho trong bảng 1. Bảng 1: Bảng cấp phát số bit dùng cho các tham số MELP Tên tham số Âm hữu thanh (bit) Âm vô thanh (bit) Hệ số LPC10 (LSF) 25 25 Năng lượng Fuorier 8 - Hệ số khuếch đại (G1,G2) 8 8 Chu kỳ Pitch, Chồng âm 7 7 3
  5. Nghiên cứu mô hình mã hóa tiếng nói MELP Bộ lọc âm (5 băng cố định) 4 - Cờ ngẫu nhiên 1 - Mã sửa lỗi (FEC) - 13 Bit đồng bộ 1 1 Tổng số bit/ khung 22,5ms 54 54 4
  6. Nghiên cứu mô hình mã hóa tiếng nói MELP II. Thủ tuc mã hoa Melp ̣ ́ 1. Mô hinh mã hoa Melp ̀ ́ I. Thủ tuc giai mã Melp ̣ ̉ Hình trên là mô hình hệ thống mã hóa MELP. Chức năng của từng bộ phận trong hệ thống lần lượt được trình bày ở phần tiếp theo. 2. Loc bỏ tân số thâp ̣ ̀ ́ Bước đầu tiên thực hiện mã hóa là lọc bỏ các tần số thấp, năng l ượng một chiều của dữ liệu tiếng nói đầu vào. Bước này được thực hiện với một bộ lọc thông cao Chebychev 4 bậc loại II, với tần số cắt tại 60Hz và hệ số nén ngoài dải thông là 30dB. Dữ liệu tiếng nói sau lọc được đưa vào bộ đệm. 5
  7. Nghiên cứu mô hình mã hóa tiếng nói MELP 3. Bộ đêm đâu vao mâu ̣ ̀ ̀ ̃ Bộ đệm chứa các mẫu mới nhất của tín hiệu tiếng nói đầu vào. Trong đó có môt mâu là mẫu mới nhất trong khung hiện tai. Bộ đệm được bổ xung thêm cac mẫu ̣ ̃ ̣ ́ trước và sau mâu nay để có các mẫu cần thiết cho quá trình giải mã. ̃ ̀ 4. Tinh toan phân nguyên độ cao tiêng noi (pitch) ́ ́ ̀ ́ ́ Để tinh độ cao tiêng noi, đâu tiên tin hiêu giong noi được loc với bộ loc thông ́ ́ ́ ̀ ́ ̣ ̣ ́ ̣ ̣ thâp Butterworth bâc 6 tân số căt 1kHz. Giá trị phân nguyên cua độ cao âm thanh P1 là ́ ̣ ̀ ́ ̀ ̉ giá trị cua τ, τ = 40, 41, …, 160, để cho ham tự tương quan chuân r(τ) cực đai. Ham ̉ ̀ ̉ ̣ ̀ nay được xac đinh bởi công thức sau: ̀ ́ ̣ (1) (2) Trong đó [τ/2 ] là giá trị nguyên lớn nhât không vượt quá τ/2. ́ ́ ̉ ̀ ́ ́ 5. Phân tich dai tân tiêng noi Phân nay cua bộ mã hoa sẽ xac đinh tiêng noi thuôc băng tân nao trong 5 băng ̀ ̀ ̉ ́ ́ ̣ ́ ́ ̣ ̀ ̀ tân và tinh cường độ tiêng noi Vbpi, i= 1, 2, 3, 4, 5, sau khi cho qua cac bộ loc ̀ ́ ́ ́ ́ ̣ Butterworth bâc 6 với cac dai băng thông là 0 ÷ 500, 500 ÷ 1000, 1000 ÷ 2000, 2000 ÷ ̣ ́ ̉ 3000, 3000 ÷ 4000 Hz. 6. Tinh phân thâp phân cua độ cao tiêng noi ́ ̀ ̣ ̉ ́ ́ Thủ tuc nay dung phương phap nôi suy để tăng độ chinh xac cho độ cao tiêng ̣ ̀ ̀ ́ ̣ ́ ́ ́ noi. Đâu tiên độ cao tiêng noi được lam tron đên giá trị nguyên gân nhât. Giả sử răng ́ ̀ ́ ́ ̀ ̀ ́ ̀ ́ ̀ giá trị nay băng T mâu và ham tự tương quan chuân hoa r( τ ) là môt ham liên tuc và có ̀ ̀ ̃ ̀ ̉ ́ ̣ ̀ ̣ cực đai trong khoang T-1 và T+1 từ đó c(0,T-1) và c(0,T+1) được tinh và so sanh để ̣ ̉ ́ ́ xac đinh cực đai năm trong khoang T-1 và T hay T và T+1. Nêu c(0,T-1) > c(0,T+1) thì ́ ̣ ̣ ̀ ̉ ́ 6 (3)
  8. Nghiên cứu mô hình mã hóa tiếng nói MELP cực đai năm giữa T-1 và T thì độ cao tiêng noi T cân phai giam đi 1. Phân thâp phân ɛ ̣ ̀ ́ ́ ̀ ̉ ̉ ̀ ̣ được tinh băng công thức sau: ́ ̀ (3) Trong đó c(m,n) được xac đinh ở công thức (2) ở trên. Giá trị độ cao âm thanh ́ ̣ tinh được ở phân nay la: P2 = T + ∆ . ́ ̀ ̀ ̀ 7. Cờ ngâu nhiên ̃ Cờ ngâu nhiên được thiêt lâp băng 1 khi Vpb1 < 0,5 và được thiêt lâp tới 0 ̃ ́ ̣ ̀ ́ ̣ trong cac trường hợp khac. Giá trị cua Vpb1 được xac đinh trong phân tich dai tân ́ ́ ̉ ́ ̣ ́ ̉ ̀ tiêng noi như ở phân 4. ́ ́ ̀ 8. Phân tich dự đoan tuyên tinh ́ ́ ́ ́ Môt bộ phân tich dự đoan tuyên tinh bâc 10 được thực hiên trên đâu vao tin hiêu ̣ ́ ́ ́ ́ ̣ ̣ ̀ ̀ ́ ̣ tiêng noi sử dung cửa sổ Hamming 200 mâu ( 25 ms) tâp trung xung quanh mâu mới ́ ́ ̣ ̃ ̣ ̃ nhât trong khung hiên tai. Quá trinh tinh được thực hiên bởi thuât toan đệ qui ́ ̣ ̣ ̀ ́ ̣ ̣ ́ Levinson-Durbin. 9. Tinh toan tin hiêu sau loc cua dự đoan tuyên tinh ́ ́ ́ ̣ ̣ ̉ ́ ́ ́ Tin hiêu sau loc cua dự đoan tuyên tinh được tinh toan băng cach loc tin hiêu ́ ̣ ̣ ̉ ́ ́ ́ ́ ́ ̀ ́ ̣ ́ ̣ tiêng noi đâu vao với bộ loc dự đoan tuyên tinh có hệ số được xac đinh ở phân 7. Cửa ́ ́ ̀ ̀ ̣ ́ ́ ́ ́ ̣ ̀ sổ để tinh tin hiêu sau loc có tâm là mẫu mới nhất trong khung hiện tại và được làm ́ ́ ̣ ̣ đủ rộng để sử dụng cho việc tính toan độ cao âm thanh sau cung. (ở phân 10). ́ ̀ ̀ ́ ́ 10. Tinh toan Peakiness Đinh cua tin hiêu sau loc được tinh toan trên môt cửa sổ 160 mâu có tâm là mâu ̉ ̉ ́ ̣ ̣ ́ ́ ̣ ̃ ̃ mới nhât cua khung hiên hanh. Giá trị đinh là được tinh dựa trên tin hiêu sau loc r n như ́ ̉ ̣ ̀ ̉ ́ ́ ̣ ̣ công thức dưới: (4) 7
  9. Nghiên cứu mô hình mã hóa tiếng nói MELP Nêu giá trị đinh vượt quá 1,34 thì cường độ âm thanh Vpb1 được gan 1,0. Nêu ́ ̉ ́ ́ giá trị đinh vượt qua 1,6 thì cường độ âm thanh 3 băng, Vpbi , i=1, 2, 3 được gan băng ̉ ́ ̀ 1,0. Peakiness chỉ được sử dung cho muc đich trên. ̣ ̣ ́ 11. Hoàn tất tính toán cao độ của tiếng nói Quá trình tính toán giá trị cuối cùng của cao độ tiếng nói dựa trên tín hiệu sau loc sau khi đã lọc thông thấp với bộ lọc thông thấp Butterworth bậc 6, tần số cắt ̣ 1kHz. Phương trình (1) cũng được sử dụng để tìm phần nguyên của cao độ của tín hiệu sau loc dao động từ nhỏ hơn độ cao giọng nói 5 mẫu đến lớn hơn cao độ giọng ̣ nói 5 mẫu. Quá trình tính toán phần thập phân của cao độ tín hiệu sau loc cũng được ̣ tiến hành tương tự như phần 6 để tìm ra giá trị chính xác của cao độ P 3 và giá trị tương quan chuẩn tương ứng r(P3). Nếu r(P3)≥0,6 (nghĩa là giá trị tự tương quan tính ra đủ lớn, tức tín hiệu sau loc ̣ gần như tuần hoàn với chu kỳ P3 mẫu) thì giá trị cao độ này sẽ được coi như cao độ của tiếng nói, ta tiến hành kiểm tra xem cao độ tìm được có là bội của cao độ nào nhỏ hơn không (mục 12) với ngưỡng để so sánh là Dth (nghĩa là nếu muốn khẳng định P3 có phải là bội của cao độ nhỏ hơn P3/n nào đó, cần có r(P3/n)≥Dth.r(P3) để tìm ra giá trị cao độ cuối cùng. Nếu P3≤100 thì chọn Dth=0,75, ngược lại thì chọn Dth=0,5. Ngược lại (tức độ tương quan không đủ lớn – tín hiệu sau loc gần như là ̣ ngẫu nhiên không có chu kỳ), thì giá trị cao độ của tiếng nói ban đầu sẽ đ ược chọn để tính cao độ cuối cùng. Nếu giá trị tự tương quan đã chuẩn hóa tính được nhỏ hơn 0,55 thì tiếng nói ban đầu gần như là ngẫu nhiên không có chu kỳ, ta sử dụng cao độ trung bình Pavg. Ngược lại thì giá trị này được coi như độ cao của tiếng nói, ta tiến hành kiểm tra xem cao độ này có phải là bội số của cao độ nhỏ hơn nào đó không với ngưỡng so sánh là Dth=0,9 nếu P3≤100, Dth=0,7 nếu ngược lại. Quá trình trên có thể tính ra giá trị P 3 và giá trị tự tương quan tương ứng khác với các giá trị ban đầu. Nếu giá trị tương quan tính được nhỏ hơn 0,55 thì cao độ được gán bằng giá trị cao độ trung bình. 12. Kiểm tra tính bội của cao độ 8
  10. Nghiên cứu mô hình mã hóa tiếng nói MELP Một hàm tuần hoàn với chu kỳ T nào đó thì cũng tuần hoàn với chu kỳ 2T, 3T, … nên cao độ tính được ở bước trên có thể gấp 2 lần, 3 lần… cao độ cơ bản nào đó. Quá trình kiểm tra tính bội của cao độ nhằm tính ra cao độ cơ bản từ giá tr ị cao độ tính được ở trên. 13. Tính hệ số khuyếch đại Hệ số khuyếch đại âm thanh đầu vào được tính hai lần trong mỗi frame sử dụng cửa sổ có độ rộng thay đổi theo giá trị cao độ. Độ rộng cửa sổ ở cả hai lần tính đều giống nhau và được xác định như sau: Nếu Vbp 1>0,6, độ rộng cửa sổ bằng số lần P2 nhỏ nhất sao cho giá trị của nó lớn hơn 120 mẫu. Nếu độ rộng này vượt quá 320 mẫu thì nó được chia cho 2. Nếu Vbp1≤0,6, độ rộng cửa sổ là 120 mẫu. Cửa sổ thứ nhất có tâm cách 90 mẫu trước mẫu cuối cùng trong khung hiện hành. Cửa sổ thứ hai có tâm là mẫu cuối cùng của khung hiện hành. Hệ số khuyếch đ ại G i ,i=1,2, là giá trị hiệu dụng của dãy tín hiệu sn tính theo thang dB theo công thức: (6) Trong đó L là độ rộng cửa sổ. Giá trị 0,01 được đưa vào để không bị lỗi lấy logarit của 0. Nếu hệ số khuyếch đại tính ra nhỏ hơn 0,0… thì lấy giá trị bằng 0,0. Trong quá trình tính toán, ta giả thiết rằng giá trị các mẫu tín hiệu nằm trong khoảng từ -32768 đến 32767. 14. Cập nhật cao độ trung bình Cao độ trung bình trong một thời gian dài được cập nhật bằng thao tác làm mịn đơn giản: Nếu r(P3)>0,8 và G2>30dB thì P3 được đưa vào bộ đệm chứa 3 giá trị cao độ rõ nhất cho đến hiện tại, pi, i=1,2,3. Ngược lại thì tất cả 3 giá trị cao độ rõ nhất trong bộ đệm được thay đổi để giá trị của nó dịch dần về giá trị cao độ mặc định Pdefault=50 mẫu: (7) 9
  11. Nghiên cứu mô hình mã hóa tiếng nói MELP Giá trị cao độ trung bình Pavg được cập nhật bằng trung bình cộng của 3 giá trị cao độ lưu trong bộ đệm. Giá trị này được sử dụng để tính giá trị cuối cùng của cao độ trong các phần trước. 15. Lượng tử hóa các hệ số của bộ lọc dự đoán tuyến tính. Đầu tiên, từ các hệ số của bộ lọc dự đoán tuyến tính tính ra các tần số có phổ vạch (Line Spectral Frequencies – LSFs). Tiếp đó, các tần số này được sắp xếp tăng dần bằng phương pháp nổi bọt, tức kiểm tra tất cả các cặp tần số liên tiếp, nếu có cặp nào không tăng dần thì đổi chỗ 2 tần số này. Quá trình này lặp lại cho đ ến khi dãy tần số theo đúng thứ tự. Sau đó, các tần số được điều chỉnh để khoảng cách nhỏ nhất giữa 2 tần số liên tiếp f i và fi+1 là di =fi+1 - fi không nhỏ hơn 50Hz như đoạn giả mã dưới đây. Ở đây giả sử các tần số có phổ vạch được tính trong thang Hz, trong các thang khác thì quá trình tính có thể hơi khác. Vectơ các tần số phổ vạch f sau đó được lượng tử hóa sử dụng phương pháp lượng tử hóa vectơ nhiều tầng. Bảng tra lượng tử hóa vectơ nhiều tầng chứa 4 tầng với số mức ở các tầng là 128,64,64,64. Vectơ sau khi lượng tử hóa f là tổng của 4vectơ ở 4 tầng. Ta cần tìm một vectơ trong bảng tra sao cho bình phương khoảng cách Ơclit giữa nó và vectơ cần lượng tử hóa là nhỏ nhất. (8) Trong đó, fi là tần số phổ vạch thứ i và P(fi) – nghịch đảo của năng lượng phổ của bộ lọc dự đoán tuyến tính tại tần số fi. Quá trình tính toán vectơ lượng tử là quá trình xấp xỉ dần, dùng phương pháp bình phương cực tiểu. Từ vectơ tối ưu tìm được ở mỗi tầng, tính ra vectơ sai số và ở tầng tiếp theo ta lại xấp xỉ vectơ sai số này. Vectơ tính ra ở bước này sẽ được dùng để tính các biên độ Furie (mục 19) 16. Lượng tử hóa độ cao tiếng nói Giá trị cuối cùng của độ cao P 3 được lượng tử hóa theo thang logarit cơ số 10 với bộ lượng tử hóa vô hướng 99 mức các giá trị trong phạm vi từ 20 đ ến 160 mẫu. 10
  12. Nghiên cứu mô hình mã hóa tiếng nói MELP Giá trị cao độ được ánh xạ đến bộ từ điển 7 bit . Từ mã có tất cả các thành phần đều bằng 0 để chỉ âm thanh là vô thanh, xảy ra khi V bp1≤0,6. Tất cả 28 từ mã có trọng lượng Hamming bằng 1 hoặc 2 (tức có từ 1 đến 2 bit 1) không dùng để tránh lỗi. 17. Lượng tử hóa hệ số khuyếch đại Hai hệ số khuyếch đại được lượng tử hóa như sau: Đầu tiên, G2 được lượng tử hóa sử dụng bộ lượng tử hóa vô hướng 5 bit trong khoảng 10 đ ến 77dB. Sau đó, G1 được lượng tử hóa thành 3 bit sử dụng thuật toán thích nghi như sau: Nếu G 2 ở khung hiện tại cách G2 ở khung trước ít hơn 5dB và G1 cách trung bình cộng của G2 ở 2 khung ít hơn 3dB thì thì khung đang ở trạng thái ổn định và G 1 được gán giá tri đặc biệt (tất cả các bit đều bằng 0) để ám chỉ rằng bộ giải mã chỉ cần lấy G1 bằng giá trị G2 ở khung hiện hành là được. Ngược lại thì khung hiện tại là một khung chuy ển tiếp và giá trị G1 được lượng tử hóa sử dụng bộ lượng tử hóa vô hướng 7 mức các giá trị trong khoảng từ nhỏ hơn giá trị nhỏ hơn trong 2 giá trị G 2 ở khung trước và khung hiện tại 6dB đến lớn hơn giá trị lớn hơn trong 2 giá trị đó 6dB. 18. Lượng tử hóa băng tần tiếng nói Nếu Vbp1≤0,6 (tiếng nói là vô thanh) thì tất cả các cường độ tiếng nói sau khi qua lọc ở các dải băng tần còn lại Vbpi , i=2,3,4,5 được lượng tử hóa về 0. Ngược lại thì các giá trị các cường độ này được lượng tử hóa về 1 nếu giá tr ị c ủa nó v ượt quá 0,6 và về 0 nếu ngược lại. Nếu chỉ có Vbp 5 vượt quá 0,6 thì nó cũng được lượng tử hóa về 0. 19. Tính toán biên độ Fourier và lượng tử hóa Tiếng nói tạo ra do bộ lọc dự đoán tuyến tính goi là tin hiêu sau loc. Quá trình ̣ ́ ̣ ̣ này tính 10 biên độ của 10 hài đầu tiên của cao độ của tín hiệu sau loc này. Nó s ử ̣ dụng biến đổi Furie nhanh (FFT) 512 điểm trên cửa sổ gồm 200 mẫu tín hiệu sau loc ̣ có tâm tại mẫu cuối cùng của khung. Đầu tiên, từ vectơ các tần số phổ vạch (LSF) đã được lượng tử hóa ở trên tính ra các hệ số của bộ lọc dự đoán tuyến tính. Sau đó, tính tín hiệu sau loc giữa tiếng nói tạo ra do bộ lọc và tiếng nói ban đ ầu. Tiếp đó ̣ dùng cửa sổ Hamming 200 mẫu, thêm các mẫu 0 ở các vị trí cần thiết để đ ược 512 11
  13. Nghiên cứu mô hình mã hóa tiếng nói MELP điểm, và tiến hành tính FFT. Cuối cùng, từ kết quả của biến đổi Furier tính ra biên độ và tìm ra các hài bằng cách xác định các điểm đỉnh của phổ. Đỉnh của phổ được tìm bằng cách xác định điểm cực đại trong khoảng rộng 512/P^3 xung quanh điểm ước lượng của hài, trong đó P^3 là cao độ tiếng nói sau khi đã lượng tử hóa. Bề rộng của khoảng được cắt chỉ giữ lại phần nguyên. Điểm ước lượng cho tần số hài thứ i là 512i/P^3. Số lượng biên độ phải tìm không lớn hơn P^3/4, cũng không lớn hơn 10. Nếu tìm thấy ít hơn 10 hài thì các biên độ còn lại gán bằng 1,0. 10 biên độ được lượng tử hóa dùng bộ lượng tử hóa vectơ 8 bit. Việc tìm từ mã tối ưu sử dụng khoảng cách Ơclit có trọng số (bình phương tối thiểu có tr ọng số) với trọng số ở các tần số thấp cao hơn trọng số ở các tần số cao. Trọng số được tính như sau: (9) Trong đó fi=8000i/60. Trọng số này được nhân vào hiệu bình phương của biên độ Furier ban đầu và giá trị tương ứng của bảng từ mã. 20. Sửa lỗi và đóng gói các bit thành khung Bảng 1 ở mục I cho thấy bố trí các bit trong khung bit của bộ mã hóa MELP. Để tăng hiệu quả trên các kênh lỗi, các bit không sử dụng hết ở các khung vô thanh có thể dùng để làm mã sửa lỗi. 3 mã sửa lỗi Hamming(7,4) và một mã Hamming(8,4) được dùng. Mã (7,4) có thể sửa bất kỳ lỗi đơn nào, trong khi đó mã (8,4) còn cho phép xác định được cả lỗi kép. 12
  14. Nghiên cứu mô hình mã hóa tiếng nói MELP III. Bộ giải mã Dữ liệu nhận về được giải mã qua các bước sau: Sửa lỗi và lấy ra Giảm Nội suy các các bit từ khung nhiễu tham số Dữ liêu số ̣ ̀ đâu vao ̀ Tạo kích thích Bộ lọc thích nghi Tổng hợp bộ lọc dự hỗn hợp tăng cường phổ đoán tuyến tính Điều chỉnh hệ Phân tán xung Điều khiển vòng số khuyếch đại lặp tổng hợp Lọc trước đầu ra (không bắt buộc) ́ ̣ ́ Tin hiêu tiêng ́ ̀ noi đâu ra. 1. Sửa lỗi và lấy ra các bit từ khung Từ khung nhận về lấy ra các bit và từ đó khôi phục lại các tham số từ mã. Quá trình giải mã các tham số từ mã của khung hữu thanh và vô thanh là khác nhau. Đ ầu tiên là giải mã cao độ âm thanh, bởi vì tham số này chứa cả thông tin về hữu thanh hay vô thanh của khung. Nếu các bit mã của cao độ của âm thanh bằng 0 hết hoặc chỉ có 1 bit 1 thì khung là vô thanh. Nếu có 2 bit 1 thì khung này không xác đ ịnh đ ược, ta bỏ qua khung này (thay bằng khung trước). Ngược lại thì ta có mã của cao đ ộ âm thanh và khung là hữu thanh. 13
  15. Nghiên cứu mô hình mã hóa tiếng nói MELP Nếu khung là vô thanh thì ta tiến hành giải các mã sửa lỗi Hamming để tìm ra bộ tham số đúng của khung. Các tham số còn lại (không truyền đi) sẽ được gán giá trị mặc định: cao độ gắn bằng 50 mẫu, mức dao động bằng 25%, tất cả cường độ âm thanh ở các băng tần gán bằng 0, các biên độ Furier bằng 1. Nếu khung là h ữu thanh, Vbp1 được gán bằng 1, độ rung gán bằng 25% nếu cờ ngẫu nhiên bằng 1, ngược lại thì độ rung gán bằng 0%. Cường độ âm thanh ở các băng tần cao gán bằng 1 nếu bit tương ứng bằng 1, ngược lại thì gán bằng 0. 2. Giảm nhiễu Đối với tín hiệu đầu vào nhỏ, ta làm suy giảm cả hai hệ số khuyếch đại một lượng nhỏ theo quy tắc trừ đi một lũy thừa của chúng. Đây là phương án tối gi ản, không phụ thuộc tần số của phương pháp khử nhiễu bằng cách trơn theo kiểu tr ừ phổ. Trước khi xác định hệ số suy giảm cho hệ số khuyếch đại thứ nhất, ước lượng của nhiễu nền được cập nhật như sau: Nếu G1>Gn+Gup thì Gn=Gn+Gup. Nếu G1
  16. Nghiên cứu mô hình mã hóa tiếng nói MELP Quá trình ước lượng mức nhiễu và thay đổi hệ số khuyêch đại tiếp tục lặp lại cho G2. Các quá trình này bỏ qua khi các khung lặp lại. 3. Nội suy các tham số Tất cả các tham số tổng hợp lại được nội suy đồng bộ theo cao đ ộ âm thanh cho mỗi chu kỳ đồng bộ của cao độ. Các tham số được nội suy bao gôm: hệ số khuyếch đại, các tần số phổ vạch (LSF), cao độ, độ dao động, các biên độ Furier, các tham số về xung và hệ số nhiễu cho bộ kích thích hỗn hợp và hệ số nghiêng cho bộ lọc thích nghi tăng cường phổ. Nếu điểm bắt đầu t 0 (t0=0,1,…,179) của chu kỳ mới của cao độ nhỏ hơn 90 mẫu, hệ số khuyếch đại được tính bằng nội suy tuyến tính từ độ khuyếch đại G2p của khung trước và G1 của khung hiện tại, ngược lại thì nội suy từ G1 và G2. Thông thường, các tham số khác được nội suy tuyến tính từ giá trị ở khung trước và khung hiện tại. Tỷ lệ nội suy int cho các tham số này phụ thuộc vào điểm bắt đầu của chu kỳ mới của cao độ: int = t0/180. Có 2 ngoại lệ: Một là khi bắt đầu một cao độ có tần số cao thì không nội suy cao độ mà lấy luôn giá trị cao độ mới. Điều này xảy ra khi G 1 lớn hơn G2 từ 6dB trở lên và chu kỳ của cao độ của khung hiện tại nhỏ hơn 1 nửa chu kỳ cao độ của khung trước. Ngoại lệ thứ hai là khi hệ số khuyếch đại mới. Nếu G 2 khác G2p ở khung trước quá 6dB thì các tần số phổ vạch LSF, các hệ số nghiêng của phổ và cao đ ộ được nội suy trên cơ sở đường cong nội suy hệ số khuyếch đại, bởi vì đ ối với mỗi khung, hệ số khuyếch đại được truyền 2 lần và nội suy trên cơ sở hệ số khuy ếch đại sẽ chính xác hơn. Tỷ lệ nội suy sẽ là: (12) Trong đó Gint là hệ số khuyếch đại nội suy ra. Tỷ lệ nội suy được điều chỉnh trong giới han 0 và 1. 4. Tạo kích thích hỗn hợp 15
  17. Nghiên cứu mô hình mã hóa tiếng nói MELP Kích thích có chu kỳ và nhiễu được kết hợp lại trên miền tàn số và sau đó được biến đổi sang miền thời gian thành dãy tín hiệu dài 1 chu kỳ cao độ s ử d ụng phép biến đôi Furier ngược. Phổ kích thích được tạo ra dựa trên 2 tham số: tần số cắt F và vectơ các tần số Furier M(k),k=1,2,…,L. Tần số cắt thì dựa cường độ tín hiệu ở các băng tần Vpbi,i=2,3,4,5, và sau đó được nội suy cho từng chu kỳ cao độ. F được gán bằng 0 nếu Vbp1 cho thấy rằng khung hiện tại là vô thanh, ngược lại thì tần số cắt tùy thuộc vào giá trị của Vbpi,i=2,3,4,5 theo bảng: Chu kỳ cao độ T được nội suy từ giá trị của cao độ công thêm một số lần cao độ gọi là độ rung, trong đó độ rung này được nội suy từ cường độ rung lần một số ngẫu nhiên nằm giữa -1 và 1. Chu kỳ cao độ được làm tròn đến số nguyên gần nhất và cố định trong khoảng từ 20 đến 160. Tần số cơ bản của cao độ f 0=2π/T. Số chiều của vectơ biên độ Fourier là L= [T/2] . Hai tần số chuyển tiếp FH và FL được xác định tuy theo tần số cắt F dựa vào thuật toán xây dựng trên thực nghiệm. Tần số chuy ển ̀ tiếp FL € [0.85F , 0.98F], FH € [F , 1.05F]. Các tần số chuyển tiếp này có chỉ số tần số khi biến đổi Furier rời rạc ngược tương ứng là VL và VH. Mô hình hữu thanh được sử dụng cho tất cả các tần số dưới VL, mô hình hỗn hợp được sử dụng cho các thành phần tần số giữa VL và VH và mô hình vô thanh được sử dụng cho các thành phần tần số cao hơn VH. Để xác định chế độ hỗn hợp, tỷ lệ khuyếch đại được chọn với giá trị tùy thuộc vào tần số cắt (tần số cắt F càng cao, tỷ lệ càng nhỏ). Các thành (13) tần phần số của bộ kích thích được xác định như sau: (14) 16
  18. Nghiên cứu mô hình mã hóa tiếng nói MELP Trong đó ф0 là hằng số được chọn để tránh các biến đổi đột ngột của cao độ tại các biên của chu kỳ cao độ. Giá trị ф RND là một số ngẫu nhiên nằm giữa -2π và 2π. Các mẫu tần số của bộ kích thích hỗn hợp sau đó được biến đổi ra miền thời gian sử dụng phép biến đổi Furier rời rạc ngược. 5. Bộ lọc thích nghi tăng cường phổ Tín hiệu sau bộ kích thích hỗn hợp được cho qua bộ lọc thích nghi tăng cường phổ. Bộ lọc này là là bộ lọc bậc 10 cực/không bổ sung thêm một thành phần bù nghiêng bậc 1. Các hệ số của nó được tạo ra bằng cách mở rộng dải thông của bộ lọc dự đoán tuyến tính. Bộ lọc dự đoán tuyến tính có hàm truyền đạt A(z) được nội suy từ các tần số phổ vạch LSF. Hàm truyền đạt của bộ lọc tăng cường phổ như sau: (15) Hệ số nghiêng µ đầu tiên tính bằng max(0,5k1, 0), sau đó thì được nội suy và nhân với p là xác suất tín hiệu. Hệ số phản xạ bậc 1 k 1 được tính từ các tần số phổ vạch LSF. Đối với phổ hữu thanh, k1 thường có giá trị âm. Xác suất tín hiệu p được ước lượng từ giá trị nội suy của hệ số khuyếch đại G int và ước lượng nhiễu nền theo công thức: (16) Xác suất tín hiệu được giữ trong khoảng giữa 0 và 1. 6. Tổng hợp bộ lọc dự đoán tuyến tính 17
  19. Nghiên cứu mô hình mã hóa tiếng nói MELP Bộ lọc dự đoán tuyến tính là bộ lọc dạng trực tiếp, các hệ số được tính dựa trên các giá trị nội suy của các tần số phổ vạch. 7. Điều chỉnh hệ số khuyếch đại Vì tín hiệu kích thích tạo ra có mức bất kỳ nên cần điều chỉnh hệ số khuyếch đại cho âm thanh tạo ra. Hệ số tỷ lệ S gain được tính cho mỗi chu kỳ cao độ T bằng cách chia giá trị hiệu dụng mong muốn (G int phải chuyển qua thang dB) cho giá trị hiệu dụng của âm thanh được tạo ra: (17) Để tránh hiện tượng gián đoạn trong âm thanh tạo ra, hệ số tỷ lệ đ ược nội suy tuyến tính từ giá trị của chu kỳ cao độ trước và 10 mẫu đầu tiên của chu kỳ hiện tại. 8. Trai phổ xung ̉ Bộ lọc trai phổ xung là bộ lọc FIR bậc 65 kiểu bộ lọc làm phẳng phổ của ̉ xung tam giác. Các hệ số của bộ lọc được cho dưới đây: 18
  20. Nghiên cứu mô hình mã hóa tiếng nói MELP 9. Điều khiển vòng lặp tổng hợp Sau khi đã tiến hành quá trình tổng hợp cho mỗi chu kỳ cao độ, t 0 được cập nhật bằng cách cộng thêm T – số lượng mẫu của chu kỳ cao độ vừa tổng hợp. Nếu t0
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2