lianmei1984 发表于 2009-3-17 21:12

语音信号加噪声后

本帖最后由 wdhd 于 2016-9-14 10:46 编辑

  语音信号加噪声后。为什么作频谱图时。噪声与语音信号总是重叠在一起阿,没法用滤波器过滤,正常的应该在不同的频段才对阿,噪声频率2000hz,语音信号采样频率44100,下面是我的程序,波形见附件,高手帮忙看看是什么问题啊?万分感谢阿;郁闷很久了,波形就是出不来啊,
  fs = 44100; %采样频率
  N = 129024; %采样点数
  t = (0:N-1)/fs; %采样时间序列s
  a = 0.75;
  w = 2000;
  x = a*cos(2*pi*w*t)';噪声信号
  subplot(2,1,1);时域
  plot(t, x);
  xlabel('t/s');
  xf = 2*abs(fft(x))/N;
  xf=xf (1:N/2);
  df = fs/N; %频率分辨率Hz
  f = (0:N/2-1)*df; %频域序列
  f=(0:N/2-1)*df;
  subplot(2,1,2);
  plot(f, xf);
  xlabel('f/Hz');
  下面是加噪声后的
  =wavread('110.wav');采集与因信号
  >> y=x1(:,1); 变为单声道的
  q=y+x;加噪声
  subplot(2,1,1);
  plot(t, q);
  xlabel('t/s');
  yq = 2*abs(fft(q))/N;
  xfq=xfq(1:N/2);
  df = fs/N; %频率分辨率Hz
  f = (0:N/2-1)*df; %频域序列
  f=(0:N/2-1)*df;
  subplot(2,1,2);
  plot(f, xfq);
  xlabel('f/Hz');

lianmei1984 发表于 2009-3-17 21:14

而且语音信号采样频率44100,画出来频谱图后频段很小为什么阿?请帮忙看看哪里错了阿

yelv123 发表于 2009-3-17 21:39

yq = 2*abs(fft(q))/N;
xfq=xfq(1:N/2);
这里好像没有xfq

lianmei1984 发表于 2009-3-18 09:03

不好意思阿,是笔误,应该是
xfq = 2*abs(fft(q))/N;
xfq=xfq(1:N/2);

lianmei1984 发表于 2009-3-18 09:29

噪声频率是2khz,语音信号频率大概20khz.两者应该是频率10倍左右的关系才对阿。应该在不同频段。频谱波形为什么都混在一起阿。清高手看看程序什么地方错了阿

songzy41 发表于 2009-3-18 10:29

本帖最后由 wdhd 于 2016-9-14 10:46 编辑

原帖由 lianmei1984 于 2009-3-17 21:12 发表
语音信号加噪声后。为什么作频谱图时。噪声与语音信号总是重叠在一起阿,没法用滤波器过滤,正常的应该在不同的频段才对阿,噪声频率2000hz,语音信号采样频率44100,下面是我的程序,波形见附件,高手帮忙看看是什么问题啊?万分感谢阿;郁闷很久了,波形就是出不来啊,

楼主语音和噪声是相加的,所以在谱图上也是相加的,要用滤波器滤除这单频信号可以用陷波器。语音信号的频谱是分布在整个频段中,而单频信号在频域是一条谱线,所以它的幅值远大于语音频谱的幅值。

lianmei1984 发表于 2009-3-18 11:02

什么是陷波器?您说的是带阻滤波器马?我的意思是因为时域因信号加噪声。然后再江噪声滤掉。即使语音和噪声在频谱上是想加的。因为他们频率不同,也应该不是混在一起的。而是不在一个频段的阿

lianmei1984 发表于 2009-3-18 11:06

您觉得程序有问题吗?怎么才能把语音信号和噪声频谱弄到不同的频段上啊

songzy41 发表于 2009-3-18 14:55

本帖最后由 wdhd 于 2016-9-14 10:46 编辑

原帖由 lianmei1984 于 2009-3-18 11:02 发表
什么是陷波器?您说的是带阻滤波器马?我的意思是因为时域因信号加噪声。然后再江噪声滤掉。即使语音和噪声在频谱上是想加的。因为他们频率不同,也应该不是混在一起的。而是不在一个频段的阿
您觉得程序有问题吗?怎么才能把语音信号和噪声频谱弄到不同的频段上啊
“什么是陷波器?”楼主最好在网上查一下,本论坛也有不少帖子说到,它不是带阻滤波器。
我不明白,楼主怎么会认为语音和噪声应该不混在一起的。而是不在一个频段上。虽然楼主提供的噪声是一个单频,但语音信号是一个宽带的信号,频率范围复盖了0~fs/2的区间,楼主怎么能保证语音在2000Hz没有分量?
程序没有问题,同时也不可能把语音信号和噪声频谱弄到不同的频段上。
正因为楼主是把单频信号作为噪声,所以用陷波器还有效,如果是其它噪声(例如白噪声),降噪就会困难得多,在语音中降噪一直是通信中永恒的课题。

lianmei1984 发表于 2009-3-18 16:22

好的,我刚才查了一下陷波器,多谢你的解答阿
页: [1]
查看完整版本: 语音信号加噪声后