¿Distinción entre clasificación basada en píxeles y basada en objetos?

14

Estoy luchando por comprender claramente la distinción entre clasificación basada en píxeles y basada en objetos en el dominio de la teledetección y espero que alguien de esta comunidad pueda proporcionar información.

Según la información que tengo hasta ahora, mi comprensión actual es la siguiente:

Clasificación basada en píxeles: la clasificación se realiza en un nivel por píxel, utilizando solo la información espectral disponible para ese píxel individual (es decir, se ignoran los valores de píxeles dentro de la localidad). En este sentido, cada píxel representaría un ejemplo de entrenamiento para un algoritmo de clasificación, y este ejemplo de entrenamiento tendría la forma de un vector n-dimensional, donde n era el número de bandas espectrales en los datos de la imagen. Por consiguiente, el algoritmo de clasificación entrenado generaría una predicción de clase para cada píxel individual en una imagen.

Clasificación basada en objetos: la clasificación se realiza en un grupo de píxeles localizado, teniendo en cuenta las propiedades espaciales de cada píxel en su relación. En este sentido, un ejemplo de entrenamiento para un algoritmo de clasificación consistiría en un grupo de píxeles y, en consecuencia, el algoritmo de clasificación entrenado generaría una predicción de clase para los píxeles en grupo. Para un ejemplo crudo, una imagen podría dividirse en n segmentos de igual tamaño, y cada segmento recibiría una clase (es decir, contiene objeto / no contiene objeto).

¿Es este pensamiento exacto con respecto al significado de estos términos, o hay algo que me he perdido?

RDG
fuente

Respuestas:

9

Su comprensión es generalmente correcta, sin embargo, existen peligros en su descripción de la clasificación basada en objetos: el término 'objeto' se refiere al grupo de píxeles, no si contiene o no un objeto dado.
Además, el objetivo central en una clasificación basada en objetos no es tener segmentos de igual tamaño, sino "cortar" / segmentar la imagen en trozos homogéneos de tamaño variable . Por último, el ejemplo de entrenamiento para la clasificación basada en objetos generalmente sería uno o más de los fragmentos creados en la segmentación de la imagen.

En general, lo anterior es solo pequeñas variaciones sobre su descripción.

Ahora en la parte central: cuándo aplicar cada método y cómo combinar potencialmente sus puntos fuertes.

Mikkel Lydholm Rasmussen
fuente
Gracias, eso realmente ha ayudado a aclarar. ¡Tenía la sospecha de que no había entendido las sutilezas de la clasificación basada en objetos! Es interesante que mencione la posibilidad de enfoques híbridos, no lo había pensado hasta ahora. ¿Puedo preguntar, si tuviera que adoptar un enfoque de ventana deslizante para detectar y clasificar objetos, existe algún término técnico para dicho enfoque aplicado en el dominio de la percepción remota?
RDG
1
Sí, se llama convoluciones. Mira mi respuesta.
John Powell el
En mi opinión, no hay fuerza en la clasificación basada en píxeles. Hay flujos de trabajo interesantes que involucran convoluciones más regresión para predecir los cuadros delimitadores y la ubicación, pero la clasificación basada en píxeles por sí sola no tiene valor, en mi humilde opinión.
John Powell el
1
@ JohnPowellakaBarça: los enfoques basados ​​en píxeles tienen algo de valor cuando se consideran aplicaciones multitemporales, donde la clasificación se centra más en las áreas cambiantes, en lugar del tradicional paso de tiempo único.
Mikkel Lydholm Rasmussen
1
Claro, sí, bastante justo. Aunque, posiblemente, los enfoques basados ​​en la región, vectorizados y luego comparados a lo largo del tiempo, podrían generar una visión potencialmente mayor, pero su punto está bien tomado.
John Powell el
12

En lo que respecta a la clasificación basada en píxeles, usted es perfecto. Cada píxel es un vector n-dimensional y se asignará a alguna clase de acuerdo con alguna métrica, ya sea que use Máquinas de vectores de soporte, MLE, algún tipo de clasificador knn, etc.

Sin embargo, en lo que respecta a los clasificadores basados ​​en regiones, ha habido grandes desarrollos en los últimos años, impulsados ​​por una combinación de GPU, grandes cantidades de datos, la nube y una amplia disponibilidad de algoritmos gracias al crecimiento del código abierto (facilitado por github). Uno de los desarrollos más grandes en visión / clasificación por computadora ha sido en redes neuronales convolucionales (CNN). Las capas convolucionales "aprenden" características que pueden basarse en el color, como con los clasificadores tradicionales basados ​​en píxeles, pero también crean detectores de bordes y todo tipo de extractores de características que podrían existir en una región de píxeles (de ahí la parte convolucional) nunca podría extraer de una clasificación basada en píxeles. Esto significa que es menos probable que clasifiquen erróneamente un píxel en el medio de un área de píxeles de algún otro tipo; si alguna vez ha realizado una clasificación y tiene hielo en el medio del Amazonas, comprenderá este problema.

Luego aplica una red neuronal completamente conectada a las "características" aprendidas a través de las convoluciones para hacer la clasificación. Una de las otras grandes ventajas de las CNN es que son invariantes a escala y rotación, ya que generalmente hay capas intermedias entre las capas de convolución y la capa de clasificación que generalizan las características, utilizando la agrupación y el abandono, para evitar el sobreajuste y ayudar con los problemas relacionados. escala y orientación.

Existen numerosos recursos en redes neuronales convolucionales, aunque la mejor tiene que ser la clase Standord de Andrei Karpathy , quien es uno de los pioneros en este campo, y toda la serie de conferencias está disponible en YouTube .

Claro, hay otras formas de lidiar con la clasificación basada en píxeles versus área, pero este es actualmente el enfoque más avanzado y tiene muchas aplicaciones más allá de la clasificación de teledetección, como la traducción automática y los autos sin conductor.

Aquí hay otro ejemplo de clasificación basada en la región , usando Open Street Map para los datos de entrenamiento etiquetados, incluidas las instrucciones para configurar TensorFlow y ejecutar en AWS.

Aquí hay un ejemplo usando Google Earth Engine de un clasificador basado en la detección de bordes, en este caso para riego por pivote, usando nada más que un núcleo gaussiano y convoluciones, pero nuevamente, mostrando el poder de los enfoques basados ​​en regiones / bordes.

ingrese la descripción de la imagen aquí

Si bien la superioridad del objeto sobre la clasificación basada en píxeles es bastante aceptada, aquí hay un artículo interesante en Cartas de detección remota que evalúa el rendimiento de la clasificación basada en objetos .

Finalmente, un ejemplo divertido, solo para mostrar que incluso con clasificadores regionales / convolucionales, la visión por computadora sigue siendo realmente difícil; afortunadamente, las personas más inteligentes de Google, Facebook, etc., están trabajando en algoritmos para poder determinar la diferencia entre perros, gatos y diferentes razas de perros y gatos. Por lo tanto, los usuarios interesados ​​en la teledetección pueden dormir tranquilos por la noche: D

ingrese la descripción de la imagen aquí

John Powell
fuente
0

Una respuesta muy simple es la siguiente:

Si usa solo información espectral (intensidad de píxeles) como conjunto de entrenamiento, hace una clasificación de base de píxeles.

Si usa tanto información espacial (píxeles de vecindad) como espectral como conjunto de entrenamiento, hace una clasificación de base de objeto (usando un algoritmo basado en segmentación, por ejemplo, DBScan). En Computer Vision, este DBScan se utiliza para la extracción de Superpixel.

Nota: puede usar información espectral en cualquier sentido (tamaño, forma, contexto / textura) para la extracción de características.

Puede utilizar diferentes enfoques para realizar la extracción de características utilizando información espectral.

La pregunta principal es cómo se puede encontrar el enfoque más adecuado para la extracción de características y aplicar el algoritmo eficiente (detección de bordes, segmentación basada en espectros, agrupamiento) para el problema planteado para sacar la información de la información espectral.

Uno podría pensar en la matriz de convolución para hacer un buen análisis en la información espectral y espacial para crear un conjunto de entrenamiento.

Referencia: Mi conocimiento después de tener experiencia de más de 3 años trabajando en Teledetección y Dominio SIG.

morteza
fuente