Зміст[Сховати][Показати]
Однією з найпростіших, але найцікавіших ідей глибокого навчання є виявлення об’єктів. Основна ідея полягає в тому, щоб розділити кожен елемент на послідовні класи, які представляють порівнювані риси, а потім намалювати рамку навколо нього.
Ці відмінні характеристики можуть бути такими ж простими, як форма чи колір, що допомагає нам класифікувати їх.
Додатки Виявлення об'єктів широко використовуються в медичних науках, автономному водінні, обороні та військових, державному управлінні та багатьох інших галузях завдяки суттєвим вдосконаленням комп’ютерного зору та обробки зображень.
У нас є MMDetection, фантастичний набір інструментів для виявлення об’єктів з відкритим кодом, створений на основі Pytorch. У цій статті ми детально розглянемо MMDetection, ознайомимося з ним, обговоримо його функції та багато іншого.
Що таке Виявлення ММД?
Команда Виявлення ММД toolbox було створено як кодову базу Python спеціально для проблем, пов’язаних з ідентифікацією об’єктів і сегментацією примірників.
Використовується реалізація PyTorch, яка створена за модульним принципом. Для розпізнавання об’єктів і сегментації екземплярів широкий спектр ефективних моделей було скомпільовано в різноманітні методології.
Це забезпечує ефективні висновки та швидке навчання. З іншого боку, набір інструментів містить вагові коефіцієнти для понад 200 попередньо навчених мереж, що робить його швидким виправленням у полі ідентифікації об’єктів.
Завдяки можливості адаптувати поточні методи або створити новий детектор за допомогою доступних модулів, MMDetection функціонує як еталон.
Ключовою особливістю панелі інструментів є включення простих, модульних частин, ніж звичайні виявлення об'єкта фреймворк, який можна використовувати для створення унікальних конвеєрів або унікальних моделей.
Можливості порівняльного аналізу цього набору інструментів спрощують створення нового фреймворку детектора на основі існуючого фреймворку та порівняння його продуктивності.
риси
- Популярні та сучасні системи виявлення, такі як Faster RCNN, Mask RCNN, RetinaNet тощо, безпосередньо підтримуються набором інструментів.
- Використання 360+ попередньо навчених моделей для тонкого налаштування (або навчання заново).
- Для відомих наборів даних зору, включаючи COCO, Cityscapes, LVIS і PASCAL VOC.
- На графічних процесорах виконуються всі основні операції bbox і маски. Інші кодові бази, такі як Detectron2, maskrcnn-benchmark і SimpleDet, можна навчати швидше, ніж цю або нарівні з нею.
- Дослідники розбивають виявлення об'єкта на кілька модулів, які потім можна об’єднати, щоб створити унікальну систему виявлення об’єктів.
Архітектура MMDetection
MMDetection визначає загальний дизайн, який можна застосувати до будь-якої моделі, оскільки це набір інструментів із різноманітними попередньо створеними моделями, кожна з яких має власну архітектуру. Ці компоненти складають цю загальну архітектуру:
- Хребет: Основа, така як ResNet-50 без останнього повністю зв’язаного шару, є компонентом, який перетворює зображення на карти об’єктів.
- шия: Шия - це сегмент, який з'єднує хребет з головами. На необроблених картах функцій магістралі він виконує певні коригування або реконфігурацію. Функціональна мережа Pyramid є однією ілюстрацією (FPN).
- Густа Голова (AnchorHead/AnchorFreeHead): це компонент, який працює на щільних областях карт функцій, таких як AnchorHead і AnchorFreeHead, наприклад RPNHead, RetinaHead і FCOSHead.
- RoIExtractor: з використанням операторів, подібних до RoIPooling, це розділ, який витягує функції RoIwise з однієї чи колекції карт функцій. Зразок SingleRoIExtractor витягує функції RoI із відповідного рівня пірамід функцій.
- RoIHead (BBoxHead/MaskHead): це частина системи, яка використовує характеристики ROI як вхідні дані та генерує передбачення для конкретних завдань на основі RoI, наприклад класифікацію/регресію обмежувальної рамки та прогнозування маски.
Побудова однокаскадних і двокаскадних детекторів проілюстрована за допомогою вищезгаданих понять. Ми можемо розробити власні процедури, просто побудувавши кілька нових частин і поєднавши деякі існуючі.
Список моделей, включених до MMDetection
MMDetection надає першокласну кодову базу для кількох відомих моделей і модулів, орієнтованих на завдання. Нижче наведено моделі, створені раніше, і адаптовані методи, які можна використовувати з набором інструментів MMDetection. Список продовжує зростати, оскільки додається все більше моделей і методів.
- Швидкий R-CNN
- Швидший R-CNN
- Маска R-CNN
- RetinaNet
- DCN
- DCNv2
- Каскад R-CNN
- M2Det
- ГХМ
- ScratchDet
- Двоголовий R-CNN
- Сітка R-CNN
- FSAF
- Ваги R-CNN
- GCNet
- HRNet
- Оцінка маски R-CNN
- FCOS
- SSD
- R-FCN
- Змішане тренування точності
- Стандартизація ваги
- Гібридний каскад завдань
- Кероване кріплення
- Узагальнена увага
Побудова моделі виявлення об’єктів за допомогою MMDetection
У цьому підручнику ми будемо використовувати блокнот для співпраці Google, оскільки його легко налаштувати та використовувати.
установка
Щоб встановити все необхідне, ми спочатку встановимо необхідні бібліотеки та клонуємо проект MMdetection GitHub.
Імпорт env
Тепер середовище для нашого проекту буде імпортовано зі сховища.
Імпорт бібліотек і MMdetection
Тепер ми імпортуємо необхідні бібліотеки разом із, звичайно, MMdetection.
Завантажте попередньо підготовлені контрольні точки
Попередньо підготовлені контрольні точки моделі з MMdetection тепер слід завантажити для подальшого коригування та висновку.
Модель будівлі
Тепер ми побудуємо модель і застосуємо контрольні точки до набору даних.
Висновок детектора
Тепер, коли модель правильно побудована та завантажена, давайте перевіримо, наскільки вона чудова. Ми використовуємо високорівневий детектор висновків API MMDetection. Цей API розроблено, щоб полегшити процес висновку.
Результат
Давайте подивимося на результати.
Висновок
Підсумовуючи, набір інструментів MMDetection перевершує нещодавно випущені кодові бази, такі як SimpleDet, Detectron і Maskrcnn-benchmark. З великою колекцією моделей,
MMDetection тепер є найсучаснішою технологією. MMDetection перевершує всі інші кодові бази з точки зору ефективності та продуктивності.
Однією з найприємніших речей MMdetection є те, що тепер ви можете просто вказати на інший файл конфігурації, завантажити іншу контрольну точку та запустити той самий код, якщо хочете змінити моделі.
Раджу подивитися на них інструкції якщо у вас виникнуть проблеми з будь-яким із етапів або ви хочете виконати деякі з них інакше.
залишити коментар