Sadržaj:
- Korak 1: Stvari koje trebate
- Korak 2: Opencv-Intro i instalacija
- Korak 3: Prepoznavanje i prepoznavanje lica u videu u stvarnom vremenu
- Korak 4: Pokretanje koda
Video: Opencv prepoznavanje lica: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Prepoznavanje lica danas je uobičajena stvar, u mnogim aplikacijama poput pametnih telefona, mnogih elektroničkih naprava. Ova vrsta tehnologije uključuje mnogo algoritama i alata itd. Koja koristi neke ugrađene ugrađene SOC platforme poput Raspberry Pi -a i računarskog vida otvorenog koda. biblioteke poput OpenCV -a, sada možete dodati prepoznavanje lica svojim aplikacijama, poput sigurnosnih sistema.
U ovom projektu ću vam reći kako izgraditi prepoznavanje lica pomoću Raspberry Pi -a, a mi smo koristili arduino+Lcd za prikaz imena osobe.
Korak 1: Stvari koje trebate
1. MALINA PI
2. ARDUINO UNO / NANO
3,16 x 2 LCD EKRAN
4. RASPI-KAMERA / WEB kamera (za bolje rezultate preferiram web kameru)
Korak 2: Opencv-Intro i instalacija
OpenCV (biblioteka računarskog vida otvorenog koda) je vrlo korisna biblioteka - pruža mnoge korisne funkcije kao što su prepoznavanje teksta, prepoznavanje lica, otkrivanje objekata, stvaranje dubinskih karata i mašinsko učenje.
Ovaj članak će vam pokazati kako instalirati Opencv i druge biblioteke na Raspberry Pi koje će vam biti korisne pri otkrivanju objekata i drugim projektima. Odatle ćemo naučiti kako izvoditi slikovne i video operacije izvršavanjem projekta prepoznavanja objekata i strojnog učenja. Konkretno, napisat ćemo jednostavan kod za otkrivanje lica na slici.
Šta je OpenCV?
OpenCV je biblioteka softvera za računarski vid i mašinsko učenje otvorenog koda. OpenCV je objavljen pod BSD licencom što ga čini besplatnim za akademsku i komercijalnu upotrebu. Ima C ++, Python i Java sučelja i podržava Windows, Linux, Mac OS, iOS i Android. OpenCV je dizajniran za računalnu efikasnost i snažan fokus na aplikacije u stvarnom vremenu.
Kako instalirati OpenCV na Raspberry Pi?
Da bismo instalirali OpenCV, moramo imati instaliran Python. Budući da je Raspberry Pis unaprijed učitan Pythonom, možemo direktno instalirati OpenCV.
Unesite naredbe u nastavku kako biste bili sigurni da je vaš Raspberry Pi ažuriran i ažurirali instalirane pakete na vašem Raspberry Pi -u na najnovije verzije.
sudo apt-get updatesudo apt-get upgrade
Upišite sljedeće naredbe u terminal da biste instalirali potrebne pakete za OpenCV na svoj Raspberry Pi.
sudo apt install libatlas3-base libsz2 libharfbuzz0b libtiff5 libjasper1 libilmbase12 libopenexr22 libilmbase12 libgstreamer1.0-0 libavcodec57 libavformat57 libavutil55 libswscale4 libqtgui4 libqt4-test libqt4-test libqt4-test libqt4-test libqt4
Upišite sljedeću naredbu za instaliranje OpenCV 3 za Python 3 na vašem Raspberry Pi, pip3 nam govori da će OpenCV biti instaliran za Python 3.
sudo pip3 instalirajte opencv-contrib-python libwebp6
Sada bi trebalo instalirati OpenCV.
(ako je došlo do grešaka: ipak to možete učiniti slijedeći donju vezu
https://www.instructables.com/id/Raspberry-Pi-Hand…)
Ne žurite, moramo provjeriti je li pravilno instaliran ili nije
Testirajte svoj opencv na:
1. idite na svoj terminal i upišite "python"
2. zatim upišite "import cv2".
3.ta zatim upišite "cv2._ version_".
zatim instalirajte ove biblioteke
pip3 instalirajte python-numpy
pip3 instalirajte python-matplotlib
Testni kod za otkrivanje lica na slici:
import cv2
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml");
image = cv2.imread ('naziv vaše datoteke') #example cv2.imread ('home/pi/Desktop/filename.jpg')
dobit ćete izlaz kao da su kvadratne kutije formirane na licima ljudi koji su na slici.
Korak 3: Prepoznavanje i prepoznavanje lica u videu u stvarnom vremenu
import cv2
uvoz numpy kao np
import os
uvoz serijske
ser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1) #/dev/ttyACM0 se može promijeniti u vašem slučaju, ovisno o arduinu
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2. CascadeClassifier (cascadePath)
prepoznavač = cv2.face.createLBPHFaceRecognizer ()
slike =
oznake =
za naziv datoteke u os.listdir ('Skup podataka'):
im = cv2.imread ('Skup podataka/'+naziv datoteke, 0)
images.append (im)
labels.append (int (filename.split ('.') [0] [0]))
#print naziv datoteke
names_file = open ('labels.txt')
names = names_file.read (). split ('\ n')
prepoznavač.train (slike, np.array (oznake))
print 'Obuka završena… '
font = cv2. FONT_
HERSHEY_SIMPLEXcap = cv2. VideoCapture (1) # vaš video uređaj
lastRes = '' count = 0
dok (1):
_, frame = cap.read ()
siva = cv2.cvtBoja (okvir, cv2. COLOR_BGR2GRAY)
lica = faceCascade.detectMultiScale (sivo, 1.3, 5)
brojanje+= 1
za (x, y, w, h) u licima:
cv2.rectangle (okvir, (x, y), (x+w, y+h), (255, 0, 0), 2)
ako je broj> 20: res = imena [prepoznavač.predvidi (sivo [y: y+h, x: x+w])-1]
if res! = lastRes:
lastRes = res
ispis lastRes
ser.write (lastRes)
count = 0
break
cv2.imshow ('okvir', okvir)
k = 0xFF & cv2.waitKey (10)
ako je k == 27:
break
cap.release ()
ser.close ()
cv2.destroyAllWindows ()
Korak 4: Pokretanje koda
1. Preuzmite datoteke priložene u prethodnom koraku
2. kopirajte svoje sive fotografije (6 slika/ uzoraka …..) u fasciklu sa skupom podataka
1. Tom Cruise 1_1, 1_2, 1_3, 1_4, 1_5, 1_6 (broj slike skupa podataka za otvoreniju fasciklu sa skupom podataka)
2. Brad Pitt-2_1, 2_2, 2_3, 2_4, 2_5, 2_6
3. Lav-3_1, 3_2, 3_3, 3_4, 3_5, 3_6
4. Ironman4_1, 4_2, 4_3, 4_4, 4_5, 4_6
kao što je gore navedeno, možete dodati oznake za odgovarajuće osobe,
pa ako pi otkrije bilo koje lice među 1_1, 1_2, 1_3, 1_4, 1_5, 1_6, tada je označeno kao Tom Cruise, stoga budite oprezni prilikom postavljanja fotografija ………………
a zatim povežite svoj arduino sa svojim malinom Pi i unesite promjene u main.py codeser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1) 3. unesite sve preuzete datoteke (main.py, folder sa skupom podataka), haarcascade_frontalface_default.xml u jednoj mapi.)
3. Sada otvorite Raspi-terminal, pokrenite svoj kod pomoću "sudo python main.py"
Preporučuje se:
Prepoznavanje lica na Raspberry Pi 4B u 3 koraka: 3 koraka
Prepoznavanje lica na Raspberry Pi 4B u 3 koraka: U ovom uputstvu ćemo izvršiti otkrivanje lica na Raspberry Pi 4 sa Shunya O/S koristeći biblioteku Shunyaface. Shunyaface je biblioteka za prepoznavanje/otkrivanje lica. Cilj projekta je postići najbržu brzinu otkrivanja i prepoznavanja sa
Abellcadabra (sistem zaključavanja vrata za prepoznavanje lica): 9 koraka
Abellcadabra (Sistem zaključavanja vrata za prepoznavanje lica): Ležeći tokom karantene, pokušao sam pronaći način da ubijem vrijeme izgradnjom prepoznavanja lica za kućna vrata. Nazvao sam ga Abellcadabra - što je kombinacija između Abracadabre, čarobne fraze sa zvonom na vratima koje samo čujem. LOL
Otkrivanje lica, obuka i prepoznavanje Opencv lica: 3 koraka
Otkrivanje lica, obuka i prepoznavanje lica Opencv: OpenCV je biblioteka računarskog vida otvorenog koda koja je vrlo popularna za obavljanje osnovnih zadataka obrade slika, kao što su zamućivanje, miješanje slika, poboljšanje slike, kao i kvaliteta videa, određivanje praga itd. Osim obrade slike, to je prov
Prepoznavanje lica i identifikacija - Arduino Face ID pomoću OpenCV Pythona i Arduina .: 6 koraka
Prepoznavanje lica i identifikacija | Arduino Face ID koristeći OpenCV Python i Arduino .: Prepoznavanje lica AKA Face ID jedna je od najvažnijih značajki na mobilnim telefonima u današnje vrijeme. Dakle, imao sam pitanje "mogu li imati identifikacijski broj lica za svoj Arduino projekt" i odgovor je da … Moje putovanje je počelo ovako: Korak 1: Pristup nama
Prepoznavanje lica+prepoznavanje: 8 koraka (sa slikama)
Prepoznavanje lica+prepoznavanje: Ovo je jednostavan primjer pokretanja otkrivanja i prepoznavanja lica pomoću OpenCV -a sa kamere. NAPOMENA: NAPRAVIO SAM OVAJ PROJEKT ZA TAKMIČENJE SENZORA I KORISTIO SAM KAMERU KAO SENZOR ZA PRAĆENJE I PRIZNAVANJE LICA. Dakle, naš ciljU ovoj sesiji, 1. Instalirajte Anacondu