MATLAB之使用GUI处理语音信号(三)时域分析及卷积运算

##MATLAB之使用GUI处理语音信号(三)时域分析及卷积运算
上一篇文章中我们已经利用GUI完成了大部分操作,大家一定要好好理解,今天我们来进行剩下的内容:时域分析和卷积运算。

MATLAB之使用GUI处理语音信号(三)时域分析及卷积运算

一.时域分析

我们这里分析的内容为峰值、均值、均方差和方差四个内容。
(1)首先打开上一篇文章的GUI编辑界面,我们在上面直接添加,时域分析需要用到一个按钮开始时域分析,四个静态文本显示内容,以及四个可编辑文本显示计算数值,直接拖动控件放在合适位置并设置合适大小即可,过程在之前的文章中已经清楚说明,这里不再赘述,不懂得朋友可以去查看之前的文章,非常清楚。
直接上图:
在这里插入图片描述

(2)我们可以先运行修改代码。
需要在“时域分析”按钮的回调函数中添加如下代码:

	global temp;
	set(handles.text3,'String',max(max(temp)));%计算峰值
	set(handles.text6,'String',mean(mean(temp)));%计算均值
	set(handles.text8,'String',std(std(temp)));%计算均方差
	set(handles.text10,'String',var(var(temp)));%计算方差
temp为直接引用之前的全局变量,这里要注意的是计算函数要熟练掌握:
max()---峰值
mean()---均值
std()---均方差
var()---方差

还要注意结果放置的位置,对应好可编辑文本的标签一一放进去。
在这里插入图片描述

看效果
在这里插入图片描述

二.卷积运算

(1)我们这里卷积的内容为二位数据矩阵第一列与阶跃函数进行卷积,如果你的数据是一维的,就可以直接卷积。
我们需要放置一个显示“卷积运算”的按钮,一个说明卷积内容的静态文本以及一个放图的坐标轴,过程不再多说,直接看图:
在这里插入图片描述

(2)下面点击运行修改代码。
在“卷积运算”按钮的回调函数中添加如下代码:

	global temp;
	q=u(0);%构造一个阶跃函数
	p=convn(temp(:,1),q);%进行卷积运算
	plot(handles.axes4,p);%画出卷积后图形
这里注意卷积运算的函数convn()。

在这里插入图片描述

看效果:
在这里插入图片描述

整体效果:
在这里插入图片描述

至此,利用GUI分析信号内容全部完成,利用我们讲到的知识也可以自行添加其他需求。
##发现不足之处请及时指出

  • 8
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值