2D Fourier transform for surface fitting
13 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I'm having a scattered x,y,z data and I'm looking for the Fourier series which can fit the scattered data forming a surface. Can anyone suggest any good method that can be adopted for this. I've tried using fft2 but the data is very random, the amplitude and phase spectra are very difficult to be interpreted.
0 Commenti
Risposte (1)
Image Analyst
il 3 Set 2021
Did you try making your data into an image with scatteredInterpolant and then calling fft2, and then zeroing out the high frequency components, then inverse transforming. I've attached some demos that might help.
4 Commenti
Image Analyst
il 4 Set 2021
What's the function? Like sin(x) + cos(y) or something? Should be just a few lines of code if you use meshgrid to get a list of all (x,y) locations.
x1 = linspace(0, 5*pi, 400);
y1 = linspace(0, 3*pi, 300);
xPeriod = 2;
yPeriod = 2.4;
amplitude = 5;
[x, y] = meshgrid(x1, y1);
z = amplitude * (sin(2 * pi * x / xPeriod) + cos(2 * pi * y / yPeriod));
surf(x, y, z, 'Lines', 'none');
grid on;
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/729519/image.png)
Vedere anche
Categorie
Scopri di più su Surface and Mesh Plots in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!