زمان تخمینی مطالعه: 12 دقیقه
حاشیهنویسی تصویر نقش مهمی در بینایی رایانه ایفا میکند، فناوری که به رایانهها اجازه میدهد تا درک سطح بالایی از تصاویر یا فیلمهای دیجیتال به دست آورند. حاشیه نویسی یا برچسبگذاری تصویر(Image Labeling)، مرحله اولیه در ایجاد الگوریتمهای شناسایی تصویر و مدلهای یادگیری عمیق است. پلتفرمهای نرمافزاری مورد استفاده برای حاشیهنویسی تصویر در سالهای گذشته بسیار پیشرفت کردهاند. نیاز روزافزونی به استانداردسازی و ادغام نحوه دستیابی شرکتها به دادههای آموزشی، حاشیهنویسی، آموزش مدلها و استفاده از آنها در برنامهها وجود دارد.
حاشیهنویسی تصویر چیست؟
حاشیهنویسی تصویر فرآیند برچسبگذاری تصاویر یک مجموعه داده برای آموزش یک مدل یادگیری ماشینی است. بنابراین، Image Annotation برای برچسبگذاری ویژگیهایی که نیاز دارید سیستم شما تشخیص دهد استفاده میشود. آموزش یک مدل ML با دادههای برچسبگذاری شده، یادگیری تحت نظارت نامیده میشود.
حاشیهنویسی معمولاً شامل کاری دستی است که گاهی اوقات با کمک رایانه انجام میشود. یک مهندس یادگیری ماشین، برچسبهایی را که به عنوان «کلاسها» شناخته میشوند، از پیش تعیین میکند و اطلاعات مربوط به تصویر را در اختیار مدل بینایی رایانهای قرار میدهد. پس از آموزش و استقرار مدل، آن ویژگیهای از پیش تعیین شده را در تصاویر جدیدی که هنوز حاشیهنویسی نشدهاند، پیشبینی و تشخیص میدهد. مجموعه دادههای تصویر حاشیهنویسی محبوب عبارتند از مجموعه دادههای مایکروسافت COCO (اشیاء مشترک در زمینه)، با ۲.۵ میلیون نمونه برچسبگذاریشده در ۳۲۸ هزار تصویر، و مجموعه دادههای OID (پایگاه داده تصاویر باز) Google، با تقریباً ۹ میلیون تصویر از پیش حاشیهنویسی شده.
– چرا حاشیهنویسی تصویر مورد نیاز است؟
برچسبگذاری تصاویر برای مجموعه دادههای عملکردی ضروری است، زیرا به مدل آموزشی اجازه میدهد قسمتهای مهم تصویر (کلاسها) را بداند تا بعداً بتواند از آن برچسبها برای شناسایی آن کلاسها در تصاویر جدید و قبلاً دیده نشده استفاده کند.
– حاشیهنویسی ویدیویی
حاشیهنویسی ویدیو بر اساس مفهوم حاشیهنویسی تصویر است. برای حاشیهنویسی ویدیو، ویژگیها به صورت دستی روی هر فریم ویدیو (تصویر) برچسبگذاری میشوند تا یک مدل یادگیری ماشین برای تشخیص ویدیو آموزش داده شود. از این رو، مجموعه داده برای یک مدل تشخیص ویدیو از تصاویر برای فریمهای ویدیویی جداگانه تشکیل شده است. ویدیوی زیر تشخیص و ردیابی شی در زمان واقعی مبتنی بر ویدیو با یادگیری عمیق را نشان میدهد.
– چه زمانی باید تصاویر را برای بینایی کامپیوتر حاشیهنویسی کنیم؟
برای آموزش و توسعه الگوریتمهای بینایی کامپیوتری مبتنی بر شبکههای عصبی عمیق (DNN)، حاشیهنویسی دادهها در مواردی که مدلهای از پیش آموزشدیده به اندازه کافی خاص یا دقیق نیستند مورد نیاز است. همانطور که قبلاً ذکر شد، مجموعه دادههای تصویر عمومی عظیمی با میلیونها حاشیهنویسی تصویر (COCO، OID و غیره) در دسترس هستند. برای مشکلات رایج و استاندارد تشخیص اشیاء (به عنوان مثال تشخیص شخص)، الگوریتمی که بر روی یک مجموعه داده عمومی گسترده (الگوریتم از پیش آموزش داده شده) آموزش داده شده است، نتایج بسیار خوبی ارائه میدهد و مزایای برچسبگذاری اضافی هزینههای اضافی بالا را در آن موقعیتها توجیه نمیکند. با این حال، در برخی شرایط، Image Annotation امری ضروری است که در ادامه آورده شده است:
- وظایف جدید: اما حاشیهنویسی تصویر زمانی مهم است که هوش مصنوعی برای وظایف جدید هوش مصنوعی بدون دادههای حاشیهنویسی مناسب در دسترس باشد. به عنوان مثال، در اتوماسیون صنعتی، بینایی کامپیوتری اغلب برای شناسایی موارد خاص و وضعیت آنها استفاده میشود.
- دادههای محدود: در حالی که دادههای زیادی در اینترنت وجود دارد، برخی از دادههای تصویری نیاز به توافقنامه مجوز دارند و ممکن است استفاده از آن برای توسعه محصولات تجاری بینایی رایانه محدود شود. در برخی زمینهها مانند تصویربرداری پزشکی، حاشیهنویسی دادههای دستی معمولاً با نگرانیهای مربوط به حریم خصوصی همراه است، زمانی که تصاویر حساس (چهرهها، ویژگیهای قابل شناسایی و غیره) درگیر هستند. چالش دیگر استفاده از تصاویر حاوی مالکیت معنوی یک شرکت است.
حاشیهنویسی تصویر چگونه کار میکند؟
برای حاشیهنویسی تصاویر، میتوانید از هر ابزار حاشیهنویسی دادههای منبع باز یا نرم افزار رایگان استفاده کنید. نرم افزار CVAT که مخفف عبارت Computer Vision Annotation Tool است احتمالاً محبوبترین ابزار حاشیهنویسی تصویر منبع باز است. در حالی که با حجم زیادی از دادهها سروکار دارید، به نیروی کار آموزش دیده برای حاشیهنویسی تصاویر نیاز است. شرکتها از دانشمندان داده خود برای برچسبگذاری تصاویر استفاده میکنند، اما پروژههای پیچیدهتر و واقعیتر اغلب نیاز به استخدام یک ارائهدهنده خدمات حاشیهنویسی ویدیویی هوش مصنوعی دارند. ابزارهای حاشیهنویسی مجموعههای مختلفی از ویژگیها را برای حاشیهنویسی یک یا چند فریم کارآمد ارائه میدهند. برچسبها با استفاده از هر یک از تکنیکهای حاشیهنویسی که در زیر در تصویر توضیح داده شده است، روی اشیاء اعمال میشوند. بسته به مورد استفاده، تعداد برچسبها روی هر تصویر ممکن است متفاوت باشد.
– چگونه تصاویر را حاشیهنویسی کنیم؟
به طور کلی، نحوه کار حاشیهنویسی تصویر صورت زیر است:
- مرحله 1: آماده سازی مجموعه داده تصویر
- مرحله 2: مشخص کردن برچسبهای کلاس اشیاء برای شناسایی
- مرحله 3: رسم یک کادر در هر تصویر و در اطراف جسمی که می خواهید تشخیص دهید
- مرحله 4: انتخاب برچسب کلاس برای هر کادری که کشیده شده
- مرحله شماره 5: حاشیهنویسیها را در قالب مورد نیاز صادر کنید (COCO JSON، YOLO، و غیره)
ابزارهای حاشیهنویسی تصویر رایگان
ما در این مقاله بهترین ابزارهای نرم افزاری رایگان را برای کارهای حاشیهنویسی تصویر را معرفی کردیم. اگر به دنبال راهحلهای حاشیهنویسی تصویر حرفهای و سازمانی هستید، آنها را در ادامه فهرست کردهایم.
- MakeSense.AI : یک ابزار آنلاین رایگان برای برچسب زدن عکسها است که نیازی به نصب نرم افزار ندارد. میتوانید از آن با مرورگر استفاده کنید و نیازی به نصب پیچیده ندارد. MakeSense.AI بر روی موتور TensorFlow.js، یکی از محبوبترین چارچوبها برای آموزش شبکههای عصبی ساخته شده است. نیازی به نصب ندارد و ابزاری کاملا آنلاین است. این ابزار از چندین شکل حاشیهنویسی پشتیبانی میکند و روشی سریع برای حاشیهنویسی یک عکس یا مجموعهای از عکسها است. یک ابزار گزینهای خوب برای مبتدیان است و کاربر را در فرآیند حاشیهنویسی راهنمایی میکند. ابزار MakeSense.AI دارای یک رابط مدرن و افزودنیهای جدید و صرفهجویی در زمان است که برای مجموعه دادههای بزرگ جذاب است.
- CVAT : این ابزار توسط محققان اینتل توسعه یافته است، و یک ابزار منبع باز محبوب برای حاشیهنویسی تصویر است.این ابزار حاشیهنویسی نیاز به نصب دستی دارد زیرا بر پایه Github ساخته شده است. پس از راهاندازی، ابزارها و ویژگیهای بیشتری نسبت به سایر ابزارها فراهم میکند، به عنوان مثال، میانبرها و ایجادکننده شکل برچسب. CVAT از افزونههایی مانند TensorFlow Object Detection و Deep Learning Deployment Toolkit پشتیبانی میکند.
- LabelImg : این ابزار در پایتون نوشته شده است و یک ابزار حاشیهنویسی گرافیکی محبوب است. نصب نسبتا سادهای دارد و عموماً از طریق خط فرمان/ترمینال انجام میشود. این ابزار برای حاشیهنویسی تصویر مجموعه دادههای زیر 10000 تصویر عالی است، زیرا به تعامل دستی زیادی نیاز دارد و برای کمک به حاشیهنویسی مجموعه دادهها برای مدلهای تشخیص اشیاء ساخته شده است. دارای رابط کاربری ساده بوده و انبوه آموزشهای موجود آن را به ابزار خوبی برای برنامه نویسان مبتدی ML تبدیل کرده است.
انواع روشهای حاشیهنویسی تصویر
حاشیهنویسی تصویر اغلب برای تشخیص تصویر، تخمین وضعیت، تشخیص نقطه کلید، طبقهبندی تصویر، تشخیص اشیاء، شناسایی اشیاء، بخشبندی تصویر، یادگیری ماشین و مدلهای بینایی کامپیوتری استفاده میشود. این تکنیکی است که برای ایجاد مجموعه دادههای قابل اعتماد برای مدلها استفاده میشود و بنابراین برای مدلهای یادگیری ماشینی تحت نظارت و نیمه نظارت مفید است.
- طبقهبندی تصویر: در واقع Image Classification نوعی مدل یادگیری ماشینی است که برای شناسایی کل تصویر، نیاز به داشتن یک برچسب واحد دارد. هدف فرآیند Image Annotation برای مدلهای طبقهبندی تصویر، تشخیص وجود اشیاء مشابه در تصاویر مجموعه داده است. معمولا از آن برای آموزش یک مدل هوش مصنوعی برای شناسایی یک شی در یک تصویر بدون برچسب استفاده میشود که شبیه کلاسهایی در تصاویر حاشیهنویسی است که برای آموزش مدل استفاده شدهاند. به تصاویر آموزشی برای طبقهبندی تصاویر، برچسبگذاری نیز گفته میشود. بنابراین، هدف طبقهبندی تصویر شناسایی حضور یک شی خاص و نامگذاری کلاس از پیش تعریفشده آن است. نمونهای از مدل طبقهبندی تصویر جایی است که حیوانات مختلف در تصاویر ورودی “تشخیص داده میشوند”. در این مثال، حاشیه نویس مجموعه ای از تصاویر حیوانات مختلف را ارائه میکند و از آنها خواسته میشود تا هر تصویر را با برچسبی بر اساس گونههای جانوری خاص طبقهبندی کند. گونه حیوانی، در این مورد، کلاس خواهد بود، و تصویر ورودی است. ارائه تصاویر حاشیهنویسی شده به عنوان داده به یک مدل بینایی کامپیوتری، مدل را برای ویژگی بصری منحصر به فرد هر نوع حیوان آموزش میدهد. بدین ترتیب، این مدل میتواند تصاویر حیوانات بدون حاشیهنویسی جدید را در گونههای مربوطه طبقهبندی کند.
- تشخیص اشیاء و شناسایی اشیاء: این موارد طبقهبندی تصویر را یک قدم جلوتر میبرند تا حضور، مکان و تعداد اشیاء را در یک تصویر پیدا کنند. برای این نوع مدل، فرآیند حاشیهنویسی تصویر مستلزم ترسیم مرزهایی در اطراف هر شی شناسایی شده در هر تصویر است که به ما امکان میدهد موقعیت و تعداد دقیق اشیاء موجود در یک تصویر را پیدا کنیم. بنابراین، تفاوت اصلی این است که کلاسها در یک تصویر شناسایی میشوند نه اینکه کل تصویر به عنوان یک کلاس طبقهبندی شود.
- بخشبندی تصویر: Image Segmentation نوعی حاشیهنویسی تصویری است که شامل تقسیمبندی تصویر به چند بخش میشود. بخشبندی تصویر برای تعیین موقعیت اشیاء و مرزها (خطوط، منحنیها و غیره) در تصاویر استفاده میشود. این موضع در سطح پیکسل انجام میشود و هر پیکسل در یک تصویر را به یک شی یا کلاس خاص اختصاص میدهد. این روش برای پروژههایی که به دقت بالاتری در طبقهبندی ورودیها نیاز دارند استفاده میشود. بخشبندی تصویر خود به سه کلاس زیر تقسیم میشود:
- بخشبندی معنایی: مرزهای بین اشیاء مشابه را نشان میدهد. این روش زمانی استفاده میشود که دقت زیادی در مورد حضور، مکان و اندازه یا شکل اشیاء درون یک تصویر مورد نیاز باشد.
- بخشبندی نمونه: حضور، مکان، تعداد و اندازه یا شکل اشیاء درون یک تصویر را مشخص میکند. بنابراین، بخشبندی نمونه به برچسبگذاری حضور هر شیء منفرد در یک تصویر کمک میکند.
- بخشبندی پانوپتیک: هر دو بخشبندی معنایی و نمونه را ترکیب میکند. بر این اساس، بخشبندی پانوپتیک دادههای برچسبگذاری شده برای پسزمینه (بخشبندی معنایی) و شی (بخشبندی نمونه) در یک تصویر را فراهم میکند.
- تشخیص مرز: این نوع حاشیهنویسی تصویر خطوط یا مرزهای اشیاء را در یک تصویر مشخص میکند. مرزها ممکن است شامل لبههای یک شی خاص یا مناطق توپوگرافی موجود در تصویر باشد. هنگامی که یک تصویر به درستی حاشیهنویسی شد، میتوان از آن برای شناسایی الگوهای مشابه در تصاویر بدون حاشیه استفاده کرد. تشخیص مرز نقش مهمی در عملکرد ایمن خودروهای خودران دارد.
شکلهای حاشیهنویسی
در حاشیهنویسی تصویر، انواع مختلفی از حاشیهنویسیها برای Image Annotation بر اساس تکنیک انتخاب شده استفاده میشود. علاوه بر اشکال، از تکنیکهای حاشیهنویسی مانند خطوط، خطوط و نشانهگذاری نیز میتوان برای حاشیهنویسی تصویر استفاده کرد. در زیر تکنیکهای رایج حاشیهنویسی تصویر هستند که بر اساس کاربرد استفاده میشوند.
- جعبههای مرزی Bounding Boxes: جعبه مرزی رایجترین شکل حاشیهنویسی مورد استفاده در بینایی کامپیوتر است. جعبههای مرزی، جعبههای مستطیلی هستند که برای تعیین مکان شیء در یک تصویر استفاده میشوند. آنها میتوانند دو بعدی (2D) یا سه بعدی (3D) باشند.
- چند ضلعی: از چند ضلعیها برای حاشیهنویسی اشیاء نامنظم در یک تصویر استفاده میشود. اینها برای علامتگذاری هر یک از رئوس شی مورد نظر و حاشیهنویسی لبههای آن استفاده میشوند.
- نشانهگذاری Landmarking: از این نقاط برای شناسایی نقاط اصلی مورد علاقه در یک تصویر استفاده میشود. از این قبیل نقاط به عنوان نشانهها یا نقاط کلیدی یاد میشود. نشانهگذاری در تشخیص چهره بسیار مهم است.
- خطوط و Splines: خطوط و spline تصویر را با خطوط مستقیم یا منحنی حاشیهنویسی میکنند. این برای تشخیص مرز برای حاشیهنویسی پیادهروها، علائم جاده و سایر شاخصهای مرزی مهم است.
حاشیهنویسی تصویر در واقع وظیفه حاشیهنگاری یک تصویر با برچسبهای داده است. کار حاشیهنویسی معمولاً شامل کار دستی با کمک رایانه است. نرم افزار حاشیهنویسی تصویر مانند ابزار محبوب CVAT به ارائه اطلاعات در مورد یک تصویر که میتواند برای آموزش مدلهای بینایی کامپیوتری استفاده شود، کمک شایانی میکند.