Convoluciones de imágenes
La convolución de una imagen con un núcleo resume una parte de la imagen como la suma de la multiplicación de esa parte de la imagen con el núcleo. En este ejercicio, escribirás el código que ejecuta una convolución de una imagen con un núcleo utilizando Numpy. Dada una imagen en blanco y negro almacenada en la variable « im
», escribe las operaciones dentro del bucle que ejecutarían la convolución con el núcleo proporcionado.
Este ejercicio forma parte del curso
Modelado de imágenes con Keras
Instrucciones del ejercicio
- Selecciona la ventana correcta de la imagen en cada iteración y multiplica esta parte de la imagen por el núcleo.
- Suma el resultado y asigna la suma a la entrada correcta en el arreglo de salida (
results
).
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
kernel = np.array([[0, 1, 0], [1, 1, 1], [0, 1, 0]])
result = np.zeros(im.shape)
# Output array
for ii in range(im.shape[0] - 3):
for jj in range(im.shape[1] - 3):
result[ii, jj] = (____[ii:ii+3, jj:____+____] * ____).____
# Print result
print(result)