تشخیص چهره ، اتومبیل های خودران ، واقعیت افزوده و بسیاری از برنامه های دیگر از تکنیک های بینایی رایانه به نحوی استفاده می کنند.
در دهه گذشته ، بینایی رایانه ای با استقبال بیشتر برنامه های هوش مصنوعی برجسته تر شد.
افزایش پذیرش برنامه های هوش مصنوعی به افزایش تعداد مشاغل و دوره های مرتبط با بینایی رایانه
این مقاله به طور مختصر توسعه بینایی کامپیوتر در پنجاه سال گذشته را معرفی کرده و تکنیک CV سنتی را بررسی می کند تکنیک هایی که در روزهای اولیه این رشته استفاده می شد. اکتشافی در دوران یادگیری عمیق در این مقاله گنجانده می شود ، از جمله توضیحی در مورد علت تغییر از CV سنتی به رویکردهای مبتنی بر یادگیری عمیق.
قبل از اینکه به تکنیک های مختلف CV بپردازیم ، بیایید قسمت بدن انسان را که دید رایانه سعی می کند از نظر عملکرد شبیه سازی کند ، بررسی کنیم. این یک عملکرد بدن است که به طور خودکار بدون تأثیر عمدی کار می کند.
عکس توسط v2osk در Unsplashسیستم حسی بینایی انسان در طول هزاران سال توسعه یافته است تا بتواند از طریق نور منعکس شده توسط اشیاء در جهان سه بعدی ، معانی و زمینه مناظر را در اختیار انسان قرار دهد ، در چشمان ما.
چشم ها و مغز ما می توانند درک محیط ها را از طریق نور منعکس شده استنباط کنند.
سیستم بینایی ما به ما توانایی تعیین فاصله اجسام ، پیش بینی بافت را می دهد. اجسام بدون لمس مستقیم و شناسایی انواع الگوها و رویدادها در محیط ما.
بینایی رایانه ای فرایندی است که طی آن سعی می کنیم سیستم های کامپیوتری را با همان قابلیت هایی که سیستم حسی بینایی انسان دارد ، تجهیز کنیم.
تعریف مناسب برای بینایی رایانه به شرح زیر است:
سیستم حسی بینایی ما از چشم ها و مغز تشکیل شده است ، اگرچه ما درک می کنیم که چگونه هر یک از اجزای چشم مانند قرنیه ، لنز ، شبکیه چشم ، عنبیه و غیره ، ما به طور کامل نحوه عملکرد مغز را درک نمی کنیم.
برای ایجاد الگوریتم ها و سیستم هایی که قابلیت استخراج اطلاعات زمینه ای از تصاویر را دارند ، باید علت الگوها مشاهده شود. سپس راه حل ها را می توان از درک علل و تأثیر الگوهای خاص به دست آورد. //cdn-images-1.medium.com/max/426/0*E8cpdr5182XT2Vfq.gif"> سمت چپ: تشخیص چهره و ردیابی ویژگی های صورت. میانی: برآورد Pose توسط TensorFlow. راست: شبکه یولو برای تشخیص اشیا
تشخیص چهره: وظیفه پیاده سازی سیستم هایی است که می توانند به طور خودکار چهره انسان را در تصاویر و ویدئوها تشخیص داده و بومی کنند. تشخیص چهره استدر برنامه های مرتبط با تشخیص چهره ، عکاسی و ضبط حرکت وجود دارد.
طبقه بندی اشیاء: فرایند شناسایی طبقه ای که یک شی هدف با آن مرتبط است. تشخیص و تشخیص اشیا تکنیک هایی با نتایج مشابه و رویکردهای اجرایی هستند ، اگرچه فرایند تشخیص قبل از مراحل تشخیص در سیستم ها و الگوریتم های مختلف پیش می رود.
ردیابی شی: روشی برای شناسایی ، تشخیص و دنبال کردن یک شیء علاقه به دنباله ای از تصاویر در طی مدتی برنامه های ردیابی در سیستم ها در بسیاری از دوربین های نظارتی و دستگاه های نظارت بر ترافیک یافت می شود. دنباله ای از تصاویر اشکال برآورد ژست در برنامه هایی مانند تشخیص عملکرد ، تعاملات انسانی ، ایجاد دارایی برای واقعیت مجازی و بازی های گرافیکی سه بعدی ، روباتیک و موارد دیگر وجود دارد.
از دهه 1970 محققان زمان فوق العاده ای را صرف کرده اند. تلاش ، ایجاد الگوریتم ها و سیستم های کارآمد و قوی بینایی رایانه ای که می تواند به عنوان راه حلی برای برخی از برنامه های ذکر شده در بالا مورد استفاده قرار گیرد. >
برای درک بیشتر بنیاد میدان بینایی رایانه ، بیایید الگوریتم های سنتی را که منطق مبتنی بر ابتکار برای حل مشکلات معمولی بینایی رایانه مورد استفاده قرار می گرفت ، مورد بررسی قرار دهیم.
هدف اصلی تکنیک های بینایی رایانه ای ارائه نوعی از درک زمینه در داده های تصویر است. این درک سپس برای اهداف سفارشی تر مانند تشخیص یا تشخیص استفاده می شود.
چندین روال فرعی در الگوریتم ها و تکنیک های بینایی رایانه ای سنتی برای استخراج درک منظره از تصاویر ایجاد شده است.
خط لوله بینایی رایانه ای سنتی. تصویر توسط نویسندهتشخیص لبه تحت موضوع پردازش تصویر قرار می گیرد اما به یک ابزار اصلی در بینایی رایانه تبدیل شده است.
الگوریتم های تشخیص لبه نقاط درون یک تصویر را مشخص می کند که در آن شدت پیکسل به شدت تغییر می کند. با پیوستن به این نقاط تغییرات واضح در روشنایی تصویر ، ما خطوطی را شکل می دهیم ، به طور رسمی ، لبه ها.
چرا لبه ها ویژگی های مهمی در یک تصویر هستند؟
اطلاعات زیادی در مورد تصویری که می توان از تجزیه و تحلیل و ترکیب لبه های شناسایی شده بازیابی کرد. به عنوان مثال ، می توان ترکیب سه بعدی یک جسم را از اطلاعات لبه برآمد ، فقط با مشاهده ارتباطات و تداوم بین لبه های شناسایی شده. مانند تغییر در عمق و جهت گیری. لبه های خمیده نشان دهنده تغییرات جهت گیری هستند. چند نمونه از برخی از الگوریتم های تشخیص لبه سنتی: Canny Edge Detector ، Sobel Method و Fuzzy Logic.
توسط JonMcLooneدر ویکی پدیای انگلیسی ، CC BY-SA 3.0 ، https://commons.wikimedia.org/w/index.php؟curid=44894482اهمیت شناسایی ویژگی های یک تصویر در هدف اصلی بینایی کامپیوتری ، که برای درک محتوای درون یک تصویر است.
با استفاده از ویژگی های مشتق شده مانند لبه ها و خطوط ، امکان ایجاد اشیاء سه بعدی متناسب با ترکیب ساختاری اصلی اشیاء وجود داشت. در تصویر.
بینایی رایانه ای سنتی شامل تجزیه و تحلیل عمیق ورودی و خروجی است. تجزیه و تحلیل عمیق نشان داد که چه ویژگی های قابل نمایش ریاضی را می توان از یک تصویر استخراج کرد و با یک الگوریتم کارآمد همراه شد تا نتیجه دلخواه را تولید کرد. ویژگی شبیه به Haar.
تصویر از https: //www.researchgate. net/ویژگی های شبیه به Haar در کارهای بینایی رایانه مانند تشخیص اشیا یا تشخیص چهره استفاده می شود.
با استفاده از یک پنجره تعریف شده که شامل دو مستطیل مجاور است ، در آنجا تفاوت ها وجود دارد. بین مجموع شدت پیکسل در هر مستطیل برای شناسایی بخش های صورت استفاده می شود.
نواحی اطراف چشم کمی تیره تر از نواحی مجاور مجاور گونه ها هستند ، یک ویژگی هار برای تشخیص چشم می توان از مستطیل های مجاور استفاده کرد.
تفاوت های محاسبه شده را می توان با تعیین کننده های قبلی مقایسه کرد آستانه های مشخصی برای تشخیص بخش هایی از صورت ، مانند چشم ، دهان و بینی.
یکی دیگر از تکنیک های رایانه ای رایج برای تشخیص شیء SIFT (تغییر ویژگی تغییر اندازه مقیاس) نامیده می شود. این در اواخر دهه 90 توسعه یافت.
تکنیک SIFT برای شناسایی اشیاء درون تصاویر ، صرف نظر از جهت تصویر ، مقیاس و چرخش استفاده می شود. این برنامه در درجه اول با شناسایی نقاط مورد علاقه در تصاویر و تجمع شیب آنها کار می کند. این اطلاعات یک توصیف کننده تصویر ایجاد کرد. توصیف کننده شامل نکات کلیدی است که با پایگاه داده سایر توصیف کنندگان مقایسه شده و تطبیق داده شده است. روش ها و الگوریتم های مبتنی بر اکتشافی که برای ایجاد درک صحنه ای استفاده می شود ، جزء مهمی در میزان عملکرد و قابلیت اطمینان تکنیک های CV سنتی بود. استخراج ، مهندسی ، یادگیری و طبقه بندی.
در زمان نگارش این مقاله ، اکثر کارهای مربوط به بینایی رایانه با استفاده از حالت معماری یادگیری عمیق هنر.
رویکردهای سنتی برای بینایی رایانه تا پایان جایگزین شده است برای پایان دادن به راه حلهای یادگیری که با یادگیری عمیق و متعاقباً شبکه های عصبی معرفی شده است.
روشهای سنتی بینایی رایانه ای نیاز به تعریف ساختارها و ترکیبات ویژگی قبل از شروع مرحله استخراج ویژگی دارد.
رایانه متخصصان بینایی باید تعریف کنند که چه ویژگی های خاصی به بهترین شکل شی مورد نظر را در یک تصویر توصیف می کند. این رویکرد مهندسی و توصیف ویژگی ها مقیاس پذیر نبود ، به ویژه هنگامی که تعداد موارد مورد علاقه زیاد باشد.
یادگیری عمیق به وظیفه مهندسی ویژگی ، استخراج و طبقه بندی در یک فرایند خودکار نزدیک می شود.
با ارائه یک شبکه عصبی با یک تصویر ، وزنها و پارامترهای درون شبکه عصبی مقادیری به خود می گیرند که ویژگیهای برجسته و الگوهای فضایی درون آن را تعمیم می دهد.تصویر ارائه شده.
ارائه تصاویر برچسب زده شده به عنوان داده های آموزشی به شبکه عصبی ، ممکن است یک شبکه عصبی را برای شناسایی الگوهای مربوط به اشیاء خاص در داده های تصویر آموزش دهد.
اعتبار شبیه سازی شبکه عصبی به دنیس دمیتریفاین فرآیند برای بسیاری از اشیاء قابل تکرار است که لازم است شناسایی شوند.
محدودیت ها و معایبی برای یادگیری عمیق وجود دارد. داشتن حجم زیادی از داده های آموزشی برای اطمینان از اینکه شبکه های عصبی قادرند به خوبی به داده های نادیده تعمیم دهند ، موضوعی است که پذیرش استراتژی های یادگیری عمیق را برای چند سال محدود کرد.
ظرفیت شبکه و دسترسی به منابع محاسباتی همچنین می تواند تنگنایی برای رویکردهای یادگیری عمیق در بینایی رایانه باشد.
قبل از پذیرش یادگیری عمیق ، مهندسین CV مسئولیت تعریف و انتخاب ویژگی هایی را داشتند که به بهترین شکل یک تصویر یا شی را توصیف می کردند. در حال حاضر ، در دوران مدرن ، مهندسان CV بیشتر به دنبال پیاده سازی ، آموزش و ارزیابی مدلهای یادگیری عمیق هستند.
انواع پیکربندی وجود دارد شبکه ANN که در زمینه یادگیری عمیق وجود دارد و پیکربندی های قابل توجه عبارتند از: شبکه های عصبی کانولوشن (CNN) ، شبکه های عصبی مکرر (RNN) و شبکه های عصبی عمیق (DNN).
کلمه "عمیق" در Deep یادگیری به این واقعیت اشاره می کند که ANN ذکر شده و سایر انواع توسعه یافته از تعداد قابل توجهی از لایه های شبکه عصبی تشکیل شده است. آنها عبارتند از: همچنین می توان آنها را به عنوان پردازنده های توزیع شده موازی توصیف کرد.
استفاده از یادگیری عمیق برای بینایی رایانه ، وظیفه استخراج ، تشخیص ، مهندسی و طبقه بندی همه را به شبکه عصبی محول می کند.
بنابراین ، یک خط دید بینایی رایانه ای شبیه تصویر زیر است.
خط لوله یادگیری عمیق. تصویر توسط نویسندهتا کنون ، ما هر دو روش سنتی حل وظایف بینایی رایانه و روشهای مدرن تری را که از یادگیری عمیق استفاده می کنند ، پوشش داده ایم.
آنجا مفاهیم ، ایده ها و تکنیک های بیشتری برای کشف رویکردهای مدرن و سنتی برای CV هستند. اجماع صنعت بر این است که یادگیری عمیق رویکرد غالب برای حل وظایف بینایی رایانه است.
برای کسانی که می خواهند دنیای بینایی رایانه ای را کاوش کنند ، موضوعات و تکنیک های یادگیری عمیق مسیرهای مطلوبی برای انتخاب هستند. شرایط کسب تجربه عملی و حرفه ای.
با این وجود ، همیشه بصیرت انگیز استبرای بازبینی ریشه های بینایی رایانه و درک شهود محققان و مهندسان هنگام توسعه الگوریتم های سنتی.
به زودی ، مقاله ای می نویسم که یادگیری عمیق را عمیق تر معرفی می کند.
< h4> در حال حاضر ، می توانید مقالات زیر را بخوانید تا بفهمید نقش مهندس CV مدرن چگونه است و مطالعات انجام شده در یادگیری ماشین و بینایی رایانه شامل چه مواردی است. < /h4>