小波基函数构造matlab,五种常见小波基函数及其matlab实现全解.docx

五种常见小波基函数及其matlab实现全解

与标准的傅里叶变换相比,小波分析中使用到的小波函数具有不唯一性,即小波函数 具有多样性。小波分析在工程应用中,一个十分重要的问题就是最优小波基的选择问题,因为用不同的小波基分析同一个问题会产生不同的结果。目前我们主要是通过用小波分析方法处理信号的结果与理论结果的误差来判定小波基的好坏,由此决定小波基。常用小波基有Haar小波、Daubechies(dbN)小波、Mexican Hat(mexh)小波、Morlet小波、Meyer小波等。Haar小波Haar函数是小波分析中最早用到的一个具有紧支撑的正交小波函数,也是最简单的一个小波函数,它是支撑域在范围内的单个矩形波。Haar函数的定义如下:Haar小波在时域上是不连续的,所以作为基本小波性能不是特别好。但它也有自己的优点:计算简单。不但与正交,而且与自己的整数位移正交,因此,在的多分辨率系统中,Haar小波构成一组最简单的正交归一的小波族。的傅里叶变换是:Haar小波的时域和频域波形[phi,g1,xval] = wavefun('haar',20);subplot(2,1,1);plot(xval,g1,'LineWidth',2);xlabel('t')title('haar 时域');g2=fft(g1);g3=abs(g2);subplot(2,1,2);plot(g3,'LineWidth',2);xlabel('f')title('haar 频域')Daubechies(dbN)小波Daubechies小波是世界著名的小波分析学者Inrid·Daubechies构造的小波函数,简写为dbN,N是小波的阶数。小波和尺度函数中的支撑区为,的消失矩为。除(Harr小波)外,dbN不具有对称性(即非线性相位)。除(Harr小波)外,dbN没有明确的表达式,但转换函数h的平方模是明确的:令,其中为二项式的系数,则有其中:Daubechies小波具有以下特点:在时域是有限支撑的,即长度有限。在频域在处有N阶零点。和它的整数位移正交归一,即。小波函数可以由所谓“尺度函数”求出来。尺度函数为低通函数,长度有限,支撑域在的范围内。db4的时域和频域波形:[phi,g1,xval] = wavefun('db4',10);subplot(2,1,1);plot(xval,g1,'LineWidth',2);xlabel('t')title('db4 时域');g2=fft(g1);g3=abs(g2);subplot(2,1,2);plot(g3,'LineWidth',2);xlabel('f')title('db4 频域')Daubechies小波常用来分解和重构信号,作为滤波器使用:[Lo_D,Hi_D,Lo_R,Hi_R] = wfilters('db4'); %计算该小波的4个滤波器subplot(2,2,1); stem(Lo_D,'LineWidth',2);title('分解低通滤波器');subplot(2,2,2); stem(Hi_D,'LineWidth',2);title('分解高通滤波器');subplot(2,2,3); stem(Lo_R,'LineWidth',2);title('重构低通滤波器');subplot(2,2,4); stem(Hi_R,'LineWidth',2);title('重构高通滤波器');Mexican Hat(mexh)小波Mexican Hat函数为Gauss函数的二阶导数:因为它的形状像墨西哥帽的截面,所以也称为墨西哥帽函数。Mexihat小波的时域和频域波形:d=-6; h=6; n=100;[g1,x]=mexihat(d,h,n);subplot(2,1,1);plot(x,g1,'LineWidth',2);xlabel('t');title('Mexihat 时域');g2=fft(g1);g3=(abs(g2));subplot(2,1,2);plot(g3,'LineWidth',2);xlabel('f');title('mexihat 频域');Mexihat小波的特点:在时间域与频率域都有很好的局部化,并且满足。不存在尺度函数,所以Mexihat小波函数不具有正交性。Morlet小波它是高斯包络下的单频率副正弦函数:其中C是重构时的归一化常数。Morlet小波没有尺度函数,而且是非正交分解。Morlet小波的时域和频域波形图:d=-6; h=6; n=100;[g1,x]=morlet(d,h,n);subplot(2,1,1);plot(x,g1,'LineWidth',2);xlabel('t');title('morlet 时域');g2=fft(g1);g3=(abs(g2));subp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/550575.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php单下划线的函数,基于PHP函数的操作方法

如下所示://简单函数function show(){echo "hello";}show();//有参数的函数function show($a){echo "$a";}show("world");//有返回值的函数function show(){return "小V,你好!";}echo show();functi…

php 识别图片主色调,PHP 判断图片主色调的简单示例

这篇文章主要为大家详细介绍了PHP 判断图片主色调的简单示例,具有一定的参考价值,可以用来参考一下。这段代码可以帮助你判断任意图片的主色调,使用了简单的统计算法实现 ,感兴趣的小伙伴,下面一起跟随512笔记的小编罗…

加密扩展库 php,如何利Mcrypt扩展库进行加密和解密_php

综述:Mcrypt 2.4.7是一个功能强大的加密算法扩展库,它包括有22种算法,其中就包括下面的几种算法:Blowfish RC2 Safer-sk64 xteaCast-256 RC4 Safer-sk128DES RC4-iv SerpentEnigma Rijndael-128 Threewayhttp://www.gaodaima.com/…

java中数组中添加新元素,求解!!!往ArrayList数组里添加元素,貌似没加进去。...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼points、pointl、pointp、L、P都是数组,分别是点、线、面。它们的关系是:points里包含多个point,L里包含多条pointl,P里包含多个pointp.我想往里面添加点要素。private void addActio…

php中数组下标,PHP数组介绍_php

数组基础:php中,数组的下标可以整数,也可以是字符串php中,数组的元素顺序不是由下标决定,而是由其“加入”的顺序决定定义:$arr1 array(元素1,元素2,。。。。。。);array(1,1.1,5,a…

php支持ssi,让Apache支持SHTML(SSI)的配置方法

shtml和asp有一些相似,以shtml命名的文件里,使用了ssi的一些指令,就像asp中的指令,你可以在SHTML文件中写入SSI指令,当客户端访问这些shtml文件时,服务器端会把这些SHTML文件进行读取和解释,把S…

python 发红包import random用redenv,Python微信发红包编码案例 微信发红包的架构模式 - push博客...

Python手机微信红包优化算法案例#!/usr/bin/env python# coding: utf-8import random# m : 红包个数# n : 红包人数# packet : 本次抢到的金额 , 所有金额以分为计算def redEnvelope(m,n):remain m*100 #剩余金额nn n #剩余人数for i in range(1,n):if remain 0 :print(已经…

oracle hang analyze,hanganalyze 分析数据库挂起

0 概览hanganaylze主要步骤:oradebugsetmypidoradebugunlimit--RAC环境oradebugsetinstall--级别一般指定为3足够了oradebughanganalyze3--RAC环境oradebug-g defdump systemstate10oradebugtracefile_name解读 hanganalyze 报告State of ALL nodes([nodenum]/cnode…

先学Oracle还是Java,事前学习过的java和Oracle笔记没删除的都带过来

一个clientimport java.net.*;import java.io.*;public class client {public static void main(String[] args)throws Exception{Socket ssnew Socket("127.0.0.1",6666);OutputStream osss.getOutputStream();DataOutputStream dosnew DataOutputStream(os);dos.wr…

在电脑搭建oracle服务器端,oracle 服务器端搭建(C#开发环境)

oracle 服务器端搭建(C#开发环境)oracle 服务器端搭建(C#开发环境)常见问题:问:安装plsql 能直接 连接 oracle 服务器端吗?答:32可以直接连接,但是64为需要配置问:下载plsql 对于的版本的选择 是选择64位好…

【网络奇遇记】揭秘计算机网络的性能指标:速率|带宽|吞吐量|时延

🌈个人主页:聆风吟 🔥系列专栏:网络奇遇记、数据结构 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋前言一. 速率1.1 数据量1.2 速率 二. 带宽三. 吞吐量四. 时延4.1 发送时延4.2 传播时延…

Oracle导入ixf文件,Shell读取文本批量导出\导入DB2数据

需求背景:由于DB2 exp\imp数据只能一张表一张表的exp\imp所以通过把所有的表都写在一个exp_imp_db2.txt文件中exp_imp_db2.txt格式如下:(i|e) schema_name table_name src_name ---iimport ;eexportexp_imp_db2.sh#!/bin/shdb2 connect to…

oracle tsn 数据库,【Oracle数据库恢复】ORA-00600[25027]错误解析

ORA-00600[25027]错误的触发原因是ORACLE检测到一个无效的表空间号TSN Tablespace Number或者相对文件号Relative File Number。该ORA-00600[25027]的2个变量各代表:arg[a] Tablespace Number表空间号arg[b] 十进制的相对数据块号Relative Data Block Address (RDBA…

怎么查看ip地址下的php文件夹,pe下查看原系统ip的方法

pe下查看原系统ip的方法方法及步骤如下:在PE下加载注册表,找到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces],在“Interfaces”选项下面可以看到有多个注册表子项,依照不同子项下面的“IP…

如下为利用Linux内核链表创建,Linux内核中链表的实现与应用

链表(循环双向链表)是Linux内核中最简单、最常用的一种数据结构。1、链表的定义struct list_head {struct list_head *next, *prev;}这个不含数据域的链表,可以嵌入到任何数据结构中,例如可按如下方式定义含有数据域的链表:struct my_list {void * mydata;struct l…

linux共享内存示例,linux 进程间共享内存示例

写入端:#include #include #include #include #include using namespace std;struct MappingDataType {int mappingData;};bool SetUsedPID(string mappingName){void *shm NULL;MappingDataType *shared;int shmid shmget((key_t), sizeof(MappingDataType), |IP…

Linux使用cmake编译项目,如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake)...

如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake)我使用的是ubuntu 14.04,cmake 2.8.12.2,Qt5.6.2(内置版本),GNU make 3.81用cmake PathToSource -G "Eclipse CDT4 - Unix Makefiles"运行cmake之后…

linux cmake 编译项目,使用CMake构建复杂工程

0. 什么是CMakeCMake是一个跨平台的编译、安装、测试以及打包工具;CMake不直接编译软件,而是结合原生构建系统来构建软件。CMake配置文件是CMakeList.txt文件(每个源码文件夹下都要有一个),CMake根据配置文件在生成Unix的Makefile或VS的solut…

Linux防火墙屏蔽ip6,观点|Linux 发行版们应该禁用 IPv4 映射的 IPv6 地址吗?

从各方面来看,互联网向 IPv6 的过渡是件很缓慢的事情。不过在最近几年,可能是由于 IPv4 地址资源的枯竭,IPv6 的使用处于上升态势。相应的,开发者也有兴趣确保软件能在 IPv4 和 IPv6 下工作。但是,正如近期 OpenBSD 邮…

linux db2 权限管理,DB2五种管理权限

DB2五种管理权限SYSADM, SYSCTRL SYSMAINT DBADM and LOAD前三个权限是instance-level,and can only be assigned to a group and are done so through the Database Manager Configuration file.后两个权限是database-level,are assigned to a user or group for …