此函数可以计算在列向量数据上的滑动居中窗口上对面向列的数据进行操作的任何函数。 它是矢量化的,因此可以用内存来换取速度。 对于小窗口尺寸,这优于 SMOOTH 等函数。 但这不仅仅是一个快速移动平均线。 您可以指定对面向列的数据进行操作并产生标量输出的任何函数句柄,例如中值、标准差、prctile(带有标量“p”)、范围、最小值、总和。 但是您也可以创建自己的函数。 例如(相当晦涩的)函数句柄@(X) all(bsxfun(@gt,X(ceil(size(X,1)/2),:),X(1:floor(size(X,1)/2),:)),1) & all(bsxfun(@ge,X(ceil(size(X,1)/2),:),X(ceil(size(X,1)/2)+1:end,:)),1) 将返回一个逻辑数组,指示给定窗口大小上的局部最大值,仅报告高原的第一个最大值。
2023-02-23 13:52:04
2KB
matlab
1