stringtranslate.com

Histograma de gradientes orientados

El histograma de gradientes orientados (HOG) es un descriptor de características utilizado en visión por computadora y procesamiento de imágenes con el fin de detectar objetos . La técnica cuenta las apariciones de orientación de degradado en partes localizadas de una imagen. Este método es similar al de los histogramas de orientación de bordes, los descriptores de transformación de características invariantes de escala y los contextos de forma , pero difiere en que se calcula en una cuadrícula densa de celdas espaciadas uniformemente y utiliza una normalización de contraste local superpuesta para mejorar la precisión.

Robert K. McConnell de Wayland Research Inc. describió por primera vez los conceptos detrás de HOG sin utilizar el término HOG en una solicitud de patente en 1986. [1] En 1994, los conceptos fueron utilizados por Mitsubishi Electric Research Laboratories . [2] Sin embargo, el uso no se generalizó hasta 2005, cuando Navneet Dalal y Bill Triggs, investigadores del Instituto Nacional Francés de Investigación en Ciencias de la Computación y Automatización ( INRIA ), presentaron su trabajo complementario sobre los descriptores HOG en la Conferencia sobre Visión y Patrones por Computadora. Reconocimiento (CVPR). En este trabajo se centraron en la detección de peatones en imágenes estáticas, aunque desde entonces ampliaron sus pruebas para incluir la detección humana en vídeos, así como una variedad de animales y vehículos comunes en imágenes estáticas.

Teoría

La idea esencial detrás del descriptor de histograma de gradientes orientados es que la apariencia y forma del objeto local dentro de una imagen se puede describir mediante la distribución de gradientes de intensidad o direcciones de los bordes. La imagen se divide en pequeñas regiones conectadas llamadas celdas y, para los píxeles dentro de cada celda, se compila un histograma de direcciones de gradiente. El descriptor es la concatenación de estos histogramas. Para mejorar la precisión, los histogramas locales se pueden normalizar en contraste calculando una medida de la intensidad en una región más grande de la imagen, llamada bloque, y luego usando este valor para normalizar todas las celdas dentro del bloque. Esta normalización da como resultado una mejor invariancia a los cambios en la iluminación y las sombras.

El descriptor HOG tiene algunas ventajas clave sobre otros descriptores. Dado que opera en celdas locales, es invariante a transformaciones geométricas y fotométricas, excepto para la orientación de objetos. Estos cambios sólo aparecerían en regiones espaciales más grandes. Además, como descubrieron Dalal y Triggs, el muestreo espacial aproximado, el muestreo de orientación fino y una fuerte normalización fotométrica local permiten ignorar el movimiento corporal individual de los peatones siempre que mantengan una posición aproximadamente erguida. Por tanto, el descriptor HOG es especialmente adecuado para la detección humana en imágenes. [3]

Implementación de algoritmo

Computación de gradiente

El primer paso del cálculo en muchos detectores de características en el preprocesamiento de imágenes es garantizar valores de color y gamma normalizados. Sin embargo, como señalan Dalal y Triggs, este paso se puede omitir en el cálculo del descriptor HOG, ya que la normalización del descriptor resultante esencialmente logra el mismo resultado. Por tanto, el preprocesamiento de imágenes tiene poco impacto en el rendimiento. En cambio, el primer paso del cálculo es el cálculo de los valores del gradiente. El método más común es aplicar la máscara de derivada discreta puntual centrada en 1-D en una o ambas direcciones horizontal y vertical. Específicamente, este método requiere filtrar los datos de color o intensidad de la imagen con los siguientes núcleos de filtro:

Dalal y Triggs probaron otras máscaras más complejas, como la máscara de Sobel 3x3 o las máscaras diagonales, pero estas máscaras generalmente tuvieron un rendimiento peor en la detección de humanos en imágenes. También experimentaron con el suavizado gaussiano antes de aplicar la máscara derivada, pero de manera similar descubrieron que la omisión de cualquier suavizado funcionaba mejor en la práctica. [4]

Agrupación de orientación

El segundo paso del cálculo es crear los histogramas de celda. Cada píxel dentro de la celda emite un voto ponderado para un contenedor de histograma basado en la orientación según los valores encontrados en el cálculo del gradiente. Las celdas en sí pueden tener forma rectangular o radial, y los canales del histograma están distribuidos uniformemente entre 0 y 180 grados o entre 0 y 360 grados, dependiendo de si el gradiente está "sin firmar" o "con signo". Dalal y Triggs descubrieron que los gradientes sin signo utilizados junto con 9 canales de histograma funcionaron mejor en sus experimentos de detección en humanos, al tiempo que observaron que los gradientes con signo conducen a mejoras significativas en el reconocimiento de algunas otras clases de objetos, como automóviles o motocicletas. En cuanto al peso de los votos, la contribución de los píxeles puede ser la magnitud del gradiente en sí o alguna función de la magnitud. En las pruebas, la magnitud del gradiente en sí misma generalmente produce los mejores resultados. Otras opciones para el peso del voto podrían incluir la raíz cuadrada o el cuadrado de la magnitud del gradiente, o alguna versión recortada de la magnitud. [5]

Bloques de descriptores

Para tener en cuenta los cambios en la iluminación y el contraste, las intensidades del gradiente deben normalizarse localmente, lo que requiere agrupar las celdas en bloques más grandes y conectados espacialmente. El descriptor HOG es entonces el vector concatenado de los componentes de los histogramas de celdas normalizados de todas las regiones del bloque. Estos bloques normalmente se superponen, lo que significa que cada celda contribuye más de una vez al descriptor final. Existen dos geometrías de bloques principales: bloques R-HOG rectangulares y bloques C-HOG circulares. Los bloques R-HOG son generalmente cuadrículas cuadradas, representadas por tres parámetros: el número de celdas por bloque, el número de píxeles por celda y el número de canales por histograma de celda. En el experimento de detección humana de Dalal y Triggs, se encontró que los parámetros óptimos eran cuatro celdas de 8x8 píxeles por bloque (16x16 píxeles por bloque) con 9 canales de histograma. Además, descubrieron que se podría obtener una pequeña mejora en el rendimiento aplicando una ventana espacial gaussiana dentro de cada bloque antes de tabular los votos del histograma para ponderar menos los píxeles alrededor del borde de los bloques. Los bloques R-HOG parecen bastante similares a los descriptores de transformación de características invariantes de escala (SIFT); sin embargo, a pesar de su formación similar, los bloques R-HOG se calculan en cuadrículas densas en una escala única sin alineación de orientación, mientras que los descriptores SIFT generalmente se calculan en puntos de imagen clave dispersos e invariantes de escala y se rotan para alinear la orientación. Además, los bloques R-HOG se utilizan en conjunto para codificar información de forma espacial, mientras que los descriptores SIFT se utilizan individualmente.

Los bloques circulares HOG (C-HOG) se pueden encontrar en dos variantes: aquellos con una sola celda central y aquellos con una celda central dividida angularmente. Además, estos bloques C-HOG se pueden describir con cuatro parámetros: el número de contenedores angulares y radiales, el radio del contenedor central y el factor de expansión para el radio de contenedores radiales adicionales. Dalal y Triggs descubrieron que las dos variantes principales proporcionaban el mismo rendimiento y que dos contenedores radiales con cuatro contenedores angulares, un radio central de 4 píxeles y un factor de expansión de 2 proporcionaban el mejor rendimiento en su experimentación (para lograr un buen rendimiento, por fin use esta configuración). Además, la ponderación gaussiana no proporcionó ningún beneficio cuando se usó junto con los bloques C-HOG. Los bloques C-HOG parecen similares a los descriptores de contexto de forma , pero difieren fuertemente en que los bloques C-HOG contienen celdas con varios canales de orientación, mientras que los contextos de forma solo utilizan un recuento de presencia de un solo borde en su formulación. [6]

Normalización de bloques

Dalal y Triggs exploraron cuatro métodos diferentes para la normalización de bloques. Sea el vector no normalizado que contiene todos los histogramas en un bloque dado, sea su k -norma y sea una pequeña constante (con suerte, el valor exacto no es importante). Entonces el factor de normalización puede ser uno de los siguientes:

Norma L2:
L2-hys: norma L2 seguida de recorte (limitando los valores máximos de v a 0,2) y renormalización, como en [7]
Norma L1:
L1-sqrt:

En sus experimentos, Dalal y Triggs descubrieron que los esquemas L2-hys, L2-norm y L1-sqrt proporcionan un rendimiento similar, mientras que el L1-norm proporciona un rendimiento ligeramente menos confiable; sin embargo, los cuatro métodos mostraron una mejora muy significativa con respecto a los datos no normalizados. [8]

Reconocimiento de objetos

Los descriptores HOG se pueden utilizar para el reconocimiento de objetos proporcionándolos como características de un algoritmo de aprendizaje automático . Dalal y Triggs utilizaron descriptores HOG como características en una máquina de vectores de soporte (SVM); [9] sin embargo, los descriptores HOG no están vinculados a un algoritmo de aprendizaje automático específico.

Actuación

En su experimento original de detección humana, Dalal y Triggs compararon sus bloques de descriptores R-HOG y C-HOG con wavelets de Haar generalizados, descriptores PCA-SIFT y descriptores de contexto de forma . Las ondas de Haar generalizadas son ondas de Haar orientadas y fueron utilizadas en 2001 por Mohan, Papageorgiou y Poggio en sus propios experimentos de detección de objetos. Los descriptores PCA-SIFT son similares a los descriptores SIFT, pero difieren en que el análisis de componentes principales se aplica a los parches de gradiente normalizados. Los descriptores PCA-SIFT fueron utilizados por primera vez en 2004 por Ke y Sukthankar y se afirmó que superaban a los descriptores SIFT normales. Finalmente, los contextos de forma utilizan contenedores circulares, similares a los utilizados en los bloques C-HOG, pero solo tabulan los votos en función de la presencia de los bordes, sin hacer distinción con respecto a la orientación. Los contextos de forma fueron utilizados originalmente en 2001 por Belongie, Malik y Puzicha.

Las pruebas comenzaron con dos conjuntos de datos diferentes. La base de datos de peatones del Instituto Tecnológico de Massachusetts (MIT) contiene 509 imágenes de entrenamiento y 200 imágenes de prueba de peatones en las calles de la ciudad. El conjunto solo contiene imágenes que muestran el frente o la espalda de figuras humanas y contiene poca variedad en poses humanas. El conjunto es muy conocido y se ha utilizado en una variedad de experimentos de detección en humanos, como los realizados por Papageorgiou y Poggio en 2000. La base de datos del MIT está actualmente disponible para investigaciones en https://web.archive.org/web/ 20041118152354/http://cbcl.mit.edu/cbcl/software-datasets/PedestrianData.html. El segundo conjunto fue desarrollado por Dalal y Triggs exclusivamente para su experimento de detección humana debido al hecho de que los descriptores HOG funcionaron casi perfectamente en el conjunto del MIT. Su conjunto, conocido como INRIA, contiene 1.805 imágenes de humanos tomadas a partir de fotografías personales. El set contiene imágenes de humanos en una amplia variedad de poses e incluye fondos difíciles, como escenas de multitudes, lo que lo hace más complejo que el set del MIT. La base de datos INRIA está actualmente disponible para investigaciones en http://lear.inrialpes.fr/data.

El sitio de arriba tiene una imagen que muestra ejemplos de la base de datos de detección humana de INRIA.

En cuanto a los resultados, los descriptores de bloque C-HOG y R-HOG funcionan de manera comparable, y los descriptores C-HOG mantienen una ligera ventaja en la tasa de errores de detección con tasas fijas de falsos positivos en ambos conjuntos de datos. En el conjunto del MIT, los descriptores C-HOG y R-HOG produjeron una tasa de errores de detección esencialmente cero con una tasa de falsos positivos de 10 −4 . En el conjunto INRIA, los descriptores C-HOG y R-HOG produjeron una tasa de error de detección de aproximadamente 0,1 con una tasa de falsos positivos de 10 −4 . Las ondas de Haar generalizadas representan el siguiente enfoque de mayor rendimiento: produjeron aproximadamente una tasa de fallos de 0,01 con una tasa de falsos positivos de 10 −4 en el conjunto del MIT, y aproximadamente una tasa de fallos de 0,3 en el conjunto de INRIA. Los descriptores PCA-SIFT y los descriptores de contexto de forma tuvieron un desempeño bastante pobre en ambos conjuntos de datos. Ambos métodos produjeron una tasa de fallos de 0,1 con una tasa de falsos positivos de 10 −4 en el conjunto MIT y casi una tasa de fallos de 0,5 con una tasa de falsos positivos de 10 −4 en el conjunto INRIA.

Mayor desarrollo

Como parte del taller Pascal Visual Object Classes 2006, Dalal y Triggs presentaron resultados sobre la aplicación de histogramas de descriptores de gradientes orientados a objetos de imágenes distintos de humanos, como automóviles, autobuses y bicicletas, así como a animales comunes como perros, gatos, y vacas. Incluyeron en sus resultados los parámetros óptimos para la formulación y normalización de bloques en cada caso. La imagen de la siguiente referencia muestra algunos de sus ejemplos de detección para motocicletas. [10]

Como parte de la Conferencia Europea sobre Visión por Computador (ECCV) de 2006, Dalal y Triggs se asociaron con Cordelia Schmid para aplicar detectores HOG al problema de la detección humana en películas y vídeos. Combinaron descriptores HOG en cuadros de video individuales con sus histogramas de movimiento interno (IMH) recientemente introducidos en pares de cuadros de video posteriores. Estos histogramas de movimiento interno utilizan las magnitudes de gradiente de los campos de flujo óptico obtenidos de dos fotogramas consecutivos. Estas magnitudes de gradiente se utilizan luego de la misma manera que las producidas a partir de datos de imágenes estáticas dentro del enfoque del descriptor HOG. Al realizar pruebas en dos grandes conjuntos de datos tomados de varias películas, el método combinado HOG-IMH arrojó una tasa de errores de aproximadamente 0,1 con una tasa de falsos positivos. [11]

En el Simposio sobre vehículos inteligentes de 2006, F. Suard, A. Rakotomamonjy y A. Bensrhair presentaron un sistema completo para la detección de peatones basado en descriptores HOG. Su sistema funciona mediante dos cámaras infrarrojas. Dado que los seres humanos aparecen más brillantes que su entorno en las imágenes infrarrojas, el sistema primero localiza posiciones de interés dentro del campo de visión más amplio donde posiblemente se puedan ubicar los seres humanos. Luego, los clasificadores de máquinas de vectores de soporte operan sobre los descriptores HOG tomados de estas posiciones de interés más pequeñas para formular una decisión con respecto a la presencia de un peatón. Una vez que los peatones están ubicados dentro del campo de visión, se estima la posición real del peatón mediante visión estéreo. [12]

En la Conferencia IEEE sobre visión por computadora y reconocimiento de patrones en 2006, Qiang Zhu, Shai Avidan, Mei-Chen Yeh y Kwang-Ting Cheng presentaron un algoritmo para acelerar significativamente la detección humana utilizando métodos de descriptores HOG. Su método utiliza descriptores HOG en combinación con el algoritmo de clasificadores en cascada que normalmente se aplica con gran éxito a la detección de rostros. Además, en lugar de depender de bloques de tamaño uniforme, introducen bloques que varían en tamaño, ubicación y relación de aspecto. Para aislar los bloques más adecuados para la detección humana, aplicaron el algoritmo AdaBoost para seleccionar los bloques que se incluirán en la cascada. En su experimentación, su algoritmo logró un rendimiento comparable al del algoritmo original de Dalal y Triggs, pero funcionó a velocidades hasta 70 veces más rápidas. En 2006, los Laboratorios de Investigación de Mitsubishi Electric solicitaron la patente estadounidense de este algoritmo con el número de solicitud 20070237387. [13]

En la Conferencia Internacional IEEE sobre Procesamiento de Imágenes de 2010, Rui Hu, Mark Banard y John Collomosse ampliaron el descriptor HOG para su uso en la recuperación de imágenes basada en bocetos (SBIR). Se extrapoló un campo de orientación denso a partir de las respuestas dominantes en el detector de bordes Canny bajo una restricción de suavidad laplaciana , y HOG se calculó sobre este campo. El descriptor HOG (GF-HOG) del campo de gradiente resultante capturó la estructura espacial local en bocetos o mapas de bordes de imágenes. Esto permitió que el descriptor se utilizara dentro de un sistema de recuperación de imágenes basado en contenido que se puede buscar mediante formas dibujadas a mano alzada. [14] Se demostró que la adaptación de GF-HOG supera a los descriptores de histograma de gradiente existentes, como SIFT , SURF y HOG en aproximadamente un 15 por ciento en la tarea de SBIR. [15]

En 2010, Martin Krückhans introdujo una mejora del descriptor HOG para nubes de puntos 3D. [16] En lugar de gradientes de imagen, utilizó distancias entre puntos (píxeles) y planos, los llamados residuales, para caracterizar una región local en una nube de puntos. Su histograma de descriptor de residuos orientados (HOR) se utilizó con éxito en tareas de detección de objetos de nubes de puntos 3D. [17]

Ver también

Referencias

  1. ^ "Método y aparato para el reconocimiento de patrones".
  2. ^ "Histogramas de orientación para el reconocimiento de gestos con las manos".
  3. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 2.
  4. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 4.
  5. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 5.
  6. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 6.
  7. ^ Director General Lowe. Características de imagen distintivas a partir de puntos clave invariantes de escala. IJCV, 60(2):91–110, 2004.
  8. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 6.
  9. ^ "Histogramas de gradientes orientados para la detección humana" (PDF) . pag. 1.
  10. ^ "Detección de objetos mediante histogramas de gradientes orientados" (PDF) . Archivado desde el original (PDF) el 5 de diciembre de 2013 . Consultado el 10 de diciembre de 2007 .
  11. ^ "Detección humana mediante histogramas orientados de flujo y apariencia" (PDF) . Archivado desde el original (PDF) el 5 de septiembre de 2008 . Consultado el 10 de diciembre de 2007 .(el documento original ya no está disponible; documento similar)
  12. ^ "Detección de peatones mediante imágenes infrarrojas e histogramas de gradientes orientados" (PDF) .
  13. ^ "Detección humana rápida mediante una cascada de histogramas de gradientes orientados" (PDF) .
  14. ^ "Descriptor de campo de degradado para recuperación y localización de imágenes basadas en bocetos" (PDF) .
  15. ^ "Una evaluación del rendimiento del descriptor HOG de campo de gradiente para la recuperación de imágenes basada en bocetos" (PDF) .
  16. ^ Krückhans, Martín. "Ein Detektor für Ornamente auf Gebäudefassaden auf Basis des" histograma-de-gradientes-orientados "-Operadores" (PDF) .(alemán)
  17. ^ "Mapas semánticos de octree 3D basados ​​en campos aleatorios condicionales" (PDF) .

enlaces externos