تشخیص حالت

۱. مقدمه

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

۲. کار های مرتبط

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

تصویر مراحل

در شکل زیر 21 نقطه به عنوان نقاط مشخصه در نظر گرفته شده اند .

تصویر نقاط مشخصه

در مرحله پیش پردازش تصویر های چهره نرمال سازی می شوند و اگر نیاز بود ‪ ،‬برای افزایش کارائی تشخیص سیستم‬ بهبود می یابند‪ .‬برخی یا تمام مراحل پیش – پردازش زیر ممکن است در یک سیستم‬ ‫تشخیص چهره پیاده سازی شوند ‪:‬‬
‫‪ .1‬نرمال سازی اندازه ی تصویر‪ .‬این کار معمولا انجام می شود تا اندازه ی تصویر گرفته شده به یک اندازه تصویر پیش فرض مانند ‪ 128*128‬تغییر کند‬ ،‬این اندازه ی تصویر همان اندازه ی تصویری است که سیستم تشخیص چهره‬ ‫با آن کار می کند‪.‬‬
برای حذف اثر فاصلۀ دوربین نسبت به‬‫شخص ‪ ،‬کمیتی بنام ‪ BASE‬که در واقع فاصلۀ بین انتهای‬‫ داخلی چشم ها می باشد‪ ،‬در نظر گرفته شده و تمام مقادیر‬
‫اندازه گیری شده نسبت به این کمیت نرمالیزه می شوند‪.
‬‬

BASE=\sqrt{(x_5-x_{10})^2+(y_5-y_{10})^2}

برای اینکه مختصات‪ AU‬ها در تصـاویر مختلـف نسـبت بـه‬ ‫یک مرجع ثابتی اندازه گیری شوند ، نقطه مرجع تقریبا نوک بینی میتواند فرض شود به عنوان مبدا مقایسه ی مختصات AU ها در تصاویر مختلف در نظر گرفته میشود .
مختصات مبدا برابر خواهد بود با :

x_0 = \frac{x_5+x_{10}}{2}
y_0 = \frac{y_5+y_{10}}{2}
x_{org} = x_0 – BASE \times \sin \theta
y_{org} = y_0 – BASE \times \cos \theta

‫‪ .2‬یکسان سازی هیستوگرام‪ .‬این معمولا بر روی تصاویر خیلی تاریک یا‬ خیلی روشن برای بهبود کیفیت تصویر و بهبود کارآئی تشخیص چهره انجام‬ ‫می شود که گستره ی ‪ contrast‬تصویر را اصلاح می کند که به عنوان نتیجه ،‬برخی ویژگیهای مهم چهره آشکارتر می شوند‪.‬‬
‫‫‪ .3‬فیلترینگ میانه‪ .‬برای تصاویر دارای نویز ‪ ،‬به خصوص تصاویری که از‬ طریق دوربین عکاسی و یا ‪ frame grabber‬گرفته شده است ‪ ،‬فیلترینگ‬
‫میانه می تواند تصویر را بدون از دست رفتن اطلاعات تمیز کند‪.‬‬ .4‬فیلترینگ بالا گذر‪ .‬استخراج کننده های ویژگی ای که مبتنی بر روی‬ کلیات چهره هستند‪ ،‬ممکن است از تصویری که لبه یابی روی آن صورت‬ گرفته است نتیجه ی بهتری بدهند‪ .‬فیلترینگ بالا گذر بر روی جزئیاتی مانند‬ لبه ها تاکید دارند که در نتیجه کارآئی تشخیص لبه را افزایش می دهد‪
.‬‬
‫‪θ‬‬ نیز زاویه‫‪ BASE‬‬ نسبت به افق است که جهت حذف دوران صورت در نظر گرفته میشود .

\theta = \arctan{\frac{y_5-y_{10}}{x_5-x_{10}}}

بدین ترتیب مختصات جدید هر یک از AU‬ها نسبت به مبدا بدست آمده به صورت زیر محاسبه میگردد:

x_a = x_b – x_{org}

y_a = y_b - y_{org}

‫ پس از انجام پیش – پردازش ( اگر لازم بود )‬تصویر‬ چهره ی نرمال شده به منظور پیدا کردن ویژگیهای کلیدی ای که قرار است برای دسته‬ بندی از آنها استفاده شود ‪ ،‬به ماژول استخراج ویژگی فرستاده می شود‪ .‬به عبارت‬ در مرحله feature extraction میبایست ویژگی های تصویر را با استفاده از کتابخانه های موجود استخراج نمود . اینکار درواقع خطا های ابعادی تصویر ورودی را کاهش میدهد و ویژگی هایی قابل پردازش از تصویر ارائه میکند .

‫ماژول دسته بندی‪ .‬در این ماژول ‪ ،‬با کمک یک دسته بند الگو ‪ ،‬ویژگیهای‬ استخراج شده از تصویر چهره با آنهایی که در کتابخانه ی چهره ( یا پایگاه داده ی‬
‫چهره ) ذخیره شده اند مقایسه می شود‪ .‬پس از انجام این مقایسه ‪ ،‬تصویر چهره به عنوان «شناخته شده » و « نا شناس » دسته بندی می شود‪.‬‬

۳. مراجع

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

  • M. Rosenblum , Y. Yacoob and L. Davis ,"Human Expression Recognition from Motion using a Radial Basis Function Network Architecture," IEEE Trans. on Neural Networks ,vol.7,No.5,september 1996.

  • Claude C. Chibelushi, Fabrice Bourel Facial Expression Recognition :A Brief Tutorial Overview

  • Facial Expression Recognition : Neeta Sarode et. al. / (IJCSE) International Journal on Computer Science and Engineering Vol. 02, No. 05, 2010, 1552-1557

۴. پیوند های مفید

تایید شده

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

محمد غضنفری

پروژه شما در حد معرفی کارهای مرتبط باقی مانده است و پیاده سازی ندارد.
در واقع تا حد زیادی کارهای مربوط به این فاز را کامل نکرده اید.

تایید شده

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