資源簡介
本程序基于線性預測編碼(LPC)來實現對輸入語音信號的線性編碼(尋找預測器參數)以及通過預測器參數完成對信號的重組回復
代碼片段和文件信息
%%?清空運行環境
clear
clc
close?all
%%?讀取語音信號
I?=?audioread(‘錄音文件.wav‘);%讀入原始語音
%對指定幀位置進行加窗處理
Q?=?I‘;
N?=?256;???????????%?窗長
Hamm?=?hamming(N);?%?生成漢明窗,加窗之后僅處理窗中的數據
frame?=?70;????????%?需要處理的幀位置
M?=?Q(((frame?-?1)?*?(N?/?2)?+?1):((frame?-?1)?*?(N?/?2)?+?N));?%?截取指定位置的語音數據
frame?=?M?.*?Hamm‘;%?加窗后的語音
P?=?input(‘請輸入預測器階數?=?‘);?
ai?=?lpc(frame‘P);???????????????????%?計算lpc系數
LP?=?filter([0?-ai(2:end)]1frame);?%?建立語音幀的正則方程數據為frame濾波器參數為[0?-ai(2:end)]
E?=?frame?-?LP;?%?預測誤差
figure(1)
subplot(211)plot(1:Nframe1:NLP‘-r‘);grid;
title(‘原始語音和預測語音波形(經過漢明窗截取)‘)
subplot(212)plot(E);grid;
title(‘預測誤差(經過漢明窗截取)‘);
%%?畫出語譜圖
ai1?=?lpc(IP);?%?計算原始語音lpc系數
LP1?=?filter([0?-ai(2:end)]1I);?%?建立
- 上一篇:風電場風速和發電功率預測研究
- 下一篇:中文負面情感詞語(txt版)
評論
共有 條評論