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 Wed 18 March 2015 16:15

gadir
Participant occasionnel
Date d'inscription: 25 Jan 2014
Messages: 19

QGIS : Statistiques sur un lot de raster

Bonjour,

Je veux calculer les statistiques du base (min, mean, max) sur plusieurs couches raster (120 couches), Si je passe : propriété du raster > métadonnées,  va être très long.

J'aimerai bien savoir, s'il y a une astuce pour afficher toutes les statistiques de plusieurs couches du raster en une seule fois.

Merci d'avance pour vos suggestions.

Hors ligne

 

#2 Wed 18 March 2015 16:59

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: QGIS : Statistiques sur un lot de raster

Bonjour,

Regarde du côté de gdalinfo avec le paramètre -stats
Ci-dessous un exemple de ce qui est retourné :

Driver: AAIGrid/Arc/Info ASCII Grid
Files: \\...\BDALTI_75m_France\BDALTIr_2-0_MNT_EXT_0075_6825_LAMB93_IGN69_20110929.asc
       \\...\BDALTI_75m_France\BDALTIr_2-0_MNT_EXT_0075_6825_LAMB93_IGN69_20110929.asc.aux.xml
Size is 1000, 1000
Coordinate System is `'
Origin = (74962.500000000000000,6825037.500000000000000)
Pixel Size = (75.000000000000000,-75.000000000000000)
Corner Coordinates:
Upper Left  (   74962.500, 6825037.500)
Lower Left  (   74962.500, 6750037.500)
Upper Right (  149962.500, 6825037.500)
Lower Right (  149962.500, 6750037.500)
Center      (  112462.500, 6787537.500)
Band 1 Block=1000x1 Type=Float32, ColorInterp=Undefined
  Min=-2.800 Max=103.710
  Minimum=-2.800, Maximum=103.710, Mean=47.594, StdDev=25.838
  NoData Value=-99999
  Metadata:
    STATISTICS_MAXIMUM=103.70999908447
    STATISTICS_MEAN=47.593517726272
    STATISTICS_MINIMUM=-2.7999999523163
    STATISTICS_STDDEV=25.837573534695


Dans le shell OSGEOW, tu peux écrire :

Code:

gdalinfo \\...\BDALTI_75m_France\BDALTIr_2-0_MNT_EXT_0075_6825_LAMB93_IGN69_20110929.asc -stats | grep STATISTICS_

Ca renvoie uniquement :

STATISTICS_MAXIMUM=103.70999908447
    STATISTICS_MEAN=47.593517726272
    STATISTICS_MINIMUM=-2.7999999523163
    STATISTICS_STDDEV=25.837573534695


Reste à construire un batch qui boucle dans le répertoire, lance gdalinfo fait un export texte de chaque raster sous la forme :

BDALTIr_2-0_MNT_EXT_0075_6825_LAMB93_IGN69_20110929.asc
    STATISTICS_MAXIMUM=103.70999908447
    STATISTICS_MEAN=47.593517726272
    STATISTICS_MINIMUM=-2.7999999523163
    STATISTICS_STDDEV=25.837573534695

Dernière modification par Robin (Wed 18 March 2015 17:00)

Hors ligne

 

#3 Wed 18 March 2015 17:41

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: QGIS : Statistiques sur un lot de raster

Ci dessous un script bash (extension .sh) à lancer dans le shell OSGEOW via la commande

Code:

sh monscript.sh

Voilà ce qu'il y a dedans :

Code:

for IFile in *.asc # modifier ici en cas d'autre format. Variable $Ifile = nom du fichier avec extension
do
        echo "Processing $IFile"
        gdalinfo -stats $IFile | grep 'STATISTICS_'
done

J'ai mis 2 fichiers asc dans un répertoire temporaire et voilà ce que j'obtiens :

C:\tmp>sh Liste_Origine_batch.sh
Processing BDALTIr_2-0_MNT_EXT_0075_6825_LAMB93_IGN69_20110929.asc
    STATISTICS_MAXIMUM=103.70999908447
    STATISTICS_MEAN=47.593517726272
    STATISTICS_MINIMUM=-2.7999999523163
    STATISTICS_STDDEV=25.837573534695
Processing BDALTIr_2-0_MNT_EXT_0075_6900_LAMB93_IGN69_20110929.asc
    STATISTICS_MAXIMUM=140.66999816895
    STATISTICS_MEAN=40.70811037412
    STATISTICS_MINIMUM=-12.220000267029
    STATISTICS_STDDEV=32.492840168388


"Et Voilà !"

Dernière modification par Robin (Wed 18 March 2015 17:43)

Hors ligne

 

#4 Wed 18 March 2015 22:58

gadir
Participant occasionnel
Date d'inscription: 25 Jan 2014
Messages: 19

Re: QGIS : Statistiques sur un lot de raster

Merci pour tes réponses  Robin,

J'ai installé OSGeo4W Shell, j ai essayé d entrer le code, mais je n'arrive à avoir des résultats.
Comme je suis un peu débutant dans la programmation, j arrive pas bien à comprendre ce script.

merci une autre si tu puisse me le détailler  un peu plus

Cordialement

Dernière modification par gadir (Wed 18 March 2015 22:58)

Hors ligne

 

Pied de page des forums

Powered by FluxBB