Съдържание[Крия][Покажи]
Една от най-простите, но най-интригуващите идеи в дълбокото обучение е откриването на обекти. Основната идея е да разделите всеки елемент на последователни класове, които представляват сравними характеристики и след това да нарисувате кутия около него.
Тези отличителни характеристики могат да бъдат толкова прости като форма или цвят, което помага в способността ни да ги категоризираме.
Приложенията на Откриване на обект са широко използвани в медицинските науки, автономното шофиране, отбраната и военните, публичната администрация и много други области благодарение на значителните подобрения в компютърното зрение и обработката на изображения.
Тук имаме MMDetection, фантастичен набор от инструменти за откриване на обекти с отворен код, изграден на Pytorch. В тази статия ще разгледаме подробно MMDetection, ще се запознаем с него практически, ще обсъдим функциите му и много повече.
Какво е MMDetection?
- MMDetection toolbox е създаден като кодова база на Python специално за проблеми, включващи идентификация на обекти и сегментиране на екземпляри.
Използва се внедряването на PyTorch и е създадено по модулен начин. За разпознаване на обекти и сегментиране на екземпляри е компилиран широк набор от ефективни модели в различни методологии.
Позволява ефективно заключение и бързо обучение. От друга страна, кутията с инструменти включва тегла за над 200 предварително обучени мрежи, което я прави бърза корекция в полето за идентификация на обекти.
С възможност за адаптиране на настоящите техники или създаване на нов детектор с помощта на наличните модули, MMDetection функционира като еталон.
Ключовата характеристика на кутията с инструменти е включването на прости, модулни части от нормалните откриване на обект рамка, която може да се използва за създаване на уникални тръбопроводи или уникални модели.
Възможностите за сравнителен анализ на този набор от инструменти улесняват изграждането на нова рамка на детектор върху съществуваща рамка и сравняването на нейната производителност.
Характеристики:
- Популярни и модерни рамки за откриване, като Faster RCNN, Mask RCNN, RetinaNet и др., се поддържат директно от инструментариума.
- Използване на 360+ предварително обучени модели за фина настройка (или ново обучение).
- За добре познати набори от данни за зрение, включително COCO, Cityscapes, LVIS и PASCAL VOC.
- На GPU се изпълняват всички основни операции с bbox и маска. Други кодови бази, като Detectron2, maskrcnn-benchmark и SimpleDet, могат да бъдат обучени с по-бърза скорост от или наравно с тази.
- Изследователите разбиват откриване на обект рамка в няколко модула, които след това могат да бъдат комбинирани, за да се създаде уникална система за откриване на обекти.
MMDetection архитектура
MMDetection определя общ дизайн, който може да се приложи към всеки модел, тъй като е набор от инструменти с различни предварително изградени модели, всеки от които има своя собствена архитектура. Следните компоненти изграждат тази цялостна архитектура:
- Гръбнак: Backbone, като ResNet-50 без крайния напълно свързан слой, е компонентът, който преобразува изображение в карти на функции.
- врат: Вратът е сегментът, който свързва гръбнака с главите. На необработените карти на функциите на опорната мрежа той прави определени корекции или преконфигурации. Feature Pyramid Network е една илюстрация (FPN).
- DenseHead (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.
Импортиране на окол
Средата за нашия проект вече ще бъде импортирана от хранилището.
Импортиране на библиотеки и MMdetection
Сега ще импортираме необходимите библиотеки, заедно с MMdetection разбира се.
Изтеглете предварително обучените контролни точки
Предварително обучените контролни точки на модела от MMdetection сега трябва да бъдат изтеглени за по-нататъшна настройка и извод.
Модел на сградата
Сега ще конструираме модела и ще приложим контролните точки към набора от данни.
Извод на детектора
Сега, след като моделът е правилно конструиран и зареден, нека проверим колко е отличен. Ние използваме детектор за изводи на високо ниво на API на MMDetection. Този API е създаден, за да улесни процеса на извод.
Резултат
Нека да разгледаме резултатите.
Заключение
В заключение, кутията с инструменти MMDetection превъзхожда наскоро пуснатите кодови бази като SimpleDet, Detectron и Maskrcnn-benchmark. С голяма колекция от модели,
MMDetection вече е най-съвременна технология. MMDetection превъзхожда всички други кодови бази по отношение на ефективност и производителност.
Едно от най-хубавите неща за MMdetection е, че сега можете просто да посочите различен конфигурационен файл, да изтеглите различна контролна точка и да изпълните същия код, ако искате да промените моделите.
Съветвам ви да ги разгледате инструкции ако срещнете проблеми с някой от етапите или искате да извършите някои от тях по различен начин.
Оставете коментар