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

Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).

En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.

#1 Thu 11 July 2019 07:32

Javajava2
Juste Inscrit !
Date d'inscription: 10 Jul 2019
Messages: 4

QGIS: Remplacer la valeur d'un raster par un autre

Bonjour à tous,

Voila mon problème; j'ai généré sous forme de raster un DEM. J'ai également une couche de point sous forme de raster obtenu à partir de point GPs connu. J'aimerai corriger mon DEM em y ajoutant ces points. De ce fait, je cherche comment remplacer les valeurs d'un raster par les valeur de l'autre aux endroits ou ils se croisent. Je travaille sur ArcGIS mais je  pense que les fonctionnalités avec QGIS sont assez similaires.

Quelqu'un serait-il faire?

Merci !

Hors ligne

 

#2 Thu 11 July 2019 14:14

carteq
Participant assidu
Date d'inscription: 8 Mar 2008
Messages: 829

Re: QGIS: Remplacer la valeur d'un raster par un autre

Dans ArcGIS, ça prend une expression conditionnelle dans la calculatrice raster (Spatial Analyst ou 3D analyst requis) :

con(condition, si vrai, si faux)

Dans ce cas, la condition serait qu'il y ait des valeurs dans les 2 rasters. Si vrai : prendre celle raster 2, si faux : celle du raster 1.

Dans QGIS, c'est plus nébuleux. Dans la calculatrice raster :

("MNT@1" >= 0 AND MNT2@1 >= 0) * "MNT2@1" + ("MNT2@1"<0) * "MNT@1"

On pourrait utiliser la valeur null au lieu de zéro, mais je ne me souviens pas de la syntaxe en ce moment. En somme, chaque condition renvoie 0 ou 1 (faux/vrai). Ici, si une condition est vraie, ça donne 1 multiplié par la valeur du MNT indiquée après la condition. Le "+" n'additionne pas, mais ajoute des pixels au résultat (sauf si un pixel répondait à plusieurs conditions, là j'imagine que ça s'additionnerait)

Dernière modification par carteq (Thu 11 July 2019 14:20)

Hors ligne

 

#3 Thu 11 July 2019 20:08

Javajava2
Juste Inscrit !
Date d'inscription: 10 Jul 2019
Messages: 4

Re: QGIS: Remplacer la valeur d'un raster par un autre

J'ai essaye effectivement cette possibilité, cependant, j'ai un problème car seul les points présents dans les deux rasters apparaissent sur la nouvelle couche et je ne comprends pas pourquoi.
Je fais ; Con(DEM=points,points,DEM)
Mais la couche que j'obtiens n'est présente qu'au niveau de ma couche points et non du DEM. Comment puis-je faire pour que le DEM apparaissent la ou il est la seule couche ?

Merci pour la reponse !

Hors ligne

 

#4 Fri 12 July 2019 15:36

carteq
Participant assidu
Date d'inscription: 8 Mar 2008
Messages: 829

Re: QGIS: Remplacer la valeur d'un raster par un autre

Con(DEM=points,points,DEM)


Il faudrait ajouter que points ne soit pas nul.

Hors ligne

 

#5 Fri 12 July 2019 17:11

Javajava2
Juste Inscrit !
Date d'inscription: 10 Jul 2019
Messages: 4

Re: QGIS: Remplacer la valeur d'un raster par un autre

En condition ?
Je mets deux conditions dans ma syntaxe?

Hors ligne

 

#6 Fri 12 July 2019 17:19

carteq
Participant assidu
Date d'inscription: 8 Mar 2008
Messages: 829

Re: QGIS: Remplacer la valeur d'un raster par un autre

Exact :

Multiple conditions can be used in a conditional expression of the Con tool.
Con((InRas1 > 5) & (InRas1 < 10), 5, 100)

Hors ligne

 

#7 Fri 12 July 2019 18:19

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3789

Re: QGIS: Remplacer la valeur d'un raster par un autre

Bonjour,
La solution ArcGIS étant la plus discutée dans ce fil, faudrait peut-être le migrer dans la section correspondante? (pour éviter que des gens qui lisent en diagonale se mettent à vouloir tester les formules - ce sera de leur faute  big_smile mais bon...)

Hors ligne

 

Pied de page des forums

Powered by FluxBB