بازشناسی چهره و مکانیابی چهره
همانطور که در مبانی سامانههای تشخیص چهره بیان شد، عملیات مقایسه در فرآیند تشخیص چهره با استفاده از یک عکس خاکستری مانند هر سیستم زیستسنجی دیگر، مراحلی مشابه شکل زیر طی میشود. به این صورت که ابتدا سیستم یک عکس حاوی چهره دریافت میکند، مکان چهرهی انسان را در عکس تشخیص میدهد، قسمت چهره از عکس بریده شده، نرمال میشود و ويژگیهای آن استخراج میشود و بدین ترتیب الگوی تصویر صورت تشکیل میشود. در هنگام تشخیص هویت، همانطور که در این شکل ملاحظه میشود، این الگوی دریافت شده با الگوهای موجود در پایگاه داده مقایسه میشود.
عملیات مقایسه در یک سیستم تشخیص چهره
بدین ترتیب دو بخش اصلی این الگوریتم 1) مکانیابی چهره و 2) تشخیص هویت چهره خواهد بود.
در ادامهی این بخش، جزئیات بیشتری در مورد الگوریتمهای بخش اول (مکان یابی چهره) ارائه میشود.
مکانیابی چهره در عکس (Face Detection)
همانطور که گفته شد در یک سیستم شناسایی چهره لازم است که مکان یک چهره در تصویر دریافت شده تعیین شود. برای این منظور لازم است که سیستم مکانیابی چهره، صورت افراد را در شرایط نوری مختلف و از زوایای مختلف تشخیص دهد و محل دقیق آن را در تصویر (معمولا به وسیلهی یک مستطیل) مشخص کند. به این عمل مکانیابی چهره در عکس (Face detection) گفته میشود.
در پایگاه دادههایی که معمولا در الگوریتمهای تشخیص چهره استفاده میشود، شاهد عکسهایی مانند شکل زیر هستیم. در چنین عکسهایی لازم است که برای بهبود الگوریتم تشخیص چهره پسزمینهی چهره را به صورت یکدست درآوریم و عکس حالت نرمال پیدا کند.
حالت معمول عکسهایی که در الگوریتمهای تشخیص چهره به کار میرود
اما در کاربردهای واقعی همواره شاهد صحنههای پیچیدهتری هستیم که نیاز است مکان چهره از آن استخراج شود. در این حالت الگوریتمهایی که در هنگام آموزش تصاویری با پسزمینهی ساده را دریافت کردهاند به اشتباه میافتند و ممکن است بخشی از پسزمینه را به عنوان یک چهره تشخیص دهند.
امروزه عمل مکانیابی چهره در تصویر در بسیاری از کاربردهای تجاری به صورت بلادرنگ بر روی تصویر انجام میشود. در ادامهی این بخش الگوریتمهای مکانیابی چهره در دو بخش «بر پایهی تصویر» و «بر پایهی ویژگی» مورد بررسی قرار خواهد گرفت و در هر بخش الگوریتمهای مهم آن دسته بررسی خواهد شد.
روشهای مکانیابی چهره بر پایهی تصاویر
در روشهایی که بر پایهی ویژگیهای چهره بنا شدهاند، در شرایط محیطی خاص و پیشبینی نشده شاهد کاهش شدید دقت الگوریتمها بودیم. در دستهی دیگری از روشها نیز وجود دارند که شناسایی چهره را به عنوان یک مسئلهی تشخیص الگو فرموله میکنند و بدین ترتیب با استفاده از پایگاه دادهای از تصاویر چهره، مدلهایی را برای تشخیص چهره آموزش میدهند. در اینگونه روشها در صورتی که تنوع تصاویر پایگاه داده تا حد کافی باشد، حالتهای پیشبینی نشده کمتر برای مدل اتفاق خواهد افتاد. روشهای متنوعی در این زمینه مورد استفاده قرار گرفته است که از جملهی آنها میتوان به روشهای کاهش بعد، روشهای آماری و همچنین شبکههای عصبی مصنوعی اشاره کرد.
یکی از تاثیرگذارترین الگوریتمهای این زمینه الگوریتم Viola–Jones است که در سال 2001 میلادی توسط Viola و Jones ارائه شد. این روش سه ایدهی کلیدی دارد که آن را به یک مکانیاب چهره موفق بدل کرده است و امکان مکانیابی چهره به صورت بلادرنگ را ممکن ساخته است: 1) تصاویر انتگرالی 2) استفاده از الگوریتم AdaBoost به عنوان طبقهبند (Classifier) و 3) یافتن مکانهای مهم تصویر به کمک دستهبندهای متوالی.
پس از این، مقالات بسیاری با الهام از ایدههای کلیدی این پژوهش اقدام به بهبود الگوریتمهای تشخیص چهره کردند از جمله آنها در یکی از کارهای سال 2014 با الهامگیری از ایدهی کلیدی سوم و دنبالهای 22تایی از طبقهبندها و ترکیب آن با ایدههای جدیدتر، به بهترین دقت در زمان خودش دست یافت. در روشی دیگر از هیستوگرامهای طیفی (Spectral histograms) و ماشین بردار پشتیبانی (SVM: Support vector machine) بهره گرفته شده است.
روش Deep Dense Face Detector (DDFD) نیز نمونهی دیگری از الگوریتم مکانیابی چهره بر پایهی تصویر است که در اخیرا بر پایهی یادگیری عمیق پیادهسازی شده و در عین سادگی نسبت به سایر روشها، بسیار موفق ظاهر شده است. شبکهی عصبی مورد استفاده در این مقاله، بر پایهی معماری معروف AlexNet بنا شده و مانند نسخهی استاندارد آن ورودیهایی با ابعاد 227×227 دریافت میکند. در این مقاله با استفاده از روشهای افزایش داده، در نهایت مرحلهی آموزش با تعداد 200 هزار تصویر از چهره و 20 میلیون تصویر غیر چهره انجام شده است. این روش موفق شد بدون نیاز به اطلاعاتی مانند نشانهگذاری صورت (Facial landmarks) در دقت مکانیابی چهره گامی به سمت جلو بردارد. در شکل زیر یک نمونه از خروجی این الگوریتم ملاحظه میشود.
در ادامه، سایر ویژگیهای کلاسیک که بیشتر در الگوریتمهای دههی 2000 میلادی و سالهای پیش از آن مورد استفاده قرار میگرفته است را بررسی خواهیم کرد.
روشهای مکانیابی چهره بر پایهی ویژگی
الگوریتمهایی که بر پایهی ویژگیهای تصویر تشخیص چهره را انجام میدهند را میتوان بر اساس نوع ویژگیهایی که استفاده میکنند به چند دسته تقسیم کرد: 1) تحلیلهایی در سطح پایین، 2) تحلیل ویژگیها و 3) مدلهای شکل فعال (Active shape models). در تحلیلهای سطح پایین، الگوریتمها عموما عکس را بر پایهی ویژگیهای پیکسلی آن (نظیر روشنایی و رنگ آن) تقسیمبندی میکنند و طبیعت این ویژگیها به گونهای است که مبهم هستند. در تحلیل به کمک ویژگیها، مدل با استفاده از حالت کلی هندسهی صورت، به مفهومی کلی از چهرهی انسان دست پیدا میکند و ابهام آنها به مراتب از ویژگیهای سطح پایین کمتر است. در نهایت دستهی مدلهای شکل فعال است که با مدل مارها (Snakes) که در دههی 1980 آغاز شده و تا مدلهای جدیدتری مانند PDM (Point Distributed Models) نیز ادامه داشته است که برای ردیابی لب و مردمک چشم نیز میتواند به کار رود. در این کار، روشهای مکانیابی چهره در تصویر در دوستهی «بر پایهی تصویر» و «بر پایهی ویژگی» مورد بررسی قرار گرفت اما دستهبندیهای دیگری نیز برای این روشهای در برخی منابع ارائه شده که بر مبنای آن این روشها به شکلهای دیگر تقسیمبندی میشوند. به عنوان مثال در مقالهی مروری ژانگ در سال 2010، روشهای مکانیابی چهره به چهار دستهی زیر تقسیمبندی میشوند:
- بر پایهی دانش: بر اساس قوانین از پیش تعریف شده، بر مبنای دانش انسان، چهره را در تصویر تشخیص میدهد.
- بر پایهی ویژگیهای ثابت: ساختاری از چهره را پیدا میکند که نسبت به تغییرات نور و زاویهی دید مقاوم باشند.
- انتطباق نمونه: با مقایسهی یک تصویر با نمونههای تصویر چهره از پیش ذخیره شده، در مورد چهره بودن یا نبودن تصویر جدید تصمیم میگیرد.
- بر پایهی ظاهر: مدلی برای چهره بر پایهی نمونههای تصویر دیده شده آموزش داده میشود و از این مدل برای مکانیابی در تصاویر جدید استفاده میشود.
بعد از مکان یابی چهره، نوبه به تشخیص هویت بر اساس اطلاعات استخراج شده از چهره میرسد که در ادامه این مقاله، میتوانید مقاله تشخیص چهره آن را مطالعه کنید.