如何提取信号的包络

news2024/12/24 4:20:15

包络提取

如何提取信号的包络。

创建双边带振幅调制信号。载波频率为 1 kHz。调制频率为 50 Hz。调制深度为 100%。采样率为 10 kHz。

t = 0:1e-4:0.1;
x = (1+cos(2*pi*50*t)).*cos(2*pi*1000*t);

plot(t,x)
xlim([0 0.04])

Figure contains an axes object. The axes object contains an object of type line.

使用 hilbert 函数提取包络。包络是由 hilbert 计算的解析信号的幅值。绘制包络和原始信号。将 plot 函数的名称-值对组参数存储在元胞数组中,供以后使用。分析信号的幅值捕获信号的缓慢变化特性,而相位包含高频信息。

y = hilbert(x);
env = abs(y);
plot_param = {'Color', [0.6 0.1 0.2],'Linewidth',2}; 

plot(t,x)
hold on
plot(t,[-1;1]*env,plot_param{:})
hold off
xlim([0 0.04])
title('Hilbert Envelope')

Figure contains an axes object. The axes object with title Hilbert Envelope contains 3 objects of type line.

您还可以使用 envelope 函数直接生成信号包络并修改其计算方式。例如,您可以调整用于求得分析包络的希尔伯特滤波器的长度。使用太小的滤波器长度会导致包络失真。

fl1 = 12;
[up1,lo1] = envelope(x,fl1,'analytic');
fl2 = 30;
[up2,lo2] = envelope(x,fl2,'analytic');
param_small = {'Color',[0.9 0.4 0.1],'Linewidth',2};
param_large = {'Color',[0 0.4 0],'Linewidth',2};

plot(t,x)
hold on
p1 = plot(t,up1,param_small{:});
plot(t,lo1,param_small{:});
p2 = plot(t,up2,param_large{:});
plot(t,lo2,param_large{:});
hold off

legend([p1 p2],'fl = 12','fl = 30')
xlim([0 0.04])
title('Analytic Envelope')

Figure contains an axes object. The axes object with title Analytic Envelope contains 5 objects of type line. These objects represent fl = 12, fl = 30.

您可以使用滑动窗生成移动 RMS 包络。使用太小的窗长度会导致包络失真。使用太大的窗长度则会平滑掉包络。

wl1 = 3;
[up1,lo1] = envelope(x,wl1,'rms');
wl2 = 5;
[up2,lo2] = envelope(x,wl2,'rms');
wl3 = 300;
[up3,lo3] = envelope(x,wl3,'rms');

plot(t,x)
hold on
p1 = plot(t,up1,param_small{:});
plot(t,lo1,param_small{:});
p2 = plot(t,up2,plot_param{:});
plot(t,lo2,plot_param{:});
p3 = plot(t,up3,param_large{:});
plot(t,lo3,param_large{:})
hold off

legend([p1 p2 p3],'wl = 3','wl = 5','wl = 300')
xlim([0 0.04])
title('RMS Envelope')

Figure contains an axes object. The axes object with title RMS Envelope contains 7 objects of type line. These objects represent wl = 3, wl = 5, wl = 300.

您可以通过对相隔可变数量采样点的局部最大值进行样条插值来生成峰值包络。样本太分散会平滑包络。

np1 = 5;
[up1,lo1] = envelope(x,np1,'peak');
np2 = 50;
[up2,lo2] = envelope(x,np2,'peak');

plot(t,x)
hold on
p1 = plot(t,up1,param_small{:});
plot(t,lo1,param_small{:})
p2 = plot(t,up2,param_large{:});
plot(t,lo2,param_large{:})
hold off

legend([p1 p2],'np = 5','np = 50')
xlim([0 0.04])
title('Peak Envelope')

Figure contains an axes object. The axes object with title Peak Envelope contains 5 objects of type line. These objects represent np = 5, np = 50.

增大峰值分隔参数可以降低噪声引起的伪峰效应。向信号引入随机噪声。先使用包含 5 个样本的区间了解噪声对峰值包络的影响,然后用包含 25 个样本的区间重新生成峰值包络。

rng default
q = x + randn(size(x))/10;
np1 = 5;
[up1,lo1] = envelope(q,np1,'peak');
np2 = 25;
[up2,lo2] = envelope(q,np2,'peak');

plot(t,q)
hold on
p1 = plot(t,up1,param_small{:});
plot(t,lo1,param_small{:})
p2 = plot(t,up2,param_large{:});
plot(t,lo2,param_large{:})
hold off

legend([p1 p2],'np = 5','np = 25')
xlim([0 0.04])
title('Peak Envelope')

Figure contains an axes object. The axes object with title Peak Envelope contains 5 objects of type line. These objects represent np = 5, np = 25.

另请参阅

envelope | hilbert

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

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

相关文章

c语言:解决数组元素右旋问题,时间复杂度O(N)

题目: 给一个数组,如【1,2,3,4,5,6,7】,k3。 要求得到新数组【5,6,7,1,2,3,4】。 方法一,思路和…

CPS:实现销售和广告的完美结合

随着互联网的快速发展,电商行业呈现出爆炸性的增长。在这个充满竞争的市场中,如何有效地吸引和引导消费者购买产品,成为电商企业成功的关键。而CPS(Cost Per Sales)作为一种创新的广告模式,正逐渐成为电商行…

cadence virtuoso layout 创建保护环 GuardRing

本文使用的是smic130nm工艺库 参考文章:基于IC617创建保护环GuardRing(一)_版图保护环的意义-CSDN博客 SP GuardRing 按O,M1_SUB columns5 画出版图 量出各图层之间的间距,比如: CT-CT 0.18 CT-AA 0.0…

十大跑步运动耳机品牌,适合运动时戴的蓝牙耳机有哪些?

​运动耳机不仅具备出色的音质和舒适度,还有着强大的防汗防水功能,可以满足你在运动中的各种需求。无论你是喜欢户外跑步,还是喜欢室内健身,运动耳机都能为你提供优秀的音乐动力,让你更加享受运动的过程。那么怎么去选…

自动生成Form表单提交在苹果浏览器中的注意事项

以下是本人在公司旧系统中看到的该段代码 function Post(URL, PARAMTERS) {//创建form表单var temp_form document.createElement("form");temp_form.action URL;//如需打开新窗口,form的target属性要设置为_blanktemp_form.target "_blank"…

Java: 实现电影信息管理系统 (javaBean)

文章目录 电影信息系统1. 将JavaBean数据类封装好2.业务逻辑类3.测试类(main函数类) 电影信息系统 需求: 展示系统中的全部电影(每部电影展示、名称、平分)。允许用户根据电影编号(id)查询出某…

火山引擎 DataLeap 计算治理自动化解决方案实践和思考

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 【导读】本文旨在探讨火山引擎 DataLeap 在处理计算治理过程中所面临的问题及其解决方案,并展示这些解决方案带来的实际收益。主要内容包括:…

使用 Electron 来替代本地调试线上代理的场景

Cookie Samesite 问题 https://developers.google.com/search/blog/2020/01/get-ready-for-new-samesitenone-secure?hlzh-cnhttps://www.chromium.org/updates/same-site/https://github.com/GoogleChromeLabs/samesite-exampleshttps://releases.electronjs.org/releases/s…

Labview实现wav音乐播放

准备音频文件:将要播放的声音文件准备好,是.wav格式。 图形化如下: 内部逻辑如下:

名师助阵龙讯旷腾PWmat+半导体缺陷培训暨半导体缺陷计算大赛

半导体缺陷计算大赛 选拔赛截止日期:11月23日 参与杭州线下培训直接跳过选拔赛 大赛亮点 线上免费培训、线下限时领取免费名额 线下杭州培训可直通决赛,跳过选拔赛 线上培训有3次机会参与考试进入决赛 已购/未购用户均可参加、无身份限定 使用Mc…

新程出海:TikTok电商带货的6大注意事项

当下,越来越多的商家借助海外抖音TikTok平台实现电商带货。但是,由于海外市场和文化环境的不同,如果没有正确的操作方法和注意事项,会存在诸多问题和挑战。因此,接下来新程出海为您介绍海外抖音TikTok电商带货的注意事…

大数据-之LibrA数据库系统告警处理(ALM-12041 关键文件权限异常)

告警解释 系统每隔一个小时检查一次系统中关键目录或者文件权限、用户、用户组是否正常,如果不正常,则上报故障告警。 当检查到权限等均正常,则告警恢复。 告警属性 告警ID 告警级别 可自动清除 12041 严重 是 告警参数 参数名称 …

mysql 中with的用法(1)

mysql 中with的用法 1、案例一: 建表: CREATE TABLE employees (employee_id INT PRIMARY KEY,first_name VARCHAR(50),last_name VARCHAR(50),salary INT );INSERT INTO employees (employee_id, first_name, last_name, salary) VALUES (1, John, Do…

Springboot+vue的人力资源管理系统(有报告)。Javaee项目,springboot vue前后端分离项目

演示视频: Springbootvue的人力资源管理系统(有报告)。Javaee项目,springboot vue前后端分离项目 项目介绍: 本文设计了一个基于Springbootvue的前后端分离的企业资产管理系统,采用M(model&…

Kotlin Multiplatform稳定版本发布:加速跨平台开发的新里程碑

Kotlin Multiplatform稳定版本发布:加速跨平台开发的新里程碑 引言 在最新的消息中,JetBrains团队宣布Kotlin Multiplatform(KMP)将于2023年10月稳定发布。这一消息对于广大开发者来说毫无疑问是一个令人振奋的消息。KMP的正式生…

【Java】集合(一)单列集合List

1.集合 可以动态保存任意多个对象,并提供了一系列的操作对象的方法:add、remove、set、get等。 2.集合框架体系 分为两大类: 单列集合和双列集合 3.List接口基本介绍 List接口是Collection接口的子接口 List集合类中元素有序&#xff0…

2024京津冀人工智能展会(世亚智博会)展现“中国智造”高端技术

2024京津冀人工智能展会(简称:世亚智博会)已正式定档2024年6月28-30日,将启用北京亦创会展中心的一层全部展厅,预计展出面积达6万平方米,吸纳全球超过800家展商,展现“中国智造”的尖端理念与高端技术&…

制作企业期刊的网站,小白也能做出超吸睛的期刊

制作企业期刊的网站,对于许多企业来说,是一项既重要又具有挑战性的任务。然而,如果你是一位初学者或者是一位小白,也不用过于担心。按照小编说的步骤去做,你也能制作出吸引人的电子期刊 首先,你需要选择一个…

操作系统(三)进程和线程的基础知识

文章目录 前言进程和线程进程进程的状态进程控制块(PCB,Process Control Block)进程的上下文切换 线程线程的实现 进程加载进程等待和退出等待退出 优先级控制进程调试支持定时 小结 前言 本文主要涉及操作系统的简介、硬件结构、内存管理、进程管理、文件系统、设…

【Proteus仿真】【STM32单片机】停车场车位管理系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器,使用按键、LED、蜂鸣器、LCD1602、红外传感器、74HC595模块等。 主要功能: 系统运行后,LCD1602显示进入、驶出、剩余车位数…