Vill du få tag på bildigenkänning?  Tack vare Tensorflow och en Raspberry Pi kan du komma igång direkt.

Kom igång med bildigenkänning med TensorFlow och Raspberry Pi

Annons TensorFlow är Googles bibliotek för Neural Network. Med tanke på att maskininlärning är det hetaste för närvarande är det ingen överraskning att Google är bland de ledande inom denna nya teknik. I den här artikeln kommer du att lära dig hur du installerar TensorFlow på Raspberry Pi och kör enkel bildklassificering i ett förutbildat neuralt nätverk. Komma igång Fö

Annons

TensorFlow är Googles bibliotek för Neural Network. Med tanke på att maskininlärning är det hetaste för närvarande är det ingen överraskning att Google är bland de ledande inom denna nya teknik.

I den här artikeln kommer du att lära dig hur du installerar TensorFlow på Raspberry Pi och kör enkel bildklassificering i ett förutbildat neuralt nätverk.

Komma igång

För att komma igång med bildigenkänning behöver du ett Raspberry Pi (vilken modell som helst fungerar) och ett SD-kort med operativsystemet Raspbian Stretch (9.0+) (om du är ny på Raspberry Pi, använd vår installationsguide).

Starta upp Pi och öppna ett terminalfönster. Se till att din Pi är uppdaterad och kontrollera din Python-version.

 sudo apt-get update python --version python3 --version 

Du kan använda både Python 2.7 eller Python 3.4+ för denna handledning. Detta exempel är för Python 3. För Python 2.7, ersätt Python3 med Python, och pip3 med pip under hela denna tutorial.

Pip är en pakethanterare för Python, vanligtvis installerad som standard på Linux-distributioner.

Om du inte hittar det, följ installationen för Linux-instruktioner Hur man installerar Python PIP på Windows, Mac och Linux Hur man installerar Python PIP på Windows, Mac och Linux Många Python-utvecklare litar på ett verktyg som heter PIP för Python för att göra allt enklare och snabbare. Så här installerar du Python PIP. Läs mer i den här artikeln för att installera den.

Installera TensorFlow

Det var en ganska frustrerande process att installera TensorFlow, men en ny uppdatering gör det otroligt enkelt. Även om du kan följa denna handledning utan någon förkunskaper, kan det vara värt att förstå grunderna i maskininlärning innan du testar det.

Innan du installerar TensorFlow, installera Atlas- biblioteket.

 sudo apt install libatlas-base-dev 

När det är klart installerar TensorFlow via pip3

 pip3 install --user tensorflow 

Detta kommer att installera TensorFlow för den inloggade användaren. Om du föredrar att använda en virtuell miljö Lär dig hur du använder Python virtuella miljö Lär dig hur du använder Python virtuella miljö Oavsett om du är en erfaren Python-utvecklare eller om du bara kommer igång är det viktigt att lära sig att ställa in en virtuell miljö. Python-projekt. Läs mer, ändra din kod här för att återspegla detta.

Testa TensorFlow

När det har installerats kan du testa om det fungerar med TensorFlow-motsvarigheten till Hello, world!

Skapa ett nytt Python-skript från kommandoraden med nano eller vim (Om du inte är säker på vilken du ska använda, har de båda fördelar) och namnge det något lätt att komma ihåg.

 sudo nano tftest.py 

Ange den här koden som tillhandahålls av Google för att testa TensorFlow:

 import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello)) 

Om du använder nano, avsluta genom att trycka på Ctrl + X och spara din fil genom att skriva Y när du uppmanas.

Kör koden från terminalen:

 python3 tftest.py 

Du bör se "Hej, TensorFlow" tryckt.

Om du kör Python 3.5 kommer du att få flera varning om körning. De officiella TensorFlow-självstudierna erkänner att detta händer och rekommenderar att du ignorerar det.

TensorFlow och Python3.5 - Felaktigt ignorerbart

Det fungerar! Nu för att göra något intressant med TensorFlow.

Installera Image Classifier

Skapa en katalog för projektet i hemkatalogen i terminalen och navigera in i den.

 mkdir tf1 cd tf1 

TensorFlow har ett gitförvar med exempelmodeller för att prova. Klona förvaret i den nya katalogen:

 git clone https://github.com/tensorflow/models.git 

Du vill använda bildklassificeringsexemplet, som finns på modeller / tutorials / image / imagenet . Navigera till den mappen nu:

 cd models/tutorials/image/imagenet 

Det standardbildsklassificeringsskriptet körs med en bild av en panda:

Liten TensorFlow Panda

För att köra standardbildsklassificeringen med den medföljande pandabilden, ange:

 python3 classify_image.py 

Detta matar en bild av en panda till det neurala nätverket, vilket ger gissningar om vad bilden är med ett värde för dess säkerhetsnivå.

TensorFlow Panda Classifying Output

Som utgångsbilden visar, gissades nervnätet korrekt, med nästan 90 procent säkerhet. Den trodde också att bilden kan innehålla ett vaniljsås äpple, men det var inte särskilt säkert med det svaret.

Använda en anpassad bild

Pandabilden visar att TensorFlow fungerar, men det är kanske inte förvånande eftersom det är exemplet som projektet ger. För ett bättre test kan du ge din egen bild till nervnätet för klassificering.

I det här fallet kommer du att se om TensorFlow-nervnätet kan identifiera George.

George dinosaurien

Möt George. George är en dinosaurie. För att mata den här bilden (tillgänglig i beskuren form här) i nervnätet, lägg till argument när du kör skriptet.

 python3 classify_image.py --image_file=/home/pi/george.jpg 

Image_file = följer skriptnamnet tillåter tillägg av valfri bild för väg. Låt oss se hur detta nervnät gjorde det.

TensorFlow Dinosaur Classification Output

Inte dåligt! Medan George inte är en triceratops, klassificerade nervnätet bilden som en dinosaurie med en hög grad av säkerhet jämfört med de andra alternativen.

TensorFlow och Raspberry Pi, redo att gå

Denna grundläggande implementering av TensorFlow har redan potential. Detta objektigenkänning sker på Pi och behöver ingen internetanslutning för att fungera. Detta innebär att med tillägget av en Raspberry Pi-kameramodul och en Raspberry Pi-lämplig batterienhet kan hela projektet gå bärbart.

De flesta självstudier kliar bara ytan på ett ämne, men det har aldrig varit santare än i detta fall. Maskininlärning är ett otroligt tätt ämne.

Ett sätt att ta din kunskap vidare är att ta en dedicerad kurs. Dessa maskinlärarkurser kommer att förbereda en karriärväg för dig. Dessa maskinlärarkurser kommer att förbereda en karriärväg för dig. Dessa utmärkta maskinlärarkurser online hjälper dig att förstå de färdigheter som krävs för att starta en karriär inom maskininlärning och artificiell intelligens. Läs mer . Under tiden kan du ta hand om maskininlärning och Raspberry Pi med dessa TensorFlow-projekt kan du prova själv.

Utforska mer om: Google TensorFlow, Bildigenkänning, Raspberry Pi.