По-бързият R-CNN все още е активно цитиран бенчмарк за сравняване на производителността на откриване на обекти на съвременните мрежови архитектури. В тази публикация ще обсъдим прозренията и приноса на документите.

Въведение — Защо изобщо ни е грижа през 2022 г.?

По-бързият R-CNN беше огромен пробив в компютърното зрение, защото даде възможност за откриване на обекти в реално време и даде възможност за обучение от край до край на тръбопровода за откриване на обекти. След 7 години, през 2022 г., неговите варианти все още се използват като стабилни отправни точки за практически приложения и еталон за сравнение на мрежови архитектури.

  • Документът има значителен изследователски принос, тъй като концептуално е основата на всяка двустепенна схема за откриване на обекти, която е популярен и активен клон на изследването (повърхностно, документът също е цитиран 40K+ пъти).
  • Въпреки че вече не е s.o.t.a (най-съвременното), тръбопроводът все още е изключително ефективен и агностичен по отношение на архитектурата. По-бързият R-CNN винаги е стабилна отправна точка за вашето приложение за откриване на обекти 🙂
  • Статии, които предлагат мрежови архитектури, рутинно сравняват производителността за откриване на обекти в рамката „cascade-mask-rcnn“ (He et al., 2017; Cai et al., 2018), популярен вариант на по-бърз rcnn .
  • Въпреки своята популярност и значение, рамката е много сложна и има много важни детайли, които трябва да бъдат модифицирани за различни случаи на употреба, което мотивира тази публикация. В обучението участват много хиперпараметри и детайли, които понякога не са толкова очевидни.

Преглед

Ще започнем с кратък преглед на каналите Fast R-CNN и Faster R-CNN. След това ще обсъдим популярната рамка с каскадна маска rcnn и как те подобряват производителността на Faster R-CNN. Тази публикация се основава главно на интересните прозрения от статията, вместо на дребните детайли на хиперпараметрите и т.н. Въпреки това, ние ще обсъдим подробностите, включени в внедряването в следващата публикация, така че следете, ако ти си заинтересован!

Докато пишех тази публикация, споменах имплементациите на популярни рамки за откриване на обществени обекти, но публикацията е фокусирана главно върху имплементацията torchvision [R1].

[R1]torchvision.models.detection.faster_rcnn.FasterRCNN —[github][урок]

[R2]facebookresearch/maskrcnn-benchmarkи Detectron2 —[github]

[R3] faster-rcnn.pytorch— [github]

Препратките към споменатите документи са дадени в края на статията.

Резюме и списък с ключови думи

Можете да пропуснете този раздел и да се върнете към него по-късно :)

~Fast R-CNN (Girshick et al., 2014; Girshick et al., 2015)

  • Двуетапно откриване на обект: Генерирайте предложения за региони → изчислете функции за всеки интересен регион (RoI) → класифицирайте всеки RoI като някакъв обект или фон, регресирайте точни координати на кутията.
  • Селективно търсене: Класически подход за генериране на предложения за региони.
  • RoI Pooling беше предложено в Fast R-CNN за получаване на CNN характеристики на различни обекти, които имат различни форми и се редуцират в постоянна форма.
  • Фоновите и активните ROI са балансирани при вземане на проби от данни, тъй като по-голямата част от ROI са фонови и произволното вземане на проби ще доведе до твърде много лесни фонови проби. Извадката, ориентирана към изображенияна Fast R-CNN избира N изображения и извлича (batch_size / N) ROI от всяко изображение по балансиран начин.
  • Класификацията на обектните класове се обучава с допълнителен фоновклас и softmax и загуба на кръстосана ентропия. Регресията на ограничителната кутия се обучава с изгладена загуба на L1, както е предложено от Girshick et al., 2015. Два обекта се научават съвместно с комбинирана загуба.

По-бърз R-CNN (Ren et al., 2015)

  • Предложенията за региони, базирани на селективно търсене, бяха основното пречка за скоростта на извода. По-бързият R-CNN предложи подход, базиран на обучение, базиран на мрежи за регионални предложения за точни и евтини регионални предложения.
  • Мрежите за предложения за региони (RPN) се плъзгат през картите на характеристиките на CNN, за да предскажат резултатите за обектност — вероятността от регресии на обект или фон и кутия — прецизиране на точните координати на кутията на k референтни закотвени кутии.
  • RPN споделя функции с оригиналната мрежа за откриване Fast R-CNN и се обучава съвместно. Авторите също така обсъждат 3 схеми за съвместно обучение на RPN и Fast R-CNN.

Маска R-CNN (He et al., 2017)

  • Обобщете по-добра базова линия за обучение на Faster R-CNN, което включва по-добро увеличаване на данните, хиперпараметри и моделни архитектури.
  • Предложена замяна на RoIPool, наречена RoIAlign, която позволява подравняване пиксел към пиксел на RoI.
  • Предложена рамка, способна на плътни прогнози въз основа на регионалните предложения на RPN, и демонстрирана ефективността при оценка на ключови точки и сегментиране на екземпляри.

Cascade R-CNN (Cai et al., 2018)

  • Проучете и наблюдавайте интересни предизвикателства и явления в проблема с прага на припокриване на IoU.
  • Обучението с малък праг на IoU води до шумни проби, а обучението с големи прагове влошава производителността поради пренастройване и предложения за региони с ниско качество в сравнение с обучението.
  • Моделите, обучени с помощта на специфични прагове на IoU, може да са неоптимални, когато се оценяват по други прагове на IoU или са дадени предложения за регион с различно ниво на праг на IoU.
  • Предложете каскада от специализирани детектори за разрешаване на предизвикателствата и успя значително да подобри производителността.

Бърз преглед на Faster R-CNN

Двустепенно откриване на обект

При двустепенно откриване на обекти (Girshick et al., 2014) се използва масив от предложения за региони, за да се представи местоположението на потенциални обекти, които са представени като жълти кутии на фигурата по-горе. След това всяко предложение за регион се оценява допълнително, така че да се определи класът и да се прецизира точното местоположение на обекта.

Предишни подходи като R-CNN (Girshick et al., 2014) и Fast R-CNN (Girshick et al., 2015) разчитат на евристика като „селективно търсене“ за изчисляване на предварително дефинирани регионални предложения от изображението. Тези първоначални регионални предложения след това се обработват от базирани на обучение методи, които решават дали всяко предложение е действителен обект (т.е. без фон), присвояват класове на предложенията и прецизират ограничителната кутия.

Бърз R-CNN тръбопровод

В рамката Fast R-CNN изображението и предварително изчислената област на интереси се предоставят на модела. Изображението се редуцира до карта на характеристики с помощта на CNN, а функцията за всяка RoI се изрязва въз основа на позицията на RoI. Тази изрязана характеристика представлява информацията от високо ниво на този RoI.

След това се прилага слой RoIPooling за обработка на всяка изрязана функция в същия размер, така че да може да бъде обработена от MLP. Серия от напълно свързани слоеве създава вектори на характеристиките на RoI за всяка RoI. И накрая, векторът на характеристиките се използва за 1) присвояване на класове обекти на RoI и 2) прецизиране на първоначалните координати на кутията на RoI.

Бързо R-CNN обучение

Целта на Fast R-CNN обучението е точно да се предскажат класове обекти и уточнения на ограничителната кутия от RoI. Методите за предлагане на региони като селективно търсене генерират ~2000 ROI за всяко изображение. Обикновено има много по-малко обекти в изображението, поради което огромен брой от предложенията за региони съдържат фонови (отрицателни) ROI в сравнение с ROI на преден план, които съдържат действителни обекти, представляващи интерес. Следователно повечето методи обучават модела с балансирана партида ROI, където съотношението на положителните и отрицателните ROI е строго контролирано.

При обучението на Fast R-CNN с размер на партидата K=128, ние четем N=2 изображения от набора от данни и избираме 64=K/N RoI от всяко изображение, с 16 положителни и 48 отрицателни RoI. Предложения за обекти, които имат припокриване на пресичане над обединение (IoU) с граница на истината за земята от поне 0,5, се считат за положителни и отрицателни, ако тази стойност е между [0,1, 0,5].

За всяка RoI моделът предвижда 1) класа на обекта и 2) уточненията на ограничителната кутия. За прогнозиране на класа, отрицателните ROI са етикетирани като клас „0“, а положителните RoI са етикетирани като съответния клас обект. Моделът се обучава с помощта на кръстосаната ентропия между прогнозата и основната истина. Предвижданията за уточняване на ограничителната кутия се опитват да предскажат отместванията xywh между предложението за регион и точното местоположение на свързания g.t. ограничителна кутия. Това се прави чрез минимизиране на изгладена MSE загуба (Girshick et al., 2015) между прогнозата и истината на земята. По-късно ще дефинираме точно как се изчисляват компенсациите заедно с кода.

Двата клона на „Fast R-CNN RoI head“ се обучават съвместно с комбинирана функция за загуба. Обърнете внимание, че регресионната загуба на ограничителната рамка се изчислява само когато предложението за обект е клас на преден план. Това е описано като „[u ≥ 1]=1, ако u≥1 иначе е 0“ в уравнението по-долу.

По-бърз R-CNN

Таблицата по-горе описва времето, необходимо за всяка стъпка на извод. Първият ред (SS+Fast R-CNN), който описва рамката Fast R-CNN, показва, че вместо инструмента за извличане на функции на CNN, основното тясно място е етапът „предложение“, който извършва селективно търсене (SS), за да намери регионални предложения. За да замени селективното търсене, Faster R-CNN (Ren et al., 2015) предлага мрежи за регионални предложения (RPN), които споделят функции с инструмента за извличане на конволюционни характеристики за ефективно генериране на регионални предложения. Резултатите показват богати, но почти безплатни предложения за региони.

Цялостният тръбопровод на Faster R-CNN е много подобен на Fast R-CNN. Мрежата CNN извлича функции от изображението. Докато Fast R-CNN извършва селективно търсене на изображението, за да генерира регионални предложения, мрежата за регионални предложения (RPN) използва функциите на CNN, за да генерира регионални предложения за Faster R-CNN. RPN извежда ~2K регионални предложения. Предложенията за региони и функциите на CNN след това се подават към главата Fast R-CNN, която предвижда класификация на обекти и регресия на ограничителната кутия. Редове 8~10 във фрагмента по-долу описват внедряването на високо ниво.

Регионални мрежи за предложения

За генериране на предложения за региони, мрежа от предложения за региони се плъзга през картата на конволюционните характеристики. Тази малка мрежа получава част от картата на функциите и предвижда предложения за множество региони. Най-много на всяко местоположение на плъзгащ се прозорец могат да бъдат направени k предложения за региони. Тези k предложения се основават на k референтни анкерни кутии, които се дефинират като комбинация от скали={128, 256, 512} и пропорции={1:1, 1:2, 2:1}, използва се k=9 в Faster R-CNN.

По-конкретно, картата на характеристиките се проектира в междинен слой, който се използва за извършване на 2 прогнози: 1) резултатът за обектност (cls) прогнозира вероятността за предложение за регион въз основа на всяка k котва, центрирана върху прозорецът да бъде обект или да не е обект и 2) регресионният слой(reg) предвижда координатите на k кутии. Регресионният слой предвижда уточненията на кутията, които са относителни към съответните референтни кутии за закотвяне. Чрез комбиниране на референтната котва, прецизиране на координатната кутия от регресионния слой и филтриране на предложенията по прогнозиран резултат за обектност, моделът може да предвиди точни предложения за региони.

Интересното е, че плъзгащият се прозорец, който анализира картата на конволюционните характеристики и генерира междинния слой, може да бъде представен като един слой на конволюция с размер на ядрото n × n и без подплата. След това може да се използва 1×1 конволюционен слой за предсказване на резултата за обектност или уточненията на кутията от междинните характеристики. Това наистина е демонстрирано в кода по-горе (имайте предвид, че self.conv може да има множество слоеве в тази реализация).

Резултатът за обектност може да бъде обучен чрез присвояване на етикет на двоичен клас (дали е обект или не) на всяка котва и се измерва загубата на кръстосана ентропия. Подобно, но малко по-различно от „фоновия“ клас за Fast R-CNN обучение, една котва се счита за положителна, ако има припокриване на IoU по-високо от 0,7, и се счита за отрицателно припокриване на IoU е по-ниско от 0,3 за всички полета за истина на земята. Анкери с припокриване на IoU между тях не се използват за оценка на обективността на обучението.

И накрая, има някои подробности, за които трябва да се внимава по време на обучението и изводите с помощта на RPN. По време на обучението всички трансгранични котви се игнорират, така че да не допринасят за загубата, но всички котви се запазват по време на извода. Авторът предлага изрязване на кръстосани гранични полета към границата на изображението по време на теста. Немаксималното потискане (NMS) с праг от 0,7 се прилага към регионални предложения, за да се премахнат излишните предложения. По време на теста за откриване се използват първите N предложения за класиране въз основа на оценки за обектност.

По-бързо R-CNN обучение

Faster R-CNN е комбинация от Fast R-CNN и обучаеми регионални предложения, използвайки мрежата за регионални предложения. Следователно има две основни цели на обучението:

  • Модул Fast R-CNN — кутийна регресия (изгладен L1), класификация на обекти (кръстосана ентропия)
  • Мрежа за предложение за регион—резултат на обекта (кръстосана ентропия), регресия в кутия

Както Fast R-CNN, така и RPN могат да бъдат обучени независимо, но тъй като обучението на един модул ще промени полезните тегла за другия модул, Ren et al., 2015 обсъжда няколко подхода за изучаване на унифицирана мрежа както за Fast R-CNN, така и за RPN от функции за споделяне като описаните на фигурата по-горе. Авторите обсъждат 3 схеми на обучение, както следва:

  • Подход на Редуващо се обучение за първо обучение на RPN, след това използвайте предложенията от RPN за обучение на Fast R-CNN. След това мрежата, настроена от Fast R-CNN, се използва за инициализиране на RPN и този процес се повтаря.
  • Приблизително съвместно обучениеподход за прогнозиране на регионални предложения и използване на регионални предложения за изчисляване на загубата на RPN и използване на тези регионални предложения също за обучение на Fast R-CNN детектора. Това е ефективно, защото се прави само едно преминаване напред/назад, докато тренирате RPN и Fast R-CNN.
  • Подходът на неприблизителното съвместно обучение се взема предвид, тъй като предложенията за региони, използвани в RoIPpooling на Fast R-CNN, наистина са функции на входното изображение. С други думи, градиентите от Fast R-CNN детектора също трябва да се вливат в RPN и конволюционните характеристики, включени в изготвянето на регионални предложения. RoIPooling обаче е приблизително съвместно обучение, тъй като градиентите са нарязани между тях.

Авторите на Ren et al., 2015 възприемат алтернативния подход за обучение по подразбиране, но отбелязват, че подходът за приблизително съвместно обучение е много по-бърз, като същевременно демонстрира близки резултати емпирично. По-късните експерименти в Mask R-CNN (He et al., 2017) всъщност приемат приблизителната стратегия за съвместно обучение. Наистина, примерният код GeneralizedRCNN по-горе демонстрира този подход. Авторите обаче описват подхода на неприблизителното съвместно обучение като нетривиален и не предоставят експерименти по отношение на него.

Сега ще се потопим във вариантите на rcnn с каскадна маска, които подобряват производителността на Faster R-CNN!! 🔥

Подобряване на по-бърз R-CNN

Mask R-CNN (He et al., 2017) се фокусира основно върху предлагането на мощна базова система, например сегментиране, но авторите също предлагат значително по-добра базова линия за откриване на обекти, базирана на Faster R-CNN. Първо ще обсъдим хиперпараметрите и алгоритмите за подобряване на ефективността на откриване на обекти, които са описани в Приложението на He et al., 2017.

  • актуализирана базова линия: увеличаване на стъпките на обучение от 120k → 180k, увеличаване на прага за последваща обработка на NMS от 0,3 → 0,5.
  • обучение от край до край (e2e): Използвайте приблизителната стратегия за съвместно обучение вместо оригиналната алтернативна стратегия за обучение, което всъщност подобрява представянето.
  • ImageNet-5k: Предварително обучете инструмента за извличане на функции на ImageNet-5k вместо поднабора 1k.
  • увеличаване на времето за обучение: Произволно мащабирайте изображения като увеличение на данните, допълнително увеличете бюджета за обучение до 260k
  • по-дълбоко: отидете по-дълбоко с помощта на модела ResNext152
  • Нелокални: Подобрете архитектурата на модела чрез използване на нелокални блокове
  • Увеличаване на тестовото време: Използвайте TTA на мащаби на изображението от [400, 1200] пиксела със стъпка от 100 и на техните хоризонтални обръщания.

Има и някои модификации, адаптирани от Lin et al., 2017, които не са споменати в тази аблация:

  • Изображенията се преоразмеряват така, че техният мащаб (по-късият край) е 800 пиксела
  • Използват се 15 референтни котви с мащаби={32, 64, 128, 256, 512} и пропорции={1:1, 1:2, 2:1}.

RoIAlign

RoIAlign е заместител на RoIPooling, който позволява подравняване пиксел към пиксел без квантуване. Авторите смятат, че това е основната липсваща част от Fast/Faster R-CNN за плътни задачи за прогнозиране, като например сегментиране, и намират тази актуализация за решаваща за сегментирането на примери. Слоят все още предоставя фини подобрения на производителността на ниво ограничителна кутия. Нека първо да разгледаме проблемите на RoIPooling.

RoIPool е стандартна операция за извличане на малка карта на характеристиките (напр. 7×7) от всяка RoI, която е дадена като нещо като черната кутия по-горе. RoIPool първо квантува ROI с плаващо число до дискретната детайлност на картата на характеристиките (т.е. червеното поле). Тази квантована ROI след това се подразделя на пространствени контейнери, които сами по себе си са квантувани (т.е. сини точки) и накрая стойностите на характеристиките, обхванати от всеки контейнер, се агрегират (обикновено чрез максимално обединяване).

Вместо да квантува координатите, за да индексира най-близката дискретна стойност на картата на характеристиките, RoIAlign използва билинейна интерполация, за да изчисли стойностите на 4 близки характеристики и да ги агрегира. Не се извършва квантуване.

Сегментиране на инстанция

Сегментирането на екземпляри е задача за откриване на ограничителната кутия на обектите, като същевременно прецизно сегментирате всеки екземпляр. Въпреки че темата може да изглежда неуместна, бих искал накратко да спомена, че авторите показаха, че съвместното изучаване на маската и ограничителната кутия е от полза за детектора. В таблицата по-горе производителността се влоши, когато клонът на маската беше премахнат в експеримента Faster R-CNN, RoIAlign.

Освен това, моля, имайте предвид, че въпреки че разглеждахме документа като вариант на Faster R-CNN от гледна точка на откриване на обекти, Mask R-CNN е невероятна базова линия, която може да реши много други задачи, включващи локализация, използвайки методологиите на двустепенни детектори и РПН.

Ние показваме най-добри резултати във всичките три писти от набора от предизвикателства на COCO, включително сегментиране на екземпляри, откриване на обект в ограничителна кутия и откриване на ключова точка на човек. Без звънци и свирки, Mask R-CNN превъзхожда всички съществуващи записи с единичен модел за всяка задача, включително победителите в предизвикателството COCO 2016. ние предвиждаме двоична маска за всеки клас независимо, без конкуренция между класовете

Най-накрая ще обсъдим нашата последна статия, наречена Cascade R-CNN (Cai et al., 2018), която се основава на много проницателно наблюдение относно праговете. 🔍

IoU праг

Видяхме, че при двустепенно откриване на обект се дефинира IoU праг, за да се определи дали предложението за регион е положително (обект) или отрицателно (фон). Предложение за регион се счита за положително, ако припокриването на IoU с обект на наземна истина е по-голямо от прага или отрицателно в противен случай. Обсъдихме също, че Fast R-CNN и по-нови методи използват IoU праг от 0,5. Изглежда достатъчно справедливо, но в Cai et al., 2018 авторите предполагат, че проблемът с прага може да не е толкова тривиален.

Първо, авторите показват, че често използваният праг на IoU от 0,5 може да позволи много откривания, които се считат за фалшиви положителни резултати за хората, както е показано на фигурата по-горе. Добре, тогава ако тренираме с по-висок праг като 0,7, проблемът е решен? Фигура (d) по-долу илюстрира производителността на откриване на обект за 3 различни прагове, използвани за обучение, където оста x е IoU прагът, използван за измерване на AP. Можем да видим, че използването на по-висок праг има по-лоша производителност при откриване на обект в повечето части на кривата.

Авторите посочват 2 проблема, които правят много предизвикателство увеличаването на прага и допускането само на висококачествени кутии.

  1. Пренастройване, тъй като разнообразието на набора от данни експоненциално намалява с увеличаването на прага на припокриване на IoU.
  2. Несъответствието във времето за извод между IoU: въпреки че може да успеем изкуствено да извадим такива добри регионални предложения по време на обучението, RPN не винаги е в състояние да генерира регионални предложения с високо припокриване на IoU.

Има ли нещо, което можем да направим 🙁? Графиките (c, d) представят две интересни доказателства, върху които можем да работим. Първо, диаграма (c) показва припокриването на IoU, измерено преди и след регресията на ограничителната кутия на главата на Fast R-CNN.

  • Обърнете внимание, че прецизността на ограничителната кутия има тенденция да се подобрява (напр. първоначална кутия с 0,7 IoU припокриване се прецизира, за да има ~0,8 IoU припокриване), тъй като повечето от кривите са над сивата линия.
  • Особено когато въведените данни имат сходни IoU прагове с тези, използвани по време на обучението. Регресор на ограничителна кутия, обучен с предложения за региони с ›0,5 IoU припокриване, вероятно ще направи добри уточнения, когато са дадени подобни изображения на 0,5~0,6 IoU припокриване.

След това, в диаграма (d), детекторът, обучен с u = 0,5, превъзхожда детектора с u = 0,6 за примери с ниски IoU, като същевременно го представя по-слабо при по-високи нива на IoU. Важно е да отбележим, че като цяло детектор, оптимизиран на едно IoU ниво, не е непременно оптимален на други нива. За да обобщим предизвикателствата, наблюдавани по отношение на прага на припокриване на IoU, който трябва да се използва,

  • Използването на висок праг на припокриване на IoU за обучение води до 1) пренастройване поради намалени проби и 2) несъответствие във времето за извод поради лоши предложения за региони.
  • Детектор, оптимизиран за определен праг на IoU, може да не е оптимален за други прагове на IoU. Необходим е оптимизатор, обучен с различен праг, за да се постигне оптимална производителност на друг праг.

... ние определяме качеството на една хипотеза като нейния IoU с основната истина, а качеството на детектора като прага на IoU, който сте използвали, за да го обучите. Основната идея е, че един детектор може да бъде оптимален само за едно ниво на качество.

Каскада R-CNN

И така, как можем да оптимизираме за всички нива на припокриване на IoU? Първо ще започнем с обсъждане на два тривиални подхода към проблема и ще предположим, че комбинацията от тях може да бъде най-ефективна. Рамката Faster R-CNN е показана на фигура (a) по-долу. Конволюционните характеристики се дават на RPN(H0) и се създават обектни предложения B0. След това тези предложения се използват за анализиране на картата на конволюционните характеристики и главата на RoI прогнозира окончателните уточнения на ограничителната кутия B1 и обекти клас C1.

Първият подход е итеративно прецизиране на ограничителната кутия, описано на фигура (b). Усъвършенстваните предложения за обект (или ограничаващи полета) C1 се използват за още веднъж анализиране на картата на конволюционните характеристики. Същата мрежа Fast R-CNN предвижда нов и евентуално подобрен клас на обекти C2 и ограничаващи кутии B2. Тази процедура може да се повтаря итеративно. Въпреки това, авторите предполагат, че тази идея пренебрегва два проблема.

  1. IoU може да се увеличи, докато усъвършенстването продължава. Както беше показано по-рано, регресор, обучен при u = 0,5, е неоптимален за по-високо припокриване на IoU.
  2. Разпределението на ограничителните кутии се променя значително след всяка итерация. Въпреки че регресорът е оптимален за първоначалното разпределение, след това може да бъде доста неоптимален.

Друг подход е да се разработи ансамбъл от класификатори, всеки от които е оптимизиран с различен праг на IoU. Това е описано на фигура (c), а загубата е уравнението по-долу, където U={0,5, 0,55, · · · , 0,75} е нарастващ набор от прагове на IoU. Този подход е погрешен, тъй като наборът от положителни проби намалява бързо с увеличаване на u поради лошите предложения за регион на RPN, както се вижда в най-лявата хистограма по-долу, която илюстрира качеството на първоначалните предложения за регион на RPN. Това означава, че детекторите с високи IoU прагове са много склонни към пренастройване и ниско качество при извод, което ги прави безсмислени.

И накрая, каскадната R-CNN рамка е описана на фигура (d), която използва каскада от специализирани регресори, които се обучават с нарастващи прагове на припокриване на IoU. За разлика от итеративното усъвършенстване на кутия на (b), което се прилага като последваща обработка, рамката се използва както за обучение, така и за извод. Използвайки предишното наблюдение, че регресията на ограничителната кутия обикновено подобрява качеството на следващото предложение за обект, можем заедно да увеличим прага на IoU, използван за обучение.

Авторите предлагат прецизиране на резултатите от RPN 3 пъти с глави на Fast R-CNN, обучени с помощта на прага на припокриване на IoU {0,5, 0,6, 0,7} в ред. Хистограмата по-горе илюстрира как качеството на кутиите се подобрява в регресионните слоеве. Може би си мислите, че предложеният метод е много подобен на итеративната стратегия за усъвършенстване на кутии от (b), но сте изненадани да видите големите подобрения от Cascade R-CNN.

Наистина, аблациите са много завладяващи, тъй като успяха да подобрят производителността на различни рамки за откриване и основни архитектури със значителна разлика.

Забележки

Еталонният показател cascade-mask-rcnn е комбинация от Mask R-CNN и Cascade R-CNN, където слоят RoIAlign и подобрените хиперпараметри на Mask R-CNN се използват заедно с каскадните модули за регресия на ограничителната кутия на Cascade R-CNN. Общата реализация може да бъде намерена в mmDetection.

Тази публикация беше пътуване за облекчаване на техническия ми дълг, но наистина ми хареса да гледам прозренията на легендарните документи в областта на компютърното зрение. По-специално, бях развълнуван да прочета за слоя neet RoIAlign и концепцията за референтни анкерни кутии+леко усъвършенстване, които бяха страхотна абстракция за представяне на безкрайните възможности на ограничаващи кутии, центрирани в дадена точка.

Едно нещо, което почувствах, беше, че има място за подобрение в заобиколното решение на двустепенните детектори на проблема с дисбаланса на класа между RoI на преден план и фон. Стратегията за вземане на проби 1:3 беше използвана от първото предложение на R-CNN (Girshick et al., 2014).

Освен това подходът на неприблизителното съвместно обучение към мрежите за обучение също ми се стори много обещаващ.

Не съм включил по-нови стратегии за откриване на обекти в тази статия, но очаквам с нетърпение да прегледам много документи за откриване на обекти, така че следете, ако се интересувате 😇!

Препратки

Girshick, R., Donahue, J., Darrell, T., & Malik, J. (2014). Богати йерархии на функции за точно откриване на обекти и семантично сегментиране. В Процедури от конференцията IEEE за компютърно зрение и разпознаване на образи (стр. 580–587).

Гиршик, Р. (2015). Бързо r-cnn. В Процедури от международната конференция на IEEE за компютърно зрение (стр. 1440–1448).

Ren, S., He, K., Girshick, R., & Sun, J. (2015). По-бърз r-cnn: Към откриване на обекти в реално време с мрежи за регионални предложения. Напредък в системите за обработка на невронна информация, 28.

Lin, T. Y., Dollár, P., Girshick, R., He, K., Hariharan, B., & Belongie, S. (2017). Функционални пирамидални мрежи за откриване на обекти. В Процедури от конференцията IEEE за компютърно зрение и разпознаване на образи (стр. 2117–2125).

He, K., Gkioxari, G., Dollár, P., & Girshick, R. (2017). Маска r-cnn. В Процедури от международната конференция на IEEE за компютърно зрение (стр. 2961–2969).

Cai, Z., & Vasconcelos, N. (2018). Cascade r-cnn: Задълбочаване във висококачественото откриване на обекти. В Процедури от конференцията IEEE за компютърно зрение и разпознаване на образи (стр. 6154–6162).