Filter by دسته‌ها
chatGTP
ابزارهای هوش مصنوعی
اخبار
گزارش
تیتر یک
چندرسانه ای
آموزش علوم داده
اینفوگرافیک
پادکست
ویدیو
دانش روز
آموزش‌های پایه‌ای هوش مصنوعی
اصول هوش مصنوعی
یادگیری بدون نظارت
یادگیری تقویتی
یادگیری عمیق
یادگیری نیمه نظارتی
آموزش‌های پیشرفته هوش مصنوعی
بینایی ماشین
پردازش زبان طبیعی
پردازش گفتار
چالش‌های عملیاتی
داده کاوی و بیگ دیتا
رایانش ابری و HPC
سیستم‌‌های امبدد
علوم شناختی
دیتاست
رویدادها
جیتکس
کاربردهای هوش مصنوعی
کتابخانه
اشخاص
شرکت‌های هوش مصنوعی
محصولات و مدل‌های هوش مصنوعی
مفاهیم
کسب‌و‌کار
تحلیل بازارهای هوش مصنوعی
کارآفرینی
هوش مصنوعی در ایران
هوش مصنوعی در جهان
مقاله
 بخش‌بندی تصویر و هر آنچه که لازم است در این باره بدانید

بخش‌بندی تصویر و هر آنچه که لازم است در این باره بدانید

زمان مطالعه: 6 دقیقه
در این مقاله ما به کمک یادگیری عمیق به دنیای بخش‌بندی تصویر قدم خواهیم گذاشت و درخصوص مباحث زیر صحبت خواهیم کرد:
1. بخش‌بندی تصویر چیست و انواع آن کدامند؟
2. معماری‌های بخش‌بندی تصویر
3. توابع زیان در حوزه بخش‌بندی تصویر
4. چارچوب‌هایی که در آن می‌توان پروژه‌های بخش‌بندی تصویر را تعریف و اجرا کرد.
در ادامه هر یک از این مباحث را با جزئیات بررسی خواهیم کرد.

بخش بندی تصویر چیست؟

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

بخش‌بندی تصویر

معماری‌های بخش‌بندی تصویر

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

معماری U-Net

معماری U-Net یک شبکه‌ عصبی پیچشی است که دراصل برای بخش بندی تصاویر در حوزه پزشکی طراحی شده است. شمایل این معماری شبیه حرف U انگلیسی است و به همین دلیل نیز U-Net یا شبکه U شکل نامیده می‌شود. معماری این شبکه از دو بخش تشکیل شده است؛ بخش سمت چپ، مسیر فشرده‌سازی و بخش سمت راست، مسیر گسترده‌‍سازی است. هدف مسیر فشرده‌سازی درک مضمون تصویر و نقش مسیر گسترده‌سازی کمک کردن در فرآیند مکان‌یابی دقیق اشیاء است.
معماری U-Net
تصویر 1. معماری U-Net (مثال برای تصویری با پایین‌ترین وضوح ممکن و سایز 32×32 پیکسل). هر مستطیل آبی رنگ متناظر با یک خروجی چندکاناله است. تعداد کانال‌های خروجی در بالای هر کادر مستطیل‌شکل و ابعاد آن نیز در گوشه پایین و سمت چپ مستطیل‌ها درج شده است. کادرهای مستطیلی سفید رنگ نسخه کپی شده خروجی‌ها هستند. هر پیکان نیز نمایان‌گر یک عمل خاص می‌باشد.

معماری U-Net دارای یک مسیر گسترش‌‌سازی در سمت راست و یک مسیر فشرده‌سازی در سمت چپ می‌باشد. مسیر فشرده‌سازی متشکل از 2 لایه سه به سه پیچشی است. هر یک از این لایه‌های پیچشی، یک تابع فعال‌سازی Relu و یک الگوریتم max-pooling دو در دو برای کاهش نمونه‌گیری کاهش نمونه‌گیری Downsampling نگاشت ویژگی دارد.

یک مثال از کاربرد معماری U-Net را می‌توانید در این لینک مشاهده نمایید.

شبکه سریع تماماً متصل یا FastFCN

در این معماری از یک ماژول افزایش نمونه‌گیری  UpSampling هرم مشترک (JPU) برای جایگزین کردن پیچشی منبسط‌‌شده یا گسترده  Dilated convolution استفاده می‌شود، زیرا این پیچشی به حافظه و زمان زیادی نیاز دارند. هسته اصلی این معماری یک شبکه تماماً متصل است که یک ماژول JPU نیز برای افزایش نمونه‌گیری در آن تعبیه شده است. در روش JPU، حجم نمونه‌هایی که وضوح نگاشت ویژگی کمتری دارند، افزایش می‌یابد.

شبکه سریع تماماً متصل یا FastFCN
تصویر 2. مرور چارچوب روش FastFCN. ستون اصلی این روش همان چیزی است که در شبکه‌های تماماً متصل (FCN) به‌کار گرفته شده و سپس یک ماژول نوین برای افزایش نمونه‌گیری به نام ماژول افزایش نمونه‌گیری هرم مشترک (JPU) به آن افزوده شده است که 3 نگاشت ویژگی آخر را به عنوان ورودی دریافت کرده و یک نگاشت ویژگی جدید با وضوح بسیار بالا تولید می‌کند. پس از آن نیز یک ماژول مفهومی جهانی و چندمقیاسی به این معماری اضافه می‌شود تا برچسب نهایی تولید شود. این فرآیند در تصویر رنگی بالا قابل مشاهده است.

اگر می‌خواهید کدهای مربوط به این معماری را اجرا کنید، به این لینک مراجعه نمایید.

شبکه‌ عصبی پیچشی دارای دروازه شناسایی شکل شیء (Gated-SCNN)

ساختار شبکه‌های عصبی پیچشی (CNN) در این معماری، دارای 2 شاخه است. در این مدل، شاخه جداگانه‌ای برای پردازش اطلاعات اشکال درون تصویر وجود دارد. از شاخه دسته‌بندی شکل در این معماری برای پردازش اطلاعات مرزبندی‌ها استفاده می‌شود.

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

 

در این لینک می‌توانید کدهای لازم برای اجرای این معماری را بیابید.

معماری DeepLab

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

معماری DeepLab
تصویر 4. تشریح مدل. در این معماری، یک شبکه عصبی پیچشی عمیق همچون VGG-16 یا ResNet-101 به صورت کاملاً پیچشی به‌کار گرفته می‌شود و سپس با استفاده از شبکه پیچشی آتروس از سیگنال‌های فرآیند کاهش نمونه‌گیری کاسته می‌شود (از 32x به 8x). به کمک درون‌یابی دو خطی، نگاشت ویژگی بزرگ می‌شود تا وضوح آن با وضوح تصویر اولیه برابر شود. سپس یک میدان تصادفی شرطی (CRF) و تماماً متصل به کار گرفته می‌شود تا نتایج حاصل از بخش‌بندی و تشخیص مرزهای تصویر بهبود یابد.

برای استفاده از این معماری می‌توانید از کتابخانه‌های PyTorch و TensorFlow استفاده کنید.

معماری شبکه عصبی پیچشی ماسک ناحیه‌ای (Mask R-CNN)

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

معماری شبکه عصبی پیچشی ماسک ناحیه‌ای
تصویر 5. چارچوب Mask R-CNN برای بخش‌بندی نمونه.

در این تصویر می‌توانید نتایج حاصل از اعمال این معماری روی مجموعه تصاویر دیتاست COCO را ملاحظه فرمایید.

Mask R-CNN
تصویر 6. نتایج معماری شبکه عصبی پیچشی ماسک ناحیه‌ای بر روی نمونه‌های COCO. این نتایج براساس شبکه ResNet-101 هستند که به ما ماسکی با 37.5 AP و 5 fps داده است. ماسک‌ها با رنگ‌های مختلف نمایش داده شده‌اند. علاوه براین، کادرهای مرزی، دسته‌بندی‌ها و ضرایب اطمینان نیز در این تصویر قابل مشاهده می‌باشند.

توابع زیان در حوزه بخش‌بندی تصویر

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

 

تابع زیان کانونی (Focal Loss)

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

تابع زیان کانونی

تابع زیان تاس (Dice Loss)

این تابع زیان از محاسبه تابع هموار ضریب تاس به دست می‌آید و پرکاربردترین تابع زیان در حوزه بخش‌بندی تصویراست.

تابع زیان تاس

تابع زیان اشتراک در اجتماعِ متقارن (IoU)

هدف «تابع زیان اشتراک در اجتماعِ متقارن» از طبقه‌بندی تصاویر عبارت است از: افزایش گرادیان نمونه‌هایی که مقدار اشتراک در اجتماع آن‌ها بالاست و کاهش گرادیان نمونه‌هایی که مقدار اشتراک در اجتماع آن‌ها کم است. بدین ترتیب، دقت مکان‌یابی مدل‌های یادگیری ماشینی افزایش خواهد یافت.

تابع زیان اشتراک در اجتماعِ متقارن

تابع زیان کرانی (Boundary Loss)

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

تابع زیان کرانی

تابع زیان آنتروپی متقاطع وزنی

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

تابع زیان آنتروپی

تابع زیان بیشینه هموار لاووس (Lovász-Softmax Loss)

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

تابع زیان بیشینه هموار لاووس

شناخت سایر توابع زیان نیز خالی از لطف نخواهد بود:

تابع زیان TopK: این تابع شبکه‌ها را در طول دوران یادگیری بر روی نمونه‌های دشوارتر متمرکز می‌کند.
تابع زیان آنتروپی متقاطعِ حذف فواصل (Distance penalized CE loss): این تابع زیان شبکه را به سوی نواحی مرزی هدایت می‌کند که بخش‌بندی آن‌ها دشوار است.
تابع زیان حساسیت-وضوح (SS): این تابع زیان عبارت است از مجموع وزنیِ میانگین مربعات تفاضلِ مربوط به حساسیت و وضوح تصاویر.
تابع زیان فاصله هادس‌دروف (HD): این تابع زیان فاصله هادس‌دروف را در شبکه عصبی پیچشی برآورد می‌کند.
این توابع تنها تعداد اندکی از توابع زیان مورد استفاده در حوزه بخش‌بندی تصاویر هستند. برای مطالعه بیشتر در این خصوص به این لینک مراجعه فرمایید.

مجموعه‌های داده‌ای در حوزه بخش‌بندی تصویر

پس از مطالعه مطالب پیشین، احتمالاً از خود می‌پرسید که دیتاست موردنیاز برای شروع را چگونه می‌توان پیدا کرد.
در ادامه به بررسی برخی از دیتاست‌ها خواهیم پرداخت.

دیتاست (COCO (Common Objects in COntext

COCO یکی از بزرگ‌ترین دیتاست‌ها در حوزه تشخیص، بخش بندی و عنوان‌گذاری برای تصاویر است. این دیتاست شامل 91 کلاس است و اطلاعات و ویژگی‌های خاص 250.000 فرد در آن ذخیره شده است. حجم موردنیاز برای بارگیری این مجموعه داده‌ای 37.57 گیگابایت است. اشیاء در دیتاست COCO در 80 دسته طبقه‌بندی شده‌اند. این دیتاست تحت لیسانس Apache 2.0 است. COCO را می‌توانید از این‌جا بارگیری نمایید.

کلاس‌های اشیاء دیداری پاسکال (PASCAL VOC)

پاسکال شامل 9963 تصویر است که در 20 کلاس مختلف دسته‌بندی شده‌اند. سایز فایل مجموعه یادگیری/اعتبارسنجی آن 2 گیگ است و می‌توان آن را از وب‌سایت رسمی پاسکال بارگیری نمود.

دیتاست Cityscapes

این دیتاست شامل تصاویری از مناظر شهری است و می‌توان از آن برای ارزیابی عملکرد الگوریتم‌های بینایی استفاده کرد که در نواحی شهری به‌کار گرفته شده‌اند. دیتاست CityScapes را می‌توانید از این لینک بارگیری نمایید.

دیتاست فیلم‌های رانندگی و برچسب‌دار کمبریج (CamVid)

دیتاست CamVid یک مجموعه داده‌ای مبتنی بر حرکت در حوزه بخش‌بندی و تشخیص تصاویر است که شامل 32 کلاس معنایی می‌باشد. برای کسب اطلاعات بیشتر و بارگیری این دیتاست به این لینک مراجعه نمایید.
حال که با دیتاست‌های موجود آشنا شدید، به مرور برخی از ابزارها و چارچوب‌های کاری می‌پردازیم که می‌توانید از آن‌ها بهره ببرید.

کتابخانه Fast AI

این کتابخانه پس از دریافت یک تصویر، برای هر شیء درون آن یک ماسک ایجاد می‌کند.

ابزار بخش‌بندی تصویر Sefexa

Sefexa یک ابزار رایگان و نیمه خودکار برای بخش‌بندی و تحلیل تصاویر و تهیه مجموعه داده‌های آموزشی برچسب‌دار است.

Deepmask

Deepmask محصولی از شرکت تحقیقاتی فیس‌بوک است که با افزودن چارچوب کاری تورچ (Torch) به ابزارهای DeepMask و SharpMask توسعه یافته است.

OpenCV

OpenCV یک کتابخانه متن باز در حوزه بینایی ماشین است که بیش از 2500 الگوریتم بهینه‌سازی شده در آن وجود دارد.

MIScnn

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

Fritz

فریتز ابزارهای مختلفی در حوزه بینایی ماشین به ما ارائه می‌دهد که از جمله آن‌ها می‌توان به ابزارهای بخش‌بندی تصویر برای گوشی‌های موبایل اشاره کرد.

میانگین امتیاز / 5. تعداد ارا :

مطالب پیشنهادی مرتبط

اشتراک در
اطلاع از
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
[wpforms id="48325"]