• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-25
  • 语言: Matlab
  • 标签: 波束形成  

资源简介

麦克风阵列语音增强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

评论

共有 条评论