如何规范化信号意味着= 0和振幅0到1吗

149(30天)
谢
2021年10月18日
评论道: 为副总经理 2021年10月19日
我有单通道脑电图数据。我必须规范化它意味着= 0和振幅应该使用这个公式在0到1之间
N =正常化(A)
我用这个,但我不确定这是什么做我的数据。然后我尝试以下代码,我不知道选择什么尺型,使振幅范围在0和1之间。
N =正常化(,“中心”,意思是,“规模”scaletype)

答案(2)

马修•诺伊
马修•诺伊 2021年10月18日
你好
如果你不自信如何使用 正常化 ,你可以做同样的事情
x = x -意味着(x);%去除平均值(您也可以使用去趋势)
x = x / max (abs (x));%正常化的数据范围+ / - 1

为副总经理
为副总经理 2021年10月18日
编辑:为副总经理 2021年10月18日
如果你有一个数据集,意思是零,振幅在区间[0,1],那么整个数据集是新鲜感。为了数据范围跨度间隔,意味着必须不是相等的间隔极值。
我假设你的意思是一个区间[0,1],平均0.5,或一个区间[1]和平均为0。
用简单的缩放和平移,你可以做两件事之一:
  • 调整的数据适合一个间隔,新意味着在这个区间
  • 调整的数据跨度一个间隔,均值和极值之间的关系是不变
表达你给表明你想要跨越时间间隔的数据。你能扭曲数据,这样的对称约束得到满足吗?是的。这是你想要的吗?这是适合分析吗?
无视后者的可能性,考虑的例子:
%创建示例数据
x = linspace(0, 6 *π,100);
y = 2 * sin (x)。^ 6 + 1;
%显示例子
情节(x, y);持有
情节([0 6 *π],[1]*意味着(y),“:”)
%正常化跨越[0 1]
yspan = (y-min (y))。/ (max (y)分钟(y));
% yspan =正常化(y,“范围”,[0 1]);
clf;情节(x, yspan);持有
情节([0 6 *π],[1]*意味着(yspan),“:”)
%规范化与指定适合[0 1]的意思
newmean = 0.5;%指定的意思是约束
操作系统= max (abs(平均(y)分钟(y)), abs(平均(y) -麦克斯(y)));
yfitmean = (y-mean (y)) / (2 * os) + newmean;
% yfitmean =正常化(y,“中心”,newmean);
clf;情节(x, yfitmean);持有
情节([0 6 *π],[1]*意味着(yfitmean),“:”)
2的评论
为副总经理
为副总经理 2021年10月19日
第一次手术的效果通过第二个被丢弃。只使用“范围”正常化如果这是你想要的,因为这就是结果。
x = linspace(0, 6 *π,100);
y = 2 * sin (x)。^ 6 + 1;
%完成两个操作序列
一个=正常化(y,“中心”);
一个=正常化(,“范围”);
情节(x);持有
情节([0 6 *π],[1]*意味着(A),“:”)
%做一系列规范化
B =正常化(y,“范围”);
clf
情节(x、B);持有
情节([0 6 *π],[1]*意味着(B),“:”)

登录置评。

类别

找到更多的在生物医学信号处理帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!