jjzjj

毕业设计-基于 MATLAB 的小波去噪的研究

HaiLang_IT 2023-10-31 原文

目录

前言

课题背景和意义

实现技术思路

一、小波理论

二、小波去噪原理

三、去噪实验仿真

实现效果图样例

最后


前言


    📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投入到更重要的就业和考试中去,学长分享优质的选题经验和毕设项目与技术思路。

🚀对毕设有任何疑问都可以问学长哦!

选题指导: https://blog.csdn.net/qq_37340229/article/details/128243277

大家好,这里是海浪学长毕设专题,本次分享的课题是

🎯基于 MATLAB 的小波去噪的研究

课题背景和意义

近些年来,小波分析理论发展得十分迅速,良 好的时域和频域特性使得其广泛地被应用于实际。 在现实中,搜集到的信号往往都是含有噪声的,噪 声的存在常常会将原始信号所要表达的信息掩盖 掉,所以,在实际对信号的处理过程中,降噪是首 先要进行的,并且是非常重要的一个步骤。 小波分析法去噪是当前广泛应用的信号去噪 方法,小波分析法源于傅里叶变换,却相比传统的 傅里叶分析去噪而言,更适合于对非平稳信号的去 噪问题。傅里叶分析去噪适合于平稳信号去噪,可 是生活中非平稳信号是绝大部分的,因此使用傅里 叶分析法来去噪就存在着局限性。多分辨率分析 是小波分析的特点,并且无论在时域还是频域内, 均具有表征信号局部特征的能力。因此,在去噪 领域中,小波理论受到了广泛的关注,并取得了不 错的效果。 小波分析去噪的核心环节包括小波基函数的 选择,阈值函数的选择、分解的层数等,小波包相 对于小波分析对于高频的刻画更为精细,小波包去 噪也被用于信号的去噪。

实现技术思路

一、小波理论

小波变换

设ψ ( t ) ∈ L 2( R) ,其傅里叶变换为 ψˆ (ω ) ,当ψ ω 满足条件:

ψ ( t ) 称作基本小波(或母小波),将母小波 ψ ( t ) 经过伸缩和平移后即可得到一个小波序列为:

 式中: a 为伸缩因子; b 为平移因子。

对于任意的函数 f( t) ∈L 2(R) 的连续的小波 变换为:

 其重构公式(即小波逆变换)为:

 几种常见的小波基

小波基选取是小波分析去噪的关键环节之一,选择合适的小波基作为小波分析的基函数,能够使
小波去噪取得不错的效果。以下为几种常见的小波基函数。  
( 1 ) Haar 小波系
Haar 小波的定义为:

Haar 小波系为 A. Haar 提出的一种正交的函数系,此小波系具备紧支撑性,并且在正交的函数系
中是属于最简单的一种

 

( 2 ) Daubechies(db N ) 小波系
Daubechies(db N ) 小波函数也是由 Daubechies 构造的小波函数,是从两尺度方程系数{ h k } 出发而设
计的离散正交小波函数。
( 3 ) SymletsA sym N )小波系
SymletsA 函数为一种近似对称的,紧支集、双正交特性小波函数系,为 db 小波函数的一种改进,
SymletsA 函数一般表示为 sym N 的形式,其中 N =2,3,4,5,6,7,8。
(4)Coiflet(coifN)小波系 Coiflet 小波基具有紧支撑正交特性,是由 Daubechies 构造的小波函数, 函数有 coifN (N=1, 2,3,4,5)这一系列,Coiflet 小波基比 dbN 小波 基对称性更好,而且 coifN 与 db3N、sym3N 具有相 同的支撑长度,与 db2N、sym2N 具有相同的消失 矩数目
小波包理论
小波变换是一种将时域分析、频域分析联系在一起的分析方法,多分辨率分析法是将信号分解为
高频部分和低频部分的分析方法,可是,通常是将低频部分保留下来,而对于高频部分的分析处理往往不知所措

二、小波去噪原理

小波分析去噪原理
小波去噪一般分为染噪信号的分解、阈值的处理、信号的重构 3 个步骤。
( 1 )信号的分解:选取小波基对染噪的信号进行小波变换。
( 2 )阈值的处理:事先设定一个阈值,然后将比设定阈值低的小波系数去掉,保留比设定阈值高的小波系数,从而可以将噪声去除,保留住有用信号的信息。
( 3 )信号的重构:用处理后的小波系数进行信号重构。
阈值去噪
模极大值法、空域相关法、小波阈值法是小波滤波去噪的 3 种主要的方法,相比较于前 2 种滤波
方法,小波阈值法滤波具有算法简单、计算量小、滤波效果好等特点,对于信噪比低的信号的处理也比较适用

小波阈值去噪通常可以分为硬阈值去噪及软阈值去噪 2 种。
Donoho 提出的硬阈值函数的数学表达式为:

软阈值的数学表达式为:

wi j 是去噪前的小波系数, , wi j 为去噪后的小波系数,阈值 λ =σ 2 lg(M ) ,M 为信 号长度,噪声水平的估计值

 常见的阈值选择规则有以下 4 种:①固定阈值 sqtwolog 规则,阈值 λ=2In(M);②启发式阈值 Heursure 规则,为最优预测变量阈值选择;③自适 应阈值选择 Rigruse 规则,此种规则是基于无偏估 计;④极大极小阈值 Minmaxi 规则,此规则也是一 种固定的阈值选择规则。

小波包去噪
与小波分析去噪相比,小波包对信号的分解以及重构愈加精细,对低频部分以及高频部分均实施分解,因而具有更强、更精确的局部分析能力。 小波包阈值去噪的基本步骤如下:①对信号进 行小波包分解;②选择最优小波基;③小波包分解 系数的阈值化;④信号的小波包重构。

三、去噪实验仿真

不同小波基下信号去噪

本实验为仿真小波基函数选取、分解的层数、 阈值选取对小波分析最终去噪效果的影响。如图为原始信号以及加噪信号。

 通过波形观察、各种方式滤波信噪比(SNR)、各种方式滤波最小均方根误差(MSE)2 个重要指标的对比,来衡量和评价滤波去噪效果,得到数据如表

3层分解的小波分析去噪:

5 层分解的小波分析去噪:

通过 4 种小波基去噪结果的数据对比可以发 现,coif3、sym5、db4 3 种小波基情况下的滤波效 果要好于 haar 小波基情况。coif3 小波基、sym5 小 波基处理噪声效果比 db4 小波基略好。因此,小波 基的选择不唯一,没有一种小波基对任何一种信号 去噪都能取得最优的效果。所以,实际去噪时,应 根据具体情况来选择适合的小波基函数对小波进 行分解。

下图分别为不同小波基情况下的去噪波形图
haar 小波基分解的小波去噪:

coif3 小波基分解的小波去噪:

db4 小波基下的小波去噪

从中可以发现 coif3、sym5、db4 3 种小波基下 的去噪效果要好于 haar 小波基情况。软阈值去噪效 果好于硬阈值,去噪之后跟原信号更接近。但是 haar 小波基特更适合于连续性较差的信号的小波去噪, 比如 block 信号。coif3、sym5 更适合于连续性较好 的信号的去噪,比如 Doppler 信号的去噪。

小波去噪与傅里叶分析去噪效果比较
首先,产生测试信号— Doppler 信号, Doppler信号为一种非平稳信号,加入白噪声,得到原始信
号和染噪信号如图

 由图可知小波分析去噪结果好于傅里叶分析去噪。在非平稳信号的去噪方面,小波分析去噪相 对于傅里叶分析具有很大的优势,并且在实际工程应用中,大多数的信号也都为非平稳信号

小波包去噪

1、分解层数对去噪效果的影响

产生 bumps 测试信号,然后高斯白噪声加入 bumps 信号,得到原始信号及加噪信号如图所示。

然后运用小波包分析对染噪信号进行去噪处理,实 验中,小波包分解层数分别设置为 2 层、4 层、5 层、8 层,得到去噪后信号波形如图 

 2、小波包与小波分析去噪比较

先产生 quadchirp 测试信号,然后将高斯白噪声加入 quadchirp ,得到原始信号及加噪信号的波形
如图

 小波包去噪方法采用软阈值去噪,4 层分解;小波分析去噪,阈值选择采用最优预测变量阈值 heursure,分别采用软阈值和硬阈值 2 种方式,分解层数为 4 层。实验分别选用 coif3sym5db4haar4 种小波基作为小波分解的基函数。仿真结果如图

 表为小波包去噪和小波去噪的结果数据,通 过表可以发现,小波包去噪相比较小波硬阈值去 噪、小波软阈值去噪具有更高的信噪比 SNR 和更低 的最小均方误差 MSE,表明对于 quadchirp 信号而 言,小波包去噪的效果要优于小波分析去噪。

实现效果图样例

matlab信号处理,小波降噪:

 我是海浪学长,创作不易,欢迎点赞、关注、收藏、留言。

毕设帮助,疑难解答,欢迎打扰!

最后

有关毕业设计-基于 MATLAB 的小波去噪的研究的更多相关文章

  1. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  2. ruby-on-rails - 使用 rails 4 设计而不更新用户 - 2

    我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它​​不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数

  3. 叮咚买菜基于 Apache Doris 统一 OLAP 引擎的应用实践 - 2

    导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵

  4. Matlab imread()读到了什么 (浅显 当复习文档了) - 2

    matlab打开matlab,用最简单的imread方法读取一个图像clcclearimg_h=imread('hua.jpg');返回一个数组(矩阵),往往是a*b*cunit8类型解释一下这个三维数组的意思,行数、数和层数,unit8:指数据类型,无符号八位整形,可理解为0~2^8的数三个层数分别代表RGB三个通道图像rgb最常用的是24-位实现方法,即RGB每个通道有256色阶(2^8)。基于这样的24-位RGB模型的色彩空间可以表现256×256×256≈1670万色当imshow传入了一个二维数组,它将以灰度方式绘制;可以把图像拆分为rgb三层,可以以灰度的方式观察它figure(1

  5. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  6. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  7. MIMO-OFDM无线通信技术及MATLAB实现(1)无线信道:传播和衰落 - 2

     MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO

  8. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  9. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  10. ruby-on-rails - 设计注册确认 - 2

    我在我的项目中有一个用户和一个管理员角色。我使用Devise创建了身份验证。在我的管理员角色中,我没有任何确认。在我的用户模型中,我有以下内容:devise:database_authenticatable,:confirmable,:recoverable,:rememberable,:trackable,:validatable,:timeoutable,:registerable#Setupaccessible(orprotected)attributesforyourmodelattr_accessible:email,:username,:prename,:surname,:

随机推荐