آشکار سازی چهره

اولین قدم در سیستم تشخیص چهره ،آشکار سازی چهره می باشد. به همین دلیل برای آشکار سازی و استخراج منطقه چهره از غیر چهره ابتدا باید ویژگی های چهره و غیر چهره شناسایی و در نهایت تشخیص چهره صورت می گیرد. یک سیستم تشخیص چهره معمولا" شامل سه بخش می باشد:

1.آشکار سازی(face detection)

2.استخراج الگو(feature extraction)

3.تشخیص چهره(face recognition)

هدف از آشکار سازی چهره تشخیص کلیه ی چهره ها می باشد بدون اینکه به موقعیت سه بعدی ، دو بعدی  و... چهره و شرایط نوری توجهی شود.

در این زمینه  شما همه ی تمرکز برنامه و الگوریتم ها و روابطشان  را بر این مبنا می گذارید که بتوانند تصاویر چهره رو تشخیص بدهند . مثلا با یک دوربین وارد اتاقی میشدید که یک جشن تولد داخلش برگزار می شود.  چندین نفر توی اتاق نشستن و از روبرو به دوربین نگاه میکنند.  چند نفر هم از پهلو به دوربین نگاه میکنند.  بعضی از آنها هم پشتشان به دوربین می باشد. چند تا بادکنک هم هست که با ماژیک رویشان  را به صورت آدمک نقاشی کردند.  یک آینه ی گرد کوچک هم ته اتاق است  که دو تا میخ به صورت موازی  روی  قطرش زدند تا به دیوار متصل بشود.  حال اگر بخواهید با این دوربین تعداد افرادی که توی اتاق هستند  را بشمارید چه کاری انجام می دهید؟ طبیعتا"  باید صورت ها را  از غیر صورت تشخیص بدهید.  به طور کلی اولین چیزی که از صورت در نظر ما می آید این است که دو تا چشم و یک محیط گرد، یک بینی و یک خط برای لب .. حال اگر همین ها را بتوانیم در قالب الگوریتم و روابط کدنویسی به اجرا در بیاوریم ، فریم هایی که از دوربین استخراج میشوند می توانند  پردازش شوند و تخصیص داده شوند  که چند تا تصویر صورت از طریق پیاده سازی  این الگوریتم  به دست می آید. اما نکته ی مهم این است که  هر چه شما ویژگی هایتان را دقیق تر تعریف کنید ، نتیجه ای که میگیرید به واقعیت نزدیک تر می شود. مثلا  اگر  شما صرفا گردی صورت را ملاک پردازش تصاویر دریافتی بگیرید؛ آن آینه و بادکنک ، صورت به حساب می آیند اما افرادی که نیمرخ قرار دارن یا سرشان پایین بوده (سطوح بیضی ..) ،صورت به حساب نمی آیند. اگر چشم ها را هم دخیل کنید ، باز هم همین وضع پیش می آید و نتیجه تغییر نمی کند. اگر صرفا لب و گردی صورت رو به عنوان feature قرار بدهید، آینه حذف می شود ولی بادکنک هنوز می ماند و همینطور تا آخر .. این است که باید بدانید برای یک دسته بندی مناسب  از چه  feature هایی استفاده کنید بهتر است یا در کجا مناسب تر است؟؟؟؟ 

مورد بعدی  اصولا موردی است که صرفا محدود به پردازش چهره نمی شود و برای موارد بسیار دیگری هم کاربرد دارد.  اساس این مورد بر این موضوع استوار است که شما از تصویر پارامترهایی را  استخراج کنید که بتوانید بر مبنای آنها استدلال کنید که به این دلیل ، تصویر a  کپی است از تصویر b ...یعنی یک تناظر یک به یک بین دو تصویر برقرار کنید.  فرض کنید دو تا تصویر چهره دارید و می خواهید اینها را با تصویر سومی مقایسه کنید. حال  اگر صرفا از چهره این استنباط را داشته باشید که چهره عبارت است از یک گردی صورت + دو گردی کوچکتر به عنوان چشم+ یک تیغه ی عمودی به عنوان بینی+ یک خط افقی به عنوان لب  هر سه تصویر بر هم منطبق می شوند و نمی توانید تفکیک بین آنها قائل شوید.  مثلا اگه این کار را برای تشخیص هویت بخواهید انجام بدهید در عمل الگوریتمتان شکست میخورد ، اما اگر تصاویرتان را با ملاک های دیگری تحلیل کنید ؛ مثل اینکه فاصله ی دو تا چشم از هم چقدر است و یا ارتفاع چشم ها یا فاصله ی بینی از لب و یا موارد دیگری که میتوانید انتخاب کنید، در آن صورت دیگر عمل  تطابقتان  به صورت دقیق تری انجام می شود و میتوانید از آن  برای موارد دیگر هم استفاده کنید. هرچقدر این انتخاب ها خلاقانه تر و منحصر به فرد تر باشد، نتیجه ی تطابقتان دقیق تر و صحیح تر خواهد بود به طوریکه در صورت بهینه شدن میتوانید این رفتار را برای هر تصویر چهره ای به اجرا در بیاورید.
برای مورد اولی شما باید روی Classifier ها و متد های آنها و الگوریتم هایی که در این زمینه کاربرد دارند زمان بگذارید و دنبال این موضوع باشید که کدام Classifier می تواند بهترین نتیجه را به همراه داشته باشد و در انتخاب آنها باید به این نکته هم توجه کنید که همیشه  Accuracy با speed در رقابت هستند و به نوعی باید این trade off را برچسب  application خودتان برقرار کنید.
برای مورد دومی  شما باید روی الگوریتم ها و متد های Matching زمان بگذارید و بروید دنبال این موضوع که هر کدام از اینها به چه نحوی کار می کنند و از چه طریقی می توانند با  توجه به feature های انتخابی شما به روند کنترل تطابق سمپل ها کمک کنند.  روش های متنوعی برای هر دو مورد وجود دارد هر کدام هم یک شیوه ی خاص برای خودشان دارند و نتایجشان هم بسیار متفاوت است. (هر کدوم برای یه  application  کاربرد دارند که آن  را شما باید پیدا کنید ..) 

منابع:

M. Yang, D. J. Kriegman and N. Ahuja, ‘Detecting Faces in Images: A Survey’, IEEE Trans. On Pattern Analysis and Machine Intelligence, 24 (1):34-58, 2002.

] C.J.C. Burges, ‘A Tutorial on Support Vector Machines for Pattern Recognition’, Data Mining and Knowledge Discovery, 2:121-158, 1998.

 H.-J. Lin, S.-Y. Wang, S.-H. Yen, and Y.-T. Kao, "Face Detection Based on Skin Color Segmentation and Neural Network," presented at Neural Networks and Brain, 2005. ICNN&B '05. International Conference on, 2005.

http://www.eca.ir/forums/thread7997-3.html

کلیه ی حالات چهره شناخته شده

حالات صورت حرفهای زیادی برای گفتن دارند. با تغییرات کوچکی در ماهیچه های صورت می توان مفاهیم زیادی را متوجه شد که برای انتقال آنها به طور زبانی نیازمند استفاده از چندین واژه می باشد، اما جمله ای طولانی را می شود تنها با بالا انداختن ابروها و بستن چشم ها بیان کرد. در مجموع حالات چهره در حالی که تصور می شد انسان قادر به بروز تنها شش حالت چهره در خود می باشد با پیشرفت در تکنولوژی ، با استفاده از نرم افزارهای جدید و توسط دانش پژوهان توانستند ۲۱ حالت چهره را شناسایی کردند.

در این زمینه دکتر الکس مارتینز پژوهشگر دانشگاه ایالتی اوهایو و مجری این تحقیقات بیان می کند که: ما تاثیر عواطف بر حالت‌ های صورت را از عواطف ساده مثل خوشحالی یا اندوه فراتر برده ایم و شواهد محکمی بدست آوردیم که نشان دهنده ی این است که  انسان‌ ها در حالت‌ های عاطفی مختلف چگونه ماهیچه های صورت خود را حرکت می‌ دهند. به این ترتیب ما ۲۱ حالت چهره را شناسایی کردیم.
 همچنین او افزود که: نتیجه بسیار شگفت انگیز بود. ما متوجه شدیم تقریبا همه این ۲۱ حرکت، یک حالت چهره را یکسان از خود نشان می‌ دهند یا دستکم در فرهنگ ما چنین است.

پیش از این توصیف حالت‌های چهره به شش حالت خوشحال، غمگین، ترس، عصبانی و متعجب محدود بود. مثل این بود که برای نقاشی فقط شش رنگ داشته باشیم. اما حالا جعبه مداد رنگی ما ۲۱ رنگ دارد.

از سمت چپ: عصبانی و مشمئز، عصبانی و متعجب، عصبانی، یکه خورده و مشمئز، مشمئز 
 

محققان برای شناسایی حالت‌ های چهره، جمله‌ هایی را طراحی کردند که حالت‌ های عاطفی را ایجاد کنند. سپس از ۱۰۰ مرد و ۱۳۰ زن داوطلب خواستند تا حالت‌ های چهره شان را بر اساس چیزی که به آنها گفته می‌شود تغییر دهند تا از آنها عکس بگیرند.

مثلا وقتی به این افراد گفته شد "همین الان خبر غیر منتظره ای شنیدی "نتیجه چهره "خوشحال و متعجب" بود و وقتی گفته شد بوی "بدی استشمام می‌کنی" نتیجه چهره "مشمئز" بود.
   
دانشمندان پنج هزار عکسی را که به این ترتیب گرفته بودند برای یافتن شباهت‌ ها و تفاوت‌ ها بررسی کردند. برای این کار عکس‌ ها را با بانک اطلاعات موسوم به "سیستم شناسایی حرکات صورت" (Facs) مقایسه کردند.

 از سمت چپ: مشمئز و متعجب، ترسیده، ترسیده و عصبانی، ترسیده و مشمئز، ترسیده و متعجب 

این سیستم بیشتر برای تجزیه و تحلیل زبان  بدن استفاده می‌شود. نتیجه این کار، شناسایی بیست و یک حالت چهره بود که همه ی آنها ترکیبی از شش حالت پایه هستند. سپس دانشمندان با استفاده از نشانه های ماهیچه های  چهره مثل گوشه دهان و لبه بیرونی ابرو توانستند هر حالت را با حرکت ماهیچه ها ربط دهند. 

دکتر مارتینز می‌ گوید: فرض ما در علوم شناختی این است که مغز مثل کامپیوتر کار می‌کند. ما می‌ خواهیم الگوریتمی را شناسایی کنیم که مغز ما بر اساس آن کار می کند، الگوریتمی که به مغز امکان می‌ دهد با دیدن حالت‌ های چهره، عواطف مختلف را تشخیص دهد." 


 

ازسمت  چپ: مشمئز و خوشحال، خوشحال و متعجب، خوشحال، متنفر، غمگین


وی افزود: تا کنون برای رمزگشایی از این الگوریتم از شش حالت اصلی چهره استفاده می‌کردیم و مشکلات بزرگی داشتیم. امیدوارم با شناسایی حالت‌ های جدید، راه بهتری برای رمز گشایی و تحلیل الگوریتم‌ های مغز پیدا کنیم." 

دانشمندان سعی می‌ کنند با مدلسازی رایانه ای از حالت های چهره برای تشخیص بیماری هایی مثل اوتیسم و اختلال تنش‌زای پس از رویداد (PTSD) استفاده کنند.

 برای مثال خشم و ترس در مبتلایان به PTSD زیاد است، اما آیا تمام حالت‌ های مربوط به خشم یا ترس به یک اندازه در چهره آنها ظاهر می‌ شود یا آنکه بیشتر مثلا چهره "عصبانی ترسیده" دارند؟ 


 

از سمت چپ: غمگین عصبانی، غمگین مشمئز، غمگین ترسیده، غمگین متعجب، متعجب 


 علاوه بر این، متخصصان تصمیم دارند که ارتباط واکنش های چهره را با عوامل ژنتیکی و مسیرهای شیمیایی مغز شناسایی کنند و بدانند این راه های عصبی کدامند و ترشح چه مواد شیمیایی در مغز این حالت ‌ها را در چهره ایجاد می‌ کند؟ 
به گفته دکتر مارتینز حالا "می‌توان فرضیه های بیشتری را مطرح کرد و به آزمایش گذاشت."
به این ترتیب می‌ توان شناخت بیشتری از بیماری‌ های روانی بدست آورد و برای آنها روش‌ های درمانی و دارویی پیدا کرد. 

منابع:

http://www.asriran.com/fa/news/329426/21

http://www.aftabir.com/articles/view/science_education/technology/c3c1264313379_states_face_p1.php


 

شناسایی چهره چیست؟

شناسایی چهره (face recognition) :

از دیر باز انسان برای بقا، نیاز به تشخیص دوست از دشمن داشته است و تشخیص هویت برای وی امری حیاتی بوده و هست، لذا امروزه سعی در مکانیزه سازی سیستم های شناسایی یا تشخیص هویت شده است. این پیشرفت ها دلیل بر نیاز جامعه و جهان بوده است . نیازی که پیشرفت در آن باعث کاهش تخلفات، افزایش امنیت، تسریع در امور روزمره و ... شده است. در گذشته جهت شناسایی جرم و جنایتکار، از روال شناسایی اثر انگشت و چهره‌نگاری استفاده میشده، اما اکنون سیستم های مکانیزه‌ای ایجاد شده است.

انسان ها به طور معمول بیش از هر روش بیومتریکی از تشخیص چهره برای شناخت و شناسایی همدیگر استفاده می کنند. یکی از روش های مورد بررسی برای تعیین هویت انسان، شناسایی چهره میباشد.

در چهره نگاری آن دسته از ویژگی هایی که با گذشت زمان به طور قابل ملاحضه ای تغییر نمی کنند، اندازه گیری می شوند. اطراف دهان و استخوان های گونه، شکل بینی و محل قرارگیری ابروها، چشم ها، بینی، دهان، طول چانه و پیشانی و همچنین فاصله ی چشم ها و ابروها، از جمله ویژگی های اندازه گیری شده در این سیستم ها هستند.

شناسایی چهره امروزه توسط سیستم های کامپیوتری انجام می شود که معمولا" با عنوان بازشناخت چهره یا شناسایی چهره بیان می گردد. در شناسایی تصویر یک چهره تصویر ورودی با توجه به اطلاعات موجود در بانک اطلاعات، مورد شناسایی قرار می گیرد. این بانک شامل مشخصاتی از تصویر چهره افراد شناسایی شده می باشد. شناسایی چهره استفاده های فراوانی در شناسایی بزهکاران، کارت های اعتباری، سیستم های امنیتی و موارد متعدد دیگر داشته و بدلیل کاربردهای فراوان، در سال های اخیر، مورد توجه قرار گرفته است. این شناسایی چهره در تصویر در دو مرحله انجام می شود:

موقعیت و حدود چهره یا چهره ها، در تصویری که دارای اشیاء و زمینه های مختلف است، مشخص می شود.

از چهره مشخص شده در تصویر، ویژگی های لازم استخراج شده و شناسایی انجام می شود. که از جمله آن مشخص کردن اجزاء چشم و تعیین حالت و موقعیت آنها می باشد.

کارهای انجام شده برای استخراج خصوصیات از تصویر بر روی دو نوع تصویر ( تصاویر تمام رخ و نیمرخ ) بوده است و بدلیل اینکه تصاویر نیم رخ حاوی اطلاعات کمتری از تصاویر تمام رخ است، بررسی های انجام شده، بیشتر بر تصاویر تمام رخ متمرکز شده است. در دهه های اخیر روش های متعددی برای شناسایی چهره پیشنهاد شده است که برخی روش ها از بقیه کامل تر هستند.

پارامترهای مهم در تعیین نرخ شناسایی

نرخ شناسایی در تمامی روش های موجود، به چند عامل مهم وابسته است:

1_ اندازه  تصاویر چهره

هر چند تصاویر بزرگتر باشند، حاوی اطلاعات بیشتری از چهره بوده و این فراوانی اطلاعات در برابر استخراجی نیز صدق می کند، لذا طبقه بندی و جدا پذیری کلاس ها بهتر انجام گرفته و نرخ شناسایی افزایش میابد. البته اگر تصاویر بزرگ و تعداد آنها زیاد باشد، حجم و حافظه ی زیادی برای پردازش و نگهداری تصاویر، لازم خواهد بود.

2_ تغییرات تصاویر آموزش هر شخص

اگر تغییرات تصاویر آموزشی در هر کلاس کم باشد، تغییرات بردار استخراجی و تداخل بین کلاس ها کمتر بوده و نرخ شناسایی افزایش می یابد. اما باید توجه داشت که در این صورت، حالت های محدودی از چهره ( شبیه تصاویر آموزشی ) قابل شناسایی خواهد بود.

3_ تعداد اشخاص ( کلاس ها ) در بانک تصاویر

با افزایش تعداد کلاس ها، تداخل بین کلاس ها بیشتر شده و از جدا پذیری آنها کاسته می شود و نرخ شناسایی نسبت به تعداد کمتر کلاس ها، پایین می آید.

4_ به کار بردن سطح آستانه

شناسایی هویت از طریق دندان، لب، تپش های قلب و ...

یکی از چالش‌های اصلی سیستم‌های تشخیص چهره فعلی این است که بسیاری از تصاویر از چهره افراد از روبرو نیست. اختراع فیس‌ بوک با استفاده از یادگیری عمیق، در زمینه شناسایی چهره از نیم رخ پیشرفت‌های بسیار زیادی داشته‌ است. در یادگیری عمیق، سیستم‌های هوشمند با الهام گرفتن از ساختار نورون‌های مغز حجم زیادی از داده را استخراج می‌کنند. سیستم Deep Face شرکت  فیس بوک برای شناسایی چهره از 120 میلیون پارامتر مختلف استفاده می کند.

در حال حاضر شرکت اینتل یک سیستم تشخیص چهره ساخته است که از روی چهره، سن و جنسیت افراد را تشخیص می دهد و تبلیغات مورد نظر را برای آنها به نمایش می دهد.حامیان حقوق شهروندی، پیشرفت سیستم های تشخیص چهره را یکی از بزرگترین خطرات برای حریم خصوصی می دانند. کمسیون تجارت فدرال در سال 2012، قوانینی برای استفاده از سیستم های تشخیص چهره توسط شرکت ها تدوین کرد که بر اساس آن کابران باید علاوه بر اطلاع داشتن از اینکه چهره آن ها توسط سیستم های تشخیص چهره شناسایی می شود، نحوه ی کار کردن آن را نیز بتوانند تغییر دهند.

به طور کلی face recognition تشخیص چهره است یعنی تمام دیتابیس ما همه چهره هستند و الگوریتم باید مثلا" تشخیص جنسیت بدهد یا در یک تصویر چند چهره داریم  که در اینجا الگوریتم ،چهره سیاه پوست را از سفید پوست مجزا میکند و تشخیص میدهد.

برای  اطلاعات بیشتر به آدرس زیر مراجعه کنید:

http://www.asemooni.com/health/psychology/character-of-the-people-on-the-face

http://sibashahr.com/2238-2/