av Victor Powell

En bildkärna är en liten matris som används för att applicera effekter som du kan hitta i Photoshop eller Gimp, t.ex. oskärpa, skärpa, konturering och prägling. De används också inom maskininlärning för ”feature extraction”, en teknik för att bestämma de viktigaste delarna av en bild. I det här sammanhanget kallas processen mer allmänt för ”konvolution” (se: konvolutionella neurala nätverk.)

För att se hur de fungerar börjar vi med att inspektera en svartvit bild. Matrisen till vänster innehåller siffror, mellan 0 och 255, som var och en motsvarar ljusstyrkan hos en pixel i en bild av ett ansikte. Den stora, granulerade bilden har blåsts upp för att göra den lättare att se; den sista bilden är den ”riktiga” storleken.

Låt oss gå igenom att tillämpa följande 3×3 {{selectedKernel}}}-kärna på bilden av ett ansikte ovanifrån.

Nedanför, för varje 3×3-block av pixlar i bilden till vänster, multiplicerar vi varje pixel med motsvarande post i kärnan och tar sedan summan. Denna summa blir en ny pixel i bilden till höger. Håll muspekaren över en pixel i båda bilderna för att se hur dess värde beräknas.

En finess i den här processen är vad som ska göras längs bildens kanter. Till exempel har det övre vänstra hörnet av den inmatade bilden endast tre grannar. Ett sätt att åtgärda detta är att utöka kantvärdena med ett i originalbilden samtidigt som vår nya bild behåller samma storlek. I den här demonstrationen har vi istället ignorerat dessa värden genom att göra dem svarta.

Här är en lekplats där du kan välja olika kärnmatriser och se hur de påverkar originalbilden eller bygga din egen kärna. Du kan också ladda upp din egen bild eller använda livevideo om din webbläsare har stöd för det.

Den skärpta kärnan framhäver skillnader i intilliggande pixelvärden. Detta gör att bilden ser mer levande ut.

Den suddiga kärnan avförstärker skillnaderna mellan intilliggande pixelvärden.

Den reliefartade kärnan (som liknar sobelkärnan och ibland kallas för att betyda detsamma) ger illusionen av djup genom att framhäva skillnaderna mellan pixlar i en viss riktning. I det här fallet i en riktning längs en linje från övre vänster till nedre höger.

Indentitetskärnan lämnar bilden oförändrad. Så tråkigt!

Den anpassade kärnan är vad du gör den till.

Sobelkärnor används för att endast visa skillnaderna i intilliggande pixelvärden i en viss riktning.

En outline-kärna (även kallad ”edge”-kärna) används för att framhäva stora skillnader i pixelvärden. En pixel bredvid grannpixlar med nästan samma intensitet visas svart i den nya bilden, medan en pixel bredvid grannpixlar som skiljer sig kraftigt åt visas vit.

För mer information kan du ta en titt på Gimp’s utmärkta dokumentation om hur man använder Image kernel’s. Du kan också tillämpa dina egna anpassade filter i Photoshop genom att gå till Filter -> Other -> Custom…

admin

Lämna ett svar

Din e-postadress kommer inte publiceras.

lg