matlab小波脊线,小波脊线提取,模极大值法。运行的结果不太对,代码有些地方我也没完全看懂...

本帖最后由 1393107100 于 2019-5-1 11:10 编辑

clear,clc

close all

%%%%%% 小波变换 %%%%%%%%%%%%%%%%

fs=1024;

t=1/fs:1/fs:1;

f1=100;f2=200;f3=300;

s=cos(2*pi*f1*t.*(t>=0&t<0.3))+2*cos(2*pi*f2*t.*(t>=0.3&t<0.8))+3*sin(2*pi*f3*t.*(t>=0.8&t<=1));

%s=cos(2*pi*f1*t);

figure(1);

plot(t,s,'b')

title('原始单频信号')

Y = awgn(s,6);%加高斯白噪声

subplot(412);

plot(t,Y,'r')

title('加信噪比为6的白噪声')

%%%%%%%%%%%%%%%%%小波时频图绘制 %%%%%%%%%%%%%%%%%%%%%

wavename='cmor4-4';    %%选用带宽参数和中心频率均为4 的复morlet小波

totalscal=256;          %尺度序列的长度,即scal的长度

fc=centfrq(wavename);%% 小波的中心频率

%%%%%%%%% 绘制时间域小波波形 %%%%%%%%%%%%%%%%%%%

cparam=2*fc*totalscal;%为得到合适的尺度所求出的参数

a=totalscal:-1:1;

scal=cparam./a;%得到各个尺度,以使转换得到频率序列为等差序列

coefs=cwt(Y,scal,wavename,1/fs);%求连续小波系数,小波系数coefs(系数是复数时要取模)

f=scal2frq(scal,wavename,1/fs);% 将尺度转换为频率.F = scal2frq(A,'wname',DELTA),该函数能将尺度转换为实际频率,其中A为尺度,wname为小波名称,DELTA为采样周期。

figure(2);

imagesc(t,f,abs(coefs)); %绘制色谱图

colormap(jet)

colorbar

xlabel('时间 t/s')

ylabel('频率 f/Hz')

title('小波时频图')

abs_coefs=abs(coefs).^2;%abs函数:数值的绝对值和复数的幅值,

bw=abs_coefs>=0.7*mean(mean(abs_coefs));%mean数组的均值.mean(A)如果A为矩阵,那么返回包含每列均值的行向量。

bw=bwlabel(bw);%在BW数组中,0代表黑背景,1代表白

for i=1:max(max(bw))

if length(find(bw==i))>1000

bw(find(bw==i))=-1;

end

end

bw=bwlabel(bw==-1);

figure(3)

imagesc (bw); title('脊线区域')

out=zeros(size(coefs));% 输出:大小为输入的矩阵大小,各元素的值为0

for i=1:max(max(bw))

out=out+local_maxima(abs_coefs,bw,i);%小波系数模局部极大值

end

out=out.*bw;

RIDGE=zeros(size(coefs));

for i=1:max(max(out))

[x,y]=find(out==i);

x=x(1:100:end);

if length(x)<3

break;

end

cs = spline(y(1:100:end),x);

%spline三次方样条数据插值

%pp = spline(x,y) 返回一个分段多项式结构体以用于 ppval 和样条实用工具 unmkpp

x_new=round(ppval(cs,y(1):y(end)));

x_new(find(x_new<=0))=1;

for i=1:length(x_new)

RIDGE(x_new(i),y(i))=1;

end

end

figure,imagesc (RIDGE);  title('脊线')

时频图.jpg

(22.45 KB, 下载次数: 2)

2019-5-1 11:10 上传

b4d287d1aacbf0cf95a77c41289acfe6.gif

c5006d1a5b4047f80d42a7082635a87b.gif

时频图

0ae81e0eabbb44ea0eb5945d5ee49317.png

脊线.jpg

(14.9 KB, 下载次数: 0)

2019-5-1 11:08 上传

b4d287d1aacbf0cf95a77c41289acfe6.gif

c5006d1a5b4047f80d42a7082635a87b.gif

脊线图

1a652eab74b772f7329f1424beab275d.png

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

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

相关文章

php json追加500错误,在composer.json中添加了一个git地址;composer update 报错

在composer.json中添加了一个git地址&#xff1b;composer update 报错&#xff0c;不知道是什么原因导致的&#xff0c;如图&#xff1a;问题补充&#xff1a;在BAE包里面添加composer.json 后 重新composer updateYour requirements could not be resolved to an installable…

matlab曲线拟合 最低点,Matlab曲线拟合 最小二乘法 polyfit【转】

曲线拟合已知离散点上的数据集 &#xff0c;即已知在点集 上的函数值 &#xff0c;构造一个解析函数(其图形为一曲线)使 在原离散点 上尽可能接近给定的值&#xff0c;这一过程称为曲线拟合。最常用的曲线拟合方法是最小二乘法&#xff0c;该方法是寻找函数 使得 最小。MATLAB函…

sin查找表 matlab,利用Xilinx中的ROM构造查找表来计算sin和cos的方法探讨

1.使用matlab制作.coe文件查找表的构造构造256点的正余弦表exp(-j*2*pi*(0:255)/256)&#xff0c;分别得到 cos和sin的查找表matlab代码: 求sinfid fopen(sin.txt,a );str1 MEMORY_INITIALIZATION_RADIX10;;str2 MEMORY_INITIALIZATION_VECTOR;fprintf(fid,\t%s\n \t%s\n, s…

php提取pdf首页图片,pdf图片怎么提取

pdf图片的提取方法&#xff1a;首先用极速PDF阅读器打开文档&#xff1b;然后在图片处单击鼠标右键并选择“复制图片”&#xff0c;这时就可以粘贴发送了。本文操作环境&#xff1a;Windows7系统&#xff0c;Microsoft Office PowerPoint2020版本&#xff0c;Dell G3电脑。pdf图…

dlopen linux 实例_Linux静态库和动态库

库从本质上来说是一种可执行代码的二进制格式&#xff0c;可以被载入内存中执行。库分静态库和动态库两种。 静态库和动态库的区别1. 静态函数库这类库的名字一般是libxxx.a&#xff1b;利用静态函数库编译成的文件比较大&#xff0c;因为整个 函数库的所有数据都会被整合进目标…

反射setaccessible_advancedday16类加载器,反射

加载配置文件在src目录下创建一个config.properties配置文件&#xff0c;使用类加载器加载配置文件。//创建集合Properties propertiesnew Properties();//获取src目录下&#xff0c;配置文件的流InputStream in ClassLoader.getSystemClassLoader() .getResourceAsStream(…

基于matlab的语音信号,科学网—[转载]【信息技术】【2014.06】【含源码】基于MATLAB的语音信号处理与分析 - 刘春静的博文...

本文为瑞典耶夫勒大学(作者&#xff1a;Nan Wu)的学士论文&#xff0c;共48页。语音传递是人类最重要、最有效、最常用的信息交流方式。语言是人类特有的特征&#xff0c;而人声是常用的工具&#xff0c;也是相互传递信息的重要途径。语音具有较大的信息容量。因此&#xff0c;…

string.intern_使用String.intern()减少内存使用

string.intern时不时地会有一个垂死的生产应用程序。 而且您知道您需要尽快对其进行修补。 我们也是如此&#xff0c;并认为分享最近的一个战争故事会很有趣。 在这种情况下&#xff0c;我们就有机会使用String.intern&#xff08;&#xff09;之类的简单补丁来修补应用程序。 …

微信批量退款php,微信支付退款接口详解

微信支付有2个退款相关的接口&#xff0c;分别是申请退款API和查询退款API&#xff0c;这2个接口在实际微信支付开发中都会用到。其中申请退款API因为安全性&#xff0c;需要使用证书&#xff0c;证书在商户平台后台下载.申请退款接口支持一年以内的订单退款&#xff0c;可以分…

1235813找规律第100个数_人教版一年级下册数学第1-8单元知识点梳理填空,附答案...

参考答案&#xff1a;第一单元 认识图形1、认识平面图形 2、平面图形的拼组用相同的正方形、长方形或三角形可以分别拼成更大的正方形、长方形或三角形。3、认识七巧板 七巧板是由1个正方形、1个平行四边形、5个三角形组成的。第二单元 20以内的退位减法1、十几减几的计算方法(…

pandas整表写入excel指定位置_当Python遇到Excel,一个能打的都没有~

几乎人人都在用Excel&#xff0c;这种极易上手的数据分析工具无处不在&#xff0c;一旦你掌握了窍门&#xff0c;它就变得非常强大。而Python通常被认为更具有挑战性&#xff0c;但能做的事也更多。当Python遇到Excel会发生什么&#xff1f;本文将告诉你&#xff0c;这三项Exce…

无需再忙了:Lambda-S3缩略图,由SLAppForge Sigma钉牢!

如果你还没有注意到了&#xff0c;我最近被唠叨试图开始使用时&#xff0c;我遭遇了陷阱AWSλ-S3正式例子 。 虽然大多数这些愚蠢的错误的指责是对我自己的懒惰&#xff0c;过度自尊和缺乏对细节的关注&#xff0c;我个人觉得&#xff0c;在开始与一家领先的无服务器供应商不应…

sqlyog设置自动补全_Visual Studio Code 最好的功能、插件和设置

Visual Studio Code 是由 Microsoft(微软) 发布的一个免费的&#xff0c;开源的跨平台文本编辑器。他们基于在线编辑 Visual Studio Online (代号为 “Monaco”)&#xff0c;并结合 GitHub 的 Electron 实现的一个跨平台编辑器。他们在为程序员创建一个快速且高效工作环境方面取…

ejb 示例 2018_Java EE EJB拦截器教程和示例

ejb 示例 2018在此示例中&#xff0c;我们将看到如何在EJB中使用拦截器并使用简单的Web应用程序对其进行测试。 1.简介 顾名思义&#xff0c;当您想拦截对EJB方法的调用时&#xff0c;将使用拦截器。 如果为Bean声明一个拦截器&#xff0c;则每次调用该Bean的方法时&#xff0…

linux怎么使用串口线,如何在Linux下使用USB转串口线,鼎力告诉您

亲爱的朋友&#xff0c;如果您使用的Linux的系统&#xff0c;应该怎么来使用我们的鼎力的USB转串口线呢&#xff1f;下面就来告诉您吧&#xff01;用Linux&#xff0c;不需要另外安装USB转串口驱动!前提是你要先安装minicom输入命令&#xff1a;dmesg| grep usb&#xff0c;看到…

comsol分析时总位移代表什么_超弹性材料模型的压缩分析

为了表征超弹性材料&#xff0c;需要进行各种测试获取实验数据&#xff0c;包括承受单轴拉伸和压缩、双轴拉伸和压缩以及扭转测试。今天&#xff0c;我们向大家介绍如何使用通过单轴和双轴测试获得的拉伸和压缩测试数据&#xff0c;模拟由弹性泡沫材料制成的球体的压缩。通过案…

由对称性知定点一定在x轴上_线上优秀教学案例(九)|计算机科学与工程学院刘钊:“延期不延教”之“1+X课堂”...

【编者按】受新冠肺炎疫情影响&#xff0c;按照教育部和河北省教育厅统一部署&#xff0c;学校延迟春季开学时间。为最大程度减少疫情和延期开学对我校教育教学工作的影响&#xff0c;本学期&#xff0c;我校以线上教学的形式拉开序幕。面对新的教学模式&#xff0c;各学院、广…

和显卡驱动要配套吗_天天学渲染,你的显卡驱动用对了吗?

大家好&#xff0c;最近一直有很多人和我反馈说&#xff0c;自己在使用Octane或者Redshift渲染器渲染的时候经常容易崩溃&#xff0c;甚至是闪退了&#xff0c;其实这个问题有很大一部分原因是由于你的显卡驱动没用对导致的。接下来就和大家说下如何解决。首先我们大部分人买了…

网络研讨会:Java 9的第一印象–构建可伸缩企业应用程序的新方法

在此网络研讨会上听我们对新Java版本的一些初步想法 Java 9的新版本引起了很多炒作。在Mark Reinhold领导的专门团队的带领下&#xff0c;将Java平台迁移到模块花费了近十年的辛苦工作。 除了备受期待的Project Jigsaw&#xff0c;此版本还包含许多其他令人兴奋的功能。 现在是…

noj数据结构稀疏矩阵的加法十字链表_一个算法毁了一款好游戏?算法和数据结构到底有多重要?...

来源 | 异步前段时间大火的国产游戏——《太吾绘卷》&#xff0c;由于创新的玩法和精良的制作一度广受好评&#xff0c;然而随着玩家游戏的深入和时长的积累&#xff0c;发现该游戏在玩的过程中游戏外的问题很多很多。首先是存档速度慢&#xff0c;然后是密集的计算导致功耗大量…