Suite

Créer une table attributaire dans un raster à 3 canaux à l'aide d'ArcGIS Desktop ?


J'ai un fichier raster à 3 bandes (RVB) de CORINE et la table attributaire n'a pas été créée. Lorsque j'essaie d'exécuter la commande BuildRasterAttributeTable, j'obtiens une erreur indiquant que seuls les rasters à bande unique sont autorisés. Que dois-je faire pour obtenir l'attribut avec les utilisations du sol ?

Message d'erreur:

ERREUR 000423 Seul le jeu de données raster d'entier à bande unique est une entrée valide


Comme l'indique le message d'erreur, vous ne pouvez pas avoir de table attributaire pour un raster multicanal. L'attribut serait lié au combinaison des trois bandes, pas seulement une valeur unique. Je soulignerai également que le raster doit avoir des valeurs entières - float ou double ne fonctionnera pas. Soyez prudent avec les types de données d'entrée (il peut être nécessaire de les convertir) et les choix effectués en cours de route lors de l'ajout ou de l'exportation.

La solution idéale serait de retrouver les données CORINE originales. Il devrait s'agir d'un raster à bande unique où chaque cellule a une valeur numérique correspondant à un type de couverture terrestre - par exemple 2, 15 ou 7. Ce serait probablement déjà avoir une table attributaire et inclure un attribut de description avec la valeur.

Vous avez un RVB conversion de ce raster via un rendu. Des couleurs ont été attribuées à chaque classe et les Couleur, et non la classe, est stocké dans le raster RVB. Au lieu d'une seule cellule avec une valeur de 15, il y a maintenant une cellule dans chacune des trois bandes représentant la quantité de couleur de cette bande. 255 R, 0 G, 0 B combiné devenir un pixel rouge. Pour revenir au raster à bande unique, vous devez fusionner les trois bandes. Malheureusement, avec RVB, vous ne pouvez pas simplement les additionner et obtenir la véritable valeur unique.255, 0, 0(rouge) et0, 0, 255(bleu) les deux totalisent 255. Si vous convertissez en niveaux de gris, vous pouvez prendre la moyenne des trois valeurs et obtenir une valeur moyenne à utiliser comme luminosité, mais dans ce cas, vous avez besoin des couleurs de catégorie uniques et d'une légende qui vous indique quelle classe chaque couleur est.

Avertissement: Faites toujours une copie de sauvegarde avant de traiter un raster en cas de problème. Il existe deux problèmes potentiels avec votre raster dans l'une des solutions suivantes. Premièrement, s'il existe des bordures d'une couleur différente entre les classes d'occupation du sol dans votre RVB, ces pixels auront leurs propres valeurs de couleur uniques qui n'appartiennent pas à une classe. Deuxièmement, si le RVB est d'un format qui permet et a été enregistré avec à perte compression (comme un jpg), il peut y avoir de graves artefacts de valeur aux frontières entre les classes. Par exemple trois pixels qui apparaissent en rouge (255, 0, 0) se révèle être254, 2, 0,255, 10, 1, ou alors253, 0, 0(c'est particulièrement important dans la deuxième méthode ci-dessous). Là où des couleurs très différentes se rencontrent, vous pouvez obtenir des valeurs de couleur complètement différentes - par exemple des pixels violets près des limites rouge/bleu. Cela nécessiterait un nettoyage approfondi ou d'autres méthodes non couvertes par cette réponse.

Première méthode consiste à ajouter les bandes RVB séparément (pas toutes en même temps, ou composites, en ajoutant le nom du fichier, mais allez dans le nom du fichier et ajoutez la bande individuelle) à ArcMap et examinez-les. Bien que tous s'affichent en niveaux de gris, vous pouvez trouver une bande où toutes les classes sont facilement identifiables (ce qui signifie que pour cette bande de couleur, chaque classe a une valeur assez distinctive). Si tel est le cas, vous pouvez cliquer avec le bouton droit sur cette bande et Données > Exporter vers un raster distinct, puis exécuter Reclassifier pour modifier les valeurs en quelque chose de plus logique, comme des valeurs séquencées plus petites. Cependant, il est possible que dans une bande, deux classes différentes partagent la même valeur - par exemple, le cyan et le jaune ont une valeur verte de 255, de sorte que ces couleurs/classes seraient indiscernables dans la bande verte. Toi pourrait examinez et exportez tous les canaux, exécutez Reclassify pour obtenir ceux que vous pouvez identifier dans chacun, puis ajoutez tous les résultats avec Raster Calculator pour finalement arriver à un seul raster classé.

Deuxième méthode utilise certains traitements avec la calculatrice raster. Commencez par ajouter chaque bande séparément comme ci-dessus et exportez-les dans leur propre raster. Prenez la bande rouge de votre image et multipliez les valeurs par 1 000 000. Ensuite, prenez votre bande verte et multipliez-la par 1 000. Vous pouvez maintenant ajouter les trois bandes ensemble. Avant, un pixel rouge aurait donné 255. Maintenant, il en résultera 255 000 000. C'est une façon de concaténer les nombres en valeurs uniques qui représentent chacune une couleur. En théorie, chacune de vos classes d'occupation du sol aura la même valeur unique. Encore une fois, vous utilisez Reclassify pour changer les valeurs en quelque chose de plus simple.

Méthode trois utilise la barre d'outils Classification des images (que vous devrez probablement ajouter - Personnaliser > Barres d'outils). Dans la barre d'outils, sélectionnez le deuxième bouton à partir de la droite - Dessiner un polygone. Dessinez maintenant une forme englobant quelques pixels qui appartiennent définitivement à une classe (par exemple, le milieu d'une région particulière). Faites cela pour chaque couleur/classe de votre RVB. Cliquez ensuite sur le bouton le plus à gauche de la barre d'outils, Classification, et choisissez la première option - Classification supervisée interactive. Alternativement, sans dessiner les cases et si vous savez combien de classes vous avez (plus une pour toutes les zones sans données), vous pouvez d'abord essayer la classification Iso Cluster Unsupervised. Vous devriez vous retrouver avec un temporaire, monocanal, raster classé que vous pouvez ensuite cliquer avec le bouton droit et exporter.

Les résultats de l'une de ces trois méthodes conviendraient à la création d'une table attributaire de raster. Notez que ces solutions ne récupéreront que catégorique ou des données classées thématiques. Les valeurs originales des données classées en gammes ou même des valeurs uniques comme un DEM ne peuvent pas être récupérées.


Voir la vidéo: #ARCGIS Creer une TABLE (Octobre 2021).