بازسازی چهره تارنما
گروه برنامه نویسان تارنما، با بیش از یکسال تلاش در برنامه نویسی نرم افزاری جهت بازسازی و باز تولید چهره ها، افتخار دارد تا این دستاورد را معرفی نماید.
بازسازی چهره چیست؟
بازشناسی چهره (Facial Recognition)، با استفاده از دیتابیسِ چهرهها (که از قبل وجود داشته است) یک چهره را در یک عکس یا فیلم شناسایی میکند. در واقع چهرهها باید درون سیستم ثبت شوند تا دیتابیسی از ویژگیهای چهرهایِ منحصربفرد شکل بگیرد. پس از آن، سیستم اقدام به تجزیهی ویژگیهای کلیدیِ یک تصویر جدید میکند و آنها را با اطلاعاتِ ذخیرهشده در دیتابیس، مقایسه میکند. پس از شناسایی المان های چهره و یافتن مناسبترین المان ها از چهره های ثبت شده در دیتابیس، چهره جدید تولید میگردد.
نخست باید دانست که تشخیص چهره و بازشناسی چهره، با یکدیگر تفاوت دارند. تشخیص چهره (Facial Detection)، بخشی مهم از بازشناسیِ چهره است که تعداد چهرههای روی تصویر یا ویدیو را مشخص میکند، بدون اینکه جزئیات را به خاطر بیاورد یا ذخیره سازد. تشخیص چهره، مقداری از دادههای جمعیتی – نظیر سن یا جنسیت – را تعریف میکند اما قادر به بازشناسی افراد نیست.
تشخیص چهره با هوش مصنوعی چگونه انجام میشود؟
در روشهای مختلف تشخیص چهره با هوش مصنوعی نخست، رایانه اقدام به بررسی یک عکس یا فیلم میکند تا چهرهها را از سایر اشیاءِ موجود در زمینه، متمایز سازد. روشهایی وجود دارد که رایانه به کمک آنها قادر است این کار را انجام دهد و مقدار روشنایی، جهت و فاصله دوربین را تنظیم کند. محققانی نظیر یانگ، کریگمان و آهوجا روشهای تشخیص چهره را طبقهبندی کردهاند. این روشها به چهار طبقه تقسیم میشوند و الگوریتمهای تشخیص چهره ممکن است ذیلِ دو یا بیش از دو طبقه قرار گیرند.
تشخیص چهرهی دانشبنیان
این روش، متکی بر مجموعهای از قواعد است که توسط انسان و بر اساس دانشمان شکل گرفتهاند. همانطور که میدانیم، یک چهره باید شامل بینی، چشمان و دهان باشد و این اجزاء، باید در فواصلی مشخص از هم و موضعهایی معین قرار داشته باشند. مشکلِ این روش، ساختن مجموعهای مناسب از قواعد است. اگر این قواعد، خیلی کلی یا خیلی جزئینگر باشند، سیستم، مثبتهای کاذبِ بسیاری ارائه میدهد. با این حال، این موضوع برای همهی رنگِ پوستها جواب نمیدهد و به شرایط نورپردازی بستگی دارد که بر رنگ و رویِ دقیق پوست شخصِ حاضر در تصویر، تأثیر میگذارد.
تطابق الگو
روشِ تطابقِ الگو، از الگوهای چهرهی پارامتری یا از پیش تعریف شده به منظور جانمایی یا تشخیص چهرهها استفاده میکند و در این مسیر از همبستگیِ بین الگوهای از پیش تعریف شده و دگردیسپذیر (تغییرشکلپذیر) و تصاویرِ ورودی استفاده مینماید. توسط لبهها و با استفاده از روش تشخیصِ لبه، میتوان مدل چهره را ساخت.
گونهای از این رویکرد، «تکنیکِ زمینهی کنترلشده» است. اگر خوششانس باشید و چهرهی موجود در تصویر، در جلو باشد و زمینه هم ساده باشد، میتوانید زمینه را حذف کنید تا مرزهای چهرهها باقی بمانند.
برای این رویکرد، نرمافزارِ مربوطه دارای ردهبندهای (کلاسیفایرهای) متعددی برای تشخیص انواع مختلف چهرهها و چهرههای پروفایل است؛ نظیرِ تشخیصدهندههای چشمان، بینی، دهان و در برخی موارد، کل بدن. اگرچه پیادهسازیِ این رویکرد، آسان است اما معمولاً برای تشخیص چهره ناکافیست.
روش ویژگیبنیان، ویژگیهای ساختاریِ چهره را استخراج میکند. این روش بعنوان یک ردهبند آموزش میبیند و آنگاه به منظور متمایزسازیِ مناطق چهرهای و غیرچهرهای استفاده میشود. نمونهای از این روش، «تشخیص چهره بر اساس رنگ» است که تصاویر یا فیلمهای رنگی را اسکن میکند و مناطقی که مشابهِ رنگِ پوست هستند را پیدا میکند و آنگاه به دنبال بخشهای مختلف چهره میگردد.
انتخاب ویژگیِ هار (Haar)، به مشخصات مشابهی از چهرههای انسان برای تشکیل انطباقهایی از ویژگیهای چهره، متکی است: لوکیشن و اندازهی چشمان، دهان، پل بینی و گرادیانهای شیبگرای شدتهای پیکسل. ۳۸ لایه از ردهبندهای آبشاری جهت کسب کل ۶۰۶۱ ویژگی از هر چهرهی پیشینی وجود دارد. شما میتوانید برخی از ردهبندهای پیشآموخته را در این لینک پیدا کنید.
هیستوگرامِ گرادیانهای شیبگرا (HOG) یک استخراجگرِ ویژگی برای تشخیص شیء است. ویژگیهای استخراجشده، عبارتند از توزیع (هیستوگرامِ) جهاتِ گرادیانهای (گرادیانهای شیبگرای) تصویر.
گرادیانها معمولاً لبهها و گوشههای بزرگ و گِردی هستند که اجازه میدهند این نواحی را شناسایی کنیم. آنها بهجای مدنظر قرار دادن شدتهای پیکسل، وقوعِ بردارهای گرادیان را شمارش میکنند تا جهت نور را نشان دهند و بخشهای تصویر را جانمایی نمایند. این روش از همپوشانیِ نرمالسازی کنتراستِ موضعی، به منظور افزایش دقت استفاده میکند.
تشخیص چهره بر اساسِ ظاهر (ظاهرگرا)
پیشرفتهترین روش ظاهرگرا، به مجموعهای از تصاویر چهره جهت یافتن مدلهای چهره بستگی دارد. این روش تشخیص چهره با هوش مصنوعی به یادگیری ماشین (Machine Learning) و تحلیل آماری جهت یافتن مشخصات تصاویر چهره و استخراج ویژگیهای آن اتکاء دارد. این روش، الگوریتمهای متعددی را با هم تلفیق میکند.
الگوریتم مبتنی بر تحلیل اجزای اصلی
این الگوریتم، با استفاده از تحلیل مولفهی اصلی (PCA)، بهخوبی چهرهها را نشان میدهد. PCA برای مجموعهای از تصاویر اِعمال میشود تا بُعدِ مجموعهدیتا کاهش یابد و به بهترین شکل واریانسِ دادهها را توصیف کند. در این روش، یک چهره را میتوان بصورت ترکیبی خطی از اجزای اصلی مدلسازی کرد. تشخیص چهره در این حالت، بر اساس مقایسهی ضرایب بازنماییِ خطی است.
الگوریتم توزیعبنیان
این الگوریتم نیز شبیه PCA و تشخیصِ فیشر، زیرفضایی تعریف میکند که بیانگر الگوهای چهرهای هستند. آنها معمولاً از یک ردهبندِ آموزشدیده برخوردارند که نمونههای ردهی الگوی هدف را از الگوهای تصویرِ زمینه، تشخیص میدهد.
مدل مارکفِ مخفی
روشی استاندارد برای تشخیص وظایف است. حالتهای آن، ویژگیهایی چهرهای هستند که معمولاً بصورت نوارهای پیکسلی توصیف میشوند.
شبکهی پراکندهی غربالها
دو واحد یا گرهِ خطی را تعریف میکند: یکی برای الگوهای چهره و دیگری برای الگوهای غیرهچهرهای.
ردهبندِ بیز ساده
بر اساس بسامدِ وقوع مجموعهای از الگوها روی تصاویر آموزشی، احتمال ظهور یک چهره در تصویر را محاسبه میکند.
یادگیری قیاسی
از الگوریتمهایی نظیر C4.5 کوینلان یا FIND-Sِ میچل جهت تشخیص چهره استفاده میشود (با خاصترین فرضیه و تعمیمدهی).
شبکههای عصبی نظیر GANها، از جمله جدیدترین و قویترین روشهای تشخیص ، از جمله در زمینه تشخیص چهره، تشخیص احساس و عواطف و بازشناسی چهره است.
روش بازسازی چهره توسط نرم افزار بازسازی چهره تارنما
نرم افزار بازسازی چهره تارنما، توسط بازسازی قیاسی و الگوریتم های عصبی، اقدام به بازتولید چهره میکند که تصویر فوق بازسازی تصویر اولیه توسط نرم افزار بازسازی چهره تارنما می باشد.
درنظر داشته باشید که جهت بازسازی تصاویر، فقط از نرم افزار بازسازی چهره تارنما استفاده شده و از هیچ نرم افزار دیگری استفاده نشده است. تصویر زیر، تصویر قبل و بعد از بازسازی را نشان میدهد.
کاربردهای تشخیر چهره
تشخیص چهره با هوش مصنوعی، اولین گام برای تحلیلِ بیشتر چهره است، از جمله بازشناسی، تشخیص احساس یا تولید چهره. با این حال، لازم است سایر کنشها اقدام به گردآوری تمام دادههای مورد نیاز برای پردازشِ بیشتر نمایند. تشخیص چهرهی مقاوم، پیشنیازی برای ابزار تحلیلی، ردگیری و بازشناسیِ پیچیده است و بنیانِ بینایی رایانهای است. همانطور که در احراز هویت سامانه ثنا و سجام و همچنین در فرایند احراز هویت سامانه روابط کار قابل مشاهده است، هوش مصنوعی میتواند جایگزین دقیق و خوبی برای این وظیفه باشد.