یادگیری ماشین جذاب است! – قسمت چهارم: تشخیص چهره مدرن با یادگیری عمیق

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

مجموعه ی یادگیری ماشین جذاب است!

تشخیص چهره فیسبوک
فیسبوک به طور خودکار افرادی که قبلا تگ کرده اید را برای شما تگ می کند. من مطمئن نیستم که این قابلیت کمک کننده است یا عجیب و غریب!

این تکنولوژی تشخیص چهره نام دارد. الگوریتم های فیسبوک این توانایی را دارند که در عرض چند دقیقه بعد از تگ کردن دوستانتان، چهره آن ها را تشخیص دهند. این تکنولوژی بسیار خوب است – فیسبوک می تواند چهره را با ۹۸% دقت تشخیص دهد که این به خوبی تشخیص آن چهره ها توسط بشر است!

بیایید یاد بگیریم که تشخیص چهره مدرن چگونه کار می کند! ولی تشخیص دادن تنها دوستانتان، آسان خواهد بود. ما این تکنولوژی را تا حدی پیش خواهیم برد که بتواند یک مساله ی چالش بر انگیز تر را حل کند ، یعنی بتوانیم  Will Ferrell( بازیگر مشهور ) را از Chad Smith ( خواننده مشهور راک ) تشخیص دهیم !

تشخیص چهره ویل فرل و چد اسمیت
یکی از این افراد Wil Ferrell و دیگری Chad Smith می باشد. من قسم می خورم که آن ها افراد مختلفی هستند.

چگونه می توانیم از یادگیری ماشین برای یک مشکل بسیار پیچیده استفاده کنیم؟

تا کنون در قسمت های اول، دوم و سوم از یادگیری ماشین برای حل مسائلی  جدا از هم که تنها یک مرحله داشتند، استفاده کردیم – تخمین قیمت یک خانه، تولید داده ی جدید بر اساس داده ی موجود و گفتن اینکه آیا یک عکس شامل یک شی مشخص است یا نه. همه آن مسائل می توانند با انتخاب یک الگوریتم یادگیری ماشین ، تغذیه داده و نتیجه گیری حل شوند.

ولی تشخیص چهره یک مجموعه از مسائل مرتبط و متعدد می باشد:

  1. اول، به عکس نگاه کن و همه چهره ها را در آن پیدا کن.
  2. دوم، روی هر چهره تمرکز کنید و این توانایی را داشته باشید که بتوانید آن را متوجه شوید که حتی اگر یک چهره در جهت عجیبی چرخیده باشد یا در روشنایی مناسبی نباشد، آن هنوز هم همان فرد است.
  3. سوم اینکه بتوانید ویژگی های منحصر به فرد چهره را انتخاب کرده و از آن برای تفکیک آن فرد از دیگر افراد استفاده کنید – برای مثال چشم های فرد چقدر بزرگ هستند یا درازای صورتش چقدر است و غیره.
  4. نهایتا، ویژگی های منحصر به فرد آن صورت را با تمام افرادی که از قبل می شناسید مقایسه کنید تا نام فرد را تعیین کنید.

به عنوان یک انسان، عجیب است که مغز شما همه این کار ها را به صورت خودکار و فورا انجام دهد. در واقع، انسان ها در تشخیص چهره ها بسیار خوب عمل می کنند و وحتی در اشیا روز مره نیز چهره می بینند:

تشخیص چهره در ماشین

کامپیوتر ها قادر به اینگونه تعمیم های سطح بالا نیستند (حداقل نه هنوز…) خب ما مجبور هستیم به آن ها بیاموزیم که چگونه هر گام را به صورت جداگانه در این روند انجام دهند.

ما نیاز به ساخت یک پایپ لاین (خط لوله) داریم تا هر مرحله از تشخیص چهره را به صورت جداگانه حل می کنیم و نتیجه مرحله کنونی را به مرحله بعدی انتقال می دهیم. به عبارت دیگر ما تعدادی از الگوریتم های یادگیری ماشین را به یکدیگر متصل خواهیم کرد :

پایپ لاین تشخیص چهره
طرز کار یک پایپ لاین ساده برای تشخیص چهره ها

تشخیص چهره – گام به گام

بیایید این مساله را مرحله به مرحله حل کنیم. برای هر مرحله، ما یک الگوریتم متفاوت یادگیری ماشین را خواهیم آموخت. قرار نیست من هر الگوریتم را به صورت کامل توضیح دهم، به همین خاطر از تبدیل شدن آن به یک کتاب جلوگیری می کنم، ولی شما ایده های اصلی که پشت هر یک از مراحل هست را  یاد خواهید گرفت و خواهید دانست که چگونه می توانید سیستم تشخیص چهره خود را در پایتون بسازید، آن هم با استفاده از OpenFace و dlib .

گام ۱: پیدا کردن همه چهره ها

مرحله اول در پایپ لاین ما، شناسایی چهره می باشد. ظاهرا ما نیاز داریم تا چهره ها را در عکس پیدا کنیم قبل از اینکه تلاش کنیم تا آن ها را از هم تفکیک کنیم!

اگر شما از هر دوربینی در ۱۰ سال اخیر استفاده کرده باشید، احتمالا شناسایی چهره را در عمل دیده اید:

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

شناسایی چهره مسیر اصلی خود را در اوایل سال ۲۰۰۰ پیمود، زمانی که Paul Viala و Mechael Jones  یک راه برای شناسایی چهره ابداع کردند که برای اجرا شدن بر روی دوربین های ارزان قیمت، به حد کافی سریع بود. با این حال، امروزه راه های مطمئن و قابل اطمینان زیادی برای تشخیص چهره وجود دارند. قرار است از شیوه ای که در سال ۲۰۰۵ ابداع شده است و Histogram of oriented Gradients یا به اختصار HOG نام دارد، استفاده کنیم.

برای پیدا کردن چهره ها در تصویر، با سیاه وسفید کردن تصویرمان شروع خواهیم کرد زیرا به داده رنگی برای پیدا کردن چهره ها نیاز نداریم :

تصویر چهره ی ویل فرل

سپس به هر یک از پیکسل ها در عکس یکی یکی نگاه خواهیم کرد. برای هر پیکسل، به پیکسل هایی که مستقیما آن را احاطه می کنند، نگاه می کنیم :

بررسی پیکسل های مجاور در تصویر چهره

هدف ما این است که متوجه شویم پیکسل فعلی در مقایسه با پیکسل هایی که مستقیما آن را احاطه می کنند، چقدر تیره است. سپس ما یک فلش طراحی می کنیم که نشان می دهد در کدام مسیر، تصویر تاریک تر می شود:

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

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

هیستوگرام شیب های جهت دار چهره

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

ولی ذخیره کردن گرادیان برای هر پیکسل جزئیات بسیار زیادی به ما می دهد که ما به خاطر دقیق شدن روی جزئیات، از کلیات غافل می شویم. بهتر است ما فقط بتوانیم جریان اصلی از روشنایی و تاریکی را در سطح بالا ثبت کنیم، آن وقت می توانیم الگوی اصلی عکس را ببینیم.

برای انجام این کار، ما عکس را به مربع های کوچکی که اندازه هر کدام ۱۶ در ۱۶ پیکسل است، خواهیم شکست. در هر مربع، خواهیم شمرد که چند گرادیان، در هر مسیر اصلی وجود دارد (چند تا رو به بالا، چند تا رو به بالا و سمت راست و چند تا سمت راست و …). سپس ما مربع را در عکس با جهت فلش هایی که قوی ترین بودند جایگزین خواهیم کرد.

نتیجه پایانی این است که ما عکس اصلی را به یک عکس ساده تغییرمی دهیم  که ساختار اصلی یک چهره را به روش ساده تری می گیرد:

تبدیل عکس به هیستوگرام شیب های جهت دار
عکس اصلی به HOG تبدیل شد که ویژگی های مهم و اصلی از عکس را علی رغم روشنایی عکس دریافت می کند.

برای پیدا کردن صورت ها در این عکس HOG ، کاری که باید انجام دهیم این است که یک قسمت از تصویرمان که بیشترین شباهت به الگوی شناخته شده  HOG که از میان دیگر صورت هایی که برای آموزش استفاده شده اند، استخراج شده است را دارد، پیدا کنیم :

یافتن چهره با استفاده از تصویر هیستوگرام شیب های جهت دار

با استفاده از این تکنیک، ما می توانیم به راحتی چهره ها را در هر تصویری پیدا کنیم :

یافتن چهره ی ویل فرل و چد اسمیت

اگر شما می خواهید خودتان با استفاده از پایتون و dlib این مرحله را امتحان کنید، اینجا کدی هست  که نشان می دهد چگونه می توانید جایگزین HOG از تصاویر را تولید و آن را نشان دهید.

گام ۲ : چهره های حالت دار و متمایل

خب، ما چهره ها را در تصویرمان جداسازی کردیم. ولی الان ما با این مشکل مواجه می شویم که صورت ها جهت های متفاوتی دارند و به همین خاطر برای یک کامپیوتر کاملا متفاوت به نظر می رسند :

تصویر چهره ی متمایل ویل فرل
انسان ها می توانند به راحتی تشخیص دهند که هر دوی این عکس ها مربوط به Will Ferrell هستند ولی کامپیوتر ها ممکن است این تصاویر را کاملا متفاوت از یکدیگر تشخیص دهند.

با این حساب، ما تلاش خواهیم کرد تا هر تصویر طوری اعوجاج دهیم که چشم ها و لب ها همیشه در محل مشخصی در عکس، قرار بگیرند. این تغییر، کار را برای ما بسیار راحت خواهد کرد تا بتوانیم چهره ها را در مراحل بعدی مقایسه کنیم.

برای انجام این کار، ما قرار است از یک الگوریتم به نام Face Landmark Estimation استفاده کنیم. راه های زیادی برای انجام این کار وجود دارد، ولی ما قرار است از رویکردی که در سال ۲۰۱۴ و توسط Vahid Kazemi و Josephine Sullivan ابداع شده است، استفاده کنیم.

نظریه اساسی آن این است که ما ۶۸ نقطته ی خاص در عکس می یابیم ( که Landmark نام دارند ) و در هر چهره ای وجود دارند –  بالای چانه، حاشیه ی بیرونی هر چشم، حاشیه ی درونی هر ابرو و غیره. سپس ما یک الگوریتم یادگیری ماشین را آموزش خواهیم داد تا قادر باشد این ۶۸نقطه ی اختصاصی را در هر چهره ای پیدا کند :

نقاط Landmark تشخیص چهره
۶۸نقطه ی Landmark که در هر چهره پیدا خواهیم کرد. این تصویر توسط Brandon Amos از CMU ساخته شده است و او در OpenFace کار می کند.

در اینجا نتیجه ی پیدا کردن ۶۸نقطه Landmark در تصویر تست ما را می بینید:

یافتن Landmark های چهره
نکته ی حرفه ای: شما همچنین می توانید از همین تکنیک برای پیاده سازی نسخه شخصی فیلتر های سه بعدی اسنپ چت به صورت آنی استفاده کنید!

حالا که می دانیم چشم ها و دهان کجا قرار گرفته اند، ما به راحتی تصویر را چرخش می دهیم، برایش مقیاس تعیین می کنیم و برش می دهیم، در نتیجه چشم ها و دهان در بهترین محور و حالت ممکن قرار می گیرند. ما هیچ گونه پیچ و تاب ۳ بعدی روی عکس انجام نخواهیم داد زیرا آن ممکن است در عکس اعوجاج ایجاد کند. ما فقط قرار است از دگرگونی تصویری اصلی مانند چرخش یا مقیاس که از خط های موازی جلوگیری می کنند، استفاده کنیم.(که تبدیل همگر نام دارد):

رفع اعوجاج تصویر چهره

حالا دیگر فرقی نمی کند صورت چگونه چرخیده باشد، ما می توانیم چشم ها و دهان را که تقریبا در حالت یکسان در عکس قرار گرفته، در مرکزیت عکس قرار دهیم. این کار مرحله بعدی ما را بسیار دقیق تر خواهد کرد.

اگر شما می خواهید خودتان این مرحله را با استفاده از پایتون و dlib امتحان کنید، اینجا کدی هست برای یافتن نقاط Landmark چهره و همچنین از این کد برای تبدیل تصویر با استفاده از آن نقاط Landmark استفاده کنید.

گام ۳ : رمزنگاری چهره

حالا ما در سخت ترین قسمت مساله قرار داریم – تفکیک چهره ها از یکدیگر. اینجاست که همه چیز بسیار جالب می شود!

ساده ترین رویکرد برای تشخیص چهره این است که مستقیما چهره ناشناسی که در مرحله دوم یافتیم را با تمامی عکس ها از افرادی که قبلا برچسب گذاری شده اند، مقایسه کنیم. زمانی که ما یک چهره که قبلا برچسب گذاری شده است و بسیار شبیه به چهره ناشناس  است را پیدا می کنیم، آن چهره باید همان شخص باشد. به نظر می رسد یک این ایده بسیار خوب باشد… درست است؟

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

آنچه ما نیاز داریم این است که راهی برای استخراج تعدادی معیار اندازه گیری در هر چهره، پیدا کنیم. سپس ما می توانیم چهره ناشناس را با همان روش معیار سنجی کنیم و نزدیکترین چهره شناخته شده را با معیار ها پیدا کنیم. برای مثال، ما ممکن است که اندازه هر گوش را اندازه گیری کنیم، همچنین فضای بین دو چشم، درازای بینی وغیره. اگر شما تا کنون سریال های بد جنایی مانند CSI را دیده باشید، منظور ما را می دانید:

تشخیص چهره در سریال های تلویزیونی
درست مانند تلویزیون! کاملا واقعی! #علمی

قابل اطمینان ترین راه برای معیار سنجی یک صورت

بسیار خب، کدام یک از این معیار ها را از هر عکس جمع آوری کنیم تا بتوانیم پایگاه داده ی چهره های شناخته شده ی خودمان را بسازیم؟ اندازه گوش؟ درازای بینی؟ رنگ چشم؟ چیزهای دیگر؟

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

راه حل این است که یک شبکه عصبی عمیق کانولوشنی آموزش دهیم (مانند کاری که در قسمت ۳ انجام دادیم) ولی به جای آموزش دادن شبکه برای اینکه اشیا را در تصویر تشخیص دهد – مانند کاری که قبلا انجام دادیم – قرار است آن را آموزش دهیم تا ۱۲۸ معیار برای هر چهره تولید کند.

روند آموزشی با نگاه کردن به سه عکس از در یک مرتبه، کار می کند:

  1. بارگیری یک تصویر صورت از فرد شناخته شده
  2. بارگیری یک تصویر دیگر از همان فرد شناخته شده
  3. بارگیری یک تصویر از یک فرد کاملا متفاوت

سپس الگوریتم به معیار هایی که برای آن تصویرها تولید شده اند، نگاه می کند. سپس شبکه عصبی را کمی تغییر می دهد تا مطمئن شود معیار هایی که برای تصویر شماره ۱ و ۲ تولید می کند، اندکی نزدیک تر هستند در حالی که معیار هایی که برای تصاویر شماره ۲ و ۳ تولید می کند، اندکی با یک دیگر متفاوت هستند :

آموزش چهره ها به شبکه عصبی

بعد از میلیون ها بار تکرار این مرحله برای میلیون ها تصویر از هزاران فرد مختلف، شبکه عصبی یاد می گیرد تا به طور امن و قابل اطمینان، ۱۲۸ معیار برای هر شخص تولید کند. ۱۰ تصویر مختلف از یک شخص یکسان، تقریبا باید معیار های یکسانی بدهد.

افرادی که در زمینه یادگیری ماشین کارمی کنند، به ۱۲۸ معیار برای هر چهره Embedding می گویند. نظریه ی کم کردن داده خام و پیچیده مانند یک تصویر به لیستی از اعداد که توسط کامپیوتر تولید است، در یادگیری ماشین زیاد دیده می شود. (مخصوصا در ترجمه زبان). رویکرد دقیقی که ما برای چهره ها از آن استفاده می کنیم، در سال ۲۰۱۵ توسط محققان در گوگل ابداع شده است ولی رویکرد های مشابه زیادی نیز وجود دارند.

رمزنگاری تصویر چهره ما

این روند از آموزش یک شبکه عصبی کانولوشنی برای اینکه Embedding صورت را استخراج کند، به مقدار زیادی داده و توان کامپیوتری نیاز دارد. حتی با یک کارت گرافیک  NVidia Telsa گران قیمت نیز نیاز به ۲۴ ساعت آموزش مکرر دارد تا به دقت خوب برسد.

ولی همین که یکبار شبکه آموزش ببیند، می تواند معیار هایی برای هر چهره تولید کند. حتی برای چهره هایی که قبلا ندیده است! خب، این مرحله فقط به یک بار انجام نیاز دارد. خوشبختانه، اعضا خوب OpenFace قبلا این را انجام داده اند و تعدادی از شبکه های آموزش دیده را منتشر کرده اند که ما می توانیم مستقیما از آن ها استفاده کنیم. با تشکر از Brandon Amos و تیمش!

خب همه ی کاری که ما باید خودمان انجام دهیم این است که تصاویر چهره را از طریق شبکه ای که قبلا آموزش دیده است، اجرا کنیم تا ۱۲۸ معیار برای هر چهره را بدست آوریم. اینجا معیار ها برای تصویر آزمایشی ما را می بینید:

تبدیل تصویر جهره به معیار های عددی

خب، این ۱۲۸ عدد چه قسمت هایی از صورت را معیار سنجی می کنند؟ مشخص می شود که ما هیچ نظری در این مورد نداریم. این قضیه واقعا برای ما اهمیت ندارد. تمام آن چیزی که برای ما اهمیت دارد این است که شبکه زمانی که به دو عکس مختلف از یک فرد مشخص نگاه می کند، اعداد تقریبا یکسانی را تولید می کند.

اگر می خواهید خودتان این مرحله را امتحان کنید، OpenFace یک اسکریپت lua ارائه می کند که Embedding همه ی تصاویر را در یک پوشه تولید می کند و آن ها را در فایل csv می نویسد. شما می توانید به این صورت آن را اجرا کنید.

گام ۴ : پیدا کردن نام فرد از روی رمز نگاشته شده

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

شما می توانید آن را با استفاده از الگوریتم های کلاسه بندی یادگیری ماشین انجام دهید. و هیچ فوت و فن عجیب و غریب در زمینه یادگیری عمیق نیاز نیست. ما فقط از یک کلاسه بند خطی ساده به نام SVM ( ماشین بردار پشتیبانی ) استفاده خواهیم کرد، ولی الگوریتم های کلاسه بندی زیادی می توانند استفاده شوند.

تمام کاری که باید انجام دهیم، آموزش یک کلاسه بند است که بتواند معیار ها را از یک تصویر آزمایشی جدید بگیرد و بگوید کدام فرد شناخته شده نزدیکترین تطابق را دارد. اجرای این کلاسه بند چند میلی ثانیه طول می کشد. نتیجه کلاسه بند، نام شخص مورد نظر می باشد!

خب بیایید سیستم خود را امتحان کنیم. اول، من یک کلاسه بند را با Embedd کردن حدود ۲۰ تصویر از ویل فرل ، چاد اسمیت و جیمی فالون آموزش داده ام:

تصاویر چهره ی آموزش ویل فرل چد اسمیت و جیمی فالون
داده آموزشی شیرین!

من کلاسه بند را روی تمام فریم های ویدیوی یوتیوبی معروف که ویل فرل و چاد اسمیت در برنامه ی جیمی فالون وانمود می کنند که به جای همدیگر هستند، اجرا کردم:

تشخیص چهره ویل فرل و چد اسمیت و جیمی فالون

نتیجه داد ! و نگاه کنید برای حالت های مختلف در چهره ها چقدر خوب کار می کند – حتی تصاویر نیم رخ!

خودتان نیز اجرا کنید

بیایید همه ی مراحلی که تا کنون انجام دادیم را مرور کنیم:

  1. یک تصویر را با استفاده از الگوریتم HOGرمز نگاری کنید تا یک نسخه ساده شده از عکس را به وجود آورید. با استفاده از تصویر ساده شده، قسمتی از تصویر را پیدا کنید که بیشترین شباهت را به رمز نگاری عمومی  HOGاز صورت داشته باشد.
  2. حالت صورت را با پیدا کردن نقاط Landmark اصلی در چهره، پیدا کنید. یک بار که آن نقاط Landmark را پیدا کردید، از آن برای تبدیل تصویر استفاده کنید، در نتیجه چشم ها و دهان در مرکزیت تصویر هستند.
  3. تصویر چهره را از طریق شبکه عصبی ای که می داند چگونه ویژگی های صورت را معیار سنجی کند، عبور دهید. آن ۱۲۸ معیار را ذخیره کنید.
  4. به همه چهره هایی که قبلا اندازه گیری کرده اید نگاه کنید و ببینید کدام فرد نزدیکترین معیار ها را به معیار های ما دارد. این همان فردی است که به دنبالش هستیم!

حالا که شما می دانید همه این ها چگونه کار می کنند، اینجا دستورالعملی است از آغاز تا پایان که چگونه کل این پایپ لاین تشخیص چهره را در کامپیوتر شخصی خود اجرا کنید:

به روز رسانی: شما هنوز هم می توانید مراحل پایین را برای استفاده از  OpenFaceدنبال کنید. با این حال، من یک کتابخانه تشخیص چهره جدید بر پایه پایتون که face_recognition نام دارد و برای نصب و استفاده آسان تر است، را منتشر کرده ام. خب من پیشنهاد می کنم تا ابتدا face_recognition را امتحان کنید به جای اینکه مراحل پایین را ادامه دهید!

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

بیشتر بخوانید :

منبع Medium

همچنین ببینید

فناوری تشخیص چهره و کاربردهای آن، تاریخچه تکنولوژی تشخیص چهره

فناوری تشخیص چهره و کاربردهای آن + تاریخچه

فناوری تشخیص چهره یک فناوری بیومتریک است که با استفاده از تجزیه و تحلیل الگوهایی …

3 نظر

  1. ممنون عالی بود. مطالب بسیار متفاوت بود با سایت های دیگر و مفاهیم را خوب بیان کرده بودین

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *