声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1480|回复: 8

[FFT] 语音加噪声fft

[复制链接]
发表于 2009-3-16 17:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我把语音信号fs=44100;                  
%语音信号采样频率为22050
x1=wavread('110.wav'); %读取语音信号的数据,赋给变量x1
[x,fs,Nbits]=wavread('110.wav');
加噪声Au=0.03;           
d=[Au*cos(2*pi*2000*t)]';
x1是129024x2;是个2维 的。d是一维的。我就变换了一下’c=zeros(129024,2);
c1=c(1)+d;
c2=c(2)+d;
c=[c1,c2];
x2=x+c;
然后对加了噪声的信号进行fft变换,见附件
噪声信号应该是低频的,和语音信号不应在一个频段上。
但是我做的波形,fft变换后噪声的频率变为20khz,不再是低频2000hz了。和原语音信号重叠在一起,没法过滤/
请高手指教为什么?

附件不知怎么传不上去
回复
分享到:

使用道具 举报

发表于 2009-3-16 21:35 | 显示全部楼层
采样频率不是44100Hz吗?你调成22050Hz了?其实2维数据里面是一样的数据,
 楼主| 发表于 2009-3-16 21:41 | 显示全部楼层
采样频率是44100,22050是原来写的注释忘记改了。x的2维数据里面不是一样的数据,相差很多,不知道代表什么。而且因为噪声信号是一维的。也没办法用x2=x1+d这样直接相加
发表于 2009-3-16 21:51 | 显示全部楼层
我自己做的时候,二维数据是左右声道,是一样的。

不一样也没什么,你可以只取其中一维数据分析。~你的fft处理后的结果传不上来?
 楼主| 发表于 2009-3-16 22:00 | 显示全部楼层
我刚找了些资料。说x是两列的是因为wavread格式是双声道的。就是左右声道把。 那应该怎么变成 一列的那
 楼主| 发表于 2009-3-16 22:04 | 显示全部楼层
我取了一列,结果声音就显示不出来了。你有qq马。在线的话我加你。我把波形发给你/

45914369qq
 楼主| 发表于 2009-3-16 22:13 | 显示全部楼层
我就想直接在[x1,fs,Nbits]=wavread('110.wav') 的时候直接就输出一列,请问您知道怎样弄马?   因为只取一列加噪声波方的时候根本没有声音了阿。
发表于 2009-3-17 06:57 | 显示全部楼层
应该对双声道的数据,或只取一个声道数据处理,或分别处理,没有必要合成一列数据。
又“我把语音信号fs=44100; %语音信号采样频率为22050”,采样频率是多少?
 楼主| 发表于 2009-3-17 09:18 | 显示全部楼层
采样频率是44100
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-22 08:24 , Processed in 0.058678 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表