Veja a imagem RGB a seguir
Após a convolução terá o seguinte resultado:
O código responsável pela transformação é o seguinte:
A convolução em imagens é o procedimento de calcular uma nova matriz através do cálculo entre a matriz da imagem e uma matriz de convolução, também chamada de kernel.
Veja o exemplo a seguir. Dada a matriz:
30 92 43 1 79 30 59 58 26 18 83 51 63 50 40 63 34 87 55 62 46 29 50 13 46 32 51 73 41 34 38 8 19 21 45 26 96 86 6 17 42 28 23 39 71 10 87 81 84 33 89 12 74 43 79 25 9 58 69 10 33 76 15 15
E o kernel:
-1 0 1 -2 0 2 -1 0 1
O resultado é:
148 -50 -13 -6 -62 38 104 24 -48 -106 -18 -45 57 62 22 -51 -92 -137 38 62 140 52 -167 -93 -7 6 132 33 -53 55 51 -79 -18 99 8 -26
Vejamos as três primeiras operações
30 * (-1) + 92 * 0 + 43 * 1 + 26 * (-2) + 18 * 0 + 83 * 2 + 34 * (-1) + 87 * 0 + 55 * 1 = 148
92 * (-1) + 43 * 0 + 1 * 1 + 18 * (-2) + 83 * 0 + 51 * 2 + 87 * (-1) + 55 * 0 + 62 * 1 = -50
43 * (-1) + 1 * 0 + 79 * 1 + 83 * (-2) + 51 * 0 + 63 * 2 + 55 * (-1) + 62 * 0 + 46 * 1 = -13