Hogyan telepítsük az OpenCV-t a Raspberry Pi-re?

Különböző műveleteket kell végrehajtanunk egy képen, hogy hasznos információkat nyerjünk ki belőle. Tehát ezt a folyamatot, amelynek során különböző algoritmusokat alkalmazunk egy képen, a kívánt kimenet megszerzéséhez Képfeldolgozás . Előfordul, hogy a bemenet képe elmosódott, és adatokat akarunk megszerezni belőle. Például. Amikor a rablók elkapják a biciklit vagy az autót, többnyire a kerékpárra jönnek, és az utakra felső kamerákat helyeznek el, amelyek rögzítik az esemény felvételeit. Tudnunk kell annak a járműnek a nyilvántartási számát, amelyre a rablók érkeznek, és ez könnyen elvégezhető a képfeldolgozás néhány algoritmusával. Bizonyos képek képfeldolgozásához telepítenünk kell néhány könyvtárat az általunk használt hardverre. E könyvtárak közül a legfontosabb OpenCV. Az OpenCV telepíthető PC-kre és mikroprocesszorokra is. A Raspberry Pi mikroprocesszor, és különféle elektronikus projektekben használják. Az operációs rendszer Raspberry Pi telepítése után különféle képfeldolgozási feladatokat hajthatunk végre rajta. Az OpenCV telepítése a Raspberry Pi-re hosszú és mozgalmas feladat. Ebben a cikkben megtudhatjuk, hogyan kell telepíteni az OpenCV-t a Raspberry Pi-re, hogy különféle képfeldolgozási műveleteket hajtsunk végre rajta.

Arcfelismerés a Raspberry Pi-re telepített OpenCV-vel

Hogyan állítsuk be a Raspberry Pi programot és állítsuk be rajta az OpenCV-t?

Most lépjünk a Pi beállítása és az alábbiakban említett műveletek végrehajtása felé az OpenCV telepítéséhez. Az OpenCV Pi telepítése hosszadalmas folyamat, és körülbelül 4 órát vesz igénybe, ezért ha kevés idő áll rendelkezésre, ne kezdje el a telepítést, ha szabad, olvassa el ezt az oktatóanyagot. Ezzel együtt Pi-t felmelegítik, amikor megfordították TOVÁBB sokáig és sokáig tartanak rajta műveleteket, ezért tartsa hűvös helyen, amikor dolgozik rajta.



1. lépés: Használt alkatrészek

  • Raspberry Pi 3B + készlet
  • Televízió HDMI porttal
  • HDMI kábel
  • Vezetékes számítógépes egér

2. lépés: A Raspberry Pi modell kiválasztása

A málna pi többféle modellje elérhető a piacon. A málna pi nulla kivételével bármelyik modell előnyben részesíthető. A Pi-nél ugyanis egy hálózat beállítása nagyon fárasztó feladat. A legújabb modellek, például a 3A +, a 3B + vagy a 4 megvásárolhatók. Az új Raspberry Pi 3 a leggyorsabb és legdominánsabb eszköz, amelyet a Raspberry Pi Foundation eddig kiadott. Tehát ebben a projektben a Raspberry Pi 3B + -ot fogjuk használni.



Málna Pi 3B +



3. lépés: A perifériák csatlakoztatása

A Raspberry Pi kiválasztása után a billentyűzetet és az egeret összekapcsoljuk a Raspberry Pi-vel. Csatlakoztatásuk után a HDMI kábellel kösse össze a Pi-t a televízióval. Miután létrehoztuk ezeket a kapcsolatokat, készen állunk a további folytatásra.

4. lépés: Az operációs rendszer kiválasztása

Először is szükségünk lesz egy SD kártyára, megfelelő operációs rendszerrel. Az operációs rendszer kiválasztásakor manapság különféle alternatívák léteznek, a „hagyományos” Raspbian-tól az odaadó média-munka keretrendszereken át, sőt a Windows 10 IoT-ig is. Nincs szükség sok alkalmazásra, ezért a lehető legnagyobb mértékben el kell hagynunk a központi adatfeldolgozó egységet (CPU) és a véletlen hozzáférésű memóriát (RAM) a média streaming alkalmazáshoz. Az egyik probléma az, hogy az Arch Linuxot azoknak ajánlják, akik elég sok Linux-ismerettel rendelkeznek. Nagyon élvonalbeliak, és kötelesek vagyunk folyamatosan problémákba ütközni harmadik féltől származó alkalmazások és könyvtárak bevezetésekor. Így, ha ez az első házimozi létesítmény, javasoljuk, hogy válasszon Raspbian Lite . Parancssori vezérlésű, és sok olyan szakasz nélkül is megtervezhető, amely „fej nélküli” módban történő futtatásra szolgál, vagyis teljesen távolról érhető el a rendszeren keresztül, konzolra vagy képernyőre nincs szükség.

Raspbian Lite



5. lépés: Győződjön meg róla, hogy a Raspberry Pi naprakész

Tartsa naprakészen a Pi forrásait, különben az elavult szoftver problémákat okoz. Engedélyezze a Virtual Network Computing (VNC) megjelenítőt a Pi-n, majd csatlakoztassa a Raspberry Pi-t a VNC Viewer-hez. A link az alábbiakban található a VNC letöltéséhez, majd a Pi-hez való csatlakoztatáshoz.

VNC Viewer

Most nyissa meg a terminált, és futtassa a következő parancsot:

sudo apt-get frissítés

Akkor,

sudo apt-get upgrade

Számos csomagot telepítünk, és ha megkérjük, nyomjuk meg a gombot ÉS és akkor Belép hogy megfelelően telepítsem őket.

6. lépés: Bejelentkezés a Raspberry Pi-be

A Raspberry Pi alapértelmezett felhasználóneve az pi, és az alapértelmezett jelszó málna. Ezek az alapértelmezett bejelentkezési adatok, és az első bejelentkezéskor használja ezeket az adatokat a pi bejelentkezéséhez. Ezeket a részleteket bármikor megváltoztathatja.

Bejelentkezés a Raspberry Pi-be

7. lépés: Elég hely létrehozása a Raspbian-on az OpenCV számára

Az OpenCV nagy memóriát szerez, ezért bővítenünk kell a fájlrendszert, és az összes helyet el kell foglalnunk a memóriakártyán. Megyünk a málna parancssorába, és írjuk be a következő parancsot:

sudo raspi-config

Megjelenik egy ablak, amely így fog kinézni:

Konfigurációs eszköz

Most rákattintunk a Speciális opciók gombra, és ott találunk egy opciót „A fájlrendszer kibontása”. Válassza ki ezt a lehetőséget.

Bontsa ki a Fájlrendszert

Megnyomjuk a Belép gombot, majd nyomja meg a Befejez gomb. Ebben a szakaszban a Raspberry Pi-t újra kell indítani, hogy a változások életbe lépjenek. Írja be a következő parancsot az újraindításhoz:

sudo újraindítás

Az újraindítás után ellenőrizzük, hogy kibővült-e a fájlrendszerünk, és hogy az SD-kártyán van-e az összes hely. Kivégzéssel df -h paranccsal ellenőrizhetjük, hogy kibővült-e a lemezünk:

Előfordulhat, hogy egy 8 GB-os micro SD-kártyát használó a rendelkezésre álló hely 50% -át használja fel, ezért törölni kell Wolfram motor és LibreOffice körülbelül 1 GB helyet szabadíthat fel. (Ne feledje, hogy ez a lépés nem kötelező).

sudotaláló-kap öblítésvolfrám-motor sudotaláló-kap öblítéslibreoffice* sudotaláló-kap tiszta sudotaláló-kap automatikus eltávolítás

8. lépés: A függőségek telepítése

Mielőtt belépnénk a függőségekbe, frissítenünk és frissítenünk kell a Pi-re telepített meglévő csomagokat:

sudo apt-get frissítés

Akkor,

sudo apt-get upgrade

Most telepítünk néhány fejlesztő eszközt, amelyek segítenek az OpenCV build konfigurálásában:

sudotaláló-kap telepítésépít-alapvetőcmakepkg-konfig

A képeken végzett különböző műveletek végrehajtásához be kell töltenünk a merevlemezről a több képformátumot. Ezek a formátumok tartalmazzák JPEG, PNG stb. A képformátumok betöltéséhez néhány I / O csomagot telepítünk:

sudotaláló-kaptelepítéslibjpeg-devlibtiff5-devlibjasper-devlibpng12-dev

Ezekkel a kép I / O csomagokkal együtt telepítünk video I / O csomagokat is. Ezeknek a videócsomagoknak a telepítése után különféle videofájl-formátumokat tölthetünk be.

sudotaláló-kap telepítéslibavcodec-devlibavformat-devlibswscale-devlibv4l-dev sudotaláló-kap telepítéslibxvidcore-devlibx264-dev

Az OpenCV könyvtár egy elnevezett almodult kísér highgui amelyet felhasználnak a képek megjelenítésére a képernyőn és az alapvető GUI-k gyártására. Az almodul összeállítása előtt telepítenünk kell a GTK fejlesztői könyvtárat:

sudotaláló-kap telepítéslibgtk2.0-devlibgtk-3-dev

Számos mátrix művelet hajtható végre egy képen a kép méretének ellenőrzésével, majd a pixelértékek leolvasásával. Ezeket a képpontértékeket bináris formává is konvertálhatjuk, majd módosíthatjuk ezeket a bináris számokat a kép regenerálásához. A málna pi esetében bizonyos korlátok vannak a bemenet megadásakor, ezért ezek a könyvtárak fontosak és telepítésre szorulnak. Ezért ezeket az eredményeket néhány további függőség telepítésével javíthatjuk:

sudotaláló-kap telepítéslibatlas-bázis-devgfortran

Vannak, akik a Python 2.7-en, mások pedig a Python 3-on fognak dolgozni. Az OpenCV fordításához a Python-összerendelésekkel együtt telepíteni kell a Python 2.7 és a Python 3 fejlécfájljait:

sudotaláló-kap telepítéspython2.7-devpython3-dev

A Raspbian Python 3 új verziója már telepítve van, és az Lx terminálon megjelenhet egy üzenet, miszerint „A Python 3 már a legújabb verzió” . Ez a lépés azért fontos, mert szembesülhetünk a (z) fejlécfájllal kapcsolatos hibákkal Python.h miközben futtatja a parancsot készítsen az OpenCV összeállításához.

9. lépés: Az OpenCV forráskód letöltése

Miután befejeztük a függőségek telepítését, megkeressük az OpenCV 3.3.0 verziójának archív mappáját az OpenCV hivatalos könyvtárából.

CD ~ wget -VAGY opencv.postai irányítószám https://github.val vel/Itseez/opencv/archívum/3.3.0.zip csomagold kiopencv.postai irányítószám

Telepítjük az OpenCV teljes csomagját, ezért be kell építenünk opencv_contrib is. Töltse le a hivatalos webhelyről, majd csomagolja ki.

wget -VAGY opencv_contrib.postai irányítószám https://github.val vel/Itseez/opencv_contrib/archívum/3.3.0.zip csomagold kiopencv_contrib.postai irányítószám

A könyvtárak letöltése közben egy dolgot tartson szem előtt, hogy az OpenCV verziója és opencv_contrib azonosaknak kell lenniük, azaz 3.3.0-nak kell lenniük, különben fordítási hibák jelentkeznek a telepítés során.

10. lépés: Python 2.7 vagy Python 3?

A teljesítmény szempontja szerint a python 2.7 jobb, mint a python 3, de az OpenCV-ben nincs sok különbség. Telepítenünk kell csipog az OpenCV fordítása előtt. Ez egy csomagkezelő rendszer, amelyet a Pythonban használt szoftvercsomagok telepítésére használnak. Ezek a csomagok alapértelmezés szerint megtalálhatók a legújabb raspbian-ban, de jobb, ha a következő parancsokkal ellenőrizzük.

wgethttps://bootstrap.pypa.ÉN/kap-csipog.py sudopitonkap-csipog.py sudopython3kap-csipog.py

A pip telepítése után két csomag nagyon ajánlott, és telepíteni kell őket az OpenCV-n végzett munka közben. Az első a virtualenv, a másik pedig a virtualenvwrapper. Nem importálhatjuk az OpenCV programot közvetlenül a Pythonba, ezért létrehozunk egy virtuális környezetet, majd ebben a környezetben fogunk dolgozni. A virtuális környezet kivételes eszköz, amelyet arra használnak, hogy a különféle projektek által megkövetelt feltételeket diszkrét helyeken tartsák, külön-külön Python-környezetek létrehozásával.

sudocsipogtelepítésvirtualenvvirtualenvwrapper sudorm -rf ~/.cache/csipog

A csomagok telepítése után frissítenünk kell a csomagunkat ~/.profil fájl, amely a rejtett fájl a saját könyvtárunkban, és tartalmazza a következő sorokat a végén. Írja be a következő parancsot a könyvtárba történő belépéshez:

nano~/.profil

A könyvtár megnyitásakor görgessen lefelé, és a következő sorokat tartalmazza:

# virtualenv és virtualenvwrapper exportWORKON_HOME=$ HOME/.virtualenvs exportVIRTUALENVWRAPPER_PYTHON=/usr/am/python3 forrás /usr/helyi/am/virtualenvwrapper.SH

Miután felvette ezeket a sorokat, nyomja meg a ctrl + x billentyűkombinációt, majd nyomja meg a gombot ÉS és kilép.

Home Directory

Bármikor elindítjuk a terminált, és bejelentkezünk a Pi-be, ez a pontfájl automatikusan betöltődik számunkra. Mivel már be vagyunk jelentkezve, manuálisan beírnánk forrás ~ / .profil hogy betöltse a fájl tartalmát.

Virtuális Python környezet létrehozása: Virtuális környezetet kell létrehoznunk a python 2.7 és a python 3 használatával.

mkvirtualenvönéletrajz -o python2

Nevű környezetet hoz létre önéletrajz a Python 2.7-en. Aki környezetet szeretne létrehozni a Python 3-on, írja be az alább említett parancsot:

mkvirtualenvönéletrajz -o python3

Annak ellenőrzése, hogy a „cv” nevű virtuális környezetben vagyunk-e: A pi újraindításakor nem maradunk virtuális környezetben, és két, az alábbiakban említett parancsot kell beírnunk, hogy virtuális környezet módba lépjünk.

forrás ~/.profil dolgozik rajtaönéletrajz

Az alábbi kép azt mutatja, hogy nem a virtuális környezet módban vagyunk:

LxTerminal

Tehát a fent említett két parancs beírásával hozzáférhetünk virtuális környezetünkhöz. Ha el akarunk hagyni a virtuális környezetből, akkor a deaktiválást írjuk be:

Munka virtuális környezetben

A NumPy telepítése a Raspbian-ra: Az egyetlen függőség, amelyet telepítenünk kell az OpenCV-re a Raspberry-ra, a Numpy. Írja be az alább említett parancsot a Numpy telepítéséhez a Raspberry Pi-re. Körülbelül 10 perc lesz a telepítés:

csipogtelepítésszámtalan

11. lépés: Az OpenCV összeállítása és telepítése

Összeállítjuk és telepítjük az OpenCV-t a virtuális környezetbe, így győződjön meg arról, hogy Ön a CV virtuális környezetében dolgozik. Ha nem a virtuális környezetben vagyunk, akkor az OpenCV nem fog összeállítani. Most módosítsa a könyvtárat otthoni könyvtárra, alkönyvtárra nyitott cv 3.3 majd készítse el a build könyvtárat. Miután elkészítette a build könyvtárat, illessze be az utolsó öt sort a CMake Könyvtár. Ellenőrizni fogja, hogy bizonyos könyvtárak beállítottak-e útvonalakat, python verziókat stb.

CD ~/opencv-3.3.0/ mkdir épít CD épít cmake -D CMAKE_BUILD_TYPE=KIADÁS  -D CMAKE_INSTALL_PREFIX=/usr/helyi  -D INSTALL_PYTHON_EXAMPLES=TOVÁBB  -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.0/modulok  -D BUILD_EXAMPLES=TOVÁBB ..

A Python 2.7-et használóknak görgetniük kell a CMake kimenetre, és meg kell keresniük a Python 2.7 szakaszt, és meg kell nézniük, hogy a Numpy és a csomagok elérési útjai megfelelően vannak-e konfigurálva. Azok számára, akik Python 3-at használnak, ellenőrizni kell a Python 3 részt közvetlenül a Python 2 szakasz alatt:

A Python 2.7 szakasz ellenőrzése

Most végre készen állunk az OpenCV összeállítására. Írja be a make parancsot, és elindítja a fordítási folyamatot. Körülbelül négy órát vesz igénybe a fordítás, ezért érdemes az összeállítást az alvás előtt kezdeni, hogy reggel felébredve az OpenCV összeálljon. Ha beír egy parancsot, akkor csak egy magot használ. Bár ez egy kicsit időigényes folyamat, de kisebb a valószínűsége a hibáknak. A make -j4 és a make -j2 parancs használata a Raspberry Pi túlmelegedését, és fordítási hibákat is eredményezhet:

készítsen

Összeállítás befejeződött

Az OpenCV 3-at a következő paranccsal telepítjük a Raspberry Pi-re. A parancs futtatásával a megfelelő fájlokat a helyükre másolja:

sudo make install

Telepítésünk az utolsó parancs futtatásával fejeződik be:

sudoldconfig

Néhány lépés van hátra, amikor a Python 2.7 vagy a Python 3 szoftvert használjuk.

12. lépés: A telepítés befejezése

Gépeléssel térjen vissza a saját könyvtárba cd ~.

Python 3: Az OpenCV összerendeléseket szimbolikusan összekapcsoljuk a cv fájlunkkal a Python 3 könyvtárban, mert az OpenCV és a Python összerendeléseket a Python 3 számára állítottuk össze.

CD ~/.virtualenvs/önéletrajz/lib/python3.5./webhely-csomagok/ ln -s /usr/helyi/lib/python3.5./webhely-csomagok/cv2.így cv2.így

Ez az!. Most telepítettük az OpenCV-t a Raspberry Pi-re. Most ellenőrizni fogjuk a virtuális környezetben.

13. lépés: Az OpenCV tesztelése

Nyissa meg az LxTerminalt, és írja be a forrás parancsot követi a dolgozik rajta parancs. Ahogy beléptünk a virtuális környezet módba, importáljuk az OpenCV összerendeléseket a python beírásával, majd a cv2 importálását. Ha nincs hibaüzenet, az azt jelenti, hogy sikeresen importálta.

forrás ~/.profil dolgozik rajtaönéletrajz piton >>importcv2

Ezt követően ellenőrizzük az OpenCV verziónkat a következő parancs beírásával:

cv2.__változat__

Tesztelés]

Telepítettük az OpenCV-t a Raspberry 3B + -ra. Most számos képfeldolgozási műveletet hajthatunk végre a Pythonban, például a Digit Detection, az Arcfelismerés stb.