Inpaint over missing data in 1-D, 2-D, 3-D,... ND arrays
Y = INPAINTN(X) replaces the missing data in X by extra/interpolating the non-missing elements. The non finite values (NaN or Inf) in X are considered as missing data. X can be any N-D array.
Type "help inpaintn" in the Matlab command windows for several examples.
INPAINTN (no input/output argument) runs a 3-D example.
Important note:
----------------
INPAINTN uses an iterative process that converges toward the solution. Y = INPAINTN(X,N) uses N iterations. By default, N = 100. If you estimate that INPAINTN did not totally converge, then increase N: Y = INPAINTN(X,1000);
-----
When using this algorithm, please refer to these 2 papers:
1) Garcia D. Robust smoothing of gridded data in one and higher dimensions with missing values.
Comput Statist Data Anal, 2010;54:1167-1178
http://www.biomecardio.com/publis/csda10.pdf
2) Wang G, Garcia D et al. A three- dimensional gap filling method for large geophysical datasets: Application to global satellite soil moisture observations.
Environ Modell Softw, 2012;30:139-142.
http://www.biomecardio.com/publis/envirmodellsoftw12.pdf.pdf
-----
A series of examples is available here:
http://www.biomecardio.com/matlab/inpaintn_doc.html
Example:
--------
%% ---- 2-D data ---- %%
n = 256;
y0 = peaks(n);
y = y0;
I = randperm(n^2);
y(I(1:n^2*0.5)) = NaN; % lose 1/2 of data
y(40:90,140:190) = NaN; % create a hole
z = inpaintn(y,200); % inpaint data
subplot(2,2,1:2), imagesc(y), axis equal off
title('Corrupt data')
subplot(223), imagesc(z), axis equal off
title('Recovered data ...')
subplot(224), imagesc(y0), axis equal off
title('... compared with original data')
------
http://www.biomecardio.com
-----
Citation pour cette source
Damien Garcia (2024). Inpaint over missing data in 1-D, 2-D, 3-D,... ND arrays (https://www.mathworks.com/matlabcentral/fileexchange/27994-inpaint-over-missing-data-in-1-d-2-d-3-d-nd-arrays), MATLAB Central File Exchange. Extrait(e) le .
Wang, Guojie, et al. “A Three-Dimensional Gap Filling Method for Large Geophysical Datasets: Application to Global Satellite Soil Moisture Observations.” Environmental Modelling & Software, vol. 30, Elsevier BV, Apr. 2012, pp. 139–42, doi:10.1016/j.envsoft.2011.10.015.
Garcia, Damien. “Robust Smoothing of Gridded Data in One and Higher Dimensions with Missing Values.” Computational Statistics & Data Analysis, vol. 54, no. 4, Elsevier BV, Apr. 2010, pp. 1167–78, doi:10.1016/j.csda.2009.09.020.
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
Tags
Remerciements
A inspiré : avinterpnan(A,method), interp1gap, repnan, PIVsuite, Parametrize Calcium Signals
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.4.2.1 | n/a |
||
1.4.2.0 | updated links |
||
1.4.0.0 | Update of the help text |
||
1.3.0.0 | The functions DCTN and IDCTN are now included in INPAITN |
||
1.2.0.0 | 1) there was a mistake in the 4-D example
|
||
1.1.0.0 | Image toolbox is no longer required. |
||
1.0.0.0 |