Съдържание:
- Стъпка 1: Неща, от които се нуждаете
- Стъпка 2: Opencv-Intro и инсталация
- Стъпка 3: Откриване и разпознаване на лице във видео в реално време
- Стъпка 4: Стартирайте кода
Видео: Opencv разпознаване на лица: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Разпознаването на лица е доста често срещано нещо в днешно време, в много приложения като смартфони, много електронни джаджи. Този вид технология включва много алгоритми и инструменти и др., Които използват някои вградени вградени SOC платформи като Raspberry Pi и компютърно виждане с отворен код. библиотеки като OpenCV, вече можете да добавяте разпознаване на лица към вашите собствени приложения като системи за сигурност.
В този проект ще ви кажа как да изградите разпознаване на лица с помощта на Raspberry Pi и ние използвахме arduino+Lcd, за да покажем името на човека.
Стъпка 1: Неща, от които се нуждаете
1. МАЛИНА PI
2. ARDUINO UNO / NANO
3,16 x 2 lcd Дисплей
4. RASPI-CAMERA / WEBcam (предпочитам уеб камера за по-добри резултати)
Стъпка 2: Opencv-Intro и инсталация
OpenCV (библиотека за компютърно виждане с отворен код) е много полезна библиотека - тя предоставя много полезни функции като разпознаване на текст, разпознаване на лица, откриване на обекти, създаване на карти на дълбочина и машинно обучение.
Тази статия ще ви покаже как да инсталирате Opencv и други библиотеки на Raspberry Pi, които ще ви бъдат полезни при откриване на обекти и други проекти. Оттам ще научим как да изпълняваме изображения и видео операции, като изпълняваме проект за разпознаване на обекти и машинно обучение. По -конкретно, ще напишем прост код за откриване на лица в изображение.
Какво е OpenCV?
OpenCV е софтуерна библиотека за компютърно виждане и машинно обучение с отворен код. OpenCV е издаден под лиценз BSD, което го прави безплатен както за академична, така и за търговска употреба. Той има C ++, Python и Java интерфейси и поддържа Windows, Linux, Mac OS, iOS и Android. OpenCV е проектиран за изчислителна ефективност и силен фокус върху приложения в реално време.
Как да инсталирам OpenCV на Raspberry Pi?
За да инсталираме OpenCV, трябва да имаме инсталиран Python. Тъй като Raspberry Pis са предварително заредени с Python, можем да инсталираме OpenCV директно.
Въведете командите по -долу, за да се уверите, че вашият Raspberry Pi е актуален и да актуализирате инсталираните пакети на вашия Raspberry Pi до най -новите версии.
sudo apt-get updates sudo apt-get надстройка
Въведете следните команди в терминала, за да инсталирате необходимите пакети за OpenCV на вашия Raspberry Pi.
sudo apt инсталирате libatlas3-base libsz2 libharfbuzz0b libtiff5 libjasper1 libilmbase12 libopenexr22 libilmbase12 libgstreamer1.0-0 libavcodec57 libavformat57 libavutil55 libswscale4 libqtgui4 libqt4-test libqtcore
Въведете следната команда, за да инсталирате OpenCV 3 за Python 3 на вашия Raspberry Pi, pip3 ни казва, че OpenCV ще бъде инсталиран за Python 3.
sudo pip3 инсталирайте opencv-contrib-python libwebp6
Сега трябва да се инсталира OpenCV.
(ако има грешки: все пак можете да го направите, като следвате връзката по -долу
https://www.instructables.com/id/Raspberry-Pi-Hand…)
Сега не бързайте, трябва да проверим дали е инсталиран правилно или не
Тествайте вашия opencv чрез:
1. отидете на вашия терминал и напишете "python"
2. след това въведете „import cv2“.
3. след това въведете "cv2._ version_".
след това инсталирайте тези библиотеки
pip3 инсталирайте python-numpy
pip3 инсталирайте python-matplotlib
Тестов код за откриване на лица в изображение:
импортиране на cv2
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml");
image = cv2.imread ('името на вашия файл') #example cv2.imread ('home/pi/Desktop/filename.jpg')
ще получите изхода като квадратни кутии, образувани по лицата на хора, които са на снимката.
Стъпка 3: Откриване и разпознаване на лице във видео в реално време
импортиране на cv2
внос numpy като np
внос os
внос сериен
ser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1) #/dev/ttyACM0 може да се промени във вашия случай, зависи от arduino
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2. CascadeClassifier (cascadePath)
разпознавач = cv2.face.createLBPHFaceRecognizer ()
изображения =
етикети =
за име на файл в os.listdir ('Dataset'):
im = cv2.imread ('Набор от данни/'+име на файл, 0)
images.append (im)
labels.append (int (filename.split ('.') [0] [0])
#print име на файл
names_file = open ('labels.txt')
имена = имена_файл.read (). разделен ('\ n')
разпознаващ.влак (изображения, np.array (етикети))
отпечатайте „Обучението е завършено… '
font = cv2. FONT_
HERSHEY_SIMPLEXcap = cv2. VideoCapture (1) # вашето видео устройство
lastRes = '' count = 0
докато (1):
_, frame = cap.read ()
сиво = cv2.cvtColor (рамка, cv2. COLOR_BGR2GREY)
фасони = faceCascade.detectMultiScale (сиво, 1.3, 5)
брой+= 1
за (x, y, w, h) в лица:
cv2.rectangle (рамка, (x, y), (x+w, y+h), (255, 0, 0), 2)
ако брой> 20: res = имена [разпознаващ.предсказване (сив [y: y+h, x: x+w])-1]
ако res! = lastRes:
lastRes = res
отпечатайте lastRes
ser.write (lastRes)
брой = 0
прекъсване
cv2.imshow ('рамка', рамка)
k = 0xFF & cv2.waitKey (10)
ако k == 27:
прекъсване
cap.release ()
ser.close ()
cv2.destroyAllWindows ()
Стъпка 4: Стартирайте кода
1. Изтеглете файловете, приложени в предишната стъпка
2. копирайте сивите си снимки (6 изображения/ мостри …..) в папката с набори от данни
1. Tom Cruise 1_1, 1_2, 1_3, 1_4, 1_5, 1_6 (номер на изображението за набор от данни за по -отворена папка с набори от данни)
2. Брад Пит-2_1, 2_2, 2_3, 2_4, 2_5, 2_6
3. Лъв-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
подобно на горното можете да добавите етикетите за съответните лица,
така че ако пи открие лице сред 1_1, 1_2, 1_3, 1_4, 1_5, 1_6, тогава беше означено като Том Круз, така че, моля, бъдете внимателни, докато качвате снимките ………………
и след това свържете вашия arduino към вашия малинов Pi и направете промени в main.py codeser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1) 3. въведете всички изтеглени файлове (main.py, папка с данни, haarcascade_frontalface_default.xml в една папка.)
3. Сега отворете Raspi-терминала, стартирайте кода си чрез "sudo python main.py"
Препоръчано:
Abellcadabra (Система за заключване на врата за разпознаване на лица): 9 стъпки
Abellcadabra (Система за заключване на вратите за разпознаване на лица): Поставяйки се по време на карантината, се опитах да намеря начин да убия времето, като изградих разпознаване на лица за вратата на къщата. Нарекох го Abellcadabra - което е комбинация между Abracadabra, вълшебна фраза с звънец на вратата, на която аз само звъня. LOL
IP камера с разпознаване на лица с помощта на платката ESP32-CAM: 5 стъпки
IP камера с разпознаване на лица с помощта на платката ESP32-CAM: Тази публикация е различна в сравнение с останалите и разглеждаме много интересната платка ESP32-CAM, която е изненадващо евтина (по-малко от 9 долара) и лесна за използване. Създаваме проста IP камера, която може да се използва за поточно предаване на видео на живо чрез 2
Opencv разпознаване на лица, обучение и разпознаване: 3 стъпки
Откриване, обучение и разпознаване на лица с Opencv: OpenCV е библиотека за компютърно зрение с отворен код, която е много популярна за изпълнение на основни задачи по обработка на изображения, като замъгляване, смесване на изображения, подобряване на изображението, както и качество на видеото, праг и т.н. В допълнение към обработката на изображения, доказва се
Разпознаване и разпознаване на лица - Arduino Face ID Използване на OpenCV Python и Arduino .: 6 стъпки
Разпознаване и разпознаване на лица | Arduino Face ID Използване на OpenCV Python и Arduino .: Разпознаване на лице AKA Face ID е една от най -важните функции на мобилните телефони в днешно време. И така, имах въпрос "мога ли да имам идентификационен номер на лицето за моя проект Arduino" и отговорът е да … Пътуването ми започна по следния начин: Стъпка 1: Достъп до нас
Разпознаване на лице+разпознаване: 8 стъпки (със снимки)
Face Detection+разпознаване: Това е прост пример за стартиране на разпознаване и разпознаване на лица с OpenCV от камера. ЗАБЕЛЕЖКА: НАПРАВИХ ТОЗИ ПРОЕКТ ЗА СЪДЕЖДАНЕ НА СЕНЗОРИ И ИЗПОЛЗВАХ КАМЕРАТА КАТО СЕНЗОР ЗА ПРОСЛЕДВАНЕ И ПРИЗНАВАНЕ НА ЛИЦА. И така, нашата цел В тази сесия, 1. Инсталирайте Anaconda