LabelMe es un proyecto creado por el Laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT (CSAIL) que proporciona un conjunto de datos de imágenes digitales con anotaciones . El conjunto de datos es dinámico, de uso gratuito y abierto a la contribución pública. El uso más aplicable de LabelMe es la investigación de la visión por computadora . Al 31 de octubre de 2010, LabelMe tiene 187.240 imágenes, 62.197 imágenes anotadas y 658.992 objetos etiquetados.
Motivación
La motivación detrás de la creación de LabelMe proviene de la historia de los datos disponibles públicamente para los investigadores de visión por computadora. La mayoría de los datos disponibles se adaptaron a los problemas de un grupo de investigación específico y provocaron que los nuevos investigadores tuvieran que recopilar datos adicionales para resolver sus propios problemas. LabelMe se creó para resolver varias deficiencias comunes de los datos disponibles. La siguiente es una lista de cualidades que distinguen a LabelMe de trabajos anteriores.
- Diseñado para el reconocimiento de una clase de objetos en lugar de instancias únicas de un objeto. Por ejemplo, un conjunto de datos tradicional puede haber contenido imágenes de perros, cada uno del mismo tamaño y orientación. Por el contrario, LabelMe contiene imágenes de perros en múltiples ángulos, tamaños y orientaciones.
- Diseñado para reconocer objetos incrustados en escenas arbitrarias en lugar de imágenes recortadas , normalizadas y / o redimensionadas para mostrar un solo objeto.
- Anotación compleja: en lugar de etiquetar una imagen completa (que también limita cada imagen a contener un solo objeto), LabelMe permite la anotación de varios objetos dentro de una imagen especificando un cuadro delimitador de polígono que contiene el objeto.
- Contiene una gran cantidad de clases de objetos y permite la creación de nuevas clases fácilmente.
- Imágenes diversas: LabelMe contiene imágenes de muchas escenas diferentes.
- Proporciona imágenes sin derechos de autor y permite adiciones públicas a las anotaciones. Esto crea un entorno libre.
Herramienta de anotación
La herramienta de anotación de LabelMe proporciona un medio para que los usuarios contribuyan al proyecto. Se puede acceder a la herramienta de forma anónima o iniciando sesión en una cuenta gratuita. Para acceder a la herramienta, los usuarios deben tener un navegador web compatible con soporte JavaScript . Cuando se carga la herramienta, elige una imagen aleatoria del conjunto de datos de LabelMe y la muestra en la pantalla. Si la imagen ya tiene etiquetas de objeto asociadas, se superpondrán en la parte superior de la imagen en formato poligonal. Cada etiqueta de objeto distinta se muestra en un color diferente.
Si la imagen no está completamente etiquetada, el usuario puede usar el mouse para dibujar un polígono que contenga un objeto en la imagen. Por ejemplo, en la imagen adyacente, si una persona estaba parada frente al edificio, el usuario podía hacer clic en un punto del borde de la persona y continuar haciendo clic en el borde exterior hasta volver al punto de partida. Una vez que el polígono está cerrado, aparece una burbuja en la pantalla que permite al usuario ingresar una etiqueta para el objeto. El usuario puede elegir la etiqueta que crea que describe mejor el objeto. Si el usuario no está de acuerdo con el etiquetado anterior de la imagen, el usuario puede hacer clic en el polígono de contorno de un objeto y eliminar el polígono por completo o editar la etiqueta de texto para darle un nuevo nombre.
Tan pronto como el usuario realiza cambios en la imagen, se guardan y están disponibles abiertamente para que cualquiera pueda descargarlos del conjunto de datos de LabelMe. De esta forma, los datos siempre están cambiando debido a las aportaciones de la comunidad de usuarios que utilizan la herramienta. Una vez que el usuario haya terminado con una imagen, se puede hacer clic en el enlace Mostrar otra imagen y se seleccionará otra imagen aleatoria para mostrarla al usuario.
Problemas con los datos
El conjunto de datos de LabelMe tiene algunos problemas. Algunos son inherentes a los datos, como que los objetos de las imágenes no se distribuyen uniformemente con respecto al tamaño y la ubicación de la imagen. Esto se debe a que las imágenes son tomadas principalmente por humanos que tienden a enfocar la cámara en objetos interesantes en una escena. Sin embargo, recortar y cambiar la escala de las imágenes de forma aleatoria puede simular una distribución uniforme. [1] Otros problemas son causados por la cantidad de libertad dada a los usuarios de la herramienta de anotación. Algunos problemas que surgen son:
- El usuario puede elegir qué objetos de la escena delinear. ¿Debería etiquetarse a una persona ocluida ? ¿Debería incluirse una parte ocluida de un objeto al delinear el objeto? ¿Debería etiquetarse el cielo?
- El usuario tiene que describir la forma del objeto por sí mismo delineando un polígono. ¿Deben perfilarse con detalle los dedos de una mano sobre una persona? ¿Cuánta precisión debe usarse al delinear objetos?
- El usuario elige qué texto ingresar como etiqueta para el objeto. ¿La etiqueta debe ser persona , hombre o peatón ?
Los creadores de LabelMe decidieron dejar estas decisiones en manos del anotador. La razón de esto es que creen que las personas tenderán a anotar las imágenes de acuerdo con lo que creen que es el etiquetado natural de las imágenes. Esto también proporciona cierta variabilidad en los datos, lo que puede ayudar a los investigadores a ajustar sus algoritmos para tener en cuenta esta variabilidad. [2]
Ampliando los datos
Usando WordNet
Dado que las etiquetas de texto para los objetos proporcionados en LabelMe provienen de la entrada del usuario, hay mucha variación en las etiquetas utilizadas (como se describe anteriormente). Debido a esto, el análisis de objetos puede resultar difícil. Por ejemplo, una imagen de un perro puede etiquetarse como perro , canino , sabueso , chucho o animal . Idealmente, al usar los datos, la clase de objeto perro en el nivel abstracto debería incorporar todas estas etiquetas de texto.
WordNet es una base de datos de palabras organizadas de forma estructural. Permite asignar una palabra a una categoría, o en el lenguaje WordNet: un sentido. La asignación de sentido no es fácil de hacer automáticamente. Cuando los autores de LabelMe probaron la asignación automática de sentidos, descubrieron que era propensa a una alta tasa de error, por lo que asignaron palabras a los sentidos manualmente. Al principio, esto puede parecer una tarea abrumadora ya que continuamente se agregan nuevas etiquetas al proyecto LabelMe. A la derecha hay un gráfico que compara el crecimiento de polígonos con el crecimiento de palabras (descripciones). Como puede ver, el crecimiento de palabras es pequeño en comparación con el crecimiento continuo de polígonos y, por lo tanto, es bastante fácil de mantener actualizado manualmente por el equipo de LabelMe. [3]
Una vez que se realiza la asignación de WordNet, las búsquedas en la base de datos de LabelMe son mucho más efectivas. Por ejemplo, una búsqueda de animal puede mostrar imágenes de perros , gatos y serpientes . Sin embargo, dado que la asignación se realizó manualmente, una imagen de un mouse de computadora etiquetado como mouse no aparecería en una búsqueda de animales . Además, si los objetos están etiquetados con términos más complejos, como pasear perros , WordNet aún permite que la búsqueda de perros devuelva estos objetos como resultados. WordNet hace que la base de datos de LabelMe sea mucho más útil.
Jerarquía de partes de objeto
Tener un gran conjunto de datos de objetos donde se permite la superposición proporciona suficientes datos para intentar clasificar los objetos como parte de otro objeto. Por ejemplo, la mayoría de las etiquetas asignadas a la rueda probablemente formen parte de objetos asignados a otras etiquetas como automóvil o bicicleta . Estos se denominan etiquetas de piezas . Para determinar si la etiqueta P es una etiqueta de parte de la etiqueta O : [4]
- Dejar denotar el conjunto de imágenes que contienen un objeto (por ejemplo, un automóvil)
- Dejar denotar el conjunto de imágenes que contienen una parte (por ejemplo, rueda)
- Deje que la superposición se puntúe entre el objeto O y la parte P ,, definirse como la relación entre el área de intersección y el área del polígono parcial. (p.ej)
- Dejar denotar las imágenes donde los polígonos de objeto y parte tienen dónde es un valor umbral. Los autores de LabelMe utilizan
- La puntuación de la parte del objeto para una etiqueta candidata es dónde y son el número de imágenes en y , respectivamente, y es un parámetro de concentración. Los autores de LabelMe utilizan.
Este algoritmo permite la clasificación automática de partes de un objeto cuando los objetos de la parte se encuentran frecuentemente dentro del objeto externo.
Orden de profundidad de objeto
Otro caso de superposición de objetos es cuando un objeto está realmente encima del otro. Por ejemplo, una imagen puede contener a una persona parada frente a un edificio. La persona no es una etiqueta de parte como la anterior, ya que la persona no es parte del edificio. En cambio, son dos objetos separados que se superponen. Para determinar automáticamente qué objeto es el primer plano y cuál el fondo, los autores de LabelMe proponen varias opciones: [5]
- Si un objeto está completamente contenido dentro de otro objeto, entonces el objeto interno debe estar en primer plano. De lo contrario, no sería visible en la imagen. La única excepción es con los objetos transparentes o translúcidos, pero estos ocurren raramente.
- Uno de los objetos podría etiquetarse como algo que no puede estar en primer plano. Algunos ejemplos son cielo , tierra o carretera .
- Lo más probable es que el objeto con más puntos de polígono dentro del área de intersección sea el primer plano. Los autores probaron esta hipótesis y la encontraron muy precisa.
- Se puede utilizar la intersección de histograma [6] . Para hacer esto, un histograma de color en las áreas de intersección se compara con el histograma de color de los dos objetos. El objeto con el histograma de color más cercano se asigna como primer plano. Este método es menos preciso que contar los puntos del polígono.
Caja de herramientas de Matlab
El proyecto LabelMe proporciona un conjunto de herramientas para usar el conjunto de datos LabelMe de Matlab. Dado que la investigación se realiza a menudo en Matlab, esto permite la integración del conjunto de datos con las herramientas existentes en visión por computadora. El conjunto de datos completo se puede descargar y usar sin conexión, o la caja de herramientas permite la descarga dinámica de contenido a pedido.
Ver también
Referencias
- ^ Russell y col. 2008 , Sección 2.5
- ^ Russell y col. 2008 , Sección 2.2
- ^ Russell y col. 2008 , Sección 3.1
- ^ Russell y col. 2008 , Sección 3.2
- ^ Russell y col. 2008 , Sección 3.3
- ^ Swain y Ballard 1991
- Bibliografía
- Russell, Bryan C .; Torralba, Antonio; Murphy, Kevin P .; Freeman, William T. (2008). "Label Me : una base de datos y una herramienta basada en web para la anotación de imágenes" (PDF) . Revista Internacional de Visión por Computador . 77 (1-3): 157-173. doi : 10.1007 / s11263-007-0090-8 . S2CID 1900911 .
- Swain, Michael J .; Ballard, Dana H. (1991). "Indexación de colores". Revista Internacional de Visión por Computador . 7 : 11–32. doi : 10.1007 / BF00130487 . S2CID 8167136 .
enlaces externos
- http://labelme.csail.mit.edu/ - LabelMe - La herramienta de anotación abierta