使用相似性搜索找到信号位置
[
返回数据数组段的开始和停止索引,istart, istop
,经销
) = findsignal (数据
,信号
)数据
,它与搜索数组最匹配,信号
.最佳匹配段是这样的经销
,即线段与搜索数组之间的平方欧几里得距离最小。如果数据
和信号
矩阵,那么findsignal
的区域的开始列和结束列数据
最能匹配信号
.在这种情况下,数据
和信号
必须有相同的行数。
生成一个数据集,由一个5hz的高斯脉冲组成,带宽为50%,以1 kHz的速率采样半秒。
fs = 1 e3;t = 0:1 / fs: 0.5;data = gauspuls (0.5 t) 5);
创建一个包含一个半周期的10hz正弦信号。绘制数据集和信号。
ts = 0:1 / fs: 0.15;信号= cos(2 *π* 10 * ts);次要情节(2,1,1)情节(t)数据)标题(“数据”)子图(2,1,2)图(ts,信号)标题(“信号”)
找出与信号有最小平方欧几里得距离的数据段。绘制数据并突出显示片段。
图findsignal(数据、信号)
向数据集添加两个明显的外围部分。找出在绝对距离最小的意义上最接近信号的线段。
dt =数据;dt (t > 0.31科技< 0.32)= 2.1;dt (t > 0.32科技< 0.33)= -2.1;findsignal (dt,信号,“指标”,“绝对”)
让x如果拉伸导致最近的数据段和信号之间的绝对距离更小,则-坐标轴拉伸。
findsignal (dt,信号,“TimeAlignment”,“dtw”,“指标”,“绝对”)
向数据集添加另外两个外围部分。
dt (t > 0.1科技< 0.11)= 2.1;dt (t > 0.11科技< 0.12)= -2.1;findsignal (dt,信号,“TimeAlignment”,“dtw”,“指标”,“绝对”)
找出离信号最近的两个数据段。
findsignal (dt,信号,“TimeAlignment”,“dtw”,“指标”,“绝对”,...“MaxNumSegments”, 2)
回到找到一个片段。选择“功能”
随着x设在拉伸标准。选择编辑距离公差为3。非匹配样品之间的编辑距离独立于实际的分离,使“功能”
健壮的异常值。
findsignal (dt,信号,“TimeAlignment”,“功能”,“EDRTolerance”,3,...“指标”,“绝对”)
重复计算,但是现在对数据和信号进行归一化。
定义一个移动窗口,每个数据和信号点的任意一侧都有10个样本。
减去窗口内数据的均值,然后除以当地的标准偏差。
找出与归一化信号有最小绝对距离的归一化数据段。显示数据和信号的非规范化和规范化版本。
findsignal (dt,信号,“TimeAlignment”,“功能”,“EDRTolerance”,3,...“归一化”,“zscore”,“NormalizationLength”21岁,...“指标”,“绝对”,“注释”,“所有”)
生成一个随机的数据数组:
平均值在七个区域中都是不变的,而在各个区域之间则会突然变化。
在五个区域中,每个区域的标准差都是不变的,而在各个区域之间,标准差会突然发生变化。
lr = 20;MNS = [0 1 4 -5 2 0 1];纳米长度= (mns);VRS = [1 4 6 1 3]/2;nv =长度(工具);v = randn (lr *纳米* nv);f =重塑(repmat (mns、lr * nv 1), 1, lr *纳米* nv);y =重塑(repmat(工具与lr * nm, 1), 1, lr *纳米* nv);t = v * y + f;
绘制数据,突出其构建步骤。显示每个区域的平均值和标准偏差。
次要情节(2、2、1)情节(v)标题(“原始”700) xlim([0])次要情节(2 2 2)情节([f; v + f]”)标题(“手段”700) xlim([0])文本(lr * nv *纳米* ((0:1 / nm: 1 - 1 /海里)+ 1 /(2 *海里)),7 *(1海里),num2str (mns),...“HorizontalAlignment”,“中心”[y;v.*y]') title([y;v.*y]')“性病”700) xlim([0])文本(lr * nv *纳米* ((0:1 / nv: 1 - 1 / nv) + 1 / (2 * nv)), 7 * (nv), num2str(工具),...“HorizontalAlignment”,“中心”)子地块(2,2,4)“最后一次”700) xlim ([0])
创建一个均值为零,标准差为1/2的随机信号。查找并显示与信号最匹配的数据数组段。
sg = randn(1、2 * lr) / 2;findsignal (t, sg)
创建一个均值为0,标准差为2的随机信号。查找并显示与信号最匹配的数据数组段。
sg = randn(1、2 * lr) * 2;findsignal (t, sg)
创建一个均值为2,标准差为2的随机信号。查找并显示与信号最匹配的数据数组段。
sg = randn(1、2 * lr) * 2 + 2;findsignal (t, sg)
创建一个均值为-4,标准差为3的随机信号。查找并显示与信号最匹配的数据数组段。
sg = randn(1、2 * lr) * 3 - 4;findsignal (t, sg)
重复计算,但这次从信号和数据中减去平均值。
findsignal (t, sg,“归一化”,“zscore”,“注释”,“所有”)
设计一种类似于早期计算机输出的字体。用它来写单词MATLAB®。
rng默认的装备= @ (x) dec2bin (x ') -48;M = chr([34 34 54 42 34 34 34 34]);A = chr([08 20 34 34 62 34 34]);T = chr([62 08 08 08 08 08 08 08 08 08 08 08]);L = chr([32 32 32 32 32 32 62]);B = chr([60 34 34 60 34 34 60]);Matlab = [m a t l a b];
通过重复随机的字母列和改变间距来破坏单词。出示原文和三个被篡改的版本。
C = @(x)x(:,sort([1:6 randi(6,1,2)]));次要情节(4,1,1,“XLim”,[0 60]) spy(MATLAB) xlabel(”) ylabel (“原始”)为subplot(4,1, Kj,)“XLim”, 60[0])间谍([c (M) c (A) c (T) (L) c c (A) (B)))包含(”) ylabel (“腐败”)结束
再生成一个错误的单词。搜索字母" a "的嘈杂版本显示搜索数组与最接近的数据段之间的距离。因为水平轴是刚性的,所以线段溢出到“T”中。
= [c(M) c(A) c(T) c(L) c(A) c(B)];胡志明市= c (A);(是,印第安纳州,dst) = findsignal (corr胡志明市);CLF subplot(2,1,1) spy(sgn) subplot(2,1,2) spy(corr) CHK = 0 (size(corr));嗯(:,是:印第安纳)= corr(:,是:印第安纳);持有在间谍(嗯,‘* k”)举行从
dst
dst = 11
允许水平轴拉伸。最近的段是搜索数组和a的第一个实例的交集段与数组之间的距离为零。
(是,印第安纳州,dst) = findsignal (corr、胡志明市、“TimeAlignment”,“dtw”);Subplot (2,1,1) spy(sgn) Subplot (2,1,2) spy(corr) CHK = 0 (size(corr));嗯(:,是:印第安纳)= corr(:,是:印第安纳);持有在间谍(嗯,‘* k”)举行从
dst
dst = 0
的内置功能重复计算findsignal
.除以局部均值使数据和信号归一化。使用对称的Kullback-Leibler度量。
findsignal (corr、胡志明市、“TimeAlignment”,“dtw”,...“归一化”,“权力”,“指标”,“symmkl”,“注释”,“所有”)
数据
- - - - - -数据数组指定为向量或矩阵的数据数组。
数据类型:单
|双
复数的支持:金宝app是的
信号
- - - - - -搜索的数组搜索数组,指定为向量或矩阵。
数据类型:单
|双
复数的支持:金宝app是的
指定可选的逗号分隔的对名称,值
参数。的名字
参数名和价值
为对应值。的名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“MaxNumSegments”2“度量”,“方”,“正常化”,“中心”、“NormalizationLength”,11
找到数据数组中与搜索信号有最小平方欧几里得距离的两段。数据和信号都是通过减去滑动窗口的均值来归一化的。窗口在每个点的任意一侧都有5个样本,总长度为5 + 5 + 1 = 11个样本。
归一化
- - - - - -归一化数据“没有”
(默认)|“中心”
|“权力”
|“zscore”
归一化统计,指定为逗号分隔的对,由“归一化”
其中一个价值观是:
“没有”
-不要正常化。
“中心”
-减去局部均值。
“权力”
-除以当地平均值。
“zscore”
-减去本地均值,再除以本地标准差。
NormalizationLength
- - - - - -归一化长度长度(数据)
(默认)|整数标量规范化长度,指定为逗号分隔对,由“NormalizationLength”
和一个整数标量。这个值表示对数据和信号中的每个样本进行归一化的最小样本数。如果信号是个矩阵,那么“NormalizationLength”
表示多个列。
数据类型:单
|双
MaxNumSegments
- - - - - -返回的最大段数1
(默认)|正整数标量要返回的最大段数,指定为由逗号分隔的对组成“MaxNumSegments”
一个正整数标量。如果您指定“MaxNumSegments”
,然后findsignal
定位数据
哪个距离信号的距离是局部极小值并返回到最大值“MaxNumSegments”
距离最小的段。
数据类型:单
|双
EDRTolerance
- - - - - -编辑距离公差编辑距离公差,指定为逗号分隔对组成“EDRTolerance”
一个实标量。时,使用此参数查找信号“TimeAlignment”
名称-值对参数设置为“功能”
.
数据类型:单
|双
度规
- - - - - -距离度量“方”
(默认)|“绝对”
|“欧几里得”
|“symmkl”
距离度量,指定为逗号分隔对,由“指标”
其中一个“方”
,“绝对”
,“欧几里得”
,或“symmkl”
.如果X和Y都是K维信号,然后度规
规定d锰(X,Y)之间的距离米th的样本X和nth的样本Y.看到动态时间扭曲有关d锰(X,Y).
“方”
-欧几里得度量的平方,由差的平方和组成:
“欧几里得”
-差的平方和,也称为欧几里得或ℓ2度量:
“绝对”
-绝对差异之和,又称曼哈顿、城市街区、出租车或ℓ1度量:
“symmkl”
-对称Kullback-Leibler度量。这个度量仅对实数和正数有效X和Y:
注释
- - - - - -情节风格“信号”
(默认)|“数据”
|“所有”
绘图样式,指定为逗号分隔对,由“注释”
其中一个价值观是:
“数据”
绘制数据并突出显示与信号最匹配的区域。
“信号”
在单独的子图中绘制信号。
“所有”
在单独的子图中绘制信号、数据、归一化信号和归一化数据。
如果调用,此参数将被忽略findsignal
输出参数。
istart, istop
段开始和结束索引段开始和结束索引,以整数标量或向量的形式返回。
经销
-最小数据信号距离以标量或矢量形式返回的最小数据信号距离。
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。