Convolutiebewerking op een matrix van 7×7 met een kernel van 3×3
  1. In de wiskunde is convolutie een bewerking die op twee functies (f en g) wordt uitgevoerd om een derde functie te produceren. Convolutie is een van de belangrijkste bewerkingen in de signaal- en beeldverwerking. Zij kan in 1D (b.v. spraakverwerking), 2D (b.v. beeldverwerking) of 3D (videoverwerking) werken.
  2. In beeldverwerking is convolutie het proces van het transformeren van een beeld door een kernel over elke pixel en zijn lokale buren over het gehele beeld toe te passen. De kernel is een matrix van waarden waarvan de grootte en de waarden het transformatie-effect van het convolutieproces bepalen.
  3. Het convolutieproces omvat de volgende stappen. (1)Het plaatst de Kernel Matrix over elke pixel van het beeld (ervoor zorgend dat de volledige Kernel binnen het beeld is), vermenigvuldigt elke waarde van de Kernel met de overeenkomstige pixel waar het over is. (2) Vervolgens worden de vermenigvuldigde waarden opgeteld en de resulterende waarde wordt teruggegeven als de nieuwe waarde van de middelste pixel. (3) Dit proces wordt over het gehele beeld herhaald.
  4. Zoals we in het plaatje zien, wordt een 3×3 kernel geconvolueerd over een 7×7 bronbeeld. Het middelste element van de kernel wordt over de bronpixel geplaatst. De bronpixel wordt dan vervangen door een gewogen som van zichzelf en de omliggende pixels. De output wordt geplaatst in de waarde van de bestemmingspixel. In dit voorbeeld, op de eerste positie, hebben we 0 in de bron pixel en 4 in de kernel. 4×0 is 0, dan gaan we naar de volgende pixel en hebben we 0 en 0 op beide plaatsen. 0x0 is 0. Dan weer 0x0 is 0. Vervolgens in het centrum is er 1 in het bronbeeld en 0 in de overeenkomstige positie van de kernel. 0x1 is 0. Dan weer 0x1 is 0. Dan 0x0 is 0 en 0x1 is 0 en op de laatste positie is het -4×2 wat -8 is. Als we nu al deze resultaten bij elkaar optellen krijgen we -8 als antwoord dus de output van deze convolutie operatie is -8. Dit resultaat wordt bijgewerkt in het Bestemmingsbeeld.
  5. De output van het convolutie proces verandert met de veranderende kernel waarden. Bijvoorbeeld, een Identity Kernel hieronder, wanneer toegepast op een afbeelding via convolutie, zal geen effect hebben op de resulterende afbeelding. Elke pixel zal zijn oorspronkelijke waarde behouden, zoals in de volgende figuur wordt getoond.

Identity Kernel

Oorspronkelijke afbeelding (links) en afbeelding na toepassing van Identiteitsfilter van 3×3(rechts)

Een verscherpingskernel zoals deze, toegepast op een afbeelding door middel van convolutie, zal een verscherpingseffect hebben op het resulterende beeld. De precieze waarden kunnen worden aangepast voor verschillende niveaus van scherpte, zoals in de volgende figuur wordt getoond.

Sharpen Kernel

Sharpen Kernel

Oorspronkelijke afbeelding (links) en afbeelding na toepassing van verscherpingsfilter van 3×3 (rechts)

De Gaussiaanse vervagingkernel zoals deze wanneer toegepast op een afbeelding door middel van convolutie, zal een Gaussiaans vervagingseffect toepassen op de resulterende afbeelding.

Gaussian Blur Kernel

Oorspronkelijke afbeelding (links) en afbeelding na toepassing van vervagingsfilter van grootte 7×7 (rechts)

Net zoals de waarden van de Kernel kunnen worden gevarieerd voor verschillende niveaus van effecten, kan ook de grootte van de Kernel worden gewijzigd om het effect van de convolutie vorm te geven.Door de grootte van de Kernel Matrix te vergroten, wordt de ruimtelijke lokaliteit die de resulterende waarde van elke pixel beïnvloedt vergroot, aangezien pixels van verder weg in de vergelijking worden betrokken. Er zijn veel meer Kernels die worden gebruikt bij beeldverwerking, zoals randdetectie, reliëf, rotatie, enz.

6. Convolutie is het sleutelbegrip in Convolutionele Neurale Netwerken. Convolutionele Neurale Netwerken (CNN) zijn een type diep neuraal netwerk. Een CNN bestaat uit een convolutielaag, een poollaag en een volledig aangesloten laag. In de Convolutie laag past een CNN convolutie toe op zijn ingangen met behulp van een Kernel Matrix die het kalibreert door middel van training. Daarom zijn CNN’s zeer goed in feature matching in afbeeldingen en objectclassificatie. De parameters van de convolutielaag bestaan uit een reeks leerbare kernels. Elke kernel is een kleine matrix die zich uitstrekt over de volledige diepte van het ingangsvolume. Tijdens de voorwaartse doorgang convolueren we elke kernel over de breedte en hoogte van het invoerbeeld en berekenen we puntproducten tussen de pixelwaarden van de bron en de kernel op overeenkomstige posities.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.