给我一个对重力异常进行滑动平均滤波处理的matlab代码
时间: 2024-05-25 07:19:15 浏览: 110
滑动平均滤波matlab程序
以下是一个对重力异常进行滑动平均滤波处理的Matlab代码示例:
% 假设有一个重力异常数据向量 g,其长度为 N
% 滑动平均滤波窗口大小为 w
w = 5; % 滑动平均窗口大小
g_filtered = zeros(N,1); % 初始化滤波后的向量
for i = 1:N
if i <= w/2 % 处理前 w/2 个数据
g_filtered(i) = mean(g(1:i+w/2));
elseif i > N-w/2 % 处理后 w/2 个数据
g_filtered(i) = mean(g(i-w/2:N));
else % 处理中间的数据
g_filtered(i) = mean(g(i-w/2:i+w/2));
end
end
% 输出滤波后的数据向量
disp(g_filtered);
阅读全文