Para esta tarea, se nos pidió aplicar una máscara de convolución a una matriz de pixeles de la imagen.
Por ejemplo, en la siguiente imagen podemos ver como se toma un pixel central (borde rojo) y el área de acción del kernel que son los vecinos (borde verde). El cuadro del medio muestra la máscara(kernel) que se le aplicará a la matriz de pixeles de nuestra imagen y el último cuadro muestra el resultado de la multiplicación de estas dos anteriores, es decir se multiplica el valor de cada uno de ellos por el valor correspondiente del kernel y se hace una sumatoria de los resultados
En este caso por ejemplo sería: (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42
El procedimiento que realicé para esta tarea fue el siguiente: Por ejemplo, en la siguiente imagen podemos ver como se toma un pixel central (borde rojo) y el área de acción del kernel que son los vecinos (borde verde). El cuadro del medio muestra la máscara(kernel) que se le aplicará a la matriz de pixeles de nuestra imagen y el último cuadro muestra el resultado de la multiplicación de estas dos anteriores, es decir se multiplica el valor de cada uno de ellos por el valor correspondiente del kernel y se hace una sumatoria de los resultados
En este caso por ejemplo sería: (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42
1.- Convertí la imagen original en escala de grises con la subrutina que ya había hecho para el laboratorio.
2.- Apliqué la máscara Sobel horizontal y vertical para la detección de bordes
3.- Normalicé la imagen
4.- Realicé la binarización
Imagenes resultantes:
Original
Escala de grises
Máscara
Binarizado
Original
Escala de grises
Máscara
Binarizado
Original
Escala de grises
Máscara
Binarizado
Los tiempos promedio que tomaron estás imagenes para realizar este procedimiento son:
- Primera imagen "Taz bebe": 321 x 394 pixeles tardó 4.13 segundos
- Segunda imagen "Google": 543 x 378 pixeles tardó 6.94 segundos
- Tercera imagen "Persona": 605 x 792 pixeles tardó 14.9 segundos
Código:
Liga a mi repositorio
https://github.com/carmensrz/VisionComputacional
Tendrás que trabajar un rato para que te salgan contínuos los bordes. 5 pts por la primera tarea.
ResponderEliminar