2016-10-18 2 views
0

Chaque fois que j'ouvre une image GeoTIFF d'une orthophoto en python (essayé PIL, matplotlib, scipy, openCV), l'image se bloque. Certains coins sont recadrés, mais l'image conserve sa forme originale. Si je convertis manuellement le tif en un png par exemple dans Photoshop et que je le charge, cela fonctionne correctement. Il semble donc que PIL a du mal à gérer les fichiers tif avec des objets qui ne remplissent pas la totalité du canevas. Quelqu'un at-il une solution à ce problème?Problème de GeoTIFF avec ouverture dans PIL

Une partie de l'image originale:

Part of original Image

Après ouverture:

After opening

Répondre

2

Il aurait été vraiment bien si vous mettez le lien de la figure que vous utilisent (si c'est gratuit). J'ai téléchargé un exemple d'image GeoTIFF de here, et j'ai utilisé gdal pour l'ouvrir.

La forme du geotiff.ReadAsArray() est (3, 1024, 2048) donc je convertir en (1024, 2048, 3) (RVB) et l'ouvrir avec imshow:

import gdal 
gdal.UseExceptions() 
import matplotlib.pyplot as plt 
import numpy as np 

geotiff = gdal.Open('/home/vafanda/Downloads/test.tif') 
geotiff_arr= geotiff.ReadAsArray() 
print np.shape(geotiff_arr) 
geotiff_shifted = np.rollaxis(geotiff_arr,0,3) 
print "Dimension converted to: " 
print np.shape(geotiff_shifted) 
plt.imshow(geotiff_shifted) 
plt.show() 

Résultat:

enter image description here

+0

Je travaille maintenant! Merci beaucoup. – seanzand

+0

@seanzand Pas de problème. juste pour votre information, si vous êtes satisfait d'une réponse, vous pouvez l'accepter :) – Yugi

+0

Malheureusement, je ne peux pas partager le GeoTIFF d'origine, car il est confidentiel. – seanzand