当前位置:   article > 正文

MATLAB APP designer桌面APP设计基础教程——以音频信号的数字水印嵌入系统为例_matlab app designer 教程

matlab app designer 教程

文章目录


前言

  本文章旨在通过使用MATLAB设计一个音频信号的数字水印嵌入系统使得初学者可快速上手APP designer,利用基础功能设计出自己需要的GUI界面。

  系统由基础的按钮与坐标图表组成,使用DWT和LSB两种方法嵌入数字水印,在理论分析和实验后,认为DWT技术更好,便添加了DWT的提取水印功能,完整GUI界面如下:


一、APP designer的基本使用

  Appdesigner使用面向对象的方式进行编写;并且在开发工具中,所有控件的生成代码由开发工具自动生成,用户只需要按照自己的实际需要添加全局变量、回调函数,修改控件属性即可。按照官方文档的说法,GUIDE将会被逐渐移除出MATLAB。因此,我们需要尽快学习并掌握Appdesigner的使用。

1、界面介绍

打开MATLAB,点击设计APP

选择空白APP

整个界面由组件库、UIfigure、组件浏览器构成。组件库是为了设计页面,不同组件库有不同的功能;UIfigure是载体,有设计视图和代码视图两个部分;组件浏览器呈现当前的页面构成

2、组件——按钮

首先,我们需要将按钮控件添加到设计画布上。在左边常用控件里找到“按钮”,将其拖动到画布上,这样,一个按钮控件就添加好了。

如上图所示,当添加好按钮控件后,单击控件,周围会出现一个蓝色框。这个和我们在PPT里常见的文本框性质是相同的,我们可以直接拖拽框体调整控件的大小;按住整个控件,可以改变其位置。右侧的组件浏览器中,上方为组件树,下方为我们所选中的组件的属性。最常用的属性为“Text”,这个属性代表了控件在图窗中显示的名字。比如此处,我将其命名为“载入原始音频”,那么在图窗中,这个按钮控件就会显示为“载入原始音频”

接下来我们编写回调函数,单击鼠标右键出现如下菜单页面,单机添加回调

这样,我们就切换到了代码视图,在白框内就可以编辑代码,按键摁下便会运行这段代码

若想要回到设计视图就点击这里

我们将这几行代码写入白框中

  1. FILE1='Rihanna - Take A Bow.wav';
  2. [y,Fs]=audioread(FILE1);%音频信号y,采样率fs,采样精度bits
  3. sound(y,Fs);%播放原始语音

这样就完成了播放音频的功能

2、组件库——坐标区

坐标区在App的开发中是至关重要的。很多时候,我们需要使用坐标区绘制数据、显示图像、显示模型等。因此,我们需要掌握坐标区的使用。

同样,在组件库中找到“坐标区”控件,将其拖拽进画布,如下图所示。

在这里,我们使用两个坐标区分别显示原始音频信号的时域和频域图,在按键的回调函数中添加代码

  1. y = mean(y, 2); % 将多个声道的信号合并为单声道
  2. y_fft=fft(y,Fs);
  3. t = (0:length(y)-1)/Fs;
  4. f = (0:length(y_fft)-1)*Fs/length(y_fft);
  5. plot(app.UIAxes,t,y);
  6. plot(app.UIAxes2,f,abs(y_fft))

之后我们点击运行

按下按键后,APP界面如图,两个图表分别显示时域和频域

二、数字水印嵌入技术算法


2024年1月24日

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/576001
推荐阅读
相关标签
  

闽ICP备14008679号