整体右击添加 Filter_natureSelectionChanged 回调函数(Filter_nature为自命名),代码视图自动生成 function Filter_natureSelectionChanged(app, event) 和 selectedButton = app.Filter_nature.SelectedObject; 利用 switch 语句可以实现相应选项对应功能。在其他的回调函数内也可以使用 app.Filter_nature.SelectedObject 进行相关的操作(不用添加 Filter_natureSelectionChanged 回调函数也能够运用)。

④编辑字段(数值):实现输入框的功能,例如在框内输入设计指标,完成滤波器的设计。

双击提示语区域即可添加提示语,数值的使用格式如:FS = app.sample_frequency.Value;(app.sample_frequency为自命名),app.sample_frequency.Value同上,也是一个全局变量。

⑤微调器:实现如音乐播放器声音大小的调整功能。

添加回调函数方法与按钮相同。

⑥编辑字段(文本):既可以作为输入,也可以作为输出。输入、输出类似“编辑字段(数值)”。

输出:在某回调函数中加入如 app.sample_frequency.Value = “汉宁窗”;

⑦坐标区:绘制时域,频域波形,甚至可以展示图片。

双击相应区域,可以改变标题、横纵坐标。在某回调函数中加入如 plot(app.original_time,t,x); 就可以绘制波形。app.original_time为坐标区的命名。

2)App内添加自己的全局变量

在左侧代码浏览器中,选择属性,点击➕傍边的下三角添加私有属性(此App内的全局变量)。

代码视图会相应生成代码,除了内部内容是个示例,可以直接删除。

定义变量名如上图所示即可。其他函数内使用全局变量,写成形如 app.path 即可实现全局变量的赋值和应用。

3)报错及提示功能

f = errordlg(msg, title);

msg: 你想要的输出内容。

title: 对话框的标题。

msgbox(message)
%msgbox('显示内容')
msgbox(message,title)
%msgbox('显示内容','标题')
msgbox(message,title,icon)
%msgbox('显示内容','标题','系统图标')
%系统图标主要有none,error,help,warn

报错及提示功能代码示例

[filename,pathname]=uigetfile({'*.wav;*.mp3','*.wav;*.mp3'},'选择声音文件');
if isequal([filename pathname],[0,0])
    errordlg("没有选中文件","错误")
    app.path = strcat(pathname, filename);%选择的声音文件路径
    msgbox("读取成功","提示")

此部分代码示例中还含有文件路径的获得。

4)退出功能

添加按钮,右击添加回调函数。

questdlg 的使用:

answer = questdlg(quest);
answer = questdlg(quest,dlgtitle);
answer = questdlg(quest,dlgtitle,defbtn);
answer = questdlg(quest,dlgtitle,btn1,btn2,defbtn);

answer = questdlg(quest) ; 创建一个模态对话框,其中提出问题并返回用户的回答 - 'Yes'、'No'、'Cancel' 或 ''。

默认情况下,该对话框有三个标准按钮,其标签分别为是、否和取消。

如果用户点击其中一个按钮,则 answer 值与按下的按钮的标签相同。

如果用户点击对话框标题栏上的关闭按钮 (X) 或按下 Esc 键,则 answer 值为空字符向量 (' ')。

如果用户按下 Return 键,则 answer 值与默认所选按钮的标签相同。

answer = questdlg(quest,dlgtitle) ; 指定对话框标题。

answer = questdlg(quest,dlgtitle,defbtn) ; 指定当用户按下键盘上的 Return 键时将哪个按钮作为默认按钮。defbtn 值必须与按钮标签之一匹配。

answer = questdlg(quest,dlgtitle,btn1,btn2,defbtn) ; 通过用 btn1 和 btn2 的值作为按钮标签来自定义两个标准按钮。第三个标准按钮则被删除。defbtn 值必须与 btn1 或 btn2 的值匹配。

如果用户按下键盘上的 Return 键,并且 defbtn 值与任一按钮标签都不匹配,则对话框保持打开状态。

退出功能实例

choice = questdlg("是否退出《语音信号的处理》?","退出","是","否","否");
switch choice
    case "是"
        delete(app.UIFigure)
        return
    case "否"
        return

最终效果展示:

语音信号的分析与处理_哔哩哔哩_bilibili

完整资源获取:

https://download.csdn.net/download/weixin_53877178/76116847

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、MATLABAPP designer模块二、使用组件库和组件交互1.图片展示2.读入点云数据3.显示彩色点云 项目所需,之前写的程序就是直接用MATLAB直接实现的,没有处理界面,就是后台运行的,看起来不那么直观,为了后面评奖评优,就先搭一个能用的可视化界面吧,后面真的要做的话,估计还是会交给专业团队来做。趁此机会我的工程项目引入了MATLABAPP designer模块。 其实断断续续做了一个月了,还是记录
function excelButtonPushed(app, event) %读取表格 t = readtable("C:\Users\Administrator\Desktop\MatlabApp\txr1.xlsx"); app.UITable.Data=t;
matlab app designer中,可以针对语音数据进行滤波平台的设计。首先需要导入语音数据,并根据需要选择相应的数字滤波器进行滤波处理。具体步骤如下: 1. 创建一个app designer界面,包括以下部分:导入语音文件的按钮、显示语音文件的Axes、选择数字滤波器的按钮、显示滤波效果的Axes,以及实现滤波处理的功能按钮。 2. 导入语音文件,将其存在一个变量中。使用audioread函数,可以读取指定路径下的语音文件,将其转化成数字信号。 3. 显示语音波形,将读取到的语音数据绘制到Axes中,使用plot函数即可。 4. 选择数字滤波器,这里可以准备几个常用的数字滤波器作为选择,包括高通、低通、带通、带阻等类型。 5. 显示滤波效果,将滤波后的语音数据绘制到Axes中。使用filter函数,将选择的数字滤波器应用于已经读取的语音数据,得到滤波后的数字信号,然后使用plot函数将其绘制到Axes中。 6. 实现滤波处理的功能按钮,将选择的数字滤波器应用于原始的语音数据,并显示滤波后的结果。使用button组件,定义实现滤波的回调函数,该函数将选择的数字滤波器作为参数,再用filter函数进行滤波处理,最后将处理后的结果绘制到滤波效果的Axes中。 以上是基于matlab app designer语音滤波平台设计的大致流程,通过这个平台,用户可以方便地实现语音信号的数字滤波,以达到去除噪声或强调某些频率成分的目的。
演员的必备修养: 这个错误通常是由于使用 OpenCV 的 imshow 函数时出现了问题。错误消息中的信息指出,这个错误是由于在 imshow 函数中使用了无效的图像大小(size)导致的。 这个错误可能是由以下几个原因导致的: ①图像文件路径错误:请检查文件路径是否正确,确保程序能够正确地读取图像文件。 ②图像加载失败:如果图像加载失败,那么它的大小可能为零。请确保你正在使用有效的图像文件,并且它已经成功加载。 ③编程错误:如果你手动创建图像,那么请确保你已经正确地指定了图像的大小和类型。确保在使用 imshow 函数之前,已经为图像分配了正确的大小和类型。 要解决这个错误,你可以尝试以下几个步骤: ①检查图像文件路径,确保文件存在并且可以被正确地读取。 ②检查图像文件是否已经成功加载,确保它的大小不为零。 ③如果你手动创建了图像,请确保它的大小和类型已经正确地指定。 ④尝试使用其他的图片文件测试,如果问题依然存在,可以考虑检查你的 OpenCV 安装是否正确,并尝试更新到最新的版本。