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

Pour sécuriser votre compte sur les forums du GeoRezo, nous demandons de changer votre mot de passe.

Vous allez recevoir un message pour effectuer ce changement de mot de passe.

Merci de bien respecter les règles préconisées.

#1 Tue 03 May 2016 11:56

m.gui
Juste Inscrit !
Date d'inscription: 6 Apr 2016
Messages: 8

QGIS: gérer le contenu d'un raster - pixels sans valeurs "no data"

Bonjour,

j'aurais besoin de quelques clarifications et généralités sur les raster.

Sur un projet voilà ce que j'ai effectué jusqu'à présent :
- chargement de deux couches de point correspondant à des dates différentes (fonds bathymétriques) (format du fichier chargé .txt)
- utilisation de l'extension interpolation pour interpoler chaque couche de point (format du fichier obtenu .asc)
- découpage des deux couches selon une zone commune définie par un polygone (format du fichier découpé .tif)
- utilisation de la calculatrice raster pour effectuer la soustraction de ces deux fichiers et voir les évolutions (format fichier obtenu .tif)
- calcul du volume d'un secteur défini par un polygone avec statistique de couche raster (info donné dans un fichier .html)

Le problème est que je viens de me rendre compte que dans tout les fichiers crée (.asc et .tif) il y a dans propriété des valeurs no data à -9999 et (-3e+38 pour le fichier comparé).
Comment identifier/localiser ces données ?
Comment modifier ces données ?
Ces données sont-elles prises en compte dans mes calculs de volumes ou autres ?
Faut-il refaire les manipulations que j'ai fait jusqu'à présent en modifiant quelque chose, mais quoi ?
Est-il possible d'extraire d'un fichier raster .asc ou .tif les valeurs de chaque pixel (comme si je souhaitais avoir une table attributaire) car quand je sonde les pixels j'ai bien une variable "bande 1" avec la valeur de pixel qui s'affiche.

En fait de façon générale c'est un peu flou pour moi pour traiter des raster...

Je ne sais pas si mon problème est clair mais je vous remercie par avance pour toutes vos réponses et conseils.

Marion

Hors ligne

 

#2 Tue 03 May 2016 12:57

dominique.lys
Participant assidu
Date d'inscription: 5 Oct 2006
Messages: 473
Site web

Re: QGIS: gérer le contenu d'un raster - pixels sans valeurs "no data"

Bonjour,

Pas de panique, le fait qu'une valeur spécifique soit prévue pour le nodata n'induit pas que votre raster en possède. Simplement si un traitement doit assigner du nodata alors ce sera représenté par la valeur définie dans le format.

Pour représenter le nodata une astuce facile est de styliser le raster comme suit:
- onglet transparence : décocher nodata
- onglet style : choisir un rendu en single band pseudocolor, interpolation exact et ajouter juste une valeur correspondant à votre nodata (-99999 par ex.)


Et pour vraiment en avoir le cœur net, taper les lignes suivantes dans la console Python :

Code:

from osgeo import gdal
import numpy as np

r = gdal.Open("chemin/dossier/fichier.tif")
data = r.ReadAsArray()
np.any(data == -99999)

Si la dernière commande retourne True alors c'est qu'il y a des pixels nodata.

Hors ligne

 

#3 Tue 03 May 2016 15:12

m.gui
Juste Inscrit !
Date d'inscription: 6 Apr 2016
Messages: 8

Re: QGIS: gérer le contenu d'un raster - pixels sans valeurs "no data"

Bonjour,

merci pour votre aide. les différentes méthodes apportent des solutions.
Mais je ne suis toujours pas certaine d'avoir des valeurs -9999 dans ma zone.

Dans mon fichier tif, le polygone n'affichent rien lorsque je décoche non data. Mais lorsque je fait afficher avec l'onglet style -9999 alors les pixels qui se trouvent en extérieur de ma zone s'affichent et délimitent une zone rectangulaire entourant ma zone d'étude.
Avec la requête python, j'ai bien un True en retour. Est ce que ça veut dire que j'ai des valeurs -9999 ou no data seulement à l’extérieur de ma zone d'étude et qu'elles n'influenceront pas mes calculs sur le polygone ?

Merci

Hors ligne

 

#4 Tue 03 May 2016 15:28

dominique.lys
Participant assidu
Date d'inscription: 5 Oct 2006
Messages: 473
Site web

Re: QGIS: gérer le contenu d'un raster - pixels sans valeurs "no data"

Tout juste le nodata se trouve aux bordures de votre raster.

Hors ligne

 

Pied de page des forums

Powered by FluxBB