Comment extraire le nombre de pixels d'un raster dans QGIS?

16

Comment obtenir un résumé du nombre de valeurs de cellules dans un raster dans QGIS? Je sais que QGIS fait cela, afin de fournir les statistiques récapitulatives et l'histogramme dans les propriétés de la couche. Je n'ai pas besoin des statistiques récapitulatives ni d'une image d'histogramme, mais plutôt des décomptes de valeurs individuelles.

Il semble qu'il y ait eu à un moment donné une tentative d'ajouter une fonctionnalité spéciale pour cela (Feature # 4321, http://hub.qgis.org/issues/4321 ).

Suis-je en train de manquer quelque chose de vraiment évident?

Loren
la source

Réponses:

26

r.report de GRASS dans la boîte à outils de traitement vous permet d'obtenir un décompte si vous définissez les unités sur c .

obtention du nombre de valeurs raster avec r.report dans le traitement qgis avec de l'herbe

Résultats dans (cela inclut NoData représenté par int 0):

+-----------------------------------------------------------------------------+ 
| Category Information | cell| 
| #|description | count| 
|-----------------------------------------------------------------------------| 
|  0| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |147600504| 
| 10| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 46945| 
| 20| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 34371070| 
| 30| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 38494918| 
| 34| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 3542216| 
| 50| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 37053253| 
| 80| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 24184039| 
|110| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 8622768| 
|120| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 4279049| 
|122| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 3126056| 
|131| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 786| 
|133| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 452832| 
|136| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 29765| 
|137| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 317| 
|140| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 1725632| 
|147| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 130470| 
|153| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 1153795| 
|162| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 125372| 
|167| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 176| 
|175| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 36144| 
|181| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 160465| 
|188| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 50| 
|194| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 4854| 
|210| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |257580769| 
|220| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 35232865| 
|230| . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 6891335| 
|-----------------------------------------------------------------------------| 
|TOTAL |604846445| 
+-----------------------------------------------------------------------------+

Pris à partir de: exemple raster avec bande palettisée

SaultDon
la source
@SaultDon, j'ai essayé d'utiliser r.report sur mes rasterdata pour compter les valeurs individuelles, comme dans votre exemple. Mais, je n'ai obtenu qu'un résumé - nombre de pixels, min / max, etc. Le rapport ne contient que: <pre> </pre> Que puis-je manquer? J'ai changé les unités en «c».
SoS
@SoS Il est difficile de deviner sans plus d'informations ou un échantillon de données à tester.
SaultDon
C'est très bien, mais existe-t-il une solution qui produit un fichier plus simple - soit un csv ou un dbf, afin que l'utilisateur puisse l'importer directement dans Excel ou l'utiliser comme entrée pour un autre outil?
MonsterMushroom
2
@MonsterMushroom utilise r.stats - il peut sortir dans un format informatique prêt pour les feuilles de calcul, en fait r.report utilise r.stats en arrière
SaultDon