با خط فرمان های زیر می توانید به راحتی صورت افراد موجود در تصاویر را تشخیص داده و آن ها را تغییر دهید.
تشخیص صورت
می توانید از طریق خط فرمان و ساده ترین آرشیو تشخیص صورت دنیا، هویت افراد درون عکس ها را تشخیص داده و صورت آن ها را تغییر دهید.
قابلیت تشخیص صورت ساخته شده با استفاده از dlib توسط یادگیری عمیق ساخته شده است. دقت آن نزدیک به 99.38% می باشد.
این قابلیت همچنین ابزار خط فرمان ساده face_recognition را به شما ارائه داده و به شما اجازه می دهد در پوشه ای از تصاویر خط فرمان صورت ها را تشخیص دهید.
قابلیت ها
یافتن همه صورت ها در تصویر
import face_recognition
image = face_recognition.load_image_file("your_file.jpg")
face_locations = face_recognition.face_locations(image)
یافتن و تغییر صورت ها در عکس
مکان و خطوط چشمان، بینی، دهان و چانه هر فرد را بیابید
import face_recognition
image = face_recognition.load_image_file("your_file.jpg")
face_landmarks_list = face_recognition.face_landmarks(image)
یافتن خصوصیات ظاهری برای کارهای زیادی مهم است. اما برای سرگرمی نیز می توانید از آن استفاده کنید.
تشخیص صورت ها در تصاویر
تشخیص می دهد که چه کسی در تصویر است
import face_recognition
known_image = face_recognition.load_image_file("biden.jpg")
unknown_image = face_recognition.load_image_file("unknown.jpg")
biden_encoding = face_recognition.face_encodings(known_image)[0]
unknown_encoding = face_recognition.face_encodings(unknown_image)[0]
results = face_recognition.compare_faces([biden_encoding], unknown_encoding)
شما همچنین می توانید از این آرشیو با آرشیوهای دیگر پایتون برای تشخیص صورت افراد استفاده کنید.
نصب
موارد مورد نیاز :
پایتون 3+ یا پایتون 2.7
مک او اس یا لینوکس ( روی ویندوز امتحان نشده است)
همچنین قابل اجرا روی رزبری پای 2 می باشد
یک تصویر VM از پیش پیکربندی شده نیز موجود است.
این ماژول را از pypi با استفاده از pip3 نصب کنید ( یا pip2 برای پایتون 2)
pip3 install face_recognition
پس از نصب dlib به صورت دستی، برای تکمیل روند نصب pip3 install face_recognition را اجرا کنید.
استفاده
رابط کاربری خط فرمان
وقتی که face_recognition را نصب کردید، یک برنامه ساده خط فرمان به نام face_recognition دریافت می کنید که توسط آن می توانید صورت ها را در یک عکس یا یک پوشه پر از عکس شناسایی کنید.
اول باید یک پوشه ساخته و تصویر صورت هر فردی که می شناسید را در آن قرار دهید. باید یک فایل تصویری برای هر فرد با نام خودش در آن پوشه موجود باشد:
سپس یک پوشه دیگر با فایل هایی که می خواهید شناسایی کنید بسازید.
فرمان face_recognition را برای پوشه افراد شناسایی شده و افراد شناسایی نشده اجرا کنید تا به شما بگوید که در هر تصویر چه کسی حضور دارد:
$ face_recognition ./pictures_of_people_i_know/ ./unknown_pictures/
/unknown_pictures/unknown.jpg,Barack Obama
/face_recognition_test/unknown_pictures/unknown.jpg,unknown_person
یک خط در هر خروجی برای هر صورت وجود دارد. دیتا، نام فایل و نام شخص یافته شده را با یک ویرگول از هم جدا می کند.
یک unknown_person صورت موجود در تصویر است که با هیچ کس در آلبوم افراد شناخته شده همخوانی نداشته است.
اگر فقط می خواهید نام فرد را در عکس ببینید اما نام فایل برایتان مهم نیست می توانید این کار را انجام دهید:
$ face_recognition ./pictures_of_people_i_know/ ./unknown_pictures/ | cut -d ',' -f2
Barack Obama
unknown_person
ماژول پایتون
می توانید ماژول face_recognition را وارد کرده و با چند خط کد صورت ها را تغییر دهید. این کار بسیار ساده است.
شناسایی همه صورت ها در یک عکس به صورت خودکار
import face_recognition
image = face_recognition.load_image_file("my_picture.jpg")
face_locations = face_recognition.face_locations(image)
# face_locations is now an array listing the co-ordinates of each face
اعمال قابلیت ها روی صورت فرد به صورت خودکار در یک تصویر
import face_recognition
image = face_recognition.load_image_file("my_picture.jpg")
face_landmarks_list = face_recognition.face_landmarks(image)
# face_landmarks_list is now an array with the locations of each facial feature in each face.
# face_landmarks_list[0]['left_eye'] would be the location and outline of the first person's left eye
تشخیص صورت ها در تصویر و شناسایی هویت آن ها
import face_recognition
picture_of_me = face_recognition.load_image_file("me.jpg")
my_face_encoding = face_recognition.face_encodings(picture_of_me)[0]
# my_face_encoding now contains a universal 'encoding' of my facial features that can be compared to any other picture of a face!
unknown_picture = face_recognition.load_image_file("unknown.jpg")
unknown_face_encoding = face_recognition.face_encodings(unknown_picture)[0]
# Now we can see the two face encodings are of the same person with `compare_faces`!
results = face_recognition.compare_faces([my_face_encoding], unknown_face_encoding)
if results[0] == True:
print("It's a picture of me!")
else:
print("It's not a picture of me!")
ثبت نظر