ARTICLE

ARTICLE

خط چشم انداز رایانه ای ، قسمت 3: پیش پردازش تصویر

از آموزش عمیق برای سیستم های بینایی توسط محمد الجندی

قسمت 1 را ملاحظه فرمایید معرفی خط لوله بینایی رایانه و قسمت 2 برای مرور کلی تصاویر ورودی. فقط کافی است fccelgendy را در جعبه کد تخفیف در هنگام پرداخت در manning.com وارد کنید. __________________________________________________________________

پیش پردازش تصویر

پردازش تصویر چیست؟

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

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

چرا پیش پردازش تصویر؟

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

< p> تکنیک های پیش پردازش داده ها ممکن است شامل موارد زیر باشد:

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

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

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

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

شکل 2

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

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

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

شکل 3

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

بدون قضیه ناهار رایگان

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

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

فعلا این همه است. قسمت 4 را ملاحظه فرمایید ، اگر علاقمند به کسب اطلاعات بیشتر در مورد کتاب هستید ، آن را در liveBook اینجا ببینید و این اسلاید را مشاهده کنید.

ابتدا در https: //freecontent.manning منتشر شده است. com.