Una toma del Descriptor de características H. O. G

Antes de saber cómo funciona H. O. G, háganos saber qué son gradientes en este contexto. Tome la siguiente imagen, por ejemplo:

Degradados en imagen

Al pasar de izquierda a derecha píxel por píxel, encontrará que después de algunos pasos, hay un cambio repentino en el valor del píxel, es decir, de un número de píxel inferior negro a un número de píxel superior blanco. Este cambio repentino en el color se denomina degradado y pasar de un tono más oscuro a un tono más claro se denomina degradado positivo y viceversa. Ir de izquierda a derecha nos da el gradiente horizontal y, como es de esperar, ir de arriba a abajo nos da un gradiente vertical.

Cómo funciona el H. O. G

HOG funciona con algo llamado bloque que es similar a una ventana deslizante. Un bloque se considera una cuadrícula de píxeles en la que los gradientes se constituyen a partir de la magnitud y dirección del cambio en las intensidades del píxel dentro del bloque.

Cosas a tener en cuenta: HOG funciona en imágenes en escala de grises.

1 — Así que el primer paso sería convertir una imagen RGB a escala de grises.

2 — Para conseguir una mirada más de cerca, vamos a centrarnos en una cuadrícula de tamaño 8*8. Mira la siguiente imagen.

En el bloque de 64 pixeles, para cada píxel, horizontal y vertical de los gradientes, se calculan. Al igual que en la imagen de arriba, los gradientes horizontales y verticales se calculan como:

Gradiente horizontal: 120 -70 = 50
Gradiente vertical : 100 -50 = 50

3 — Una vez que obtenemos los gradientes, tratamos de calcular algo llamado magnitud de gradiente y ángulo de gradiente para cada uno de los 64 píxeles.

Ahora con los 64 gradiente de vectores, intentamos comprimir a 9 vectores, tratando de conservar al máximo la estructura. Para ello tratamos de trazar un histograma de magnitudes y ángulos. Aquí el eje x son ángulos y se agrupan en 9 contenedores cada uno con un tamaño de 20 grados.

Nota: Los autores del artículo HOG deciden crear 9 contenedores. Así que es bastante constante en todas partes.

Los resultados anteriores son para uno de 8*8 cuadrícula y nos compresión de la representación a 9 vectores.

4 – Cuando deslizamos esa cuadrícula de 8 * 8 a lo largo de toda la imagen e intentamos interpretar los resultados del histograma, obtenemos algo como a continuación.

5 — Y al trazar las características del CERDO, encontraremos que la estructura del objeto o la cara está bien mantenida, perdiendo todas las características insignificantes.

Y tal entrada puede ser aprovechada por cualquier algoritmo de aprendizaje automático para hacer la clasificación o regresión.

Es una técnica muy poderosa que se utiliza todavía hoy en día y la detección de objetos se puede lograr sin el uso de arquitecturas pesadas de DL.

El mejor lugar para obtener la funcionalidad de detección de cerdos es desde la biblioteca Dlib.

Ahora que conoce una herramienta antigua y práctica para representar una imagen en un formato comprimido y aún mantiene la estructura de la misma, puede incorporar esto en muchos casos de uso de visión artificial.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

More: