Lineaire filters bij beeldverwerking wijzigen een afbeelding door een gewogen som van pixelwaarden binnen een lokale omgeving uit te voeren. Ze worden gekenmerkt door hun kern (of masker), een kleine matrix van gewichten. Het type filter wordt bepaald door de waarden binnen deze kernel. Hier zijn enkele veelvoorkomende typen:
1. Afvlakkingsfilters (laagdoorlaatfilters): Deze filters vervagen het beeld door de pixelwaarden te middelen. Ze verminderen ruis en fijne details.
* Gemiddeld filter: Alle kernelwaarden zijn gelijk (bijvoorbeeld een 3x3 kernel met alle waarden 1/9). Eenvoudig en rekenkundig goedkoop, maar kan aanzienlijke vervaging veroorzaken.
* Gaussiaans filter: Kernelwaarden volgen een Gaussiaanse verdeling. Produceert een vloeiendere vervaging dan een middelingsfilter en er is minder kans op artefacten. De standaardafwijking van de Gauss bepaalt de mate van vervaging.
* Mediaanfilter: Dit is *niet-lineair*, maar vanwege de vergelijkbare toepassing vaak gegroepeerd met lineaire filters. Het vervangt de middelste pixel door de mediaanwaarde van de pixels in de kernel. Uitstekend in het verwijderen van zout-en-pepergeluiden, terwijl de randen beter behouden blijven dan gemiddeld.
2. Verscherpingsfilters (hoogdoorlaatfilters): Deze filters verbeteren randen en details door verschillen in pixelwaarden te benadrukken.
* Laplace-filter: Gebruikt een kernel die de tweede afgeleide van de afbeelding benadert. Markeert gebieden met snelle intensiteitsverandering. Vaak gebruikt voor randdetectie. Er bestaan variaties, waaronder de 4-verbonden en 8-verbonden Laplaces.
* Onscherp maskeren: Trekt een wazige versie van de afbeelding af van het origineel, waardoor de hoogfrequente componenten worden versterkt. Biedt meer gecontroleerde verscherping dan Laplace.
* Sobel-operator: (en Prewitt en Kirsch) Dit zijn gradiëntoperatoren die de beeldgradiënt benaderen, waarbij randen in een specifieke richting worden benadrukt. Ze produceren randkaarten in plaats van de originele afbeelding rechtstreeks te verscherpen.
3. Richtingsfilters: Deze filters zijn gevoelig voor specifieke oriëntaties in de afbeelding.
* Roberts Cross-operator: Een eenvoudige randdetector die gevoelig is voor diagonale randen.
* Sobel Operator (opnieuw): Hoewel gebruikt voor algemene randdetectie, kunnen verschillende oriëntaties van de Sobel-kernel worden gebruikt om randen in horizontale of verticale richtingen te benadrukken.
4. Andere lineaire filters:
* Afgeleide filters: Deze filters benaderen de eerste of tweede afgeleide van de beeldintensiteit. Wordt gebruikt voor randdetectie en feature-extractie. Voorbeelden hiervan zijn de hierboven genoemde Sobel-, Prewitt- en Laplace-filters.
* Identiteitsfilter: Een kernel met een 1 in het midden en een 0 elders. Dit filter laat het beeld ongewijzigd.
Belangrijke overwegingen:
* Kernelgrootte: De grootte van de kernel beïnvloedt de mate van filtering. Grotere korrels zorgen voor meer vervaging (verzachting) of een grotere verscherping.
* Normalisatie: Kernels voor het verzachten van filters worden vaak genormaliseerd (de som van de gewichten is gelijk aan 1) om veranderingen in de algehele beeldhelderheid te voorkomen.
* Grensafhandeling: Er zijn vaak speciale technieken nodig om pixels nabij de beeldranden te verwerken, waar de kern zich buiten de beeldgrens kan uitstrekken. Veelgebruikte methoden zijn opvullen met nullen of spiegelen.
Deze lijst is niet uitputtend, maar omvat de meest voorkomende typen lineaire filters die worden gebruikt bij beeldverwerking. De filterkeuze is sterk afhankelijk van de specifieke toepassing en het gewenste resultaat. |