NANINTERP2: 2-D optimized linear interpolation

Filling the gaps in a surface.
248 Downloads
Updated 8 Jan 2021

The GRIDDATA Matlab's core function may fail with memory issue on huge grids, depending on your computer capabilities. This simple function optimizes the linear interpolation, by reducing the amount of relevant data (only gap neighbours) before calling GRIDDATA. This results in a very fast computing, the speed will depend now on the amount of gaps and less on the amount of valid data (size of the grid).
Example:
z = peaks(1000);
% simulates random gaps of different sizes
for n = [10,5,2]
z(ceil(rand(1e4/n^2,1)*numel(z))) = NaN;
z = conv2(z,ones(n)/n,'same');
end

subplot(211)
imagesc(z); % with gaps
subplot(212)
imagesc(naninterp2(z)) % gaps filled

Cite As

François Beauducel (2024). NANINTERP2: 2-D optimized linear interpolation (https://github.com/beaudu/naninterp2/releases/tag/v1.1), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2011b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Interpolation in Help Center and MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.1

See release notes for this release on GitHub: https://github.com/beaudu/naninterp2/releases/tag/v1.1

1.0.0.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.