multispectral satellite image processing?

Hi i have a multispectral satellite image with 12 band and his size is 4195*3692.
How can i open the differents band and print an RGB image and also make vegetation indice with the different bands?
Thanks for your help!

5 commentaires

Shunichi Kusano
Shunichi Kusano le 16 Mai 2019
What is data format? geotiff or any other?
Gamliel Roos
Gamliel Roos le 17 Mai 2019
I have tiff file and ENP file for the same picture. On ENVI software i used the ENP file to open it but on matlab i don't know.
Thanks
Sorry for my late reply.
OK, you have a tiff file. ENP file is a pyramid file for accelerating the image display, which is not image data.
You can open it by imread command, normally. Have you tried it?
After reading the file, you will have a array with 4195x3692x12.
img = imread('your_image.tif');
size(img) % 4195x3692x12
You can extract single band image:
lyri = 1; % depending on the layer index you want
img1 = img(:,:,lyri);
You need to know the layer index you need. The band information would be available in the web. (For example, Landsat-8 has 11 bands (layers). The band information is here.)
If you want to calculate vegetation indices (NDVI?), you need two layers, "red" band and "near infrared" band. (In the case of Landsat-8, they are 4th and 5th band, respectively)
% this is the example for Landsat-8
red = img(:,:,4); % red band
nir = img(:,:,5); % near infrared band
Finally, NDVI is computed according to the definition:
ndvi = (nir - red) / (nir + red);
hope this helps.
Gamliel Roos
Gamliel Roos le 24 Mai 2019
thanks very much
sanjay singh
sanjay singh le 7 Déc 2019
after calculating NDVI, how can i export the NDVI image into ENVI for further processing?

Connectez-vous pour commenter.

Réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by