Visualización de archivos Tiff usando Matplotlib y GDAL usando Python

Los formatos de archivo Tiff se utilizan para almacenar imágenes de trama. Una biblioteca llamada GDAL-Biblioteca de abstracción de datos geoespaciales se usa especialmente con el fin de leer dichos archivos ráster junto con otros formatos de archivo como los formatos vectoriales. El módulo gdal pertenece a Open Source Geospatial Foundation

Para instalar este módulo, ejecute este comando en su terminal. 

pip install GDAL

Para visualizar un archivo tiff necesitamos módulos matplotlib y GDAL en python. 

Enfoque :

  1. Importar el módulo
  2. Cuente el número de bandas.
  3. Obtenga todas las bandas de trama del archivo tiff.
  4. Lea las bandas en arreglos NumPy.
  5. Pase las arrays a imshow() de Matplotlib para visualizar.

El archivo tiff se puede descargar desde aquí .

Implementación paso a paso:

Paso 1: Importe los módulos y abra el archivo.

Python3

from osgeo import gdal
import matplotlib.pyplot as plt
  
  
dataset = gdal.Open(r'land_shallow_topo_2048.tif')

Paso 2: Cuente el número de bandas.

Python3

print(dataset.RasterCount)

Producción:

3

Paso 3: Busca las bandas,

Para buscar las bandas usamos GetRasterBand(int) de GDAL. 
Tenga en cuenta que el valor de int que pasamos siempre comenzará desde 1 (la indexación de bandas comienza desde 1), 

Python3

# since there are 3 bands
# we store in 3 different variables
band1 = dataset.GetRasterBand(1) # Red channel
band2 = dataset.GetRasterBand(2) # Green channel
band3 = dataset.GetRasterBand(3) # Blue channel

Paso 4: Lea las bandas como arrays Numpy.

 GDAL proporciona el método ReadAsArray() que convierte las bandas en arrays numpy y las devuelve. 

Python3

b1 = band1.ReadAsArray()
b2 = band2.ReadAsArray()
b3 = band3.ReadAsArray()

Paso 5: Trazar las arrays usando imshow().

Para trazar las tres arrays, las apilaremos en secuencia. 

Python3

img = np.dstack((b1, b2, b3))
f = plt.figure()
plt.imshow(img)
plt.savefig('Tiff.png')
plt.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por maryamnadeem20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *