Мазмұны:

Бетті тану және сәйкестендіру - OpenCV Python және Arduino көмегімен Arduino Face ID: 6 қадам
Бетті тану және сәйкестендіру - OpenCV Python және Arduino көмегімен Arduino Face ID: 6 қадам

Бейне: Бетті тану және сәйкестендіру - OpenCV Python және Arduino көмегімен Arduino Face ID: 6 қадам

Бейне: Бетті тану және сәйкестендіру - OpenCV Python және Arduino көмегімен Arduino Face ID: 6 қадам
Бейне: Бетті оңай ағарту😍. Бетті терең тазарту. Отбливание кожи зубная паста, дома, лечение 2024, Шілде
Anonim
Image
Image

Бетті тану AKA тұлғаның идентификаторы - қазіргі уақытта ұялы телефондардағы ең маңызды мүмкіндіктердің бірі.

Сонымен, менде «Arduino жобасына бет -әлпетім болуы мүмкін бе» деген сұрақ болды, ал жауабы - иә …

Менің саяхатым келесідей басталды:

1 -қадам: веб -камераға кіру

2 -қадам: бетті сәйкестендіру.

3 -қадам: мәліметтерді жинау

4 -қадам: жаттығу

5 -қадам: бетті тану

6 -қадам: Arduino бағдарламалау

Мен төменде барлық қадамдарды түсіндіремін. Бұл сізге көмектеседі деп үміттенемін.

1 -қадам: веб -камераға кіру

Веб -камераға кіру
Веб -камераға кіру

Бет -әлпетті танудың бірінші қадамы камераға немесе компьютердің көру қабілетіне қол жеткізу болды. Үндістан құлыптаулы болғандықтан, мен OpenCV модулін қолдана отырып, питон бағдарламасымен қатынасуға болатын компьютерлік веб -камерамды пайдалану арқылы таптым.

Сіз OpenCV деген не деп ойлайтын шығарсыз?

OpenCV (Open Source Computer Vision Library)-бұл компьютердің көзі ашық және компьютерлік бағдарламалық қамтамасыздандырудың ашық көзі. OpenCV компьютерлік көру қосымшаларының ортақ инфрақұрылымын қамтамасыз ету және коммерциялық өнімдерде машинаны қабылдауды жылдамдату үшін жасалған.

Егер сіздің компьютеріңізде Opencv орнатылған болса, онда баруға болады. Олай болмаса, осы қадамды орындаңыз.

пәрмен жолын ашып, «pip install opencv» теріңіз.

Ескерту: «» pip «ішкі немесе сыртқы пәрмен ретінде танылмайтындықтан» қате пайда болуы мүмкін. ол үшін PATH жүйелік айнымалысына құбыр орнату жолын қосу қажет. Бұл постты қараңыз, бұл сізге көмектесе алады.

stackoverflow.com/questions/23708898/pip-i…

OpenCV орнатылғаннан кейін біз барамыз … Оның дұрыс орнатылғанын тексеру үшін Python аудармашысын ашып, кітапхананы импорттаңыз. Жоғарыдағы суретті қараңыз, бұл сіздің шығысыңыз болуы керек.

«AccessTo_webcam.py» питон файлын жүктеп алып, іске қосыңыз. Мен онда барлық қажетті түсініктемелерді бердім.

Міне, сіз веб -камераға кіре аласыз. Жарайсың. 2 -қадамға көшейік.

2 -қадам: Бетті анықтау

Бетті анықтау
Бетті анықтау

сол OpenCV модулінің көмегімен біз бейне ағынында беттің бар -жоғын анықтауымыз керек.

OpenCV Cascade Classifier деп аталатын оқыту әдісін немесе алдын ала дайындалған модельдерді ұсынады. Алдын ала дайындалған модельдер OpenCV қондырмасындағы деректер қалтасында орналасқан. Мен бұл файлды жүктеп алып, оны сіздің жобалық қалтаңызға орналастырамын. «AccessTo_webcam.py» файлы сақталатын қалта. Егер сіз біреуін жасамаған болсаңыз, оны жасаңыз.

«Haarcascade_frontalface_default» жүктеп алып, оны жобаның негізгі қалтасына орналастырыңыз.

«Face_identification.py» жүктеп алып, оны жобаның негізгі қалтасына орналастырыңыз. Онда барлық түсініктеме берілген.

Енді сіз бейне ағынында беттерді анықтай аласыз. Сонымен, 3 -қадамға көшейік.

3 -қадам: Деректерді жинау

Деректерді жинау
Деректерді жинау

Беттерді тану үшін біз питон бағдарламасын үйретуіміз керек. Ол үшін бізге кейбір мәліметтер қажет.

Деректерді жинау - бұл жобаның ең қарапайым қадамы. негізгі жоба қалтасында «image_data» атты қалта жасаңыз. «Image_data» қалтасында адамның аты жазылған бірнеше қосымша қалталар жасаңыз, онда біз деректерді сақтаймыз. Мысалға:

«Image_data» қалтасында мен «HRK» және «Yahiya» деп аталатын тағы екі қалта жасадым. жоғарыдағы суретте көрсетілгендей.

Енді өзіңіздің қалталарыңызды жасаңыз және оларға ат қойыңыз.

Қалталар жасалғаннан кейін сол адамның суреттерін жинауды бастаңыз. Мен бір адамға шамамен 20 суретті жинауды ұсынамын. Сіз сондай -ақ басқа суреттер қосуға болады, бірақ барлық адамдар үшін жиналған мәліметтерде бірдей суреттер бар екеніне көз жеткізіңіз. Бұл дәлдікті қамтамасыз етуге көмектеседі.

бұл енді 4 -қадамға көшейік.

4 -қадам: жаттығу

Қысқаша айтқанда, біз «image_data» қалтасында бар барлық қалталар мен кескіндерді қарап шығамыз және затбелгі идентификаторы мен сәйкес атауды қамтитын сөздік құрамыз. Біз бір мезгілде суретті жүктейміз, біз оны «Қызығушылық аймағы» деп атайтын әр суреттің бетін анықтаймыз және осы ақпаратты қамтитын «.yml» файлын жасаймыз.

Сізде X және Y адамдары үшін жиналған деректер бар деп есептесеңіз.

біз X адамды 1 деп белгілейміз, ол оның жапсырма идентификаторы болады және аты X болады. Біз оның бейнесін табу үшін суретті жүктейміз, яғни қызығушылық аймағы және деректерді тізімге қосамыз.

Y адам үшін де осындай қадамдар орындалады. Ақырында біз «.yml» файлын жасаймыз.

«Face_trainer.py» файлын жүктеп алып, оны жобаның негізгі қалтасына орналастырыңыз. Барлық қажетті түсініктеме сол файлдың өзінде берілген.

Бұл бағдарламаны іске қосқанда, ол барлық кескіндерді қарап шығады және «labels.pickle» және «trainner.yml» деп аталатын екі файл жасайды. Енді сіз өзіңіздің жеке моделіңізді дайындадыңыз. сондықтан 5 -қадамға көшейік.

5 -қадам: Бетті тану

Бетті тану
Бетті тану

Егер сіз барлық қадамдарды дұрыс орындаған болсаңыз, онда сіз өзіңіздің дайындалған деректеріңізді жасаған боларсыз. Енді біз бұл деректерді жүзді тану үшін қолданатын боламыз.

Негізінде біз үйретілген модельдерді python файлына жүктейміз, веб -камераға кіреміз, бейне ағынындағы беттерді анықтаймыз және бейне ағынында анықталған қазіргі бет пен дайындалған модельді салыстырамыз немесе болжаймыз. егер деректер сәйкес келсе, онда біз бұл адам танылады деп айтамыз, бұл өте қарапайым …

«Face_recognise.py» жүктеп алып, оны іске қосыңыз. Онда барлық қажетті ақпарат берілген. Енді сіздің бетіңіз танылған болуы мүмкін. егер дәлдік жақсы болмаса, деректерді жаңартып көріңіз. егер сіз баруға дайын болсаңыз, 6 -қадамға көшейік.

6 -қадам: Arduino бағдарламалау

Соңғы және соңғы қадам - Arduino бағдарламалау және питон мен Ардуино арасындағы байланыс режимін қамтамасыз ету. Байланыс үшін мен «Сериялық байланыс» қолдандым. Сериялық байланыс қалай жұмыс істейтінін және оны орнату үшін жоғарыда байланыстырылған бейнені қарап шығыңыз, сіз бейне сипаттамасында барлық қажетті файлдарды таба аласыз.

Егер сіз видеоны көрген болсаңыз, мен сізге не істегенімді түсіндіруге рұқсат етіңіз. Менің бет -әлпетім танылғанда, 2 белгісі беріледі. Жапсырма идентификаторы 2 болғаннан кейін мен Arduino -ға «1» сериялық деректер ретінде жіберемін. Бұл менің жарық диодты қуатын тізбегімді қосады. Егер жапсырма идентификаторы 2 -ден басқа болса, онда мен «0» сериялық деректер ретінде жіберемін, бұл менің жарық диодты іздеу схемасын өшіреді.

«Ard_chaser.ino» файлын жүктеңіз. Бұл сериялық байланысты қолданатын қарапайым жарық диодты іздеу бағдарламасы.

Arduino мен python бағдарламасы арасында сериялық байланыс орнататын «face_recogniser1.py» файлын жүктеп алыңыз.

Міне сен бар. Сіз жаңа нәрсе үйрендіңіз деп үміттенемін. Python мен Arduino туралы көбірек білу үшін менің youtube каналыма жазылыңыз. Егер сізге ұнаса, бөлісіңіз. Қолдауды жалғастырыңыз.

Рақмет сізге.

Ұсынылған: