#1 Thu 13 June 2019 14:55
QGIS: denombrer les pixels par valeur
Bonjour à toutes et tous,
Mon besoin me paraît assez anodin, et je suis surpris de ne pas trouver d'outil pour y répondre facilement... Je me demande donc si j'ai bien cherché avant de poser ici la question... J'espère ne pas vous faire perdre votre temps.
Pour un raster de valeurs entières correspondant à des catégories, je souhaite :
1) lister toutes les catégories présentes dans le raster,
2) dénombrer le nombre de pixels par catégorie,
3) exporter ces valeurs dans un tableau csv ou xlsx.
J'aurai besoin de cette fonction dans des contextes variés, je souhaite donc un fonctionnement assez général. Je n'ai encore jamais fait, mais je suis prêt à coder en python s'il le faut.
J'ai bien vu la fonction de statistiques de zone, mais son usage supposerait que, pour chacune des valeurs présentes dans le raster, je commence par reclasser le raster en 1 (pixel == valeur) et 0 ( pixel != valeur), puis que j'applique cette fonction de statistique (pour obtenir la somme), puis que je traite l'ensemble des résultats pour les mettre dans un tableau de synthèse avec le bon code... Ce serait fort laborieux, il me semble. Alors avant de me lancer là dedans, je vais attendre vos retours...
D'avance, merci de votre aide, Jean-Baptiste
Hors ligne
#2 Thu 13 June 2019 15:12
Re: QGIS: denombrer les pixels par valeur
Bonjour,
Si tu veux te mettre à python, il y a Rasterio qui est top !
Tu peux lire ton raster et le transformer en 'array', Il suffit ensuite de faire des calculs sur ce tableau (numpy).
https://rasterio.readthedocs.io/en/stab … aster-data
En 2 boucles et 10 lignes ça devrait être bouclé
Hors ligne
#3 Thu 13 June 2019 15:31
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3945
Re: QGIS: denombrer les pixels par valeur
Bonjour,
Est-ce que ceci ferait l'affaire (je ne suis pas utilisateur de raster): https://docs.qgis.org/3.4/fr/docs/user_ … es-report?
Hors ligne
#4 Thu 13 June 2019 15:51
Re: QGIS: denombrer les pixels par valeur
Heu, mais oui Santana, la fonction était là, sous mes yeux, et je ne l'ai pas vue...
La fonction "rapport sur les valeurs uniques de la couche raster" ("raster layer unique values report" en anglais dans la doc indiquée) répond parfaitement à mes besoins.
Toutes mes confuses, et merci beaucoup
@Dof, la bibliothèque rasterio semble apte à faire ce dont j'ai besoin, en effet, et bien plus encore. Mais autant que possible je vais me contenter du modelbuilder... Je me garde rasterio pour une autre occasion, plus difficile !
Merci à tous
Hors ligne
#5 Thu 13 June 2019 16:40
- carteq
- Participant assidu
- Date d'inscription: 8 Mar 2008
- Messages: 829
Re: QGIS: denombrer les pixels par valeur
La fonction Saga "Zonal raster statistics " fait ça.
Hors ligne
#6 Tue 10 March 2020 10:22
- MLaure19
- Participant occasionnel
- Date d'inscription: 10 Jan 2020
- Messages: 40
Re: QGIS: denombrer les pixels par valeur
Bonjour à tous,
Sauriez-vous m'indiquer où se situe la fonction "rapport sur les valeurs uniques de la couche raster" dans QGIS 3.4 Madeira ?
Je n'arrive pas à mettre la main dessus ...
Merci encore,
Marie-Laure
Hors ligne
#7 Tue 10 March 2020 11:20
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3945
Re: QGIS: denombrer les pixels par valeur
Bonjour,
Sauriez-vous m'indiquer où se situe la fonction "rapport sur les valeurs uniques de la couche raster" dans QGIS 3.4 Madeira ?
En principe dans la boîte à outils du menu Traitement (lequel menu, s'il n'apparaît pas déjà, requiert que vous l'activiez dans le menu Extension --> Installer/Gérer des extensions)
Hors ligne
#8 Tue 10 March 2020 12:01
- MLaure19
- Participant occasionnel
- Date d'inscription: 10 Jan 2020
- Messages: 40
Re: QGIS: denombrer les pixels par valeur
Wah ça marche ! Merci beaucoup SANTANNA !
Hors ligne