دسته‌بندی کنش در ویدئو

تغییرات پروژه از ابتدا تا تاریخ 1393/08/17
در دسته‌بندی کنش[^Action] در ویدئو هدف تشخیص وجود یا عدم وجود یک کنش خاص در ویدئو است. کاربردهای بسیار زیادی برای این مسئله می‌توان در نظر گرفت. موارد ساده‌ای از این کنش‌ها را می‌توانید در تصویر زیر مشاهده کنید:

![simple actions](http://www.nada.kth.se/cvap/actions/actions.gif)

# مقدمه
مبحث تشخیص و بازشناسی کنش[^Activity Recognition] یکی از پرکاربردترین مباحث در زمینه هوش مصنوعی است. از جمله کاربردهای آن می توان به مبحث بازشناسی رفتار [^Behavior Recognition]اشاره نمود.
هدف در بازشناسی کنش این است که با مشاهده ی یک سری اعمال عامل و شرایط محیط تشخیص دهیم که عامل چه کاری را انجام می دهد، مثلا در حال دویدن ، راه رفتن و یا آشپزی است. این مبحث به دلیل کمکی که می تواند در زمینه های روانشناسی و جامعه شناسی، پزشکی و ارتباط بین انسان و رایانه کند از دهه 1980 توجه بسیاری را به خود جلب کرده است.
برای درک بهتر از کاربرد بازشناسی کنش به مثال زیر توجه کنید:
مرد مسنی را در نظر بگیرید که به تنهایی زندگی می کند . او صبح از خواب بیدار شده ، اجاق خود را برای درست کردن چای روشن کرده، تستر را نیز روشن کرده و مقداری نان هم از  قفسه بر میدارد. پس از اینکه داروی صبحگاهی خود را مصرف کرد یک سیستم هوشمند به او یادآور می شود که اجاق را خاموش کند. شب همان روز دختر او از طریق یک سایت امن (که هر کسی نتواند به آن دسترسی داشته باشد) یک لیست چک را  که توسط یک شبکه هوشمند در آپارتمان پدرش ایجاد شده است یررسی می کند تا متوجه شود که پدرش غذایش را به خوبی می خورد، داروهایش را به موقع مصرف می کند و مشکلی ندارد. 
**	انواع بازشناسی کنش** :
1.	بر مبنای سنسور،تک کاربره
مثالی برای این مورد می تواند گوشی های هوشمند و سنسورهای موجود در آن ها باشند که می توانند مثلا تعداد گام های روزانه او را اندازه گیری کرده و بازشناسی کنش فیزیکی [^physical activity recognition] انجام داده تا به تخمین انرژی مصرفی روزانه او بپردازد.
2.	بر مبنای سنسور، چند کاربره
در این بخش از مجموعه از سنسور ها برای بازشناسی کنش چند نفر استفاده می شود.
3. بر مبنای سنسور بازشناسی کنش گروهی
بازشناسی کنش در این مورد با دو مورد قبل تفاوت دارد، از این منظر که به کنش از دید گروه به عنوان کل افراد نگاه می کند که به مراتب از موارد قبلی سخت تر است، چرا که علاوه بر پیچیدگی دو مورد قبلی باید به عواملی مانند ارتباط و کنش بین افراد در همکاری با هم نیز توجه شود.
4. 	بر مبنای تصویر
در این مورد بررسی کنش و رفتار عامل با استفاده از ویدئو هایی که توسط دوربینهای مختلف ضبط می شوند انجام می شود. در این زمینه تحقیقات گسترده ای با استفاده از متودهایی همچون جریان نوری[^optical flow]،فیلترینگ کالمن[^Kalman filtering]،مدل مخفی مارکف[^ Hidden Markov] انجام شده است. تحقیقات اخیر از دوربین های RGBD مانند Kinect مایکروسافت برای ردیابی کنش های انسان استفاده کرده اند. 
دوربین های دو بعدی در شناسایی عمق عاجز بودند حال آنکه این مهم با استفاده از دوربین های عمق [^Depth Camera]انجام شده است. اطلاعات سنسوری دریافتی از این دوربین ها برای بازسازی زمان واقع[^Real Time] از اسکلت بدن انسان در حالات مختلف استفاده می شود. این داده های اسکلت اطلاعات مهمی را در اختیار محققان قرار می دهد و به آن ها در بازشناسی کنش های نا آشنا در آینده کمک می کند.
این پروژه نیز شامل دریافت اطلاعات از ویدئو و بازشناسی کنش از طریق آن است.
  در پردازش ویدئو علاوه بر مشکلات قدیمی پردازش تصویر ،مشکلات دیگری نیز وجود دارد که در ذیل به اختصار چند مورد از آن ها بیان شده است :
	  1. مقیاس متفاوت [^ Different Scaling] : افراد مختلف امکان دارد در ویدئو های مختلف دارای مقیاس های متفاوتی باشند حال آنکه کار یکسانی را انجام می دهند.
	  2. حرکت دوربین : امکان دارد دوربین فیلم برداری دوربین دستی همراه با لرزش باشد و یا دوربینی که بر روی پایه ی متحرک نصب شده است.
	  3. حرکت با دوربین : این امکان نیز وجود دارد که عامل مورد مطالعه در حال انجام عملی مانند اسکیت کردن باشد و در نتیجه همراه با دوربین و با سرعت یکسان با دوربین حرکت کند.
	  4. گرفتگی[^ Occulusion] در این حالت ممکن است عمل انجام شده به خوبی قابل تشخیص نباشد . به شکل زیر توجه کنید :
	  ![توضیح تصویر](http://upload7.ir/imgs/2014-10/85600732779800794069.png)
	  5. در هم ریختگی پس زمینه [^Background Clutter ]: حاصل از بقیه اشیاء و یا انسان های موجود در ویدئو
	  6. انسان ها در اندازه ها و شکل های مختلفی هستند [^Human Variation]
	  7. انسان ها ممکن است عمل یکسانی را به اشکال مختلفی انجام دهند . [^Action Variation]
**روش های بازشناسی کنش :**
چهار مورد از روش های بازشناسی در ذیل آمده است.  روش استدلال احتمالی که در این پروژه استفاده می شود توضیح بیشتری داده شده است :
1.	از طریق منطق و استدلال[^logic and reasoning]
2.	باز شناسی کنش مبتنی بر wif
3.	بازشناسی کنش مبتنی بر داده کاوی
4.	از طریق استدلال احتمالاتی[^probabilistic reasoning]
مدل گرافیکی یک مدل احتمالاتی است که وابستگی های شرطی بین متغیر های تصادفی در آن توسط گراف نمایش داده می شوند. مدل های گرافیکی یک چهارچوب منعطف برای مدلسازی مسائلی با تعداد زیاد متغیر و ارتباطات پیچیده بین آن ها فراهم می سازد. از جمله این مدل ها می توان به مدل مخفی مارکف و بیزین اشاره کرد.آقایان چارنیاک و گلدمن در سال  نیز1993 در مقاله ای بیان کردند مدلی که شامل تئوری عدم قطعیت نباشد نمی تواند کامل باشد.
نمونه های ساده ای از مدل های گرافیکی را همانند آنچه در شکل زیر آمده است ، تا به حال زیاد دیده ایم :
![توضیح تصویر](http://mypage.uniserve.com/~zhzhou/MyPapers/BeliefNet/WetGrass.gif)
نمونه هایی از مدل های گرافیکی مسائل واقعی را در شکل زیر مشاهده می کنید :
![  ](http://img.my.csdn.net/uploads/201302/24/1361672124_1304.jpg)
شکل سمت چپ مربوط به مدل گرافیکی بیزین CPCS ،طراحی شده در دانشگاه استنفورد در تشخیص پزشکی بیماری داخلی با 480 گره و بیش از 900 یال است. شکل سمت راست نیز  مثالی واقعی از مدل مارکف استفاده شده در بخش بندی تصویر [^Image Segmentation] است.
امروزه مدل های گرافیکی احتمالاتی از مهم ترین ابزار های مدلسازی و حل مسائل هوش مصنوعی هستند.
[برای اطلاعات بیشتر می توانید به درس PGM(Probabilistic Graphical Models) دانشگاه استنفورد مراجعه کنید]
در این پروژه نیز با کمک مدل های گرافیکی احتمالاتی به مدلسازی و بازشناسی کنش انجام شده توسط عامل هوشمند پرداخته می شود.

# کارهای مرتبط
در این پروژه به کمک مدل های گرافیکی احتمالاتی باید ابتدا مساله مدل شده، کار آموزش پارامتر ها [^Parameter Learning] انجام شده و در نهایت استنتاج [^Inference]انجام شود. در مدل پیشنهادی باید  پارامتر های مورد نظر از میان زنجیره فریم ها استخراج می شوندتا در نهایت عمل انجام شده از آن ها استنتاج شوند.


# آزمایش‌ها

# کارهای آینده

# مراجع
[1] Laptev, Ivan. "On space-time interest points." International Journal of Computer Vision 64.2-3 (2005): 107-123. [لینک](ftp://ftp.nada.kth.se/CVAP/users/laptev/iccv03.pdf)
[2] Laptev, Ivan, et al. "Learning realistic human actions from movies." Computer Vision and Pattern Recognition, 2008. CVPR 2008. IEEE Conference on. IEEE, 2008. [لینک](http://www.irisa.fr/vista/Papers/2008_cvpr_laptev.pdf)
[3] Marszalek, Marcin, Ivan Laptev, and Cordelia Schmid. "Actions in context." Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on. IEEE, 2009. [لینک](http://www.irisa.fr/vista/Papers/2009_cvpr_marszalek.pdf)
[4]  Ghazvininejad Marjan,  Rabiee Hamid R.,  Pourdamghani Nima,  Khanipour Parisa. "HMM Based Semi-Supervised Learning for Activity Recognition.
[5] Schuldt Christian, Laptev Ivan, Caputo Barbara ,  "Recognizing Human Actions: A Local SVM Approach"
[6]  Aggarwal, J.K. Ryoo, M.S.,  "Human activity analysis", 2011,ACM Computing Surveys,2011
[7]  Jhuang Hueihan, Zuffi Silvia ,Schmid Cordelia, Black, Michael J,  "Towards understanding action recognition", 2013, ICCV, 2013
[8]  Liu Jingen, Kuipers Benjamin, Savarese Silvio,  "Recognizing Human Actions by Attributes"
[9]  Maji Subhransu, Bourdev Lubomir, Malik Jitendra,  "Action Recognition from a Distributed Representation of Pose and Appearance"
[10]  Planck Max, Dhillon Paramveer S, Nowozin Sebastian, Lampert  Christoph H,  "Combining Appearance and Motion for Human Action Classification in Videos", 2008
[11]  Weinland Daniel,Ronfard Remi,Boyer Edmond,  "A Survey of Vision-Based Methods for Action Representation , Segmentation and Recognition", 2010





# پیوندهای مفید
+ [Dataset: KTH](http://www.nada.kth.se/cvap/actions/)
+ [Dataset: Hollywood1 - 2](http://www.di.ens.fr/~laptev/download.html)