J'ai du mal à comprendre clairement la distinction entre la classification basée sur les pixels et la classification basée sur les objets dans le domaine de la télédétection et j'espère que quelqu'un de cette communauté pourra fournir un aperçu.
Sur la base des informations dont je dispose jusqu'à présent, ma compréhension actuelle va dans ce sens:
Classification basée sur les pixels : La classification est effectuée au niveau par pixel, en utilisant uniquement les informations spectrales disponibles pour ce pixel individuel (c'est-à-dire que les valeurs des pixels dans la localité sont ignorées). En ce sens, chaque pixel représenterait un exemple d'apprentissage pour un algorithme de classification, et cet exemple d'apprentissage serait sous la forme d'un vecteur à n dimensions, où n était le nombre de bandes spectrales dans les données d'image. Par conséquent, l'algorithme de classification entraîné produirait une prédiction de classe pour chaque pixel individuel dans une image.
Classification basée sur les objets: la classification est effectuée sur un groupe localisé de pixels, en tenant compte des propriétés spatiales de chaque pixel en relation les unes avec les autres. En ce sens, un exemple d'apprentissage pour un algorithme de classification consisterait en un groupe de pixels, et l'algorithme de classification entraîné produirait en conséquence une prédiction de classe pour les pixels sur une base de groupe. Pour un exemple grossier, une image peut être partitionnée en n segments de taille égale, et chaque segment recevra alors une classe (c'est-à-dire contient un objet / ne contient pas d'objet).
Cette réflexion est-elle exacte quant à la signification de ces termes, ou y a-t-il quelque chose que j'ai manqué?
En ce qui concerne la classification basée sur les pixels, vous êtes sur place. Chaque pixel est un vecteur à n dimensions et sera affecté à une classe selon une métrique, que ce soit en utilisant des machines à vecteurs de support, MLE, une sorte de classificateur tricoté, etc.
En ce qui concerne les classificateurs régionaux, cependant, il y a eu d'énormes développements au cours des dernières années, tirés par une combinaison de GPU, de grandes quantités de données, le cloud et une large disponibilité d'algorithmes grâce à la croissance de l'open source (facilité par github). L'un des plus grands développements dans la vision / classification par ordinateur a été dans les réseaux de neurones convolutionnels (CNN). Les couches convolutives "apprennent" des caractéristiques qui pourraient être basées sur la couleur, comme avec les classificateurs à base de pixels traditionnels, mais créent également des détecteurs de bord et toutes sortes d'autres extracteurs de caractéristiques qui pourraient exister dans une région de pixels (d'où la partie convolutionnelle) que vous n'a jamais pu extraire d'une classification basée sur les pixels. Cela signifie qu'ils sont moins susceptibles de mal classer un pixel au milieu d'une zone de pixels d'un autre type - si vous avez déjà exécuté une classification et obtenu de la glace au milieu de l'Amazonie, vous comprendrez ce problème.
Vous appliquez ensuite un réseau neuronal entièrement connecté aux "caractéristiques" apprises via les circonvolutions pour effectuer la classification. L'un des autres grands avantages des CNN est qu'ils sont invariables à l'échelle et à la rotation, car il existe généralement des couches intermédiaires entre les couches de convolution et la couche de classification qui généralisent les fonctionnalités, en utilisant le regroupement et l'abandon, pour éviter le sur-ajustement et aider à résoudre les problèmes autour échelle et orientation.
Il existe de nombreuses ressources sur les réseaux de neurones convolutifs, bien que le meilleur soit la classe Standord d'Andrei Karpathy , qui est l'un des pionniers de ce domaine, et toute la série de conférences est disponible sur YouTube .
Bien sûr, il existe d'autres façons de traiter la classification basée sur les pixels par rapport à la zone, mais c'est actuellement l'approche de pointe et a de nombreuses applications au-delà de la classification par télédétection, telles que la traduction automatique et les voitures autonomes.
Voici un autre exemple de classification basée sur la région , utilisant Open Street Map pour les données d'entraînement marquées, y compris des instructions pour configurer TensorFlow et fonctionner sur AWS.
Voici un exemple utilisant Google Earth Engine d'un classificateur basé sur la détection des bords, dans ce cas pour l'irrigation par pivot - utilisant rien de plus qu'un noyau gaussien et des convolutions, mais encore une fois, montrant la puissance des approches basées sur les régions / bords.
Alors que la supériorité de l'objet sur la classification basée sur les pixels est assez largement acceptée, voici un article intéressant dans Remote Sensing Letters évaluant les performances de la classification basée sur les objets .
Enfin, un exemple amusant, juste pour montrer que même avec les classificateurs régionaux / convolutionnels, la vision par ordinateur est toujours très difficile - heureusement, les personnes les plus intelligentes de Google, Facebook, etc., travaillent sur des algorithmes pour pouvoir déterminer la différence entre chiens, chats et différentes races de chiens et de chats. Ainsi, ceux qui s'intéressent à la télédétection peuvent dormir facilement la nuit: D
la source
Une réponse très simple est la suivante:
Si vous n'utilisez que des informations spectrales (intensité de pixels) comme ensemble d'entraînement, vous effectuez une classification de base des pixels.
Si vous utilisez à la fois des informations spatiales (pixels de voisinage) et spectrales comme ensemble d'apprentissage, vous effectuez une classification de base d'objet (en utilisant un algorithme basé sur la segmentation, par exemple DBScan). Dans Computer Vision, ce DBScan utilisé pour l'extraction Superpixel.
Remarque: vous pouvez utiliser des informations spectrales dans tous les sens (taille, forme, contexte / texture) pour l'extraction d'entités.
Vous pouvez utiliser différentes approches afin de faire l'extraction d'entités en utilisant des informations spectrales.
La principale question est de savoir comment trouver l'approche la plus appropriée pour l'extraction d'entités et appliquer l'algorithme efficace (détection des bords, segmentation spectrale, regroupement) pour le problème posé afin de chasser les informations des informations spectrales.
On pourrait penser à la matrice de convolution pour faire une belle analyse à la fois des informations spectrales et spatiales pour créer un ensemble d'apprentissage.
Référence: Mes connaissances après avoir acquis plus de 3 ans d'expérience dans le domaine de la télédétection et des SIG.
la source