How to do Lanczos Filtering of 3-D geospatial data?

5 views (last 30 days)
I have 3-D geospatial data of Geopotential anomalies that has 8658 time points, and 31x31 spatial points ( 8658time x 31 Lat x 31 Lon). I need to filter the data to retain only high frequency anomalies, using LANCZOS FILTER. The errors on execution point out that Lanczos filtering is done on 2-D time series (any way past this issue?). Now I have hustled through a variety of permutations; closest one being converting that data into (31x31 = 961) 2-D arrays of 8658x1 elements (i.e. separate time-series for each spatial point), applied the filter and then concatenated the resulting arrays into the original 8658x31x31. I am totally unsure about the authenticity of this. In a nutshell I need to apply high pass filter on 3-D data of dimensions [time x latitude x longitude]. Any thoughts?

Answers (1)

Xin Xiao
Xin Xiao on 10 May 2021
Based on ndnanfilter.m - File Exchange - MATLAB Central (mathworks.cn), a Guassian filter was bulit by filt2 2D geospatial data filter - File Exchange - MATLAB Central (mathworks.cn). You can change line <f = fspecial('gaussian',2*ceil(2.6*sigma)+1,sigma);> in filt2.m to build a Lanzos filter.
Hope this help for you.

Categories

Find more on Just for fun in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!