Sadržaj:
- Korak 1: Stvari koje trebate
- Korak 2: Opencv-Intro i instalacija
- Korak 3: Prepoznavanje i prepoznavanje lica u videozapisu u stvarnom vremenu
- Korak 4: Pokretanje koda
Video: Opencv prepoznavanje lica: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
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 i računalnog vida otvorenog koda. knjižnice poput OpenCV -a, sada možete dodati prepoznavanje lica vlastitim aplikacijama, poput sigurnosnih sustava.
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 (knjižnica računalnog vida otvorenog koda) vrlo je korisna knjižnica - pruža mnoge korisne značajke kao što su prepoznavanje teksta, prepoznavanje lica, otkrivanje objekata, stvaranje dubinskih karata i strojno učenje.
Ovaj članak će vam pokazati kako instalirati Opencv i druge knjižnice na Raspberry Pi koje će vam dobro doći 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.
Što je OpenCV?
OpenCV je biblioteka softvera za računalni vid i strojno učenje otvorenog koda. OpenCV je objavljen pod BSD licencom što ga čini besplatnim za akademsku i komercijalnu upotrebu. Ima sučelja C ++, Python i Java i podržava Windows, Linux, Mac OS, iOS i Android. OpenCV je dizajniran za računalnu učinkovitost 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 izravno instalirati OpenCV.
Upišite naredbe u nastavku kako biste bili sigurni da je vaš Raspberry Pi ažuriran i ažurirali instalirane pakete na vašem Raspberry Pi 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 libqtcore
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 trebao biti instaliran 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 knjižnice
pip3 instalirajte python-numpy
pip3 instalirajte python-matplotlib
Testni kôd za otkrivanje lica na slici:
uvoz 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 videozapisu u stvarnom vremenu
uvoz cv2
uvoz numpy kao np
uvoz os
serijski uvoz
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 'Trening završen… '
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.pravokutnik (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)
broj = 0
pauza
cv2.imshow ('okvir', okvir)
k = 0xFF & cv2.waitKey (10)
ako je k == 27:
pauza
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 mapu sa skupom podataka
1. Tom Cruise 1_1, 1_2, 1_3, 1_4, 1_5, 1_6 (broj slike skupa podataka za otvoreniju mapu skupova 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 pri prijenosu fotografija ………………
a zatim spojite svoj arduino na svoj maline Pi i unesite promjene u main.py codeser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1) 3. unesite sve preuzete datoteke (main.py, mapa 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čeni:
Prepoznavanje lica na Raspberry Pi 4B u 3 koraka: 3 koraka
Prepoznavanje lica na Raspberry Pi 4B u 3 koraka: U ovom Instructableu ćemo izvršiti detekciju lica na Raspberry Pi 4 sa Shunya O/S pomoću knjižnice Shunyaface. Shunyaface je biblioteka za prepoznavanje/otkrivanje lica. Cilj projekta je postići najbržu brzinu otkrivanja i prepoznavanja s
Otkrivanje lica, obuka i prepoznavanje Opencv lica: 3 koraka
Otkrivanje lica, obuka i prepoznavanje lica Opencv: OpenCV je knjižnica računalnog vida otvorenog koda koja je vrlo popularna za obavljanje osnovnih zadataka obrade slike, 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 pomoću OpenCV Pythona i Arduina .: Prepoznavanje lica AKA Face ID jedna je od najvažnijih značajki mobilnih telefona 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
Maska za promjenu lica za promjenu lica - Budite bilo što: 14 koraka (sa slikama)
Maska za promjenu lica za promjenu lica - Budite bilo što: Što radite kada ne možete odlučiti što želite biti za Noć vještica? Budi sve. Maska za projekciju sastoji se od bijele 3D tiskane maske, pi od maline, malog projektora i baterije. Sposoban je projicirati sve i svašta
Prepoznavanje lica+prepoznavanje: 8 koraka (sa slikama)
Prepoznavanje lica+prepoznavanje: Ovo je jednostavan primjer pokretanja otkrivanja i prepoznavanja lica pomoću OpenCV -a s kamere. NAPOMENA: OVAJ PROJEKT IZRADIO SAM ZA NATJEČAJ SENZORA I KORISTIO SAM KAMERU KAO SENZOR ZA PRAĆENJE I PREPOZNAVANJE LICA. Dakle, naš ciljU ovoj sesiji, 1. Instalirajte Anacondu