基于matlab-GUI数字音频处理系统(一)

本文介绍了一个基于matlab GUI编程的数字信号处理项目,包括git支持、GUI模块解析、句柄使用、参数传递及面向对象编程。项目实现了音效分析和语音处理功能,并分享了GUI创建和维护的经验。
摘要由CSDN通过智能技术生成

前言


本次项目为数字信号处理课程项目,项目全部采用matlab GUI编程,已上传至github/git_dsp

项目要求如下:
- 至少实现 1 种音效测试分析功能(频率响应,瀑布频谱图,相位响应曲线,抗阻曲线,谐波失真曲线,互调失真曲线,音压曲线等);
- 至少实现 1 种语音处理功能(声纹识别,关键词识别,语音去噪,声源分离等),并分别对其进行实际应用;

matlab对git的支持


为了方便修改,本次项目使用了git,并托管到github上。
matlab对Git有很好的支持,文件栏处右击源代码管理,可以直接对文件进行添加、提交、推送到github。

所用函数功能一览


名称 格式 项目内用法
abs abs(fft_sample) 求fft后样本模值
angel angle(ph_y0) 求fft后样本相角
audioplayer h.player=audioplayer(h.CSample,h.Fs) 创建音频播放器
audioread [h.Sample,h.Fs]=audioread(h.Filepath) 读取音频文件
audiowrite audiowrite() 输出音频
colorbar colorbar(ax) 创建颜色栏
colormap colormap(hot) 改变语谱图颜色
delete delete(gcf) 关闭窗口
fft fft(sample,nfft) 对样本进行快速傅里叶变换
fftshift fftshift(y) 以中心为零,频域循环移位
gcf set(gcf, 当前窗口句柄
guidata guidata(hObject, handles) 更新句柄
isempty isempty(handles.Sample) 判断样本是否为空
isstrprop str(isstrprop(str,’digit’)) 求字符串内数字
length length(sample) 求样本长度
mean mean(handles.Sample) 求样本均值
movegui movegui(gcf,’center’) 窗口居中
nargin nargin GUI输入参数个数
nargout varargout{1:nargout} GUI输出参数个数
pow2 pow2(nextpow2(sample_length)) 求2的次方
nextpow2 nextpow2(sample_length) 求最小nfft使,2^nfft≥len
round round(get(hObject,’Value’),2) 求指定有效数位约值
size size(handles.Sample) 求音频通道数
spectrogram spectrogram(sample,1024,512,nfft,fs) 绘制语谱图
std std(handles.CSample) 求样本标准差
struct struct(‘gui_Name’,mfilename, … 构造GUI参数、回调函数</
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值