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é ?

#1 Sun 25 January 2026 15:54

image95
Participant assidu
Date d'inscription: 6 Sep 2014
Messages: 315

QGIS Batch: Definir expression en fonction du nom de la couche input

Bonjour,
Je travaille avec Qgis 3.40.
A partir d'images satellites landsat 5, Il me faut calculer plusieurs indices (végétation, eau...). Notamment le NDVI. Celà n'est pas difficile en soi mais vu qu'il s'agit d'une série temporelle, j'ai des dizaines voire des centaines d'images à partir desquelles je souhaite générer ces mêmes indices.
Jusqu'à maintenant je génère ces indices via la calculatrice raster en mode batch 'processus de lots'. Mais ce n'est pas optimisé car je fais toujours des éditions en mode manuel (adaptation du nom de fichier input pour chaque expression/formule NDVI ntoamment).

Concernant le paramètre 'couches en entrée', ce n'est pas bien compliqué dans la mesure où j'ai stocké toutes mes images landsat au sein d'un même emplacement/ même dossier. Pour information, il s'agit de fichiers images landsat multi bandes au format geotiff (1 fichier tiff est constitué de 8 bandes).
Concernant les couches en entrée je les sélectionne donc rapidement en sélectionnant tout les fichiers du dossier input.

La complexité est plus importante concernant le paramètre expression.
Un exemple ici de NDVI pour une image :

Code:

(("LT05_L2SP_197029_19920101_20200915_02_T1_SR_MERGE_CLIP_BBOX@4" * 0.0000275 - 0.2) 
 - 
("LT05_L2SP_197029_19920101_20200915_02_T1_SR_MERGE_CLIP_BBOX@3" * 0.0000275 - 0.2)) 
/ 
(("LT05_L2SP_197029_19920101_20200915_02_T1_SR_MERGE_CLIP_BBOX@4" * 0.0000275 - 0.2) 
+ 
("LT05_L2SP_197029_19920101_20200915_02_T1_SR_MERGE_CLIP_BBOX@3" * 0.0000275 - 0.2))

où  "LT05_L2SP_197029_19920101_20200915_02_T1_SR_MERGE_CLIP_BBOX"  est la partie qui est  censée varier d'une image/d'une itération à l'autre. Le reste est toujours la même (invariable/fixe). Il s'agit notamment du numéro de bande (@4). Comment faire pour que cette partie de nom de l 'input' qui varie soit définie/déterminée à partir de la valeur définie lors du premier paramètre 'couches en entrée" ?

Enfin, pour le dernier paramètre 'calculé', l'idée serait que ce soit défini par un chemin qui serait fixe. Auquel s'ajouterait le nom de fichier variable qui serait défini à partir de "nom de la couche en entrée" + '_ndvi'" par exemple

Si une personne pense pouvoir m'aider.
Un grand merci.

Dernière modification par image95 (Sun 25 January 2026 16:00)

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo