مقدمه
تشخیص چهره به روشهای مختلفی با استفاده از الگوریتمهای هوش مصنوعی انجام میشود. یکی از ابزارهای قدرتمند برای تشخیص چهره، زبان برنامه نویسی پایتون است. در این مقاله قصد داریم به یادگیری و اموزش تشخیص چهره از طریق پایتون بپردازیم.
بدون شک، این مقاله برای افرادی مناسب است که تازه کار هستند و علاقهمند به پردازش تصویر و یادگیری ماشین هستند. همچنین، میتواند برای متخصصان حوزه تشخیص چهره نیز مفید واقع شود.
مرحله اول : نصب پیش نیاز ها
قبل از همه، ابتدا پایتون و پیشنیازها (کتابخانهٔ 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 پرداختیم. با توجه به کد نمونه و توضیحات فارسی بین کدها، میتوانید این مقاله را به عنوان مرجع خود برای اموزش تشخیص چهره مورد استفاده قرار دهید.