زمان تخمینی مطالعه: 11 دقیقه
ردیابی اشیاء وظیفه شناسایی خودکار اشیاء در یک ویدیو و تفسیر آنها به عنوان مجموعهای از مسیرها با دقت بالا است. الگوریتمهای ردیابی اشیاء(Object Tracking) پس از تشخیص اشیاء در صحنه، شناسهای منحصر به فرد به هر شی تخصیص داده و سپس اشیاء شناسایی شده را در فریمهای یک ویدیو ردیابی میکند. اغلب، نشانهای در اطراف شی مورد ردیابی وجود دارد، به عنوان مثال، یک مربع محاط که شی را دنبال میکند و به کاربر نشان میدهد که شی در صفحه در کجا قرار دارد.
کاربردها و انواع ردیابی اشیاء
ردیابی اشیاء برای موارد مختلف استفاده میشود که شامل انواع مختلف فیلم ورودی است. اینکه ورودی پیشبینیشده یک تصویر یا ویدیو باشد یا نه، یا یک ویدیوی بلادرنگ در مقابل یک ویدیوی از پیش ضبطشده، بر الگوریتمهای مورد استفاده برای ایجاد برنامهها تأثیر میگذارد. نوع ورودی همچنین بر دسته، موارد استفاده و برنامهها تأثیر میگذارد. در اینجا، ما به طور مختصر چند کاربرد و انواع رایج ردیابی اشیاء، مانند ردیابی ویدئو، ردیابی بصری و ردیابی تصویر را شرح خواهیم داد.
- ردیابی ویدیو: ردیابی ویدیویی یکی از کاربردهای مهم از ردیابی اشیاء است که در آن اجسام متحرک در اطلاعات ویدیویی قرار دارند. از این رو، سیستمهای ردیابی ویدیویی قادر به پردازش فیلمهای زنده، بیدرنگ و همچنین فایلهای ویدیویی ضبطشده هستند. فرآیندهای مورد استفاده برای اجرای وظایف ردیابی ویدیو بر اساس نوع ورودی ویدیویی متفاوت است. برنامههای مختلف ردیابی ویدیویی نقش مهمی در تجزیه و تحلیل ویدیو، درک صحنه برای امنیت و نظارت، مباحث نظامی، حمل و نقل و سایر صنایع ایفا میکنند. امروزه طیف گستردهای از برنامههای کاربردی بینایی کامپیوتری و یادگیری عمیق بلادرنگ از روشهای ردیابی ویدیویی استفاده میکنند.
- ردیابی بصری: ردیابی بصری یا ردیابی هدف بصری یک موضوع تحقیقاتی در بینایی کامپیوتری است که در طیف وسیعی از سناریوهای روزمره اعمال میشود. هدف ردیابی بصری تخمین موقعیت آینده یک هدف بصری است که بدون در دسترس بودن بقیه ویدیو مقداردهی اولیه شده است.
- ردیابی تصویر: ردیابی تصویر برای تشخیص تصاویر دو بعدی مورد علاقه در یک ورودی مشخص است. سپس آن تصویر به طور مداوم در حالی که در حرکت میکنند ردیابی میشود. از این رو، ردیابی تصویر برای مجموعه دادههایی با تصاویر بسیار متضاد (مثلا، سیاه و سفید)، عدم تقارن، الگوهای کم و تفاوتهای قابل شناسایی متعدد بین تصویر مورد نظر و سایر تصاویر در مجموعه تصویر ایدهآل است. ردیابی تصویر به بینایی کامپیوتر برای شناسایی و تقویت داده تصاویر پس از تعیین اهداف تصویری از پیش متکی است.
- دوربین ردیابی اشیاء: روشهای مدرن ردیابی شی را میتوان در جریانهای ویدیویی بیدرنگ از هر دوربینی اعمال کرد. بنابراین، فید ویدیویی یک دوربین USB یا یک دوربین IP میتواند برای انجام ردیابی اشیاء، با تغذیه فریمهای جداگانه به یک الگوریتم ردیابی استفاده شود. پرش فریم یا پردازش موازی روشهای رایج برای بهبود عملکرد با فیدهای ویدیویی بیدرنگ یک یا چند دوربین هستند.
اصلیترین چالشهای ردیابی اشیاء
چالشهای اصلی معمولاً از مشکلات موجود در تصویر ناشی میشوند که تشخیص موثر روی تصاویر را برای مدلها دشوار میکند. در اینجا، ما در مورد چند مورد از رایجترین مسائل مربوط به ردیابی اشیاء و روشهای پیشگیری یا مقابله با این چالشها بحث خواهیم کرد.
- آموزش و سرعت ردیابی: الگوریتمهای ردیابی اشیاء نه تنها باید تشخیصها را با دقت انجام دهند و اشیاء مورد علاقه را بومیسازی کنند، بلکه این کار را در کمترین زمان ممکن انجام میدهند. افزایش سرعت ردیابی به ویژه برای مدلهای ردیابی شی در زمان واقعی ضروری است.
- حواسپرتی پسزمینه: پسزمینه تصاویر ورودی یا تصاویری که برای آموزش مدلها استفاده میشوند نیز بر دقت مدل تأثیر میگذارند. پسزمینه شلوغ اشیایی که قرار است ردیابی شوند، میتواند تشخیص اشیاء کوچک را سختتر کند.
- مقیاسهای فضایی چندگانه Multiple Spatial Scales: اشیایی که قرار است ردیابی شوند میتوانند در اندازهها و نسبتهای مختلف باشند. این نسبتها میتوانند الگوریتمها را اشتباه بگیرند و باور کنند که اشیاء بزرگتر یا کوچکتر از اندازه واقعیشان هستند. تصورات غلط اندازه میتواند بر تشخیص یا سرعت تشخیص تأثیر منفی بگذارد. برنامه نویسان برای مبارزه با مسئله مقیاسهای فضایی متفاوت میتوانند تکنیکهایی مانند نقشههای ویژگی، جعبههای لنگر، هرمهای تصویری و هرمهای ویژگی را پیادهسازی کنند.
- انسداد: این مفهوم تعاریف زیادی دارد. در پزشکی، انسداد را میتوان با “انسداد رگ خونی” توصیف کرد. در یادگیری عمیق، معنای مشابهی دارد. در وظایف بینایی هوش مصنوعی با استفاده از یادگیری عمیق، انسداد زمانی اتفاق میافتد که چندین شی بیش از حد به هم نزدیک شوند (ادغام شوند) و روی هم قرار بگیرند.
سطوح ردیابی اشیاء
Object Tracking از چندین زیرگروه تشکیل شده است زیرا کاربرد وسیعی دارد و سطوح ردیابی شی بسته به تعداد اشیایی که ردیابی میشوند متفاوت است.
- ردیابی چند شیء (MOT): ردیابی شیء چندگانه به عنوان مشکل شناسایی خودکار چندین شیء در یک ویدیو و نمایش آنها به عنوان مجموعهای از مسیرها با دقت بالا تعریف میشود. از این رو، ردیابی چند شیء به دنبال ردیابی بیش از یک شی در تصاویر دیجیتال است. به آن ردیابی چند هدف نیز گفته میشود، زیرا تلاش میکند تا ویدئوها را برای شناسایی اشیاء (“هدف”) که به بیش از یک کلاس از پیش تعیین شده تعلق دارند، تجزیه و تحلیل کند. از این رو، این نوع الگوریتمها اغلب در آزمون ردیابی KITTI محک زده میشوند. KITTI یک معیار بینایی کامپیوتری چالش برانگیز و مجموعه داده تصویری در دنیای واقعی است که به طور گسترده در رانندگی خودران استفاده میشود. در حال حاضر، بهترین الگوریتمهای ردیابی چند شیء DEFT (88.95 MOTA، دقت ردیابی چند شیء)، CenterTrack (89.44 MOTA) و SRK ODESA (90.03 MOTA) هستند.
- ردیابی تک شی(SOT): ردیابی تک شی جعبههای محدود کنندهای را ایجاد میکند که بر اساس اولین فریم تصویر ورودی به ردیاب داده میشود. گاهی اوقات به عنوان Visual Object Tracking نیز شناخته میشود. SOT به این معنی است که یک شی منفرد ردیابی میشود، حتی در محیطهایی که اشیاء دیگر را شامل میشود. هدف ردیابهای تک شیء برای تمرکز بر روی یک شی معین به جای چندین مورد است. شی مورد نظر در فریم اول تعیین میشود، جایی که شی مورد نظر برای اولین بار مقداردهی اولیه میشود. سپس ردیاب وظیفه پیدا کردن آن هدف منحصر به فرد را در تمام فریمهای داده شده دیگر دارد. SOT در دسته ردیابی بدون تشخیص قرار میگیرد، به این معنی که به تنظیم دستی تعداد ثابتی از اشیا در فریم اول نیاز دارد. سپس این اشیاء در فریمهای بعدی بومیسازی میشوند. یک ایراد ردیابی بدون تشخیص این است که نمیتواند با سناریوهایی که در آن اشیاء جدید در فریمهای میانی ظاهر میشوند مقابله کند. مدلهای SOT باید بتوانند هر شی معین را ردیابی کنند.
الگوریتمهای محبوب ردیابی اشیاء
شبکههای عصبی کانولوشنال (CNN) پر استفادهترین و قابل اعتمادترین شبکه برای ردیابی اشیاء باقی مانده است. با این حال، چندین معماری و الگوریتم نیز در حال بررسی هستند. از جمله این الگوریتمها میتوان به شبکههای عصبی بازگشتی (RNN)، رمزگذارهای خودکار (AEs)، شبکههای متخاصم مولد (GAN)، شبکههای عصبی سیامی (SNN) و شبکههای عصبی سفارشی اشاره کرد. اگرچه شناسایی اشیاء را میتوان برای ردیابی اشیاء در صورت اعمال فریم به فریم استفاده کرد، اما این یک محدودیت محاسباتی است. در عوض، تشخیص شی باید یک بار اعمال شود، و سپس ردیاب شی میتواند هر فریم را بعد از اولی کنترل کند. این یک فرآیند محاسباتی موثرتر و کمتر دست و پا گیرتر برای انجام ردیابی شی است.
– ردیابی اشیاء بوسیله OpenCV
ردیابی شی OpenCV یک روش محبوب است. این به این دلیل است که OpenCV الگوریتمهای زیادی دارد که به طور خاص برای نیازها و اهداف ردیابی اشیاء یا حرکت بهینه شدهاند. ردیابهای شی OpenCV خاص شامل ردیابهای BOOSTING، MIL، KCF، CSRT، MedianFlow، TLD، MOSSE و GOTURN میشوند. هر یک از این ردیابها برای اهداف مختلف بهترین هستند. به عنوان مثال، CSRT زمانی بهترین است که کاربر به دقت ردیابی شی بالاتر نیاز داشته باشد و بتواند سرعت FPS کندتر را تحمل کند. انتخاب یک الگوریتم ردیابی شی OpenCV به مزایا و معایب آن ردیاب خاص و مزایا بستگی دارد:
- ردیاب KCF در مقایسه با CSRT دقیق نیست اما FPS نسبتاً بالاتری ارائه میدهد.
- ردیاب MOSSE بسیار سریع است، اما دقت آن حتی کمتر از ردیابی با KCF است. با این حال، اگر به دنبال سریعترین روش OpenCV ردیابی شی هستید، MOSSE انتخاب خوبی است.
- ردیاب GOTURN تنها آشکارساز برای ردیابی اشیاء مبتنی بر یادگیری عمیق با OpenCV است. پیاده سازی اصلی GOTURN در Caffe است، اما به OpenCV Tracking API منتقل شده است.
– DeepSORT
الگوریتم DeepSORT یک انتخاب خوب برای ردیابی اشیاء است و یکی از پرکاربردترین چارچوبهای Object Tracking است. اطلاعات ظاهری در الگوریتم ادغام شده است که عملکرد DeepSORT را بسیار بهبود میبخشد. به دلیل ادغام، اشیاء در طول دورههای طولانی انسداد قابل ردیابی هستند – که تعداد سوئیچهای هویت را کاهش میدهد.
– ردیابی اشیاء با متلب
MATLAB یک پلت فرم محاسباتی عددی است از این رو در اجرا در مقایسه با DeepSORT و OpenCV متفاوت است، اما با این وجود انتخاب خوبی برای کارهای ردیابی بصری است. جعبه ابزار Computer Vision در MATLAB الگوریتمهای ردیابی ویدیویی مانند تغییر میانگین تطبیقی پیوسته (CAMShift) و Kanade-Lucas-Tomasi (KLT) را برای ردیابی یک شی یا برای استفاده به عنوان بلوکهای ساختمانی در یک سیستم ردیابی پیچیدهتر ارائه میدهد.
– MDNet
MDNet یک الگوریتم ردیابی بصری سریع و دقیق مبتنی بر CNN است که از شبکه تشخیص اشیاء R-CNN الهام گرفته شده است. این تکنیک با نمونهبرداری از مناطق کاندید و عبور آنها از طریق CNN عمل میکند. سیانان معمولاً روی یک مجموعه داده وسیع از قبل آموزش داده شده و در اولین فریم در یک ویدیوی ورودی اصلاح میشود. بنابراین، MDNet برای موارد استفاده ردیابی شی بلادرنگ بسیار مفید است. با این حال، در حالی که از پیچیدگی محاسباتی بالایی از نظر سرعت و فضا رنج میبرد، همچنان گزینه دقیقی است. جنبههای محاسباتی سنگین MDNet را میتوان با انجام ادغام RoI (منطقه مورد علاقه) به حداقل رساند. این یک راه نسبتا موثر برای اجتناب از مشاهدات تکراری و تسریع استنتاج است.