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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 04 June 2008 17:19

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

mettre NoData en 0 sans reclasser

Je souhaite, comme mon titre l'indique, mettre NoData en 0 sans faire un reclassement pour garder mes autres valeurs et ne pas les changer sur l'echelle 0-255
, tout cela pour pouvoir faire une opération avec un autre raster (maximum entre les 2 rasters pour chaque pixel), car lorsque l'on veut avoir le maximum entre NoData et une valeur, l'outil statistique de cellules donne NoData.

Hors ligne

 

#2 Wed 04 June 2008 17:45

Sylvie
Membre
Date d'inscription: 5 Sep 2005
Messages: 3066

Re: mettre NoData en 0 sans reclasser

Bonjour,

Dans la boite de dialogue SpatialAnalyst/Reclassification, le bouton <Unique> vous rend les différentes valeurs du raster. Vous ne modifiez que NoData en 0, vos autres valeurs sont préservées.

Hors ligne

 

#3 Wed 04 June 2008 17:51

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

Sylvie a écrit:

Bonjour,

Dans la boite de dialogue SpatialAnalyst/Reclassification, le bouton <Unique> vous rend les différentes valeurs du raster. Vous ne modifiez que NoData en 0, vos autres valeurs sont préservées.


Quand je selectionne mon raster, le bouton unique est grisé (inutilisable), ce bouton n'est utilisable que sur des raster déjà reclassés et dont les valeurs sont de 0 à 255.

Hors ligne

 

#4 Wed 04 June 2008 18:04

Sylvie
Membre
Date d'inscription: 5 Sep 2005
Messages: 3066

Re: mettre NoData en 0 sans reclasser

Pardon, je n'avais pas bien compris l'énoncé sad
Je passe ...

Hors ligne

 

#5 Wed 04 June 2008 20:32

Tnarbiv
Participant assidu
Lieu: Véretz
Date d'inscription: 5 Sep 2005
Messages: 392

Re: mettre NoData en 0 sans reclasser

bonjour,
il me semble que l'outil CON te permet de faire cela.

http://georezo.net/forum/viewtopic.php?pid=93533


Ayez le réflexe "Développement Durable": N'imprimez ce message que si nécessaire.

Hors ligne

 

#6 Thu 12 June 2008 17:28

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

Tnarbiv a écrit:

bonjour,
il me semble que l'outil CON te permet de faire cela.

http://georezo.net/forum/viewtopic.php?pid=93533


Je n'ai pas reussi avec cet outil

Hors ligne

 

#7 Thu 12 June 2008 17:35

Tnarbiv
Participant assidu
Lieu: Véretz
Date d'inscription: 5 Sep 2005
Messages: 392

Re: mettre NoData en 0 sans reclasser

Voici la syntaxe :

Code:

Con(<condition>, <true_expression>,{<condition>, <true_expression>}, ... {<condition>, <true_expression>}, {false_expression})

si tu essaies ça:

CON([raster]==NoData,0,[raster])

ça te donne quoi ?


Ayez le réflexe "Développement Durable": N'imprimez ce message que si nécessaire.

Hors ligne

 

#8 Fri 13 June 2008 09:22

Vison2Europe
Participant occasionnel
Date d'inscription: 13 Sep 2006
Messages: 25

Re: mettre NoData en 0 sans reclasser

Bonjour,

Pour réaliser ce type de résultat, j'utilise les outils MapAlgebra (sortie unique) de spatial Analyst mais ça doit marcher avec CON aussi.

Enfin Bref, mon expression est :
CON ( ISNULL ( NomRaster ) , 0 , NomRaster )

NomRaster : le nom de ton raster
0 : la valeur que tu souhaites affecter en l'occurence 0 dans ton cas
Bien respectez la synthaxe et les espaces

en espérant avoir été clair.

Hors ligne

 

#9 Mon 16 June 2008 16:59

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

Parfait c'est exactement ce que je voulais, merci.

Hors ligne

 

#10 Wed 09 July 2008 15:41

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

Par contre je n'arrive pas à faire l'inverse, mettre 0 en NoData
lorsque je remplace 0 par NoData dans l'expression, j'ai un message d'erreur

Hors ligne

 

#11 Wed 09 July 2008 17:15

Vison2Europe
Participant occasionnel
Date d'inscription: 13 Sep 2006
Messages: 25

Re: mettre NoData en 0 sans reclasser

Bonjour,

Je pense que pour faire l'inverse, mettre (une valeur en NoData) : ce n'est pas la même fonction.
Au lieu de ISNULL utiliser la fonction SETNULL
à essayer

Je suis désolé mais ça tombe assez mal car je pars en congés ce soir.
Si vous n'avez pas de résultat, je regarderais dans dix jours à mon retour.

Je pense que la solution se situe autour de la fonction SETNULL

Hors ligne

 

#12 Wed 09 July 2008 17:19

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

ferreira a écrit:

Bonjour,

Je pense que pour faire l'inverse, mettre (une valeur en NoData) : ce n'est pas la même fonction.
Au lieu de ISNULL utiliser la fonction SETNULL
à essayer

Je suis désolé mais ça tombe assez mal car je pars en congés ce soir.
Si vous n'avez pas de résultat, je regarderais dans dix jours à mon retour.

Je pense que la solution se situe autour de la fonction SETNULL


Oui j'ai essayé cette expression :

CON ( SETNULL ( NomRaster ) , 0 , NomRaster )

mais cela ne fonctionne pas, en plus les aides d'arcgis ne sont pas très explicites je trouve

Hors ligne

 

#13 Wed 09 July 2008 17:37

alban
Participant assidu
Lieu: Chizé
Date d'inscription: 16 May 2007
Messages: 156
Site web

Re: mettre NoData en 0 sans reclasser

Bonjour,

Je pense que la bonne expression est la suivante (en tout cas, elle fonctionne chez moi) :

CON ( NomRaster == 0 , SETNULL(NomRaster ) , NomRaster)

et non :

CON ( SETNULL ( NomRaster ) , 0 , NomRaster )


PS : Je suis sur ArcMap 9.0 et j´ai utilisé cette formule dans la calculatrice Raster... Quelle est la différence avec l´outil Map Algebra ? Une simple mise à jour dans les versions plus récentes ?

Hors ligne

 

#14 Wed 09 July 2008 17:38

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

En fait cette expression marche :

CON(ha == 0, 10, ha) si on veut remplacer 0 par 10

mais celle ci ne marche pas

CON(ha == 0, NoData, ha) 
peut être qu'il ne reconnait pas la valeur NoData écrit tel quel ?

Hors ligne

 

#15 Wed 09 July 2008 17:43

sporito
Participant actif
Date d'inscription: 4 Mar 2008
Messages: 126

Re: mettre NoData en 0 sans reclasser

C'est bon j'ai trouvé l'expression :
SETNULL(NomRaster == 0, NomRaster)

merci quand même

Hors ligne

 

Pied de page des forums

Powered by FluxBB