پردازش معنایی در لب خوانی بازیهای رایانه ای

تغییرات پروژه از تاریخ 1392/12/24 تا تاریخ 1393/02/06
#مقدمه
امروزه ** لب خوانی**  (lip syncing ) و ** تشخیص گفتار**  (speech recognition) از روی ویدئویی که حرکات لب را ثبت کرده است کاربردهای بسیاری دارد که عموما در راستای حذف فرمان های دستی برای کنترل دستگاه الکترونیکی، به کار میرود . 
   البته این سیستم در بخش های نظامی ، امنیتی ، توانبخشی به معلولین و... نیز کاربرد دارد.

این فرآیند پیچیده  در مرحله اول به تشخیص  محل لب  و کانتور آن در فریم های ویدئو و تشکیل گراف (معمولا 12 یا 6 نقطه )  نیاز داشته  و سپس به  تحلیل سیر تغییر  نقاط در  دنباله ی گراف ها و در نهایت حدس لغت ادا شده  می پردازد .

![sequences](http://euit.comule.com/up/04616e4d592b.png)

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



##کارهای مرتبط
برای تحلیل گفتار از روی حرکات لب از الگوریتم HMM  یا   (hidden markov models)   استفاده میشود.  سیگنال تصویری مربوط به گفتارهرلغت به صورت سری زمانی بردارهای ویژگی نمایش داده می شود.بنابراین برای هرلغت یک سری آموزشی وجود دارد که شامل تعدادی تکرار ازآن لغت توسط یک یاچند گوینده می باشد.
اولین قدم،ساخت مدل های لغت مجزااست؛ تاپارامتهای مدل هرلغت به صورت بهینه ای تخمین زده شوند.نهایتأ،هنگامی که مجموعه W مدل HMM طراحی شد،بازشناسی لغت مجهول صورت می گیردتاباداشتن سری مشاهدات مورد تست، نمره ای به مدل هرلغت داده شود ولغتی که نمره آن ازبقیه بالاتراست انتخاب شود.

مدل پنهان مارکوف برای هر لغت شامل 3 مؤلفه میباشدکه احتمال بردارهای ویژگی مجموعه آموزشی مربوط به لغت V را بیشینه می نمایند:
>ماتریس انتقال حالت:یک مجموعه از احتمالات در بین حالت‌ها $$\ A={a_{ij}} $$      $$\ a_{ij}=p(q_{t+1}=j|q_{t}=i),\qquad i\ge 1,N\ge j $$
که در آن$ \ q_{t} $بیانگر حالت فعلی می‌باشد .

توزیع احتمال مشاهدات: یک توزیع احتمال برای هر یک از حالتها
                             $$\ B={b_{j}(k)} $$  $$\ b_{j}(k)=p{o_{t}=v_{k}|q_{t}=j},\qquad 1\le j\le N,\qquad 1\le k\le M $$
که در آن $ \ v_{k}  $بیانگر$th"k"$ سمبل مشاهده شده در الفبا است و $\ o_{t}  $ بیانگر بردار پارامترهای ورودی فعلی می‌باشد. 

توزیع احتمال حالت آغازین:
                                     $$\ \pi=(\pi_{i})  $$  $$\ \pi_{i}=p(q_{1}=i),\qquad 1\le i\le N $$
به این ترتیب  یک سه تایی مرتب برای HMM،  با توزیع احتمال گسسته  خواهیم داشت :
$$\ \lambda=(A,B,\pi)  $$
وظیفه یادگیری در HMM، یافتن بهترین احتمالات جابجایی‌ها  بر اساس یک دنباله از خروجی هاست .میزان بهینگی مدل پنهان مارکوف در مرحله یادگیری ، در مسائل مختلف ،متفاوت می باشد . در اینجا معیار بهینگی به وسیله متد maximum likelihood  بر اساس خروجی داده شده تخمین زده می‌شوند .
برای تشخیص گفتار با استفاده از این مدل (HMM) الگوریتم های متفاوت پیشرو(forward) ، پسرو (backward) ، الگوریتم ویتربی (Viterbi Algorithm)  ، الگوریتم   Baum-Welch یا  (الگوریتم پیشرو-پسرو) وهمچنین الگوریتم حداکثر سازی امید ریاضی (Expectation Maximization) که نوع خاصی از بام- ولش  میباشد   و روش مبتنی بر گرادیان  وجود دارد.
ما در اینجا  برای پیدا کردن maximum likelihood محلی، از  الگوریتم   Baum-Welch (الگوریتم پیشرو-پسرو) استفاده میکنیم
 
1-ابتدا برای هر لغت که قرار است در دایره لغات ما برای تشخیص جای داشته باشد با الگوریتم Baum-Welch یک مدل HMM   ساخته میشود.یعنی سه تایی مرتب$\ \lambda=(A,B,\pi) $برای هر لغت محاسبه میشود

>>در این مرحله که مرحله آموزش الگوریتم است فرض می‌کنیم که فاز پیش پردازش سیستم دنباله مشاهدات زیر را تولید نماید:
$$\ O=(o_{1},o_{2},.... ,o_{N})$$
پارامترهای اولیه تمام مدلهای HMM را با یک مجموعه از مقادیر مشخص مقدار دهی می‌نماییم. $$\ \lambda_{i},  1\le i\le N $$
از آنجایی که ما برای هر کلاس از واحدها(لغات مجموعه  ) یک HMM داریم، می‌توانیم مدل$\ \lambda_{i}$از کلاس l را که دنباله مشاهدات فعلی به آن مربوط می‌شود، را انتخاب نماییم. $$\ L_{tot}^{clamped}=\sum_{i \in \lambda_{i}} \alpha_{t} (i)B_{t} (i) =\sum_{i \in \lambda_{i}} \alpha_{T}(i)$$
که در آن$ \ L_{m}^{I}$بیانگر میزان شباهت دنباله مشاهدات فعلی به کلاس l در مدل$\ \lambda_{m}$است.

2 – در مرحله بعد برای بازشناسی هرلغت ناشناخته بردارویژگیهای گفتارمربوط به آن لغت به دست می آید.سپس احتمالات برای همه مدلهای موجود محاسبه می شود ونهایتأ ،لغتی که امکان مدل آن بیشترین است انتخاب می گردد.
 >>این قسمت در مقایسه با یادگیری بسیار آسان تر است.
الگوریتم ،دنباله مشاهدات مورد نظر را دریافت می‌کند:
$$\ I^*\ \arg  max  L_{m} ^{I}  $$       $$\ 1\le m\le N$$
در این حالت نرخ شناسایی بصورت نسبت بین واحدهای شناسایی صحیح به کل واحدهای آموزشی حساب می‌شود.(به هر مدل یک نمره تعلق میگیرد)

![diag](http://euit.comule.com/up/305f6c705349.png)

##مراجع
+  C. Bregler and Y. Konig, ““Eigenlips” for robust speech recognition
in Proceedings of IEEE International Conference on
Acoustics, Speech, and Signal Processing (ICASSP ’94), vol. 2,
pp. 669–672, Adelaide, SA, Australia, April 1994.
+  S. and Luettin, J., “Audio-visual speech modeling
for continuous speech recognition,” IEEE Trans. Multimedia,
vol.2, no.3, pp.141–151, 2000.
+  Potamianos, G., Neti, C., Gravier, G., Garg, A., Senior, A.: Recent advances in
the automatic recognition of audiovisual speech. Proceedings of the IEEE 91(9)
(2003) 1306–1326
+  S. Tamura, K. Iwano, and S. Furui, “Multi-modal speech
recognition using optical-flow analysis for lip images,” Journal
of VLSI Signal Processing—Systems for Signal, Image, and
Video Technology, vol. 36, no. 2-3, pp. 117–124, 2004. 
+  T. Yoshinaga, S. Tamura, K. Iwano, and S. Furui, “Audio-visual
speech recognition using new lip features extracted from sideface
images,” in Proceedings of COST278 and ISCA Tutorial and
Research Workshop (ITRW) on Robustness Issues in Conversational
Interaction (Robust ’04), Norwich, UK, August 2004.
+ C. J. Leggetter and P. C. Woodland, “Maximum likelihood
linear regression for speaker adaptation of continuous density
hidden Markov models,” Computer Speech and Language,
vol. 9, no. 2, pp. 171–185, 1995.
+ G. Potamianos and H. P. Graf, “Discriminative training of
HMMstream exponents for audio-visual speech recognition,”
in Proceedings of IEEE International Conference on Acoustics,
Speech, and Signal Processing (ICASSP ’98), vol. 6, pp. 3733–
3736, Seattle,Wash, USA, May 1998.