Eslatma: Yuqoridagi dasturlar onlayn IDE da ishlamaydi.
Dasturning skrinshotlari Bu boshqacha ko'rinishi mumkin, chunki men yuqoridagi dasturni flask ramkasida birlashtirgan edim
Ikkinchi dasturni ishga tushirish quyidagi rasmga o'xshash natijalarni beradi:
Ushbu maqola odam boshiga bir nechta tasvirni osongina o'rgatish va rasmdagi taniqli yuzlarni tanib olishni boshlash uchun Python yuzni aniqlash dasturini tezda yaratishga qaratilgan.
Ushbu maqolada kod Python uchun ageitgey-ning face_recognition API- dan foydalanadi . Ushbu API dlib-ning yuzni aniqlash algoritmlari yordamida yaratilgan va u foydalanuvchiga loyihalaringizda yoki buyruq satridan yuzni aniqlash, yuzni aniqlash va hatto real vaqtda yuzni kuzatishni osonlik bilan amalga oshirish imkonini beradi.
Kutubxonani o'rnatish: Avval kompyuteringizda kerakli kutubxonalar o'rnatilganligiga ishonch hosil qiling.
pip install face_recognition Scikit-learn dlib docopt
Agar siz dlib -ni GPU-da CUDA -dan foydalanishni istasangiz, CUDA va cuDNN- ning to'g'ri o'rnatilganligiga ishonch hosil qiling, so'ngra dlib-ni pip yordamida o'rnating. Turli platformalarda o'rnatish bo'yicha batafsil ko'rsatmalar uchun face_recognition-ning O'rnatish qo'llanmasiga qarang .
Endi har bir kishi uchun quyidagi formatda o'quv tasvirlari bilan katalog yarating. Etarlicha ta'lim tasvirlari (har bir kishi uchun kamida 5 ta) mavjudligiga ishonch hosil qiling, aks holda Vektor tasniflagichini (SVC) qo'llab-quvvatlang ( bu dasturda qo'llaniladi - juda kichik ma'lumotlar to'plamida ma'nosiz natijalar beradi.
Fayl tuzilishi: face_recognize.py
test_image.jpg
train_dir/
kishi_1/
shaxs_1_yuz-1.jpg
shaxs_1_yuz-2.jpg
.
.
person_1_face-n.jpg
odam_2/
shaxs_2_yuz-1.jpg
shaxs_2_yuz-2.jpg
.
.
person_2_face-n.jpg
.
.
shaxs_n/
person_n_face-1.jpg
person_n_face-2.jpg
.
.
person_n_face-n.jpg
Face Encoding: face_recognition API tasvirlarda topilgan yuz uchun yuz kodlashlarini yaratadi. Yuzni kodlash, asosan, kompyuter tomonidan yaratilgan 128 o'lchov to'plamidan foydalangan holda yuzni ko'rsatish usulidir . Bitta odamning ikki xil surati o'xshash kodlash va ikki xil odam butunlay boshqacha kodlash bo'lar edi.
Barcha yuz kodlashlari yaratilgandan so'ng, scikit-learn bilan Yordam vektor tasniflagichi (SVC) o'quv katalogidagi barcha ma'lum yuzlar yorlig'i bilan birga yuz kodlashlariga o'rgatiladi. Nihoyat, API siz taqdim etgan test tasviridagi barcha yuzlarni aniqlaydi va o'qitilgan SVC test tasviridagi barcha ma'lum yuzlarni bashorat qiladi.