بخش سوم معرفی تشخیص چهره مدرن همراه با آموزش
ادامه بخش دوم توضیح در مورد چگونگی عملکرد تشخیص چهره
در این تصویر (زیر) نتیجه موقعیت ۶۸ شاخص روی چهره (عکس مطلب قبل) را ملاحظه می کنید:
حالا که ما میدانیم چشم ها و دهان کجاست به راحتی میتوانیم تناسب تصویر را تغییر داده و آن را چرخانده یا قیچی کنیم به طوری که چشمها و دهان در بهترین حالت ممکن در مرکز قرار گیرد.
ما هیچ تصویر پیچ در پیچ سه بعدی نخواهیم چرا که آن تصویر را دچار تحریف یا اموجاج خواهد کرد ماقصد داریم ما قصد داریم با استفاده از تغییرات اساسی و اصلی تصویر ، مانند تغییر اندازه، چرخش ،خطوط موازی را حفظ کنیم(در ریاضی به آن تغییرات نسبت یا آفین می گویند).
حالا اهمیتی ندارد که چهره چطور بچرخد زیرا ما قادریم که چشمها و دهان را در همانموقعیتی که در عکس هستند قرار دهیم با این کار صحت مراحل دیگر بیشتر خواهد شد اگر میخواهیم این مرحله را خودتان با استفاده از پایتون و Dlib امتحان کنید، اینجا کدی برای تشخیص ویژگی های چهره و تغییرات تاثیر با استفاده از ویژگی ها وجود دارد
مرحله ٣: رمز گذاری صورت ها
حالا در بند عمیق مسئله هستیم. تقسیم بندی چهره واقعا دار جالب میشود. ساده ترین روش برای شناسایی چهره مقایسه قیافه ناشناخته ای است که در مرحله۲ یافتیم با چهره هایی که از قبل تصویرشلن را داشتیم.
وقتی تصویری از یک چهره که قبلا داشتیم را با چهره ناشناخته جدید مقایسه کرده و شباهت بسیاری بین آنها می بینیم خب احتمالا این دو باید یکی باشد ایده خوبی به نظر می رسد ، مگرنه؟!
در واقع مسئله ی بزرگی که داریم این است که یک سایت فیسبوک میلیاردها کاربر و هزاران هزار عکس احتمالا نمی تواند هر عکس قبلی موجود در آرشیو خود رو با عکس های جدید آپلود شده مقایسه کند این کار بسیار کند زمانبر خواهد بود.
آنها می بایست قادر باشند تا چهره ها را در کسری از ثانیه تشخیص دهند ساعت ها.
چیزی که ما به آن نیاز داریم و راه حلی که در آن چندین روش اولیه اندازه گیری ویژگیهای صورت استفاده شده باشد و می توانید به همان روش چهره های ناشناخته جدید را اندازه گیری کرده و مطابق با آن شبیه ترین چهره را بیابیم.
مثالی برای اندازه گیری چهره میتوانند اندازهگیری هر گوش فاصله بین چشمها اندازه بینی و غیره باشد اگر تاکنون یک فیلم جنایی مثل csi را تماشا کرده باشید میدانید که راجع به چه سخن میگویم
قابل اعتمادترین روش برای اندازهگیری چهره:
خب حالا ما باید چه چیزی را اندازه گیری کرده و درون پایگاه اطلاعاتی خود قرار دهیم؟ اندازه گوش یا بینی یا رنگ چشم یا چیزی دیگر؟!به نظر میرسد روش اندازه گیری که برای ما انسان ها واضح و آشکار کننده رنگ چشم برای کامپیوتر ای که دارد تک تک نقاط(پیکسل ) یک تصویر را پردازش می کند معنایی ندارد.
محققان دریافتند که صحیح ترین روش این است که به رایانه ها اجازه دهند تا خود اندازه گیری های یک چهره را انجام داده و داده های آن را جمع آوری نمایند . یادگیری عمیق ،روش بهتر است تا اینکه مثلاً یک انسان بخواهد تشخیص دهد که کدام یک از اجزای صورت برای اندازه گیری مهم تر است!
راه حل ایجاد یک شبکه عصبی پیچیده و عمیق درست مثل همان کاری که در بخش ۳ انجام دادیم است اما به جای یادگیری شبکه ای جهت شناخت اجزای تصویر که آخرین باز کردیم ما ۱۲۸ چیز را برای اندازه گیری هرچه دنبال خواهیم کرد.
روند پردازش این سلسله اندازهگیریها با نگاهی به سه تصویر از چهره به طور همزمان انجام می شود:
١-بازیابی یا واکشی تصویر صورت شخصی که میشناسیم
٢ بازیابی یا واکشی یک تصویر دیگر از همان شخص
۳ بازیابی یا واکشی تصویری از یک شخص کاملا متفاوت
سپس الگوریتم نگاهی به اندازه گیری های انجام شده در مورد هر سه عکس جاری خواهد انداخت و شبکه عصبی را کمی می پیچاند یعنی می چرخاند تا اطمینان حاصل کند که حاصل اندازه گیری های بین عکس یک و دو کمی شبیه ترند تا عکس ٢ و ٣.
پس از میلیونها بار تکرار این مرحله برای میلیونها تصویر، از هزاران شخص متفاوت ،شبکه عصبی میآموزد که به طور قابل اعتمادی ۱۲۸ کامل اندازه گیری برای هر فرد ایجاد کند.هر ده تصویر مختلف از یک شخص تقریبا باید اندازه گیری یکسانی به دهد.
اشخاصی که با ماشین آموزنده کار میکنند ۱۲۸ اجزای اندازه گیری هر چهره را نهفته می نامند ایده کاهش داده های خام پیچیده مثل یک عکس درون فهرستی از اعداد تولید شده توسط رایانه بسیار زیاد در ماشین آموزنده بالا میرود و افزایش مییابد (مخصوصاً در ترجمه یک زبان) راه حل دقیق برای چهره هایی که ما استفاده می کنیم در سال ۲۰۱۵ توسط محققان شرکت گوگل ابداع شد ضمن اینکه راه حل های دیگری نیز موجود است.
ادامه این آموزش را در پست های بعدی خواهیم داشت
مطالبتون عالیه
امیدوارم ادامه بدید