سلام! در این مقاله میخوایم چهره رو شناسایی کنیم و ویژگی های اون رو بدست بیاریم. با ما همراه باشید
DeepFace کتابخانه ای در پایتون، برای تشخیص چهره، ویژگی های چهره، سن و جنسیت هست. علاوه بر این ها امکان بازشناسی چهره هم به شما میده که در ادامه مقاله با DeepFace آشنا میشیم
برای نصب DeepFace، وارد محیط ترمینال میشیم و دستور زیر رو وارد میکنیم:
pip install deepface
خب الان که دیپ فیس رو نصب کردیم، میخوایم برنامه ای بنویسیم، که 2 تصویر بهش بدیم، و اون بگه که افراد داخل این دو تصویر، یک فرد هستند یا نه
برای اینکار باید اول کتابخانه رو import کنیم:
from deepface import DeepFace
برای تایید چهره های در تصاویر از تابع verified استفاده میکنیم:
result = DeepFace.verify("img1.jpg", "img2.jpg")
حواستون باشه که شما به جای img1.jpg و img2.jpg، نام تصاویر خودتون رو بزنید
الان اگه ما متغیر result رو پرینت کنیم، 5 خروجی به ما در قالب دیکشنری نمایش میده:
verified: مقدار True یا False هست که میگه این دو فرد، یک نفر هستند یا خیر اگر True بود یعنی یک نفرن و اگه False بود یعنی دو فرد متفاوت هستن
distance: فاصله خصوصیات این دو چهره رو به ما میگه. هر چی که مقدارش بیشتر باشه، یعنی اون ها شباهت کمتری به هم دارن.
max_threshold: حدی هست که برای distance در نظر میگیره، اگه distance بیشتر از این باشه، verified اونها False میشه
model: نوع مدلی که استفاده کردیم که به صورت پیشفرض، VGG هست
similarity_metric: نشون میده که برای پیدا کردن فاصله شباهت هاشون از چه عمل ریاضی ای استفاده کرده
خب ما الان 2 عکس از آقای محمدرضا گلزار آماده کردیم، و به DeepFace دادیم و خروجی این شد:
و همينطور که ميبينيد، تایید کرد که این دو فرد، یک نفر هستند(verified=True)
این هم بگم که ما میتونیم دیتاستی به تابع verify بدیم و افراد یکسان رو بهمون بگه:
برای اینکار از تابع analyze استفاده میکنیم که در اولین آرگیومنت باید نام تصویر، بعد ویژگی هایی که میخوایم از تصویر دربیاره رو بدیم:
خب برای اینکار از تابع stream استفاده میکنیم. حواستون باشه که به عنوان آرگیومنت، باید محل تصاویر یا دیتاستون رو بدید:
خیلی ممنون که با من همراه بودید. اگه سوال، نظر یا انتقادی داشتید حتما در قسمت دیدگاه مطرح کنید. خیلی ممنون از توجه شما :)