遗传性出血性毛细血管扩张症
简要地变换
语法
描述
遗传性出血性毛细血管扩张症(___)
在没有输出参数的情况下,在当前图形窗口中绘制希尔伯特频谱。您可以将此语法与以前语法中的任何输入参数一起使用。
遗传性出血性毛细血管扩张症(___,
用可选参数绘制希尔伯特谱freqlocation
)freqlocation
参数指定频率轴的位置。频率表示在y-axis。
例子
二次啁啾的希尔伯特谱
生成一个高斯调制二次啁啾。指定采样率为2 kHz,信号持续时间为2秒。
Fs = 2000;T = 0:1/fs:2-1/fs;Q = chirp(t-2,4,1/2,6,“二次”, 100,“凸”)。* exp (4 * (t - 1) ^ 2);情节(t, q)
使用emd
来可视化本征模态函数(IMFs)和残差。
emd (q)
计算信号的IMFs。使用“显示”
名称-值对输出一个表,显示每个IMF的筛选迭代次数、相对公差和筛选停止条件。
Imf = emd(q,“显示”1);
Current IMF | #Sift Iter | RelativeTol | Stop Criterion Hit 1 | 2 | 0.0063952 | SiftMaxRelativeTolerance 2 | 2 | 0.1007 | SiftMaxRelativeTolerance 3 | 2 | 0.01189 | SiftMaxRelativeTolerance 4 | 2 | 0.0075124 | SiftMaxRelativeTolerance分解停止,因为剩余信号中的极值数小于'MaxNumExtrema'值。
利用计算得到的电磁场来绘制二次啁啾的希尔伯特谱。频率范围限制在0hz ~ 20hz。
遗传性出血性毛细血管扩张症(imf, fs,“FrequencyLimits”20 [0])
执行经验模态分解和可视化信号的希尔伯特谱
加载并可视化一个由频率变化明显的正弦波组成的非平稳连续信号。手提钻的振动和烟花的声音是非平稳连续信号的例子。信号以一定的速率采样fs
.
负载(“sinusoidalSignalExampleData.mat”,“X”,“fs”) t =(0:长度(X)-1)/fs;情节(t, X)包含(“时间(s)”)
混合信号包含不同振幅和频率值的正弦波。
要创建希尔伯特频谱图,需要信号的本征模态函数(IMFs)。进行经验模态分解,计算信号的IMFs和残差。由于信号不平滑,请指定'pchip
'作为插值方法。
[imf,residual,info] = emd(X,“插值”,“pchip”);
命令窗口中生成的表格显示了每个生成的IMF的筛分迭代次数、相对公差和筛分停止准则。此信息也包含在信息
.控件可以隐藏表“显示”,0
名称值对。
方法创建希尔伯特谱图国际货币基金组织
用经验模态分解得到的分量。
遗传性出血性毛细血管扩张症(imf, fs)
频率与时间图是一个稀疏图,带有一个垂直色条,表示IMF中每个点的瞬时能量。该图表示从原始混合信号分解出的各分量的瞬时频谱。图中出现了3个在1秒内频率变化明显的imf。
希尔伯特鲸歌谱
加载一个包含太平洋蓝鲸音频数据的文件,以4千赫采样。该文件来自康奈尔大学生物声学研究项目维护的动物发声库。数据中的时间尺度被压缩了10倍,以提高音调,使呼叫更清晰。将信号转换为MATLAB®时间表并绘制它。信号中有四个特征从噪声中脱颖而出。第一种被称为a颤音,其他三个被称为呻吟.
[w,fs] = audioread(“bluewhale.wav”);鲸鱼=时间表(w,“SampleRate”fs);stackedplot(鲸鱼);
使用emd
来可视化前三个本征模态函数(IMFs)和残差。
emd(鲸鱼,“MaxNumIMF”3)
计算信号的前三个imf。使用“显示”
名称-值对输出一个表,显示每个IMF的筛选迭代次数、相对公差和筛选停止条件。
Imf = emd;“MaxNumIMF”3,“显示”1);
Current IMF | #Sift Iter |相对Tol | Stop Criterion Hit 1 | 1 | 0.13523 | SiftMaxRelativeTolerance 2 | 2 | 0.030198 | SiftMaxRelativeTolerance 3 | 2 | 0.01908 | SiftMaxRelativeTolerance分解停止,因为提取了最大数量的本构模函数。
使用计算得到的imf来绘制信号的希尔伯特谱。频率范围限制在0hz ~ 1400hz。
遗传性出血性毛细血管扩张症(国际货币基金组织(imf),“FrequencyLimits”, 1400年[0])
计算相同频率范围的希尔伯特谱。将颤音和呻吟声的希尔伯特谱可视化为网格图。
[hs,f,t] = hht(基金,“FrequencyLimits”1400年[0]);网格(秒(t), f,海关,“EdgeColor”,“没有”,“FaceColor”,的插值函数)包含(“时间(s)”) ylabel (的频率(赫兹)) zlabel (“瞬时能量”)
计算信号的希尔伯特谱参数
加载并可视化一个由频率变化明显的正弦波组成的非平稳连续信号。手提钻的振动和烟花的声音是非平稳连续信号的例子。信号以一定的速率采样fs
.
负载(“sinusoidalSignalExampleData.mat”,“X”,“fs”) t =(0:长度(X)-1)/fs;情节(t, X)包含(“时间(s)”)
混合信号包含不同振幅和频率值的正弦波。
为了计算希尔伯特谱参数,你需要信号的IMFs。进行经验模态分解,计算信号的本征模态函数和残差。由于信号不平滑,请指定“pchip”
作为插值方法。
[imf,residual,info] = emd(X,“插值”,“pchip”);
命令窗口中生成的表格显示了每个生成的IMF的筛分迭代次数、相对公差和筛分停止准则。此信息也包含在信息
.可以通过指定隐藏表“显示”
作为0
.
计算希尔伯特谱参数:希尔伯特谱海关
,频率矢量f
,时间向量t
,瞬时频率imfinsf
、瞬时能量imfinse
.
[hs,f,t,imfinsf,imfinse] = hht(imf,fs);
利用计算得到的希尔伯特谱参数进行时频分析和信号诊断。
多分量信号的VMD
生成由频率为2hz, 10hz和30hz的三个正弦波组成的多分量信号。正弦信号在1千赫采样2秒。将信号嵌入方差为0.01²的高斯白噪声中。
Fs = 1e3;T = 1:1/fs:2-1/fs;x = cos(2 *π* 2 * t) + 2 * cos(2 *π* 10 * t) + 4 * cos(2 *π* 30 * t) + 0.01 * randn(1、长度(t));
计算噪声信号的IMFs,并在三维图中可视化它们。
Imf = vmd(x);[p,q] = ndgrid(t,1:size(imf,2));plot3 (p, q,国际货币基金组织(imf)网格在包含(的时间值) ylabel (“模式数字”) zlabel (“模式振幅”)
利用计算得到的IMFs绘制多分量信号的希尔伯特谱。限制频率范围为[0,40]Hz。
遗传性出血性毛细血管扩张症(imf, fs,“FrequencyLimits”, [0, 40])
计算振动信号的希尔伯特谱
模拟损坏轴承发出的振动信号。计算这个信号的希尔伯特频谱并寻找缺陷。
节径为12厘米的轴承有8个滚动元件。每个滚动元件直径为2厘米。外部赛车保持静止,内部赛车以每秒25圈的速度行驶。加速度计对10千赫的轴承振动进行采样。
Fs = 10000;F0 = 25;N = 8;D = 0.02;P = 0.12;
来自健康轴承的振动信号包括几个阶的驱动频率。
T = 0:1/fs:10-1/fs;yHealthy = [1 0.5 0.2 0.1 0.05] * sin(2 *π* f0 *(1 2 3 4 5]。* t) / 5;
在测量过程的中途,在轴承振动中激发共振。
yHealthy = (1 + 1. / (1 + linspace(-10、10、长度(yHealthy)) ^ 4)) * yHealthy;
共振在轴承的外圈引入缺陷,导致渐进磨损。该缺陷引起一系列冲击,这些冲击在轴承的球通过频率外圈(BPFO)处重复出现:
在哪里 是驾驶速度, 是滚动元件的个数, 为滚动元件的直径, 是轴承的节径,和 为轴承接触角。假设接触角为15°,计算BPFO。
Ca = 15;Bpfo = n*f0/2*(1-d/p*cosd(ca));
使用pulstran
函数将冲击建模为5毫秒正弦周期序列。每个3千赫正弦波由一个平顶窗口打开。使用幂律在轴承振动信号中引入渐进磨损。
fImpact = 3000;tImpact = 0:1/fs:5e-3-1/fs;wImpact = flattopwin(length(tImpact))'/10;xImpact = sin(2*pi*fImpact*tImpact).*wImpact;Tx = 0:1/bpfo:t(end);Tx = [Tx;1.3。^ tx-2];nWear = 49000;nSamples = 100000;yImpact = pulstran(t,tx',xImpact,fs)/5; yImpact = [zeros(1,nWear) yImpact(1,(nWear+1):nSamples)];
通过将冲击添加到健康轴承信号中,生成BPFO振动信号。绘制信号并选择从5.0秒开始的0.3秒间隔。
yBPFO = yImpact + yHealthy;xLimLeft = 5.0;xLimRight = 5.3;yMin = -0.6;yMax = 0.6;yBPFO情节(t)在[limLeft,limRight] = meshgrid([xLimLeft xLimRight],[yMin yMax]);情节(limLeft limRight,“——”)举行从
放大所选间隔,以可视化冲击的效果。
xlim ([xLimLeft xLimRight])
在信号中加入高斯白噪声。指定的噪声方差 .
Rn = 150;yGood = yHealthy + randn(size(yHealthy))/rn;yBad = yBPFO + randn(size(yHealthy))/rn;plot(t,yGood,t,yBad) xlim([xLimLeft xLimRight])“健康”,“受损”)
使用emd
对健康轴承信号进行经验模态分解。计算前五个本征模态函数(IMFs)。使用“显示”
参数name-value输出一个表,显示每个IMF的筛选迭代次数、相对公差和筛选停止条件。
imfGood = emd(yGood,MaxNumIMF=5,Display=1);
Current IMF | #Sift Iter |相对Tol | Stop Criterion Hit 1 | 3 | 0.017132 | SiftMaxRelativeTolerance 2 | 3 | 0.12694 | SiftMaxRelativeTolerance 3 | 6 | 0.14582 | SiftMaxRelativeTolerance 4 | 1 | 0.011082 | SiftMaxRelativeTolerance 5 | 2 | 0.03463 | SiftMaxRelativeTolerance分解停止,因为提取了最大数量的本构模函数。
使用emd
没有输出参数来可视化前三个imf和残差。
emd (yGood MaxNumIMF = 5)
计算和可视化的缺陷轴承信号的IMFs。第一种经验模式揭示了高频冲击。这种高频模式的能量随着磨损的进行而增加。
imfBad = emd(yBad,MaxNumIMF=5,Display=1);
Current IMF | #Sift Iter |相对Tol | Stop Criterion Hit 1 | 2 | 0.041274 | SiftMaxRelativeTolerance 2 | 3 | 0.16695 | SiftMaxRelativeTolerance 3 | 3 | 0.18428 | SiftMaxRelativeTolerance 4 | 1 | 0.037177 | SiftMaxRelativeTolerance 5 | 2 | 0.095861 | SiftMaxRelativeTolerance分解停止,因为提取了最大数量的本构模函数。
emd (yBad MaxNumIMF = 5)
绘制缺陷轴承信号第一经验模态的希尔伯特谱。第一种模式捕捉了高频撞击的影响。冲击的能量随着轴承磨损的进行而增加。
图遗传性出血性毛细血管扩张症(imfBad (: 1), fs)
第三模态的希尔伯特谱显示了振动信号中的共振。频率范围限制在0hz ~ 100hz。
遗传性出血性毛细血管扩张症(imfBad (:, 3), fs, FrequencyLimits = 100年[0])
为了进行比较,绘制健康轴承信号的第一和第三模式的希尔伯特光谱。
subplot(2,1,1) hht(imfGood(:,1),fs) subplot(2,1,2) hht(imfGood(:,3),fs,FrequencyLimits=[0 100])
输入参数
fs
- - - - - -采样率
2π
(默认)|积极的标量
抽样率,指定为正标量。如果fs
的归一化频率2π
用于计算希尔伯特谱。如果国际货币基金组织
指定为时间表,则从中推断出抽样率。
freqlocation
- - - - - -频率轴在图上的位置
“桠溪”
(默认)|“xaxis”
频率轴在图上的位置,指定为“桠溪”
或“xaxis”
.上显示频率数据y设在或x-轴的绘图,指定freqlocation
作为“桠溪”
或“xaxis”
分别。
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:“FrequencyResolution”,1
FrequencyLimits
- - - - - -计算希尔伯特谱的频率限制
[0,fs
/ 2)
(默认)|1乘2的整数值向量
fs
/ 2)计算希尔伯特频谱的频率限制,指定为1 × 2整数值向量。FrequencyLimits
单位为Hz。
FrequencyResolution
- - - - - -频率分辨率离散频率范围
(f_high-f_low) / 100(默认)|积极的标量
频率分辨率离散频率限制,指定为正标量。FrequencyResolution
单位为Hz。如果FrequencyResolution
未指定时,值为(f高-f低) / 100是从FrequencyLimits
.在这里,f高的上限是FrequencyLimits
而且f低是下限。
MinThreshold
- - - - - -希尔伯特谱的最小阈值
负
(默认)|标量
希尔伯特谱的最小阈值,指定为标量。MinThreshold
的元素海关
到0时对应的元素
小于MinThreshold
.
输出参数
海关
-信号的希尔伯特谱
稀疏矩阵
希尔伯特谱的信号,返回为稀疏矩阵。使用海关
用于时频分析和识别信号中的局部特征。
f
-频率值
向量
信号的频率值,以矢量形式返回。遗传性出血性毛细血管扩张症
使用频率矢量f
还有时间向量t
来绘制希尔伯特谱图。
数学上,f
表示为:f=f低:fres:f高,在那里fres是频率分辨率。
imfinsf
-各IMF的瞬时频率
向量|矩阵|时间表
每个IMF的瞬时频率,作为向量、矩阵或时间表返回。
imfinsf
列数和国际货币基金组织
并返回为:
一个向量,如果
国际货币基金组织
指定为向量。一个矩阵,如果
国际货币基金组织
指定为矩阵。时间表,如果
国际货币基金组织
指定为统一采样的时间表。
imfinse
-每个IMF的瞬时能量
向量|矩阵|时间表
每个IMF的瞬时能量,以矢量、矩阵或时间表的形式返回。
imfinse
列数和国际货币基金组织
并返回为:
一个向量,如果
国际货币基金组织
指定为向量。一个矩阵,如果
国际货币基金组织
指定为矩阵。时间表,如果
国际货币基金组织
指定为统一采样的时间表。
算法
希尔伯特-黄变换对于非平稳和非线性数据的时频分析是有用的。希尔伯特-黄氏手术包括以下步骤:
参考文献
[1]黄,Norden E, Samuel S P Shen。Hilbert-Huang变换及其应用.第二版,第16卷。跨学科数学科学。世界科学,2014。https://doi.org/10.1142/8804。
[2]黄,Norden E.,吴兆华,Steven R. Long, Kenneth C. Arnold,陈先耀,Karin Blank。"在瞬时频率上。"自适应数据分析研究进展01,不。02(2009年4月):177-229。https://doi.org/10.1142/S1793536909000096。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
名称-值参数必须是编译时常量。
版本历史
在R2018a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。