Open Modis images in a loop and apply NDVI on them
9 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I have a 12 modis images that I want to open in a loop. and I just don't know how, I want only to work on their first and second bands ( as it is mentioned in the picture )
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192662/image.jpeg)
Also I tried to apply NDVI and I dont know why It doesn't work ( picture 2)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192664/image.jpeg)
0 commentaires
Réponses (1)
Kevin Chng
le 27 Oct 2018
Modifié(e) : Kevin Chng
le 27 Oct 2018
Hi
first of all, load your information into array first, which allow you to use indexing to get their information later.
folder='E:\Matlab';
filetype='*.hdf';
f=fullfile(folder,filetype);
d=dir(f);
for i=1:numel(d);
Red(i) = hdfread(fullfile(folder,d(i).name), 'MORIS_Grid_500m_2D','Fields','sur_ref1_b01_1');
NIR(i) = hdfread(fullfile(folder,d(i).name), 'MORIS_Grid_500m_2D','Fields','sur_ref1_b02_1');
end
After the code above, now we use indexing to get the information from the array for our calculation.
for i=1:1:numel(d)
NDVI(i) = double(NIR(i)-Red(i)) ./ (double (NIR(i) + Red(i)));
end
Kindly accept my answe if they are working for you.
0 commentaires
Voir également
Catégories
En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!