xu881015 发表于 2009-5-13 16:41

语音信号分析和处理

题目:利用MATLAB对语音信号进行分析和处理,采集语音信号后,利用MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。以下为题目步骤实践步骤 1.用MATLAB对原始语音信号进行分析,画出它的时域波形和频谱程序: 时域波形和频谱: 2. 给原始的语音信号加上一个高频余弦噪声,频率为(5—6Khz任选)。对加噪后的语音进行分析,并画出其信号时域和频谱图。程序: 时域波形和频谱: 与原始信号对比,区别: 3. 设计合适的滤波器,滤除高频噪声,绘出滤波后的信号频域和时域波形:程序: 时域波形和频谱: 与原噪音信号对比,区别

[ 本帖最后由 sigma665 于 2009-5-15 15:58 编辑 ]

friendchj 发表于 2009-5-13 18:02

请把标题改成和内容相关,先自己动手编写吧,可以找一段音频自己先试试,不要直接求代码。
help fft, rand, awgn, filter等

ChaChing 发表于 2009-5-13 21:16

现学生怎一堆到处直接求代码!
作业步骤都有了, 试试看才会真有所得!

xu881015 发表于 2009-5-14 14:35

关键我们没用过这个软件,而且时间很紧~~老师只给了这个.所以比较着急~~

[ 本帖最后由 ChaChing 于 2009-5-14 20:41 编辑 ]

ydlcsu 发表于 2009-5-14 15:11

那你直接告诉你老师说你从来没用过这个软件,时间上也不够

xu881015 发表于 2009-5-14 15:58

回复 6楼 ydlcsu 的帖子

呵呵~~“给原始的语音信号加上一个高频余弦噪声,频率为(5—6Khz任选)。”关键这个不会编~~~哎~~

ChaChing 发表于 2009-5-14 20:47

还是需自己试了编, 具体些我想楼上几位及其他都会愿意帮忙!
建议楼主看下本版规则!
求助完整格式:出错代码和出错提示

friendchj 发表于 2009-5-14 21:40

回复 6楼 xu881015 的帖子

高频余弦噪声应该可以这样表示:cos(2*pi*f*x)

xu881015 发表于 2009-5-15 11:48

回复 8楼 friendchj 的帖子

fs=22050; x1=wavread('c:\123.wav'); f=fs*(0:511)/1024;
t=0:1/22050:(size(x1)-1)/22050;  %将所加噪声信号的点数调整到与原始信号相同
Au=0.03; d=';    %噪声为5kHz的余弦信号
x2=x1+d; sound(x2,22050);        %播放加噪声后的语音信号
y2=fft(x2,1024);
figure(1); plot(t,x2); title('加噪后的信号'); xlabel('time n'); ylabel('fuzhi n');
figure(2)
subplot(2,1,1); plot(f,abs(y1(1:512))); title('原始语音信号频谱'); xlabel('Hz'); ylabel('fuzhi');
subplot(2,1,2); plot(f,abs(y2(1:512))); title('加噪后的信号频谱'); xlabel('Hz'); ylabel('fuzhi');

请你帮我看看里面有个错误怎么改~~ 第四行的啊·~谢谢啊·~·

[ 本帖最后由 ChaChing 于 2010-1-17 18:15 编辑 ]

friendchj 发表于 2009-5-15 14:20

回复 9楼 xu881015 的帖子

请给出错误代码提示

xu881015 发表于 2009-5-15 16:50

回复 10楼 friendchj 的帖子

??? t=0:1/22050:(size(x1)-1)/22050;  %将所加噪声信号的点数调整到与原始信号相同
                                 |
Error: Missing variable or function.

swifthy 发表于 2009-5-15 17:18

size函数 没有定义吧?
length(x1)

不知是不是要实现length(x1)
size是c语言的函数吧

[ 本帖最后由 ChaChing 于 2010-1-17 18:13 编辑 ]

friendchj 发表于 2009-5-15 17:32

在我的matlab上能正常运行:
>> x=0:3;
>> t=0:0.5:(size(x)-1)

t =

   0

你的本意应该用length吧,size取的是维数
如:
>> x=0:3;
>> size(x)

ans =

   1   4

xu881015 发表于 2009-5-15 18:40

谢谢啦~~我的报告OK了·~谢谢大家了·~:handshake

ChaChing 发表于 2009-5-15 18:57

回复 11楼 xu881015 的帖子

这个报错Error: Missing variable or function, 不会因为使用错误函数就报错
怀疑楼主一开始的问题, 应是含中文输入造成!
页: [1]
查看完整版本: 语音信号分析和处理