找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5700|回复: 3
打印 上一主题 下一主题
收起左侧

信号时频认知和加噪处理,基于MATLAB r2015b(附代码)

[复制链接]
跳转到指定楼层
楼主
ID:257462 发表于 2017-12-4 22:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
信号与系统大作业大作业要求
课程大作业采用小组形式进行,每4~6名学生一组,每组推选组长1名,由组长负责组织小组成员分工合作,完成语音信号时频认知。具体要求如下,①录制一段语音信号,对录制的信号进行采样,并画出采样后语音信号的时域波形和频谱图;②对语音信号进行加噪,画出加噪后时域波形和频谱;③回放语音信号;实现快录慢放;④撰写设计报告及完成仿真,并进行验收答辩。

    录制一段语音信号,对录制的信号进行采样,并画出采样后语音信号的时域波形和频谱图;
1、用window的附件中的“录音机”录制一段语音信号并存盘。(例如:d:\1\2.wav)
2、用MATLAB软件进行该原始语音信号的时频分析。
2.1代码
%对语言信号做原始的时域波形分析和频谱分析
[y,fs]=audioread('d:\1\2.wav');
% sound(y,fs) % 回放语音信号
n=length(y) %选取变换的点数
y_p=fft(y,n); %对n 点进行傅里叶变换到频域
f=fs*(0:n/2-1)/n; % 对应点的频率
figure(1)
subplot(2,1,1);
plot(y); %语音信号的时域波形图
title('原始语音信号采样后时域波形');
xlabel('时间轴')
ylabel('幅值 A')
subplot(2,1,2);
plot(f,abs(y_p(1:n/2))); %语音信号的频谱图
title('原始语音信号采样后频谱图');
xlabel('频率Hz');
ylabel('频率幅值');
2.2 图像


    对语音信号进行加噪,画出加噪后时域波形和频谱;
2.1代码
%对音频信号产生噪声
L=length(y) %计算音频信号的长度
noise=0.1*randn(L,2); %产生等长度的随机噪声信号(这里的噪声的大小取决于随机函数的幅度倍数)
y_z=y+noise; %将两个信号叠加成一个新的信号——加噪声处理
%sound(y_z,fs)
%对加噪后的语音信号进行分析
n=length(y); %选取变换的点数
y_zp=fft(y_z,n); %对n 点进行傅里叶变换到频域
f=fs*(0:n/2-1)/n; % 对应点的频率
figure(2)
subplot(2,1,1);
plot(y_z); %加噪语音信号的时域波形图
title('加噪语音信号时域波形');
xlabel('时间轴')
ylabel('幅值 A')
subplot(2,1,2);
plot(f,abs(y_zp(1:n/2))); %加噪语音信号的频谱图
title('加噪语音信号频谱图');
xlabel('频率Hz');
ylabel('频率幅值');

    回放语音信号;实现快录慢放;

    在MATLAB写好的代码末尾输入sound(y,fs);语句  可实现语音正常放;

    若输入sound(y,1.5*fs);     可实1.5倍快播放

    若输入sound(y,0.5*fs);     可实现0.5倍慢播放

完整的Word格式文档51黑下载地址:
信号与系统大作业.docx (114.58 KB, 下载次数: 24)



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:360474 发表于 2018-6-27 18:19 | 只看该作者
文档不要下载
太水了 没用
回复

使用道具 举报

板凳
ID:269744 发表于 2018-12-1 11:45 | 只看该作者
棒棒哒,就是有个问题为什么频谱图和时域图的文字显示不出来,声音快放慢放之后,音质也发生了蛮大的改变的
回复

使用道具 举报

地板
ID:269744 发表于 2018-12-1 11:46 | 只看该作者
蛮好的,就是有个问题,为啥,频谱时域图上的文字显示不出来而且将声音快放慢放之后音质也发生了蛮大的变化的,不过楼主还是棒棒哒
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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