Kom i gang med billedgenkendelse ved hjælp af TensorFlow og Raspberry Pi
Reklame
TensorFlow er Googles bibliotek på Neural Network. I betragtning af at maskinlæring er den hotteste ting i øjeblikket, er det ingen overraskelse, at Google er blandt de førende inden for denne nye teknologi.
I denne artikel lærer du, hvordan du installerer TensorFlow på Raspberry Pi og kører enkel billedklassificering på et foruddannet neuralt netværk.
Kom godt i gang
For at komme i gang med billedgenkendelse skal du bruge et Raspberry Pi (enhver model fungerer) og et SD-kort med operativsystemet Raspbian Stretch (9.0+) (hvis du er ny på Raspberry Pi, skal du bruge vores installationsvejledning).
Start Pi op og åbn et terminalvindue. Sørg for, at din Pi er opdateret, og kontroller din Python-version.
sudo apt-get update python --version python3 --version
Du kan bruge både Python 2.7 eller Python 3.4+ til denne tutorial. Dette eksempel er til Python 3. For Python 2.7 skal du udskifte Python3 med Python og pip3 med pip gennem hele denne tutorial.
Pip er en pakkeadministrator for Python, som normalt installeres som standard på Linux-distributioner.
Hvis du finder ud af, at du ikke har det, skal du følge installationen til Linux-instruktioner Sådan installeres Python PIP på Windows, Mac og Linux Sådan installeres Python PIP på Windows, Mac og Linux Mange Python-udviklere er afhængige af et værktøj kaldet PIP for Python for at gøre alt lettere og hurtigere. Sådan installeres Python PIP. Læs mere i denne artikel for at installere den.
Installation af TensorFlow
Det var tidligere en frustrerende proces at installere TensorFlow, men en nylig opdatering gør det utroligt enkelt. Selvom du kan følge denne tutorial uden nogen forudgående viden, kan det være værd at forstå det grundlæggende i maskinlæring, før du prøver det.
Før du installerer TensorFlow, skal du installere Atlas- biblioteket.
sudo apt install libatlas-base-dev
Når dette er færdigt, skal du installere TensorFlow via pip3
pip3 install --user tensorflow
Dette installerer TensorFlow for den loggede bruger. Hvis du foretrækker at bruge et virtuelt miljø Lær, hvordan man bruger Python-virtuelle miljø Lær, hvordan man bruger Python-virtuelle miljø Uanset om du er en erfaren Python-udvikler, eller du lige er i gang, er det vigtigt at lære at konfigurere et virtuelt miljø Python-projekt. Læs mere, rediger din kode her for at afspejle dette.
Test af TensorFlow
Når det er installeret, kan du teste, om det fungerer med TensorFlow-ækvivalenten til en Hello, verden!
Opret et nyt Python-script fra kommandolinjen ved hjælp af nano eller vim (Hvis du ikke er sikker på, hvilken der skal bruges, har de begge fordele) og navngiv det som noget let at huske.
sudo nano tftest.py
Indtast denne kode, leveret af Google til test af TensorFlow:
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))
Hvis du bruger nano, skal du afslutte ved at trykke på Ctrl + X og gemme din fil ved at skrive Y, når du bliver bedt om det.
Kør koden fra terminalen:
python3 tftest.py
Du skal se “Hej, TensorFlow” trykt.
Hvis du kører Python 3.5, får du adskillige runtime-advarsler. De officielle TensorFlow-tutorials anerkender, at dette sker, og anbefaler dig at ignorere det.
Det virker! Nu for at gøre noget interessant med TensorFlow.
Installation af Image Classifier
Opret i katalogen et bibliotek til projektet i dit hjemmekatalog og naviger ind i det.
mkdir tf1 cd tf1
TensorFlow har et git-lager med eksempler på modeller. Klon depotet i det nye bibliotek:
git clone https://github.com/tensorflow/models.git
Du vil bruge billedklassificeringseksemplet, som kan findes på modeller / tutorials / image / imagenet . Naviger til den mappe nu:
cd models/tutorials/image/imagenet
Standardskriptet til klassificering af billedet kører med et medfølgende billede af en panda:
For at køre standardbilledklassifikatoren med det medfølgende pandabillede skal du indtaste:
python3 classify_image.py
Dette tilføjer et billede af en panda til det neurale netværk, der returnerer gætte om, hvad billedet er med en værdi for dets sikkerhedsniveau.
Som outputbilledet viser, gætte det neurale net korrekt, med næsten 90 procent sikkerhed. Den troede også, at billedet muligvis indeholdt et vaniljesaus, men det var ikke meget selvsikkert med det svar.
Brug af et brugerdefineret billede
Panda-billedet beviser, at TensorFlow fungerer, men det er måske ikke overraskende, da det er det eksempel, projektet giver. For en bedre test kan du give dit eget billede til det neurale net til klassificering.
I dette tilfælde ser du, om TensorFlow-neurale netværk kan identificere George.
Mød George. George er en dinosaur. For at tilføje dette billede (tilgængeligt i beskåret form her) i det neurale net skal du tilføje argumenter, når du kører scriptet.
python3 classify_image.py --image_file=/home/pi/george.jpg
Image_file = følge scriptnavnet tillader tilføjelse af ethvert billede ved sti. Lad os se, hvordan dette neurale net gjorde det.
Ikke dårligt! Mens George ikke er en triceratops, klassificerede det neurale net billedet som en dinosaur med en høj grad af sikkerhed sammenlignet med de andre muligheder.
TensorFlow og Raspberry Pi, klar til at gå
Denne grundlæggende implementering af TensorFlow har allerede potentiale. Denne genkendelse af objekt sker på Pi og behøver ingen internetforbindelse for at fungere. Dette betyder, at med tilføjelsen af et Raspberry Pi-kameramodul og en Raspberry Pi-passende batterienhed, kunne hele projektet gå bærbart.
De fleste tutorials skraber kun overfladen på et emne, men det har aldrig været mere sandt end i dette tilfælde. Maskinlæring er et utroligt tæt emne.
En måde at tage din viden videre på ville være ved at tage et dedikeret kursus Disse maskinlæringskurser vil forberede en karrierevej til dig Disse maskinlæringskurser vil forberede en karrierevej til dig Disse fremragende online maskinlæringskurser vil hjælpe dig med at forstå de nødvendige færdigheder til starte en karriere inden for maskinlæring og kunstig intelligens. Læs mere . I mellemtiden skal du tage hånd om maskinlæring og Raspberry Pi med disse TensorFlow-projekter, du kan prøve selv.
Udforsk mere om: Google TensorFlow, Billedgenkendelse, Raspberry Pi.