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

#1 Sat 14 December 2019 09:20

RG2000
Juste Inscrit !
Date d'inscription: 9 Jun 2018
Messages: 7

QGIS: calculatrice raster entre 2 rasters

Bonjour,

Je dispose de 2 rasters :
raster 1 :  RGBA
raster 2 : monobande avec des valeurs et des no data, ayant la même emprise mais pas la même résolution que raster1.

Je voudrais assigner la valeur 0 à mon premier raster lorsque le raster2 a des valeurs et laisser les valeurs de raster1 lorsque raster2 est no data.

Avec la calculatrice raster de QGIS, ça doit être possible mais je n'y arrive pas....

Merci de votre aide !

Hors ligne

 

#2 Fri 17 June 2022 13:58

badol
Participant occasionnel
Lieu: Vaulx-en-Velin
Date d'inscription: 7 Sep 2005
Messages: 29
Site web

Re: QGIS: calculatrice raster entre 2 rasters

Bonjour,

j'ai un souci similaire.

Les couches sont accessibles ici : https://cerema.app.box.com/s/9glagro32l … 47qassfl0f

Si je réalise avec la calculatrice raster que ce soit sous windows ou debian en QGIS 3 :

pour récupérer la valeur du bâti si celle-ci = 100 :
"rpg_bati@1" * ("rpg_bati@1" = 100)
renvoie
- NULL pour les pixels NULL
- 100 pour les pixel avec bâti
CONFORME

Pour récupérer la valeur du pixel route si la valeur de la route est 80 ou 100
"route_raster@1" * ("route_raster@1" = 80 OR "route_raster@1" = 100)
renvoie
- NULL pour les pixels NULL
- 80 pour les pixel avec route=80
- 100 pour les pixel avec route=100
CONFORME

C'est apparemment le croisement des deux raster qui pose problème sur mes deux machines

Pour récupérer la valeur du pixel route si il n'y a pas un bâtiment et si la valeur de la route est 80 ou 100
"route_raster@1" * ("rpg_bati@1" != 100 AND ("route_raster@1" = 80 OR "route_raster@1" = 100))
renvoie
- 0 pour les pixel dont le bâti recouvre les routes avec les valeur 80 ou 100
- NULL pour tous le reste
NON CONFORME

Le plus simple que je puisse faire :
Pixel à 80 si pixel route à 80 et bâti inférieur à 100
80 * ("rpg_bati@1" < 100 AND "route_raster@1" = 80)
renvoie :
- 0 pour les pixel dont le bâti recouvre les routes avec les valeur 80
- NULL pour tous le reste
NON CONFORME

En conclusion, je n'arrive toujours pas mettre en place des conditions croisées entre deux rasters, la plus simple soit-elle.

Si quelqu'un a un début de diagnostic ... je suis preneur.

Hors ligne

 

Pied de page des forums

Powered by FluxBB