資源簡介
麥克風陣列語音增強matlab源程序,使用固定的波束形成算法
代碼片段和文件信息
clc;
close?all;
clear?all;
[hcfs]=wavread(‘clean.wav‘);%調出語音信號
s=hc;
%?參數設置
M=5;?%?陣元數目
N=length(s);?%?采樣快拍數?18476
c=340;?%?信號的傳播速度,采用語音信號的傳播速度
f0=fs;?%?信號的中心頻率?8000
fj=1000;?%聚焦頻率
lamda=c/f0;?%?信號的波長
d=0.02;?%?陣元間距采取信號波長的一半
snr_dB=-5;?%?信噪比
snr=10^(snr_dB/10);?%?線性信噪比
sir_dB=-10;?%?信干比均為-10dB
sir=10^(sir_dB/10);?%?線性信干比??0.1000
theta_s=0*pi/180;?%?信號到達方向
theta_i1=45*pi/180;?%?干擾1到達方向
angle=[theta_s?theta_i1];
degrad=pi/180;
%?生成信號源、干擾源及噪聲信號
power_s=0;
for?t=1:N
????power_s=power_s+(s(t))^2;
end????????????????%?151.7425
power_s=power_s/N;?%?信號源能量?0.0082
power_i=power_s/sir;?%?干擾源能量??0.0821
power_n=power_s/snr;?%?噪聲信號能量??0.0260
%?i1=normrnd(0sqrt(power_i/2)1N)+j*normrnd(0sqrt(power_i/2)1N);?%
%?干擾1的隨機包絡
noise=0.08*wgn(MNpower_n);?%?噪聲信號??5*18476
%?固定波束形成?
tao1=d*sin(theta_s)/c;
tao2=d*sin(theta_i1)/c;
Ts=1.399/N;
L1=ceil(tao1/Ts);
L2=ceil(tao2/Ts);
s1=s‘;
i1=0.5*s1;?%干擾源
x1=s
評論
共有 條評論