我有一个大量数据的时间序列,记录了水波在楼梯上上下下的过程(见fig.1fig.2fig.3)。由于水花四溅,扫描结果中存在很多噪声。现在我希望对扫描结果进行平滑处理。
我有两个问题:
数据的x值存储在一个(mxn)矩阵中,其中时间变化在垂直方向上排列,扫描仪的x值即“激光点”在水平方向上排列。数据的y值以同样的方式存储。数据的t值存储在一个(mx1)矩阵中。
我希望我已经清楚地解释了一切,并且有人可以帮助我。如果有任何遗漏或混淆,请告诉我。
我有两个问题:
- 如何应用移动中位数滤波器(另一项研究建议使用该方法解决类似问题)? 我只能找到单个(x,y)或(t,y)图的说明,但没有针对随时间变化的x和y值的说明。也许一个平均滤波器也可以解决问题,但我对此一无所知。
- 扫描仪固定在一个点(222m)上,所有数据峰值都指向天花板上的那个点。是否有必要将其包含在平滑处理过程中?
% Plot data as real time profile
x1=data.x;y1=data.y;
t=data.t;
% add moving median filter here?
h1=plot(x1(1,:),y1(1,:));
axis([210 235 3 9])
ht=title('Scanner data');
for i=1:1:length(t);
set(h1,'XData',x1(i,:),'YData',y1(i,:));set(ht,'String',sprintf('t = %5.2f
s',data.t(i)));pause(.01);end
数据的x值存储在一个(mxn)矩阵中,其中时间变化在垂直方向上排列,扫描仪的x值即“激光点”在水平方向上排列。数据的y值以同样的方式存储。数据的t值存储在一个(mx1)矩阵中。
我希望我已经清楚地解释了一切,并且有人可以帮助我。如果有任何遗漏或混淆,请告诉我。