En procesamiento de imagen, un núcleo, kernel, matriz de convolución o máscara es una matriz pequeña que se utiliza para desenfoque, enfoque, realce, detección de bordes y más. Esto se logra realizando una convolución entre un núcleo y una imagen.

Detalles

Dependiendo de los valores de los elementos, un núcleo puede producir un amplio rango de efectos.

Operación Núcleo Imagen resultante Identidad Archivo:Vd-Orig.png Detección de bordes Archivo:Vd-Edge1.png Archivo:Vd-Edge2.png Archivo:Vd-Edge3.png Enfocar Archivo:Vd-Sharp.png Desenfoque de cuadro (normalizado) Archivo:Vd-Blur2.png Desenfoque gaussiano 3 × 3 (aproximación) Archivo:Vd-Blur1.png Desenfoque gaussiano 5 × 5 (aproximación) Archivo:Vd-Blur_Gaussian_5x5.png Máscara de desenfoque 5 × 5 Basado en desenfoque gaussiano con cantidad 1 y umbral 0 (sin máscara de imagen) Archivo:Vd-Unsharp_5x5.png

Lo anterior son solo unos pocos ejemplos de efectos que se pueden conseguir convolucionando núcleos e imágenes.

Origen

El origen es la posición del núcleo que está sobre (conceptualmente) el píxel de salida actual. Esto podría estar fuera del núcleo real, aunque generalmente corresponde a uno de los elementos del núcleo. Para un núcleo simétrico, el origen suele ser el elemento central..

Normalización

Se define normalización como la división de cada elemento en el núcleo por la suma de todos los elementos del núcleo, de forma que la suma de los elementos de un núcleo normalizado es uno. Esto asegurará que el píxel promedio en la imagen modificada sea tan brillante como el píxel promedio en la imagen original.

Referencias

Enlaces externos Implementing 2d convolution on FPGA vImage Programming Guide: Performing Convolution Operations Image Processing using 2D-Convolution GNU Image Manipulation Program - User Manual - 8.2. Convolution Matrix Interactive Demonstration of 3x3 Convolution Kernels

Categoría:Procesamiento digital de imágenes