一、簡介
語音信號預處理程式:消除線性趨勢項、數字濾波器設計、預加重功能測驗,
二、源代碼
clear all; clc; close all;
[x,fs,nbit]=wavread('C2_5_y_1.wav'); % 讀入語音檔案
len=length(x);
n=0.5:0.3/(len-1):0.8; %設定線性曲線
x=x+n'; %疊加線性趨勢線
t=(0:length(x)-1)/fs; % 設定時間
y=detrend(x); % 消除線性趨勢項
y=y/max(abs(y)); % 幅值歸一化
subplot 211; plot(t,x,'k'); % 畫出帶有趨勢項的語音信號x
title('帶趨勢項的語音信號');
xlabel('時間/s'); ylabel('幅值');
subplot 212; plot(t,y,'k'); % 畫出消除趨勢項的語音信號y
xlabel('時間/s'); ylabel('幅值');
title('消除趨勢項的語音信號');
%消除多項式趨勢項
clear all; clc;
[x,fs,nbit]=wavread('C2_5_y_1.wav'); % 讀入C2_5_y_1.wav檔案
len=length(x);
n=0:1/(len-1):1;
nn=n.^2-0.5;
x=x+nn';
[y,xtrend]=detrendN(x, fs, 2); % 呼叫detrendN消除趨勢項
t=(0:length(x)-1)/fs; % 設定時間
figure
subplot 211; plot(t,x,'k'); % 畫出帶有趨勢項的語音信號x
line(t,xtrend,'color','r','linewidth',2); % 畫出趨勢項曲線
ylim([-1.5 1]);
clc
clear all
fs=8000;
%把截止頻率轉成弧度表示
wp=550*2/fs;
ws=500*2/fs;
rp=3;
rs=80;
Nn=512;
clc
clear all
close all
[s,fs]=wavread('C2_5_y_3.wav');
e=s(2000:2225); %提取一段進行分析,容易看出變化
un=filter([1,-0.95],1,e); %預加重信號b=[1,-0.95];
%原始信號頻譜
N=512;
pinlv=(0:1:N/2-1)*fs/N;
x=fft(e,N);
r1=abs(x);
t1=20*log10(r1);
signal=t1(1:N/2);
%預加重信號頻譜
[h1,w1]=freqz([1,-0.95],1,256,fs);
pha=angle(h1);
H1=abs(h1);
r2=r1(1:N/2);
u=r2.*h1;
u2=abs(u);
signalPre=20*log10(u2);
三、運行結果




四、備注
完整代碼或者代寫添加QQ 1564658423
往期回顧>>>>>>
【信號處理】基于matlab HMM的睡眠狀態檢測【含Matlab原始碼 050期】
【信號處理】基于matlab CDR噪聲和混響抑制【含Matlab原始碼 051期】
【信號處理】基于matlab最小二乘法解決稀疏信號恢復問題【含Matlab原始碼 052期】
【信號處理】基于matlab小波變換的音頻水印嵌入提取【含Matlab原始碼 053期】
【信號處理】基于matlab ICA演算法信號分離【含Matlab原始碼 054期】
【信號處理】基于matlab GUI界面的脈搏信號之脈率存檔【含Matlab原始碼 237期】
【信號處理】基于matlab GUI界面的虛擬信號發生器(各種波形)【含Matlab原始碼 271期】
【信號處理】基于matlab GUI界面信號發生器之電子琴【含Matlab原始碼 272期】
【信號處理】基于matlab的數字電子琴設計與實作【含Matlab原始碼 273期】
【雷達通信】基于matlab的雷達數字信號處理【含Matlab原始碼 281期】
【雷達通信】基于matlab線性調頻(LFM)脈沖壓縮雷達仿真【含Matlab原始碼 283期】
【雷達通信】基于mtatlab距離多普勒(RD)、CS、RM演算法的機載雷達成像【含Matlab原始碼 284期】
【雷達通信】《現代雷達系統分析與設計》大作業【含Matlab原始碼 285期】
【信號處理】基于matlab GUI語音信號綜合處理平臺【含Matlab原始碼 290期】
【信號處理】基于matlab GUI語音信號采集【含Matlab原始碼 291期】
【信號處理】基于matlab GUI語音幅度調制【含Matlab原始碼 292期】
【信號處理】基于matlab GUI語音合成【含Matlab原始碼 293期】
【信號處理】基于matlab GUI語音基頻識別【含Matlab原始碼 294期】
【信號處理】基于matlab GUI語音信號加密解密【含Matlab原始碼 295期】
【信號處理】基于matlab小波變換的語音增強【含Matlab原始碼 296期】
【信號處理】基于matlab GUI語音傅立葉變換降噪混頻【含Matlab原始碼 297期】
【信號處理】基于matlab GUI維納濾波之語音增強【含Matlab原始碼 298期】
【音頻處理】基于matlab GUI語音信號處理2【含Matlab原始碼 299期】
【雷達通信】基于matlab GUI雷達定位【含Matlab原始碼 302期】
【雷達通信】基于matlab GUI雷達脈沖壓縮【含Matlab原始碼 303期】
【雷達通信】基于matlab GUI雷達定位模擬【含Matlab原始碼 304期】
【雷達通信】基于matlab SVM識別雷達資料【含Matlab原始碼 305期】
【雷達影像】SAR合成孔徑雷達成像及處理【含Matlab原始碼 307期】
【資訊處理】基于GUI數字波束的演算法庫【含Matlab原始碼 313期】
【通信】基于matlab的OFDM-MIMO通信建模與仿真【含Matlab原始碼 314期】
【通信】基于matlab的OFDM仿真【含Matlab原始碼 315期】
【信號處理】基于matlab窗函式法的FIR數字濾波器設計【含Matlab原始碼 316期】
【通信】基于matlab FIR低通數字濾波器設計【含Matlab原始碼 323期】
【通信】基于matlab FIR IIR數字濾波器設計【含Matlab原始碼 324期】
【信號處理】基于matlab的語音信號頻譜分析儀【含Matlab原始碼 325期】
【調制信號】基于matlab GUI數字調制信號仿真【含Matlab原始碼 336期】
【通信】基于matlab的擴頻通信系統設計【含Matlab原始碼 337期】
【通信】基于matlab多徑衰落信道的仿真【含Matlab原始碼 338期】
【語音識別】基于matlab BP神經網路的語音情感識別【含Matlab原始碼 349期】
【信號處理】基于matlab音頻水印嵌入與提取【含Matlab原始碼 350期】
【音頻水印】基于matlab小波變換的量化音頻數字水印【含Matlab原始碼 351期】
【語音去噪】基于matlab低通和自適應濾波去噪【含Matlab原始碼 352期】
【信號處理】基于matlab 8級m序列【含Matlab原始碼 353期】
【情感識別】基于matlab GUI語音情感分類識別【含Matlab原始碼 354期】
【信號處理】基于matlab FIR與IIR濾波器低通、高通、帶通設計【含Matlab原始碼 360期】
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/262554.html
標籤:其他
上一篇:什么是金字塔原理?
