Artikel top billede

(Foto: Computerworld)

Nu får computeren blik for verden

Et meget langsomt mirakel er sket: Før var computeren blind. Nu kan den se. Ok, siger du måske – webkameraet har vi da haft i mange år. Men dette er noget helt andet. At kunne optage billeder og film er ikke det samme som at kunne se. Velkommen til den fagre nye verden af ”computer vision”.

Af Caspar Haarløv, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

En stille revolution sker lige nu. Computeren begynder at kunne se – og dermed begynder også robotterne at få rigtige øjne. ”Computer vision” er den tekniske term for denne opsigtsvækkende udvikling, som er en af de vigtigste brikker i den digitale forvandling – nogle kalder det robotisering – der sker i disse år.

For uden avanceret behandling af visuelle input ville der hverken være selvkørende biler, ansigtsgenkendelse eller smarte digitale kort-funktioner. Men hvad vil det sige, at computeren kan se? Og hvorfor er det så kompliceret?
Først og fremmest er billedforståelse noget helt andet end billedbehandling. Udfordringen ved computer vision er ikke så meget det at se.

Det kan en computer i princippet med et af de webkameraer, vi har haft i årtier. Det drejer sig derimod om noget langt mere kompliceret, nemlig at forstå visuelt input.

Billedbehandling, som vi for eksempel kender det fra billedbehandlingsprogrammer som Photoshop, kræver som udgangspunkt ikke forståelse af, hvad billedet repræsenterer.
Billedbehandlingen består ”blot” i at ændre de numeriske parametre, som et digitalt billede består af.

Dermed kan man for eksempel flytte rundt på elementer, justere farver og så videre. Det kan selvfølgelig være mere eller mindre avanceret og foregå med et stort element af automatik. Men det er ikke det samme som billedforståelse. Billedforståelse går et stik dybere.

Mennesker lærer computere at forstå. Først nu kan computere skelne møbler og personer i en stue og sætte ord på dem. Det skyldes en blanding af maskinlæring og tusindvis af menneskers arbejde med at fortælle computerne, hvad der er en stol, og hvad der ikke er.

Det geometriske billede

For at forstå udfordringen kan vi kigge et øjeblik på os selv. Når lys rammer vores øjne, passerer det hornhinden, regnbuehinden og linsen og registreres derefter på nethinden. Den del af synsprocessen er i sig selv avanceret. Men det er langt fra nok at have øjne for at kunne se. For at de mange lysindtryk skal give mening, kræver det behandling af de visuelle data. Vi fortolker og sorterer oplysningerne. Vi danner et billede af verden og vores plads i den. Og vi forudsiger begivenheder.

Det optager enorme mængder af vores hjernekapacitet. Til gengæld kan vi uden at anstrenge os udføre avancerede handlinger som at køre bil eller gå ned ad en proppet gågade med mennesker til alle sider uden at støde ind i nogen og alligevel være i vore egne tanker.

En af Danmarks førende computereksperter, Anders Bjorholm Dahl, professor på DTU Compute, inddeler computer vision op i tre typer.

Den første type er den geometriske, hvor det handler om at kunne måle fysiske objekter baseret på kameraoptagelser. Et eksempel på dette er Googles små fotobiler, som kører rundt og tager billeder af hele jorden. De optager i princippet stadig fotos i 2D, men ved hjælp af den nye teknologi, kan computeren tolke optagelserne ved at sammenligne fotos fra forskellige vinkler og dermed danne en nøjagtig beskrivelse af form og størrelser, et kunstigt 3D-billede.

Professor Anders Bjorholm Dahl, DTU Compute, er blandt de førende danske forskere inden for computersyn.

Allerede i praktisk brug

Denne teknologi er uhyre praktisk og finder anvendelse inden for både geografi, infrastruktur, bygningskonstruktion og en masse andre steder – ikke mindst i samspillet mellem den fysiske virkelighed og modelleringer. Den bruges i klimaovervågning og vejrudsigter. I underholdningsindustrien, når vi spiller Wii. Og den finder anvendelse i militæret.

Det er også den geometriske billedforståelse, der har muliggjort 3D-modellering af antikke statuer, efter at de er blevet smadret af religiøse fanatikere eller tilintetgjort i krig. Man har simpelthen efterlyst fotos fra turister og fodret maskinen med disse billeder.

Billederne er hver især todimensionelle, med ved at sammenligne billeder fra forskellige vinkler, er det muligt at lave nøjagtige 3D-modelleringer, der kan bevares for eftertiden.

Den digitale genkendelse

Den anden type billedforståelse handler om genkendelse: Denne teknologi sætter en computer i stand til at registrere genstande i kategorier: Man kan forestille sig et billede af en stue. Før i tiden ville computeren blot registrere billedet som et koordinatsystem af forskellige talværdier, der alle repræsenterede farver, nogle mørkere eller mere lyse end andre.

Nu kan computeren adskille de forskellige elementer på billedet: en stol, et bord, en akustisk guitar, et maleri osv. Det kan lyde banalt, men at vi er nået dertil er en kæmpe præstation.

Tænk på en stol. Stole kan se vidt forskellige ud. De kan have forskellige former og størrelser og farver. Den samme stol kan oven i købet se forskellig ud på forskellige billeder alt efter, hvilken vinkel den er fotograferet i, og hvordan lyset falder.

Det kan være, at nogen har smidt en jakke eller et tæppe over ryglænet. Det kan være, at kun noget af stolen er med på billedet. Det kan være, at din mor har sat sig på den. Alligevel genkender du stolen som stol.

Her sætter computer vision skub i udviklingen

På konferencen Vision Day, der foregik på Danmarks Tekniske Universitet i maj, blev disse eksempler på betydningen af computer vision trukket frem.

Geografiske optagelser

Ved hjælp af optagelser fra satellitter og flyvemaskiner bruges teknologien til at beregne og klassificere objekter på jorden. Anvendes inden for geografi, kortlægning osv.

Computergrafik

Grafik i realtid, rendering og modellering: Udviklingen af stadig mere avanceret computergrafik finder anvendelse både i underholdningsindustrien og i utallige andre brancher.

Industriel billedanalyse

Industriel brug af computer vision sker inden for automatisering, kvalitetseftersyn og robot-styring.

Medicinsk billedanalyse

3D-skanninger og overflade-skanninger til brug for diagnosticering og terapeutiske formål.

Teknologier til sundheds- videnskab

Udvikling af nye sundhedsfremmende teknologier ved hjælp af avanceret databehandling.

På vej ud af barndommen

Den evne til at kategorisere lærer vi i den tidlige barndom. Og det er den fase, som computeren nu er ved at nå ud af. En af grundene til, at det har taget så lang tid, er, ifølge Anders Bjorholm Dahl, at processen har krævet millioner af manuelle indtastninger, hvor brugere over hele verden er blevet betalt for at kategorisere billeder af genstande.

En enorm dataindsamling, der nu efterhånden har stået på så længe, at også selve læringsprocessen kan automatiseres. Og det er blandt andet derfor, at udviklingen for alvor tager fart i disse år.

Genkendelse benyttes i mange sammenhænge: Sociale medier og søgemaskiner bruger for eksempel genkendelse til at kategorisere objekter på billeder, så det bliver nemt for brugerne at søge efter billeder af bestemte genstande.

Hvor langt man skal gå i detaljeringsgrad er dog afhængig af behovet hos brugerne: En byplanlægger vil have glæde af et program, der kender forskel på bebyggelse og beplantning, men vil ikke have behov for en nøjagtig artsbestemmelse af hver enkelt plante i et landskab. Men teknologien til at udvikle et sådan program findes.

Man kan få et indblik i den enorme dataindsamling bag udviklingen af billedgenkendelse på hjemmesiden image-net.org, hvor millioner af billeder gennem årene er samlet og kategoriseret af brugerne.

Her sætter computer vision skub i udviklingen

Hvad mennesket ser, og robotten ser. Disse billeder er taget med et nyt kamera udviklet af Stanford Computation Imaging. Versionen til venstre med normale farver er, hvad vi mennesker observerer, mens den tofavede version til højre kan være tilstrækkelig til en computer. Røde objekter er tæt på, mens blå er langt væk.

Genkendelse i sin mest ekstreme form kender vi allerede. Det er det, vi som forbrugere møder i de mest avancerede mobiltelefoners ansigtsgenkendelse. Og det er det, vi oplever, når eftersøgte bliver pillet ud af menneskemængden i Kina baseret på automatiseret overvågning.

Den tredje kategori for computer vision er genfindelse. Den virker måske ikke nær så spektakulær som de to første, men skal nævnes, fordi den er væsensforskellig fra de to andre.
Billedgenfindelse er det, som sker, når man trækker et billede ind i Googles søgefelt og søgemaskinen i løbet af få millisekunder finder det samme billede eller versioner af det på andre hjemmesider.

Det imponerende her er det lynhurtige overblik over kolossale datamængder, som dette kræver – i dette tilfælde alle billeder på hele internettet.

Genfindelse kan også bruges til at finde billeder, der minder om hinanden i form og farver, eller som forestiller det samme eller ofte findes i samme kontekst.

Når tingene ruller

De forskellige typer af computer vision kan naturligvis kombineres. Det er det, der sker, når en selvkørende bil skal orientere sig. Det kræver både kategorisering og geometriske evner og leder til den funktion, som visse steder omtales som en kategori for sig selv, nemlig tracking.

Programmet skal derudover også have evnen til at forudsige objektets bevægelser og til at reagere på ændringer. Og ikke mindst evnen til at ignorere visuelle indtryk, der ikke er væsentlige (som køerne på marken ved siden af vejen).

Disse funktioner gør også computere og robotter i stand til at se på måder, som mennesker ikke kan – for eksempel via radar, infrarøde sensorer og termiske sensorer og lignende.

Kombinationen af geometrisk billedforståelse og genkendelse er også udgangspunktet for segmentering, hvor man i visse billedbehandlingsprogrammer for eksempel kan klikke på et objekt og flytte det til en anden baggrund uden først manuelt at afgrænse objektet, eller når man indsætter virtuelle objekter som solbriller eller kaninører på et billede af en person.

Denne teknologi er helt central for augmented reality, hvor virtuelle elementer indgår i oplevelsen af den fysiske verden i realtid.

Robotter med øjne er kommet på arbejde

Det italienske visionssystem Eye T+ kan hjælpe robotter med at håndplukke ting, der ligger usorteret i en kasse eller står på en palle. Det sker med disse "øjne" monteret på industrirobotter.

Computere og robotter, der kan se, er ikke fremtidssnak. De er allerede sat i arbejde. Her er fire eksempler. Lager: Robotter kan i dag samle ting op, selvom tingene har forskellig størrelse og eventuelt står skævt på hylden. Det gør dem til uovertrufne lagermedarbejdere.

Og det kan kun lade sig gøre, fordi en intelligent behandling af visuelle data fortæller robotten, hvor den skal gribe genstanden, og hvordan dens greb skal være.

Produktion: Produktionsrobotter er ikke noget nyt. Tænk blot på Charlie Chaplin i filmen Moderne Tider fra 1936, der bliver (forsøgt) fodret og vasket af en robot. Problemet med den robot, er, at den ikke har computer vision og derfor ikke kan reagere på, at Charlie Chaplin flytter hovedet.

Det samme problem har man haft på fabrikker verden over. Nu udstyres robotarmene med visuelle sensorer, der gør, at de kan justere deres bevægelser efter omstændighederne – og de bliver dermed langt mere fleksible og laver færre fejl.

Gartneri: Det er computer vision, der gør, at robotter i dag kan plante stiklinger. Stiklingerne køres i en bakke på et transportbånd hen til robotten, der ryster bakken for at kunne se, hvilken ende på planten der er op og ned. Derefter tager robotarmen den enkelte stikling og planter den korrekt i en lille potte.

Skole: En skole i Kina har som forsøg installeret et overvågningssystem med ansigtsgenkendelse i et klasseværelse. Formålet er at måle elevernes opmærksomhed. Tre kameraer registrerer uafbrudt elevernes opførsel og noterer, om de er enten neutrale, glade, kede af det, skuffede, vrede, bange eller overraskede. Hvis elevens humør afslører, at barnet ikke følger med i undervisningen, sender systemet en besked til læreren