تشخیص چهره یکی از گستردهترین کاربردهای بینایی رایانهای است. تشخیص چهره، یک مسالهی بنیادین در بینایی رایانهای و بازشناسی الگو است. در دهه گذشته، چندین روش تشخیص ویژگی چهره عرضه شده است. با اینحال، رویکردهای مبتنی بر یادگیری عمیق و شبکه عصبیِ پیچشی (سی ان ان)، با موفقیتهای بزرگی روبرو شدهاند. در این مقاله سعی داریم به کاربرد یادگیری عمیق در تشخیص چهره بپردازیم. با ما همراه باشید.
تشخیص چهره چیست؟
تشخیص چهره، یک فناوری رایانهایست که لوکیشن و سایز چهرهی انسان را در تصاویر دیجیتالی مشخص میکند. هدف بازشناسی چهرهای، تعیین این موضوع است که آیا چهره یا چهرههایی در تصویر وجود دارند و ارجاع باکسِ روی هر چهرهی تشخیصدادهشده است.
سایر اشیاء، نظیر درختان و ساختمانها و بدنها، از تصویر دیجیتال کنار گذارده میشوند. تشخیص چهره را میتوان موردی خاص از تشخیص کلاسِ اشیاء تلقی کرد که در آن، وظیفه این است که لوکیشن و سایز همه اشیاءِ درون یک تصویر (که به یک کلاسِ مفروض تعلق دارند)، پیدا شود.
تشخیص چهره، نخستین گام برای همه الگوریتمهای تحلیل چهره است، از جمله همترازسازیِ چهره، بازشناسی چهره، تایید چهره و face parsing. از بازشناسی چهره در حوزههای متعددی استفاده میشود، نظیر بازیابی تصویر بر اساس محتوا، ویدئو کدینگ، ویدئو کنفرانس، نظارت بر جماعت و رابطهای انسان-رایانهی هوشمند.
تشخیص چهره با یک شبکهی کانولوشنِ عمیق، توانایی زیادی در فراخوانی چهرهها دارد، حتی وقتی تغییرات زیادی در پوزیشن سر وجود دارد.
تشخیص چهرهی انسان، یک مسالهی بینایی رایانهای دشوار است. عمدتاً به این دلیل که چهره انسان یک شیء پویا است و در ظاهر آن تغییرات زیادی رخ میدهد. در سالهای اخیر، تکنیکهای بازشناسی چهره به پیشرفتهای زیادی دست یافتهاند.
با اینحال، تشخیص خوبِ چهره، همچنان یک مسالهی چالشی است خصوصاً وقتی تعداد چهرهها زیاد و ریز باشند.
دو نوع رویکرد جهت تشخیص بخشهای مختلف چهره وجود دارد:
- رویکرد ویژگیبنیان
- رویکرد تصویربنیان
در ادامه به بررسی این دو رویکرد در تشخیص چهره با یادگیری عمیق می پردازیم.
رویکرد ویژگیبنیان
- تکنیک: روشهای ویژگیبنیان در تشخیص چهره با یادگیری عمیق تلاش میکنند ویژگیهای نامتغیر چهرهها را برای تشخیص پیدا کنند. ایدهی اصلیِ این، بر اساس مشاهداتی است که میگویند بینایی انسان بهراحتی میتواند چهره را در وضعیتها و روشناییهای مختلف تشخیص دهد، بنابراین باید مشخصات یا ویژگیهایی وجود داشته باشند که علیرغم آن متغیرها، ثابت باشند. روشهای زیادی جهت تشخیص ویژگیهای چهره ارائه شده است که بواسطهی آنها میتوان حضور چهره را استنباط کرد.
- نمونهها: تشخیصدهندگانِ لبه، معمولاً ویژگیهای چهره را استخراج میکنند؛ مثلاً چشمان، بینی، دهان، ابرها، رنگ پوست و خطِ مو. مدلهای آماری بر اساس ویژگیهای استخراجشده ساخته شدهاند تا روابطشان را توصیف کنند و حضور یک چهره در یک تصویر را تأیید نمایند.
- مزایا: سهولتِ پیادهسازی، رویکردِ مرسوم و سنتی
- معایب: مسالهای اصلیِ الگوریتمهای ویژگیبنیان، این است که ویژگیهای تصویر بر اثر روشنایی، نویز و آکلوژن (یا پوشیدگی) (occlusion) ممکن است بهشدت خراب شوند. همچنین ممکن است مرزهای ویژگی برای چهرهها تضعیف شوند و سایهها باعث شکلگیریِ لبههایی قوی میشوند که رویهمرفته باعث بیفایدهشدن الگوریتمهای گروهبندیِ ادراکی میشوند.
رویکردِ تصویربنیان
- تکنیک: روشهای تصویربنیان سعی میکنند با استفاده از نمونههای موجود در تصاویر، به الگوها آموزش دهند. از این رو، روشهای ظاهربنیان به تکنیکهای تحلیل آماری و یادگیری ماشین جهت یافتن مشخصات مهمِ تصاویر حاوی چهره و غیرحاویِ چهره اتکاء دارند. مشخصاتِ آموختهشده، به شکل مدلهای توزیعِ توابعِ ممیز یا تشخیصند که برای امور تشخیص چهره استفاده میشود.
- نمونهها: رویکردهای تصویربنیان شامل شبکههای عصبی (سی ان ان)، ماشینهای بردارِ پشتیبان (اس وی ام) یا Adaboost هستند.
- مزایا: عملکرد خوب و بازده بالا
- معایب: پیادهسازیِ دشوار. کاهش بُعدمندی یا ابعاد معمولاً لازمهی بازدهِ محاسبات و بازده تشخیص هست. این به معنای کاهش بُعدمندیِ فضای ویژگی است که با کسب ویژگیهای اصلی و حفظ مشخصات معنادارِ دادههای اریجینال انجام میگیرد.
مجموعه دادگانِ تشخیص چهره یا WIDER FACE، تغییرات زیادی از نظر مقیاس، پوزیشن، آکلوژن، حالتِ چهره، ظاهر و روشنایی دارد.
روشهای تشخیص چهره
تکنیکهای متعددی جهت تشخیص چهرهی معرفی شدهاند.
سرآغاز
تشخیص چهره از زمان ظهور خود در دهه ۱۹۹۰، یک حوزهی پژوهشیِ چالشانگیز بوده است. قبل از ۲۰۰۰، علیرغم مطالعات زیادی که در این زمینه انجام گرفته بود، عملکرد عملیِ بازشناسی چهره، فاصله زیادی از نقطهی رضایتبخش داشت تا اینکه نقطهی عطفی که عمان تحقیق ویولا و جونز بود، از راه رسید. تشخیص چهره که از تحقیق پیشگامِ ویولا-جونز (۲۰۰۴) آغاز شد، پیشرفت زیادی تاکنون داشته است. ویولا و جونز پیشگام استفاده از ویژگیهای Haar و AdaBoost به منظور آموزش یک تشخیصگرِ چهره بودند که دقت و بازدهی نویدبخشی هم داشت و الهامبخشِ رویکردهای متعددِ پس از آن بود. با اینحال، طرح آنها دچار ایرادها و کاستیهایی نیز است. اول از همه، سایز ویژگی آن نسبتاً بزرگ بود. و قادر نیست چهرههای پیشینی و غیرِپیشینی را در طبیعت بهخوبی مدیریت کند.
مراحل اولیه- یادگیریِ ماشین
رویکردهای اولیه عمدتاً بر استخراج انواع مختلفی از ویژگیها توسط متخصصانِ بینایی رایانهای و آموزشِ ردهبندهای کارآمد برای تشخیص الگوریتمهای مرسومِ یادگیری ماشین، تمرکز داشت. چنین روشهایی محدودند به اینکه آنها غالباً نیازمند کارشناسان بینایی رایانهای در استخراج ویژگیهای کارآمد هستند و هر مولفه بصورت جداگانه بهینهسازی میشود و کل سیستم تشخیص را غالباً فروبِهین میکند (بهینگی را کاهش میدهد). به منظور رسیدگی به مسالهی نخست، تلاش زیادی صورت گرفته است تا به ویژگیهای پیچیدهتری نظیر HOG (هیستوگرامِ گرادیانهای شیبگرا)، SIFT (تبدیل ویژگیِ مقیاسنابسته)، SURF (ویژگی مقاومِ تسریعشده) و ACF (ویژگیهای کانال مجتمع) دست یابند. به منظور ارتقای استواریِ تشخیص، ترکیبی از تشخیصدهندههای چندگانه که بطور جداگانه برای ویوها یا حالتهای مختلف آموزش دیدهاند، شکل گرفته است. با این وجود، آموزش و تستِ چنین مدلهایی معمولاً زمانبَرتر بود و ارتقای عملکرد تشخیصیِ آنها نیز محدود بود.
یادگیری عمیق در تشخیص چهره
در سالهای اخیر یادگیری عمیق در تشخیص چهره پیشرفت های بسیار چشمگیری را تجربه کرده است (خصوصاً شبکههای عصبی عمیق پیچشی (سی ان ان) که در امور بینایی رایانهایِ گوناگون با موفقیت چشمگیری روبهرو بودهاند). در مقایسه با رویکردهای بیناییِ رایانهی مرسوم، روشهای یادگیری عمیق از سیستم طراحی دستساخته اجتناب میکنند و از روشهای ارزیابی معروفی استفاده میکنند، نظیر چالش تشخیص بصریِ مقیاسبزرگِ ایماجنت (ILSVRC). اخیراً محققان از R-CNN سریعتر استفاده کردهاند که یکی از تشخیصدهندگان شیءِ برجسته است و به نتایجی نویدبخش دست یافته است. علاوه بر این، آموزش مشترکی که روی آبشارِ CNN، RPN و R-CNNِ سریعتر انجام میشود، بهینهسازیِ انتها-به-انتها را تحقق بخشیده است. الگوریتم تشخیص چهرهی R-CNNِ سریعتر با hard negative mining و ResNet، توانسته است عملکرد تشخیص را روی بنچمارکهای تشخیص چهرهای نظیر FDDB، به مقدار زیادی ارتقاء دهد.
چالشهای اصلی در تشخیص چهره با یادگیری عمیق
چالشهای موجود در مبحث یادگیری عمیق در تشخیص چهره، دلیل کاهش دقت و نرخ تشخیصِ بازشناسیِ چهره هستند. این چالشها عبارتند از: زمینهی پیچیدهی تصور، کثرت چهرههای موجود در تصاویر، حالتهای نامتعارفِ در چهره، روشناییها، رزولوشن پایین، آکلوژنِ چهره، رنگ پوست، فاصله و جهتگیری و غیره.
- حالت نامتعارفِ چهره: چهرههای موجود در یک تصویر، ممکن است حالتهایی غیرمنتظره یا ناآشنا داشته باشند.
- روشنایی: برخی بخشهای تصویر، روشنایی یا تاریکیهای بسیار کم یا زیادی دارند.
- انواع پوست: تشخیص چهرههایی با رنگ پوستهای مختلف، برای تشخیص چالش ایجاد میکنند و به تنوعی گستردهتر از تصاویر آموزشی برای غلبه بر این چالش نیاز است.
- مسافت: اگر فاصله از دوربین بسیار زیاد بوده باشد، سایز شیء (سایز چهره) ممکن است بسیار کوچک باشد.
- جهتگیری: جهت و زاویهای که چهره نسبت به دوربین دارد، بر نرخ تشخیص چهره تأثیر میگذارد.
- زمینهی پیچیده: تعداد اشیایی که در زمینه وجود دارند، دقت و نرخ تشخیص را پایین میآورد.
- کثرت چهرهها در یک تصویر: تصویری که تعداد چهرههای موجود در آن زیاد باشد، برای نرخ تشخیص دقیق، بسیار چالشانگیز است.
- آکلوژن یا پوشیدگی تقریبی چهره: چهرههایی که تا حدودی توسط اشیایی پوشیده شدهاند (نظیر عینک، شالگردن، دستان، مو، کلاه و سایر اشیاء)، بر نرخ تشخیص تأثیر میگذارند.
- رزولوشن یا وضوح پایین: تصاویرِ رزولوشنپایین یا تصاویر دارای نویز، بر نرخ تشخیص تأثیر منفی میگذارند.
کاربردهای یادگیری عمیق در تشخیص چهره
از مهمترین کاربردهای تشخیص چهره به کمک یادگیری عمیق میتوان به موارد زیر اشاره کرد:
- نظارت بر جماعت: از تشخیص چهره به منظور تشخیص جماعت در نواحی خصوصی یا عمومی استفاده میشود.
- تعامل یا برهمکنشِ انسان-رایانه: سیستمهای تعاملبنیانِ انسان-رایانهی متعددی از بازشناسیِ چهره به منظور تشخیص حضور انسانها استفاده میکنند.
- عکاسی: برخی دوربینهای دیجیتالیِ جدید، از تشخیص چهره برای اتوفوکِس (فوکِسِ خودکار) استفاده میکنند. اپلیکیشنهای موبایل از بازشناسی چهره به منظور تشخیص مناطقِ مدنظر در اسلایدشوها استفاده میکنند.
- استخراج ویژگی چهره: ویژگیهای چهره، نظیر بینی، چشمها، دهان، رنگ پوست و غیره را میتوان از تصاویر استخراج کرد.
- ردهبندی جنسیت: اپلیکیشنها به نحوی ساخته میشوند که اطلاعات جنسیتی را با استفاده از روشهای تشخیص چهره، تشخیص دهند.
- بازشناسی چهره: یک سیستم بازشناسیِ چهره، طراحی شده است تا یک شخص را از یک تصویر دیجیتال یا فریمِ ویدئو شناسایی و شناسایی و تأیید کند.
- بازاریابی: در زمینه بازاریابی، تحلیل رفتار مشتری یا تبلیغاتِ هدفمند، تشخیص چهره از اهمیت بیشتر و بیشتری برخوردار میشود.
- تشخیص حضور: از بازشناسی چهره به منظور تشخیصِ حضور انسانها استفاده میشود. این روش غالباً برای مدیریت دسترسی، با زیستسنجی ترکیب میشود.