小波变换网文精粹:小波变换教程(四)

2023-11-21 22:40
文章标签 教程 变换 网文 精粹

本文主要是介绍小波变换网文精粹:小波变换教程(四),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

小波变换网文精粹:小波变换教程(四)

原文:ROBI POLIKAR. THE ENGINEER'S ULTIMATE GUIDE TO WAVELET ANALYSIS:The Wavelet Tutorial

网址:http://users.rowan.edu/~polikar/WAVELETS/WTtutorial.html

译文转自:http://blog.163.com/renfengyuee@126/blog/static/35943136200910593251418/

四、为什么我们需要频率信息(2)?

        让我们再看一个例子,图1.5显示了一个包含四个频率分量的信号,它们分别在不同时刻出现,因此这是一个非平稳信号。0-300ms时是一个100Hz的正弦波,300-600ms时则是一个50Hz的正弦波,600-800ms时是一个25Hz的正弦波,最后的200ms内是一个10Hz正弦波。

                        

                                                                                             图1.5

下图是它的傅立叶变换:

                        

                                                                                                 图1.6

        不要担心图中出现那些毛刺,那是由于信号中频率的突变引起的,在这篇文章里这些没有意义。注意到那些高频分量的幅度比低频分量大,这是因为高频信号比低频信号持续时间更长一些(分别为300ms和200ms)(信号中各频率分量的确切值并不重要)。

        除了那些毛刺,图中的一切看起来都是正常的,有四个尖峰,对应原始信号中的四个频率分量,应该是正确的…

        错!

        当然了,也不完全错,但起码不完全对。对图1.2,考虑以下问题:各个频率分量都是在什么时刻出现的?

        答案是

        在所有时刻!还记得平稳信号吗?所有频率分量在信号的整个周期内一直存在,10Hz的信号一直存在,50Hz的信号亦然,100Hz的信号亦然。

        现在,让我们来考虑一下图1.4或1.5展示的非平稳信号。

        各个频率分量都是在什么时刻出现的?

        对于图1.6来说,我们知道,在第一个时间段内出现的是最高频率的分量,在最后一个时间段内出现的是最低频率的分量。图1.5中信号的频率分量一直在变,因此,对这些信号来说,各个频率分量并没有出现在任意时刻。

        现在,比较一下图1.3和1.6,二者的相似之处是显而易见的,在图中都显示了四个几乎一样的频率分量,即10,25,50和100Hz。除了1.6中的那些毛刺和两幅图中各频率分量的幅值(这些幅值可以做归一化处理),两幅频谱图几乎是一致的,虽然相应的时域信号之间差别很大。两个信号都包含了相同的频率分量,但是前者中的各频率分量出现在信号的整个周期内,而后者的频率分量则在不同的时间段内出现。那么,是什么导致两个完全不同的原始信号经傅立叶变换后的波形这么相像呢?回想一下,傅立叶变换仅仅给出了信号的频谱分量,但是却没有给出这些频谱分量的出现时间。因此,对于非平稳信号来说,傅立叶变换是不合适的,但有一个例外:

        只有当我们仅仅关心信号中是否包含某个频率分量而不关心它出现的时间的时候,傅立叶变换才可以用于处理非平稳信号。但是,如果这些信息是我们需要的(假设),如果我们想知道频率分量出现的确切时间,傅立叶变换就不是合适的选择了。

        对实际应用来说,很难把两者的区分开来,因为现实中平稳的和非平稳的信号都很多。举例来说,几乎所有的生物信号都是非平稳的,这其中著名的就是心电图(ECG)、脑电图(EEG)和肌电图(EMG)。

        请注意,傅立叶变换仅仅给出了信号的频率分量信息,仅此而已,无它。

        当需要对频谱分量进行时间定位时,则需要一个可以得到信号的时频表示的数学变换。

PS:原文pdf打包下载地址:http://download.csdn.net/detail/deepdsp/4061006

这篇关于小波变换网文精粹:小波变换教程(四)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/405585

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom

前端技术(七)——less 教程

一、less简介 1. less是什么? less是一种动态样式语言,属于css预处理器的范畴,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。 less的中文官网:https://lesscss.cn/ 2. less编译工具 koala 官网 http://koala-app.

【Shiro】Shiro 的学习教程(三)之 SpringBoot 集成 Shiro

目录 1、环境准备2、引入 Shiro3、实现认证、退出3.1、使用死数据实现3.2、引入数据库,添加注册功能后端代码前端代码 3.3、MD5、Salt 的认证流程 4.、实现授权4.1、基于角色授权4.2、基于资源授权 5、引入缓存5.1、EhCache 实现缓存5.2、集成 Redis 实现 Shiro 缓存 1、环境准备 新建一个 SpringBoot 工程,引入依赖:

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

Verybot之OpenCV应用二:霍夫变换查找圆

其实我是想通过这个程序来测试一下,OpenCV在Verybot上跑得怎么样,霍夫变换的原理就不多说了,下面是程序: #include "cv.h"#include "highgui.h"#include "stdio.h"int main(int argc, char** argv){cvNamedWindow("vedio",0);CvCapture* capture;i

PHP APC缓存函数使用教程

APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”。它为我们提供了缓存和优化PHP的中间代码的框架。 APC的缓存分两部分:系统缓存和用户数据缓存。(Linux APC扩展安装) 系统缓存 它是指APC把PHP文件源码的编译结果缓存起来,然后在每次调用时先对比时间标记。如果未过期,则使用缓存的中间代码运行。默认缓存 3600s(一小时)。但是这样仍会浪费大量C

Qt多语种开发教程

Qt作为跨平台的开发工具,早已应用到各行各业的软件开发中。 今天讲讲,Qt开发的正序怎么做多语言开发。就是说,你设置中文,就中文显示;设置英语就英文显示,设置繁体就繁体显示,设置发育就显示法语等。 开发环境(其实多语种这块根环境没太大关系):win10,Qt.5.12.10 一.先用QtCreator创建一个简单的桌面程序 1.工程就随便命名“LanguageTest”,其他默认。 2.在设计师