Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Wed 28 December 2016 15:17

ofgedata
Juste Inscrit !
Date d'inscription: 28 Dec 2016
Messages: 1

QGIS: Formule dans Algorithme gdalogr:rastercalculator

Bonjour,
Je ne suis pas sûr d'être sur le bon forum, et peux reposter sur le bon si nécessaire.

J'essaye de faire un calcul simple de ndvi à partir d'une image dans un script pyqgis. Je l'ai fait en utilisant QgsRasterCalculator, mais je ne trouve pas le moyen de ne pas créer un tif intermédiaire avec cette méthode.
Je voudrais le faire avec l'algorithme gdalogr:rastercalculator pour ne pas avoir à créer un fichier intermédiaire, mais le raster output ne sort que des 0, je ne comprends pas où est l'erreur.

Le code est le suivant

Code:

#Bands for the calculation
irB = 4
redB = 3

#Import the raster image
img = iface.addRasterLayer(imgFolder+"/"+imgName, "Image")

###Compute the NDVI

out = processing.runalg("gdalogr:rastercalculator", 
        {"INPUT_A":img, "BAND_A":str(irB), 
        "INPUT_B":img, "BAND_B":str(redB),  
        "FORMULA":"(A-B)/(A+B)",  
        "RTYPE":5, "OUTPUT":None})
out = out['OUTPUT'] #get address of temp file
img = QgsRasterLayer(img, "Image") #Re-import the temp file into qgis

Merci pour toute aide si quelqu'un a déjà utilisé cet algorithme avec succès.

Hors ligne

 

Pied de page des forums

Powered by FluxBB