Définition des options de configuration pour GDAL à l'aide de Python

Nov 03 2020

J'essaie d'appeler la fonction "SetConfigOption" en utilisant l'API GDAL pour modifier les paramètres par défaut de GDAL afin d'obtenir des informations supplémentaires sur GeoTiff. Je spécifie les options de configuration ci-dessous en conjonction avec la commande 'gdalinfo' pour récupérer des informations sur le système de référence de coordonnées verticales (VERTCRS). L'exécution de 'gdalinfo' sur le GeoTiff tel quel n'affiche pas les informations VERTCRS, mais les informations VERTCRS. peut être obtenu à partir de la ligne de commande en tapant / entrant ces commandes de l'option de configuration individuellement avant d'appeler «gdalinfo» sur le GeoTiff.

Existe-t-il un moyen d'utiliser la fonction "sous-processus" pour obtenir de manière transparente les informations VERTCRS?

Vous trouverez ci-dessous le code que j'utilise, qui imprime la sortie 'gdalinfo' mais ne capture pas les informations VERTCRS selon les besoins.

from osgeo import gdal, osr, ogr
import subprocess

gdal.SetConfigOption('GTIFF_REPORT_COMPD_CS','TRUE')
gdal.SetConfigOption('DTED_APPLY_PIXEL_IS_POINT', 'TRUE')
gdal.SetConfigOption('GTIFF_POINT_GEO_IGNORE', 'TRUE')
gdal.SetConfigOption('REPORT_COMPD_CS','TRUE')

cmd='gdalinfo C:\\users\\mikel\\GeoData\\DSM.tif'
print(subprocess.check_output(cmd))

Réponses

3 user2856 Nov 03 2020 at 06:03

Utilisez l'API plutôt que de démarrer un sous-processus:

gdal.SetConfigOption('GTIFF_REPORT_COMPD_CS', 'YES')
print(gdal.Info(r'C:\users\mikel\GeoData\DSM.tif'))

Fonctionne pour moi avec mes données.

1 mikewatt Nov 03 2020 at 04:01

Selon la documentation, vous pouvez utiliser --configpour définir les options de configuration d'exécution sur la ligne de commande, par exemple

gdal_translate --config GDAL_CACHEMAX 64 in.tif out.tif

https://gdal.org/user/configoptions.html