stub Vad är datorseende? - Unite.AI
Anslut dig till vårt nätverk!

AI 101

Vad är Computer Vision?

mm
Uppdaterad on

Vad är Computer Vision?

Algoritmer för datorseende är ett av de mest transformativa och kraftfulla AI-systemen i världen för tillfället. Datorseende system se användning i autonoma fordon, robotnavigering, ansiktsigenkänningssystem och mer. Men vad är datorseendealgoritmer exakt? Hur fungerar de? För att besvara dessa frågor kommer vi att dyka djupt in i teorin bakom datorseende, datorseendealgoritmer och applikationer för datorseendesystem.

Hur fungerar datorseendesystem?

För att till fullo förstå hur datorseendesystem fungerar, låt oss först ta en stund för att diskutera hur människor känner igen objekt. Den bästa förklaringen neuropsykologin har till hur vi känner igen föremål är en modell som beskriver den inledande fasen av objektigenkänning som en där de grundläggande komponenterna i objekt, såsom form, färg och djup, tolkas av hjärnan först. Signalerna från ögat som kommer in i hjärnan analyseras för att först dra ut kanterna på ett objekt, och dessa kanter sammanfogas till en mer komplex representation som kompletterar objektets form.

Datorseendesystem fungerar mycket på samma sätt som det mänskliga visuella systemet, genom att först urskilja kanterna på ett objekt och sedan sammanfoga dessa kanter till objektets form. Den stora skillnaden är att eftersom datorer tolkar bilder som siffror behöver ett datorseendesystem på något sätt tolka de individuella pixlarna som utgör bilden. Datorvisionssystemet kommer att tilldela värden till pixlarna i bilden och genom att undersöka skillnaden i värden mellan ett område av pixlar och ett annat område av pixlar, kan datorn urskilja kanter. Till exempel, om bilden i fråga är gråskala, kommer värdena att variera från svart (representerad av 0) till vit (representerad av 255). En plötslig förändring i värdeintervallet för pixlar nära varandra kommer att indikera en kant.

Denna grundläggande princip att jämföra pixelvärden kan också göras med färgade bilder, där datorn jämför skillnader mellan de olika RGB-färgkanalerna. Så vet att vi vet hur ett datorseendesystem undersöker pixelvärden för att tolka en bild, låt oss ta en titt på arkitekturen för ett datorseendesystem.

Convolutional Neural Networks (CNN)

Den primära typen av AI som används i datorseende är en baserat på konvolutionella neurala nätverk. Vad är en konvolution exakt?

Konvolutioner är matematiska processer som nätverket använder för att bestämma skillnaden i värden mellan pixlar. Om du föreställer dig ett rutnät med pixelvärden, föreställ dig att ett mindre rutnät flyttas över detta huvudrutnät. Värdena under det andra rutnätet analyseras av nätverket, så nätverket undersöker bara en handfull pixlar åt gången. Detta kallas ofta tekniken för "skjutfönster". Värdena som analyseras av det skjutbara fönstret sammanfattas av nätverket, vilket hjälper till att minska komplexiteten i bilden och göra det lättare för nätverket att extrahera mönster.

Konvolutionella neurala nätverk är uppdelad i två olika sektioner, faltningssektionen och den helt anslutna sektionen. Nätverkets faltningslager är funktionsextraktorerna, vars uppgift är att analysera pixlarna i bilden och bilda representationer av dem som de tätt sammankopplade lagren i det neurala nätverket kan lära sig mönster av. De faltande lagren börjar med att bara undersöka pixlarna och extrahera lågnivåfunktionerna i bilden som kanter. Senare faltningsskikt förenar kanterna till mer komplexa former. I slutet kommer nätverket förhoppningsvis att ha en representation av kanterna och detaljerna på bilden som det kan skicka till de helt anslutna lagren.

Bildanmärkning

Medan ett konvolutionellt neuralt nätverk kan extrahera mönster från bilder av sig självt, kan noggrannheten hos datorseendesystemet förbättras avsevärt genom att kommentera bilderna. Bildanteckning är processen att lägga till metadata till bilden som hjälper klassificeraren att upptäcka viktiga objekt i bilden. Användningen av bildkommentarer är viktig när datorseendesystem behöver vara mycket exakta, till exempel när man styr ett autonomt fordon eller robot.

Det finns olika sätt som bilder kan annoteras för att förbättra prestandan hos en klassificerare för datorseende. Bildkommentarer görs ofta med begränsningsrutor, en ruta som omger kanterna på målobjektet och talar om för datorn att fokusera sin uppmärksamhet inom rutan. Semantisk segmentering är en annan typ av bildkommentarer, som fungerar genom att tilldela en bildklass till varje pixel i en bild. Med andra ord kommer varje pixel som kan betraktas som "gräs" eller "träd" att märkas som tillhörande dessa klasser. Tekniken ger precision på pixelnivå, men att skapa semantiska segmenteringskommentarer är mer komplext och tidskrävande än att skapa enkla begränsningsrutor. Andra anteckningsmetoder, som linjer och punkter, finns också.

Bloggare och programmerare med specialiteter inom Maskininlärning och Deep Learning ämnen. Daniel hoppas kunna hjälpa andra att använda kraften i AI för socialt bästa.