Introductie in image processing - P1

Leestijd 5 minuten

De wondere wereld achter Midjourney 🖼️

In de tweede helft van 2022 verschenen ChatGPT, Midjourney en vele andere AI bots. Het is niet nodig om te benadrukken hoe verbijsterend de mogelijkheden van kunstmatige intelligentie zijn. Hoe dan ook, voor mij en vele anderen zijn de artist-AI’s het grootste wonder. Hoe kunnen deze zielloze wezens, die niet weten hoe het is om pijn of liefde te voelen, over de creativiteit beschikken om kunst te maken?

Toch hebben ze vanuit technisch oogpunt reeds briljant werk geleverd.

afbeelding gemaakt door Midjourney

Onze mollige kitten kwam gister doorweekt binnen, na een flinke regenbui te hebben getrotseerd. Om dat moment te vieren, lieten we de Midjourney-bot het schattige stuk hierboven maken. Het model imiteerde waterverf, een zeer onvoorspelbare techniek, maar produceerde toch zo'n voorspelbare en fijne tekening.

In plaats van ons te mengen in het debat over kunstethiek en creatieve habitats, vragen we ons in dit artikel af hoe AI deze belachelijk goede resultaten heeft bereikt. Wat een kunstenaar schildert, is een projectie van hoe hij of zij de wereld ziet. Is het dus niet interessant om kunst door de lens van de machines te "zien"?

We introduceren het basisconcept van het verwerken van afbeeldingen om te begrijpen hoe foto's worden waargenomen door de "ogen" van AI. Er zijn op dit gebied eindeloos veel toepassingsmogelijkheden in een digitale wereld vol data!

We introduceren het basisconcept van het verwerken van afbeeldingen om te begrijpen hoe foto’s worden waargenomen door de “ogen” van AI’s. Er zijn op dit gebied eindeloos veel toepassingsmogelijkheden in een digitale wereld vol data!

Introductie

Computers verwerken alles als bits en bytes. Afbeeldingen zijn hierop geen uitzondering.

Kleuren

Laten we beginnen met kleuren. Als je rood en geel mengt, krijg je oranje. Op die manier kan elke kleur worden gemaakt als een combinatie van rood, groen en blauw. Wetenschappelijk uitgelegd: elke kleur kan worden weergegeven met slechts de waarden van hun rode, groene en blauwe componenten. Dit is de zogenaamde RGB-kleurschaal (dat één van meerdere kleurrepresentaties is).

Een noot tussendoor: beschouw een kleur als een object. Dat object bestaat uit drie attributen, of met andere woorden, de drie attributen – rood, groen en blauw – samen bepalen het object. Je kunt dit vergelijken met ruimtelijke coördinaten (x, y, z).

De waarden (in rood, groen, blauw) variëren van 0 tot 1, waarbij 1 de sterkste intensiteit is en 0 betekent dat er geen aanwezigheid van de genoemde kleur is.

Image representatie

Simpel gezegd, een afbeelding is een verzameling pixels en kan worden gezien als een matrix waarbij elke pixel een element is. Hieronder zie je een beeld van 640 bij 457 pixels, daarom bevat deze 640 * 457 = 292.480 pixels. Het aantal stijgt snel, zoals je ziet.

Noot: De afbeelding hierboven is een kleurenafbeelding. Zoals vermeld in de vorige subsectie, heeft elk van deze pixels drie kleurelementen. We kunnen de afbeelding dus representeren als drie matrixen: de rode matrix, de groene matrix en de blauwe matrix.

Het totaal aantal waardes is in dit geval 640 * 457 * 3.

Als je niet gaat duizelen door de cijfers: hier zie je de beelddata, waarbij elke matrix de intensiteit van de respectievelijke kleurcomponent bevat.

Rood

\[\begin{matrix} 0.76 & 0.79 & 0.79 & ...\\ 0.76 & 0.71 & 0.75 & ... \\ 0.83 & 0.80 & 0.77 & ... \\ ... & ... & ... \end{matrix}\]

Groen

\[\begin{matrix} 0.00 & 0.06 & 0.08 & ...\\ 0.05 & 0.04 & 0.12 & ... \\ 0.12 & 0.15 & 0.18 & ... \\ ... & ... & ... \end{matrix}\]

Blauw

\[\begin{matrix} 0.00 & 0.02 & 0.03 & ...\\ 0.10 & 0.05 & 0.09 & ... \\ 0.20 & 0.19 & 0.17 & ... \\ ... & ... & ... \end{matrix}\]

Laten we nu kijken naar de kleurdimensies. Dit doe je simpelweg door de rood-groen-blauwe matrixes te plotten als afzonderlijke afbeeldingen met een enkele kleurdimensie (zwart en wit).

rode intensiteit - groene intensiteit - blauwe intensiteit

Laten we de rode kleurendimensie bekijken: het rode gedeelte van het oorspronkelijke beeld blijkt erg helder en het blauwe gedeelte erg donker. Dus hoe hoger de kleur-intensiteit, hoe helderder de weergave wordt.

Dit gaat misschien tegen je intuïtie in. Daarom leggen we het nader uit. Probeer te denken aan een rode wereld waarin alle rode lichtbronnen blijven bestaan en andere niet. Voor het blauwe gebied zonder rode component gaat er geen licht door en is het bijna volledig donker. Een roze kleur in deze rode wereld wordt daardoor heldergrijs.

Nu begrijp je ook waarom de groene plot volledig donker is: de originele foto bevat nauwelijks groen.

De toepassingen

Afbeeldingen behoren tot de categorie hoogdimensionale gegevens, samen met sensorgegevens, survey-resultaten, enz. Als je berekeningen loslaat op afbeeldingen of deze analyseert, stuit je al snel op uitdagingen die gerelateerd zijn aan het big data-problemen. Tensor-flow is een bekend framework dat helpt om hoogdimensionale gegevens gepast te verwerken.

De transformaties voor de verwerking van foto’s splitsen we op in twee categorieën:

  • Beeldtransformatie: waarin wiskundige en statistische algoritmen worden toegepast om onbewerkte afbeeldingen te verwerken. Het verhogen van contrast, verwijderen van ruis, het verbeteren of segmenteren van een afbeelding vallen hier allemaal onder.
  • Dimensie-reductie en feature-engineering: waarin informatie en structuur uit beeldgegevens geëxtraheerd wordt met technieken zoals computational photography, computer vision en signalprocessing technieken. De geëxtraheerde features kunnen bijvoorbeeld gemodelleerd worden met machine learning-algoritmen om besluitvorming en gegevensanalyse te ondersteunen.

AI-tekeningen zijn een combinatie van deze twee aspecten op zeer hoog niveau.

Het model

Absurdity is the ecstasy of intellectualism - Criss Jami

Terug naar de artistieke robots: verpest hun zielloze creativiteit de betekenis van kunst?

Ze kijken naar een canvas van 500 bij 500 pixels als 500 * 500 * 3 waarden die moeten worden ingevuld. Vervolgens verkennen ze systematisch en strategisch de opties volgens vooraf getrainde concepten, gemixt met een snufje willekeur. Dankzij het grote aantal mogelijkheden dat in korte tijd doorgerekend kan worden, komen ze op ideeën die wij misschien nooit zouden bedenken. Zo genereren ze digitale kunststukken in minder tijd dan het ons kost om een kopje koffie te zetten.

Links om of rechts om, als de creatie van schoonheid één aspect van het kunstenaarschap is, kunnen deze AI’s reeds beschouwt worden als wonderkinderen.

Deze blog is geschreven door:

Ido de Baat

Mede-eigenaar & projectleider

Zijn grote passie is het oplossen van complexe vraagstukken en iedereen mee te krijgen.

Interesse?

Of je nu al een hele datastrategie hebt staan, of dat je nog moet starten, wij denken graag met je mee in het realiseren van een datagedreven organisatie. Laat je naam en telefoonnummer achter en wij nemen snel contact met je op.
Bedankt voor het invullen! We bellen je zo spoedig mogelijk terug.
Oops! Something went wrong while submitting the form.

Alle trainingen en opleidingen

Data Science opleidingen in Python en R voor beginners tot aan expert, data engineering met Azure en Spark en data visualisatie in PowerBI.