تشخیص چهره به روشهای مختلفی با استفاده از الگوریتمهای هوش مصنوعی انجام میشود. یکی از ابزارهای قدرتمند برای تشخیص چهره، زبان برنامه نویسی پایتون است. در این مقاله قصد داریم به یادگیری و اموزش تشخیص چهره از طریق پایتون بپردازیم.
بدون شک، این مقاله برای افرادی مناسب است که تازه کار هستند و علاقهمند به پردازش تصویر و یادگیری ماشین هستند. همچنین، میتواند برای متخصصان حوزه تشخیص چهره نیز مفید واقع شود.
قبل از همه، ابتدا پایتون و پیشنیازها (کتابخانهٔ OpenCV و numpy) را نصب کنید:
pip install opencv-python
pip install numpy
حالا که کتابخانهها نصب شدند، میتوانیم شروع کنیم. اما قبل از هرچیزی، یک تصویر چهره داشته باشیم که قصد داریم تشخیص دهیم. فرض کنید تصویر مورد نظر را در پوشهٔ فعلی تحت نام “face_image.jpg” ذخیره کردهایم.
import cv2
import numpy as np
# مسیر تصویر چهره
image_path = "face_image.jpg"
# خواندن تصویر چهره
image = cv2.imread(image_path)
حالا که تصویر چهره را خواندیم، باید متغیری را برای شناسایی چهره تعریف کنیم. برای این منظور، از مدل Haar cascade classifier در OpenCV استفاده میکنیم. این مدل میتواند الگوهای مشخصی تشخیص دهد که در تصاویر چهره بیشتر اتفاق میافتد.
# مدل Haar cascade classifier برای شناسایی چهره
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + "haarcascade_frontalface_default.xml")
تابع detectMultiScale در OpenCV برای تشخیص چهرهها استفاده میشود. این تابع باید تصویر چهره و سایر پارامترهای لازم را بگیرد و مستطیلی (bounding box) را حاوی چهرههای تشخیص داده شده برگرداند.
# تشخیص چهرهها در تصویر
faces = face_cascade.detectMultiScale(image, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# رسم مستطیل دور چهرهها
for (x, y, w, h) in faces:
cv2.rectangle(image, (x, y), (x+w, y+h), (0, 255, 0), 2)
حالا میتوانیم تصویر نهایی را نمایش دهیم:
# نمایش تصویر نهایی
cv2.imshow("Detected Faces", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
حالا که کد نمونه را دیدید، میتوانید بر روی تصویرهایی که دارید آنرا امتحان کنید و نتایج را ببینید. این روش تشخیص چهره با استفاده از پایتون و OpenCV نشان میدهد که چه چیزی امکانپذیر است و چگونه مراحل روش را میتوان برداشت کرد.
بنابراین، در این مقاله به تشخیص چهره از طریق پایتون با استفاده از کتابخانه OpenCV پرداختیم. با توجه به کد نمونه و توضیحات فارسی بین کدها، میتوانید این مقاله را به عنوان مرجع خود برای اموزش تشخیص چهره مورد استفاده قرار دهید.