Это сообщение в блоге живое, и я буду обновлять его по мере публикации новых статей.

Обновления:

  • Добавить RTM3D (15.01.2020)
  • Добавить виртуальную камеру из Mapillary (16.02.2020)
  • Добавить разделенный структурированный многоугольник (21.03.2020)
  • Добавить Refined MPL (22.03.2020)
  • Добавить MonoPair (04.06.2020)
  • Добавить ДЫМ (05.06.2020)
  • Добавить "Земля не плоская" (28.06.2020)
  • Добавить D4LCN (22.08.2020)
  • ЗАДАЧИ: Добавить (PseudoLidarV3, ZoomNet, ApolloCar3D, 6D-VNet и PartParse)

Обнаружение 3D-объектов - важная задача для автономного вождения. Многие важные области автономного вождения, такие как прогнозирование, планирование и управление движением, обычно требуют точного представления трехмерного пространства вокруг эго-транспортного средства.

В последние годы исследователи использовали высокоточное лидарное облако точек для точного обнаружения трехмерных объектов (особенно после того, как основополагающая работа PointNet показала, как напрямую управлять облаком точек с помощью нейронных сетей). И все же у лидаров есть свои недостатки, такие как высокая стоимость и чувствительность к неблагоприятным погодным условиям. Возможность выполнять обнаружение монокулярных 3D-объектов с помощью камер RGB также увеличивает модульную избыточность на случай выхода из строя других более дорогих модулей. Таким образом, как обеспечить надежное и точное трехмерное восприятие с одним или несколькими изображениями RGB по-прежнему остается святым Граалем восприятия при автономном вождении.

Монокулярное обнаружение 3D-объектов (mono3DOD) не является новой идеей, но в последнее время наблюдается взрывной интерес к этой теме. Я ожидал, что в 2020 году выйдет больше статей, поскольку разрыв в производительности между методами на основе лидаров и методами на основе изображений по-прежнему огромен.

(Относительно) исчерпывающий обзор

В этом посте рассматривается недавняя разработка этого важного вопроса обнаружения монокулярных 3D-объектов. Здесь, в этом посте, я просматриваю 32 статьи по этой теме по состоянию на ноябрь 2019 года (отредактируйте: это сообщение в блоге живое, и я буду обновлять его по мере публикации новых статей). Это относительно полный обзор всех статей по mono3DOD в литературе. Документы можно условно разделить на 4 группы: преобразование представления, ключевые точки и форма, геометрические рассуждения на основе ограничений 2D / 3D и прямое создание 3D bbox. Обратите внимание, что одна статья обычно охватывает несколько категорий, и поэтому критерий группировки является свободным.

Для просмотра резюме статей в виде таблицы, пожалуйста, обратитесь к моей странице github или к этой таблице документов google.



patrick-llgc / Learning-Deep-Learning
Бумажные заметки о глубоком обучении и машинном обучении - patrick-llgc / Learning-Deep-Learning github.com



Поднимите 2D в 3D? Трудно, но сговорчиво

Обнаружение 3D-объекта на 2D-изображении - непростая задача. Это в корне некорректно, поскольку критическая информация об измерении глубины сворачивается во время формирования 2D-изображения (для получения дополнительной информации см. Мой предыдущий пост о подъеме 2D-bbox в 3D). Однако при определенных условиях и при наличии надежной предварительной информации эта задача все еще решаема. В частности, при автономном вождении большинство интересных объектов, например, транспортных средств, представляют собой жесткие объекты с хорошо известной геометрией, поэтому трехмерную информацию о транспортных средствах можно восстановить с помощью монокулярных изображений.

1. Преобразование представления (BEV, псевдолидар)

Камеры обычно устанавливаются на крышах некоторых прототипов беспилотных автомобилей или за зеркалами заднего вида, как обычный видеорегистратор. Поэтому изображения с камеры обычно имеют перспективный вид мира. Этот вид легко понять водителям-людям, поскольку он похож на то, что мы видим во время вождения, но создает две проблемы для компьютерного зрения: окклюзию и изменение масштаба из-за расстояния.

Один из способов решить эту проблему - преобразовать перспективные изображения в формат с высоты птичьего полета (BEV). В BEV автомобили имеют одинаковый размер, инвариантный к расстоянию до эго-транспортного средства, и разные транспортные средства не перекрываются (с учетом разумного предположения, что ни одна машина не находится на вершине других автомобилей в трехмерном мире при нормальных условиях вождения). Отображение обратной перспективы (IPM) - это широко используемый метод для создания изображения BEV, но он предполагает, что все пиксели находятся на земле, и для камеры известна точная оперативная внешняя (и внутренняя) информация. Однако внешние параметры необходимо калибровать онлайн, чтобы они были достаточно точными для IPM.

Это то, что делает BEV IPM OD (IV 2019). Он использует данные IMU для онлайн-калибровки внешней информации для получения более точных изображений IPM, а затем выполняет на них обнаружение объектов. Их демо на Youtube можно увидеть здесь.

Преобразование орфографических элементов (OFT) (BMVC 2019) - еще один способ поднять перспективные изображения до BEV, но с помощью структуры глубокого обучения. Идея состоит в том, чтобы использовать преобразование орфографических объектов (OFT) для преобразования объектов на основе перспективных изображений в ортогональные виды с высоты птичьего полета. ResNet-18 используется для извлечения деталей перспективного изображения. Затем формируются функции на основе вокселей путем накопления функций на основе изображений по проецируемой области вокселей. (Этот процесс напоминает мне обратную проекцию при реконструкции КТ-изображения.) Затем воксельные элементы сжимаются по вертикали, чтобы получить ортогональные элементы наземной плоскости. Наконец, для обоснования и уточнения карты BEV используется другая сеть сверху вниз, подобная ResNet.

Идея OFT действительно проста и интересна, и она относительно хорошо работает. Хотя шаг обратной проекции можно было бы улучшить, используя некоторые эвристики для лучшей инициализации воксельных функций, вместо того, чтобы наивно выполнять обратную проекцию. Например, особенности изображения в действительно большом bbox не могут соответствовать очень удаленным объектам. Еще одна проблема, связанная с этим методом, - это предположение о точных внешних данных, которые могут быть недоступны в Интернете.

Другой способ преобразования перспективных изображений в BEV - это BirdGAN (IROS 2019), который использует GAN для преобразования изображения в изображение. В документе были достигнуты отличные результаты, но, как признается в документе, преобразование в пространство BEV может быть хорошо выполнено только с фронтальным расстоянием всего от 10 до 15 метров и, таким образом, имеет ограниченное использование.

Затем введите направление работы над идеей псевдолидара. Идея состоит в том, чтобы сгенерировать облако точек на основе предполагаемой глубины изображения, благодаря недавнему прогрессу в оценке глубины монокуляра (что само по себе является горячей темой в области автономного вождения, которую я рассмотрю в будущем). Предыдущие попытки использования изображений RGBD в значительной степени рассматривали глубину как четвертый канал и применяли обычные сети к этому входу с минимальными изменениями в первом слое. Multi-Level Fusion (MLF, CVPR 2018) - один из первых, кто предложил перенести информацию о предполагаемой глубине в 3D. Он использует информацию о предполагаемой глубине (с фиксированными предварительно обученными весами с помощью MonoDepth) для проецирования каждого из пикселей изображения RGB в трехмерное пространство, а затем это генерируемое облако точек объединяется с функциями изображения для регресса трехмерных ограничивающих рамок.

Псевдолидар (CVPR 2019), пожалуй, самое известное из этого направления работ. Он вдохновлен MLF и использует сгенерированный псевдолидар более грубой силой, напрямую применяя современные детекторы 3D-объектов на основе лидаров. Авторы утверждают, что представление имеет значение, а свертка на карте глубины не имеет смысла, поскольку соседние пиксели на изображениях глубины могут быть физически далеко в трехмерном пространстве.

Однако за результатами SOTA псевдолидара стоит одна оговорка. Автор указал, что есть некоторое перекрытие между обучающими данными DORN, стандартного средства оценки глубины, и данные валидации псевдолидара 3DOD. Следовательно, существует потенциальная утечка информации между обучением и проверкой. Это частично подтверждается ForeSeE, который сообщил о гораздо меньшем числе, когда оценщик глубины должным образом обучен только с обучающими данными. (Подробнее см. Мои заметки о ForeSeE).

Авторы псевдолидара продолжили разработку Псевдолидар ++. Основное улучшение состоит в том, что сгенерированное псевдолидарное облако точек теперь может быть дополнено разреженными, но точными измерениями с помощью недорогих лидаров (хотя они имитировали лидарные данные). Идея создания плотного трехмерного изображения с изображениями с камеры и разреженными измерениями глубины очень практична при автономном вождении, и я надеюсь увидеть больше работ в этом направлении в ближайшие годы.

Несколько человек продолжили и улучшили оригинальный псевдолидарный подход. Псевдолидарный цвет (CVPR 2019) усиливает идею псевдолидара за счет слияния с информацией о цвете, посредством простой конкатенации (x, y, z) → (x, y, z, r , g, b) или метод стробирования на основе внимания для выборочной передачи информации RGB. В документе также используется простой, но эффективный метод сегментации облака точек, основанный на концепции Frustum PointNet (CVPR 2018) и средней глубине усеченной пирамиды. Псевдолидар end2end (ICCV 2019) подчеркивает, что узкое место псевдолидарного подхода имеет два аспекта: локальное смещение, вызванное неточностями в оценке глубины и длинный хвост (кровотечение по краям), вызванное артефактами глубины на периферии объектов. Они расширили работу псевдолидара, используя маску сегментации экземпляра вместо bbox в Frustum PointNet, и представили идею потери согласованности ограничивающего прямоугольника 2D / 3D. ForeSeE также отметил эти недостатки и подчеркнул, что не все пиксели имеют одинаковую важность при оценке глубины. Вместо того, чтобы использовать готовый оценщик глубины, как это делалось в большинстве предыдущих методов, они обучили новые оценщики глубины, одну для переднего плана и одну для фона, и адаптивно объединяют карты глубины во время вывода.

RefinedMPL: усовершенствованный монокулярный псевдолидар для обнаружения трехмерных объектов при автономном вождении углубляется в проблему плотности точек в псевдолидаре. Он отметил, что плотность точек на порядок выше, чем у облака точек, полученного, скажем, с помощью лидара с 64 линиями. Чрезмерно большее количество точек на заднем плане приводит к ложным ложным срабатываниям и вызывает больше вычислений. В документе предложен двухэтапный метод выполнения структурированного разбиения, в котором сначала определяются точки переднего плана, а затем выполняется расслоение. Во-первых, точки переднего плана идентифицируются с помощью двух предлагаемых подходов: одного контролируемого и одного неконтролируемого. Метод под контролем обучает детектор 2D-объектов и использует объединение двухмерной маски bbox в качестве маски переднего плана для удаления точек фона. Метод без учителя использует лапласиан Гаусса (LoG) для обнаружения ключевых точек и использует 2-й порядок ближайших соседей в качестве точек переднего плана. Затем эти точки переднего плана равномерно разрежены в пределах каждого интервала глубины. RefinedMPL обнаружил, что даже с 10% баллов производительность обнаружения 3D-объектов не падает и фактически превосходит базовую. В документе также объясняется разрыв в производительности между псевдолидарным облаком точек и реальным лидарным облаком точек из-за неточной оценки глубины.

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

2. Ключевые точки и формы

Транспортные средства представляют собой твердые тела с отличительными общими частями, которые можно использовать в качестве ориентиров / контрольных точек для обнаружения, классификации и повторной идентификации. Кроме того, размеры интересующих объектов (транспортное средство, пешеходы и т. Д.) - это объекты с широко известными размерами, включая общие размеры и размеры между ключевыми точками. Информация о размере может быть эффективно использована для оценки расстояния до эго-транспортного средства.

Большинство исследований в этом направлении расширяют структуру обнаружения 2D-объектов (одноэтапную, такую ​​как Yolo или RetinaNet, или двухступенчатую, такую ​​как Faster RCNN), для прогнозирования ключевых точек.

Deep MANTA (CVPR 2017) - одна из новаторских работ в этом направлении. На этапе 1, используемом как для обучения, так и для вывода, он использует каскадную более быструю архитектуру RCNN для регрессии 2d bbox, классификации, двумерных ключевых точек, видимости и сходства шаблонов. Шаблон просто означает тройку (w, h, l) 3d bbox. На этапе 2, используемом только для вывода, с подобием шаблона выбирается наиболее подходящая 3D-модель CAD, и выполняется согласование 2D / 3D (с алгоритмом Epnp) для восстановления 3D-положения и ориентации.

Земля не плоская (IROS 2018) нацелена на монокулярную реконструкцию транспортных средств на крутых и асфальтированных дорогах. В этой схеме одним из ключевых элементов является оценка трехмерной формы и позы с шестью степенями резкости из монокулярного изображения. Он также использует формулировку 36 ключевых точек Deep MANTA. Однако вместо того, чтобы просто выбрать лучший из всех возможных шаблонов 3D-форм, он использует базисный вектор и коэффициенты деформации для определения формы транспортного средства. Идея использования набора базовых форм и их коэффициентов комбинации для представления конкретной формы аналогична идее в 3D-RCNN и RoI-10D. Модель обнаружения ключевых точек обучена на 2,4 миллиона синтетических наборов данных, сгенерированных / визуализированных с помощью 900 3D-моделей САПР в ShapeNet, и авторы обнаружили, что она хорошо обобщается на реальные данные. Этот метод mono3DOD также используется в других работах, таких как Многообъектный монокуляр SLAM (IV 2020).

3D-RCNN (CVPR 2018) оценивает параметры формы, положения и размера автомобилей и визуализирует (синтезирует) сцену. Затем маска и карта глубины сравниваются с наземной истинностью, чтобы генерировать потерю рендеринга и сравнения. Анализ главных компонентов (PCA) используется для оценки низкоразмерного (10-d) представления пространства формы. Поза (ориентация) и параметры формы оцениваются на основе функций RoIPooled с помощью регрессии на основе классификации (см. Мой предыдущий пост о мультимодальной регрессии). Эта работа требует довольно много входных данных: 2D bbox, 3D bbox, 3D модели САПР, сегментация 2D экземпляров и встроенные функции. Кроме того, потеря рендеринга и сравнения на основе OpenGL также кажется довольно сложной для инженерной мысли.

RoI-10D (CVPR 2019) получил свое название от позы 6DoF + размер 3DoF ограничивающей рамки 3D. Дополнительный 1D относится к пространству формы. Как и 3D RCNN, RoI-10D изучает низкоразмерное (6-d) представление пространства формы, но с автокодировщиком 3D. Характеристики из RGB улучшаются оценочной информацией о глубине, а затем RoIPooled для регрессии поворота q (кватернион), двумерного центроида относительно RoI (x, y), глубины z и метрических экстентов (w, h, l). По этим параметрам можно оценить 8 вершин трехмерного ограничивающего прямоугольника. Потери в углах могут быть сформулированы между всеми восемью предсказанными и наземными вершинами. Правильность заземления формы маркируется на основе KITTI3D в автономном режиме, что сводит к минимуму потери при повторном проецировании. Использование формы также довольно сложно.

Mono3D ++ (AAAI 2019) выполняет 3DOD на основе согласованности в 3D и 2D, в частности, при разведке ориентиров и форм. Он регрессирует к изменяемой каркасной модели с 14 ориентирами. Обучается на Pascal3D. Модель также изучает низкоразмерное представление форм с помощью двухмерных ориентиров с использованием метода ЭМ-Гаусса. Это похоже на 3D RCNN и RoI 10D, но Mono3D ++ не указывает номер изученной основы. В документе также оцениваются глубина и плоскость земли, чтобы сформировать потери согласованности между несколькими ветвями прогнозирования. К сожалению, в этой статье отсутствует много важной информации.

MonoGRNet (AAAI 2019) регрессирует проекцию трехмерного центра и грубую глубину экземпляра и оценивает приблизительное трехмерное местоположение с помощью этих двух. Он подчеркивает разницу между центром 2D bbox и проекцией центра 3D bbox на 2D-изображении. Спроецированный трехмерный центр можно рассматривать как одну искусственную ключевую точку, похожую на GPP. В отличие от многих других методов, он не регрессирует относительно простой угол наблюдения, а напрямую регрессирует смещение 8 вершин относительно центра 3D.

MonoGRNet V2 регрессирует ключевые точки в 2D-изображениях и использует 3D-модель САПР для определения глубины. Обучение основано на 3D-модели САПР с минимальной аннотацией ключевых точек и двухмерных ключевых точках, аннотированных полуавтоматически с сопоставлением с шаблоном ограничивающей рамки 3D, как в Deep MANTA. Он основан на архитектуре Mask RCNN с двумя дополнительными головками. Одна головка регрессирует двумерные ключевые точки, видимость и локальную ориентацию, а другая головка САПР и размеров выбирает САПР и регрессирует смещение трехмерных метрических размеров. Расстояние между экземплярами определяется высотой ветрового стекла. (Обратите внимание, что исходная ветвь обнаружения объектов Mask RCNN включается во время обучения, поскольку она стабилизирует обучение, но не используется во время вывода. Головка регрессии ключевой точки напрямую регрессирует координату ключевой точки через полносвязные слои вместо тепловой карты, как предлагалось в документе Mask RCNN.)

Что касается 3D-моделей САПР, Deep MANTA использовал полуавтоматический способ пометить ключевые трехмерные точки, помещая САПР-модели в 3D bbox groundtruth. Deep MANTA пометил 36 ключевых точек на каждой из 103 моделей САПР. MonoGRNet V2 пометил 14 ключевых точек на 5 моделях САПР. Mono3D ++ также пометил те же 14 ключевых точек.

Обычно плотно аннотировать ключевые моменты для автомобилей в большом масштабе очень сложно и требует много времени. ApolloScape Baidu, в частности субнабор данных ApolloCar3D, полученный из основного набора данных, является единственным, который обеспечивает плотную аннотацию ключевых точек и форм в виде сеток.

Опрос наземной плоскости (GPP) генерирует виртуальные двухмерные ключевые точки с трехмерной аннотацией bbox. Он целенаправленно прогнозирует больше атрибутов, чем необходимо для оценки 3D bbox (переопределение), и использует эти прогнозы для формирования максимального согласованного набора атрибутов аналогично RANSAC, что делает его более устойчивым к выбросам. Это похоже на решение переопределенных уравнений в жестких ограничениях 2D / 3D, как упоминалось в моем предыдущем блоге о том, как поднять ограничивающие рамки 2D в 3D.

RTM3D (моно-3D в реальном времени) также использует виртуальные ключевые точки и использует структуру, подобную CenterNet, для непосредственного обнаружения 2-мерной проекции всех 8 вершин кубоида + центр куба. Бумага также напрямую влияет на расстояние, ориентацию и размер. Вместо того, чтобы использовать эти значения для непосредственного формирования кубоидов, эти значения используются в качестве начальных значений (априорных значений) для инициализации автономного оптимизатора для создания 3D-блоков. Он утверждает, что является первым в реальном времени алгоритмом обнаружения трехмерных монокулярных объектов (0,055 с / кадр).

MonoPair черпает вдохновение из CenterNet и фокусируется на уточнении результатов обнаружения на основе пространственных отношений между парами автомобилей. Он не только напрямую обнаруживает 3D bbox, как в CenterNet, но также прогнозирует виртуальные ключевые точки парных ограничений. Попарная ключевая точка определяется как средняя точка любых двух объектов, если они являются ближайшими соседями. Это определение ключевых точек взаимоотношений похоже на определение в Пиксели в графики (NIPS 2017). Идея глобальной оптимизации 3D Monopair отметила наибольший прирост производительности за счет включения неопределенности во время оценки глубины. MonoPair также выполняет вращательное преобразование абсолютного расстояния между объектами, чтобы гарантировать неизменность точки обзора в локальной координате (см. Мой предыдущий пост о локальных и глобальных координатах). MonoPair также обеспечивает производительность, близкую к в реальном времени - 57 мс на кадр.

ДЫМ (одноступенчатое обнаружение трехмерных монокулярных объектов с помощью оценки ключевых точек, CVPRW 2020) также вдохновлен CenterNet, и он полностью исключает регрессию 2D bbox и позволяет напрямую прогнозировать 3D bbox. Он кодирует трехмерный ограничивающий прямоугольник как точку в проекции центра трехмерного кубоида с другими параметрами (размер, расстояние, рыскание) в качестве дополнительного свойства. Потери - это потери в углах 3D, оптимизированные с помощью распутанных потерь L1, вдохновленных MonoDIS. Этот тип формулировки потерь, в отличие от прогнозирования параметров 7DoF с помощью взвешенной суммы нескольких функций потерь, является неявным способом взвесить различные члены потерь вместе в соответствии с их вкладом в прогнозирование трехмерного ограничивающего прямоугольника. Он также достигает менее 5% ошибки прогнозирования расстояния в пределах 60 метров, что, насколько мне известно, является SOTA для оценки глубины с помощью монокуляра. Престижность авторам за открытый исходный код их кода здесь.

Обнаружение монокулярных трехмерных объектов с помощью оценки разделенного структурированного многоугольника и оценки глубины по высоте (AAAI 2020) - первая работа, в которой четко указано, что оценка 2D-проекции 3D-вершины (называемые в документе структурированным многоугольником) полностью развязаны от оценки глубины. Он использует тот же метод, что и RTM3D, для регрессии восьми спроецированных точек кубоида, а затем использует высоту вертикальной кромки в качестве сильной до оценки направляющего расстояния. Это создает грубый трехмерный кубоид. Затем этот трехмерный кубоид используется в качестве начальной позиции в изображении BEV (созданном с использованием метода, аналогичного Псевдо-лидару) для точной настройки. Это приводит к лучшим результатам, чем монокулярный псевдолидар.

Monoloco (ICCV 2019) немного отличается от приведенного выше, поскольку он ориентирован на регрессию положения пешеходов, что, возможно, более сложно, чем 3D-обнаружение транспортных средств, поскольку пешеходы не являются твердыми телами и имеют различные позы и деформации. Он использует детекторы ключевых точек (нисходящие, такие как Mask RCNN, или восходящие, такие как Pif-Paf) для извлечения ключевых точек человеческих ключевых точек. В качестве основы он использует относительно фиксированную высоту пешеходов и, в частности, расстояние от плеча до бедра (~ 50 см) для определения глубины, что очень похоже на то, что MonoGRNet V2 и GS3D делать. В документе используется многослойный перцептрон (полностью подключенная нейронная сеть) для регрессии глубины с учетом всех длин сегментов ключевых точек и демонстрируется улучшение по сравнению с простой базовой линией. В документе также есть реалистичные прогнозы неопределенности посредством моделирования алеаторической / эпистемической неопределенности, что жизненно важно в критически важных для безопасности приложениях, таких как автономное вождение.

Таким образом, выделение ключевых точек в 2D-изображении является практичным и может позволить вывести 3D-информацию без прямого наблюдения из 3D-аннотации на основе данных лидара. Однако этот подход требует довольно утомительных аннотаций нескольких ключевых точек для каждого объекта и требует сложных манипуляций с 3D-моделью.

3. Оценка расстояния с помощью ограничений 2D / 3D.

Исследования в этом направлении используют согласованность 2D / 3D для преобразования 2D в 3D. Основополагающая работа - deep3DBox (CVPR 2016). Подобно подходам, использующим ключевые точки и формы, описанные выше, он также расширяет структуру обнаружения 2D-объектов, добавляя ветвь, регрессирующую локальный рыскание (или угол наблюдения) и размерное смещение от среднего подтипа. Используя эти геометрические подсказки, он решает задачу оптимизации с чрезмерными ограничениями для получения трехмерного местоположения, переводя ограничивающие двумерные рамки в трехмерные. Подробную формулировку проблемы оптимизации в deep3DBox и дальнейшую работу других см. В моем не очень кратком обзоре Переход от обнаружения 2D-объектов к 3D при автономном вождении.

Несмотря на успех Deep3DBox, у него есть два недостатка (хотя второй может быть преимуществом при развертывании из-за своей простоты):

1) Он полагается на точное обнаружение двухмерного bbox - если есть умеренные ошибки в обнаружении двухмерного bbox, могут быть большие ошибки в предполагаемой трехмерной ограничительной рамке. 2) Оптимизация основана исключительно на размере и положении ограничивающих рамок, и подсказка внешнего вида изображения не используется. Таким образом, он не может извлечь выгоду из большого количества помеченных данных в обучающем наборе.

FQNet (CVPR 2019) расширяет идею deep3dbox за пределы тесноты. Он добавляет этап уточнения в deep3dbox путем создания плотной выборки вокруг исходного местоположения 3D (полученного с помощью жестких ограничений 2D / 3D), а затем оценивает 2D-участки с помощью визуализированных 3D-каркасов. Однако плотная выборка, как в Mono3D, которая будет обсуждаться позже, занимает много времени и неэффективна с точки зрения вычислений.

Shift R-CNN (ICIP 2019) позволяет избежать плотной выборки предложений за счет активного регресса смещения из предложения Deep3DBox. Они передают всю известную 2D и 3D информацию bbox в быструю и простую полностью подключенную сеть под названием ShiftNet и уточняют местоположение в 3D.

Каскадные геометрические зависимости предсказывает проекцию центра нижней грани 3D bbox (CBF) и классификацию точек обзора. Он также удаляет ложные срабатывания при обнаружении двухмерных изображений на основе предполагаемой трехмерной информации, такой как упорядочение глубины на основе нижнего края ограничивающего прямоугольника и аналогичная глубина для близлежащих двухмерных ограничивающих прямоугольников.

MVRA (Multi-View Reprojection Architecture, ICCV 2019) встроил оптимизацию ограничений 2D / 3D в нейронную сеть и использовал итерационный метод для уточнения обрезанных вариантов. Он вводит слой 3D-реконструкции для преобразования 2D в 3D вместо решения уравнения с избыточными ограничениями с двумя потерями в двух разных пространствах: 1) потеря IoU в перспективном виде между перепроецированным 3D bbox и 2d bbox в IoU, и 2 ) L2 потеря в потерях BEV между расчетным расстоянием и расстоянием gt. Он распознает, что deep3DBox плохо обрабатывает усеченный прямоугольник, поскольку четыре стороны ограничивающего прямоугольника теперь не соответствуют реальной физической протяженности транспортного средства. Это побудило использовать итеративное уточнение ориентации для усеченного bbox с использованием только 3 ограничений вместо 4, исключая xmin (для усеченных слева) или xmax (для усеченных вправо) автомобилей. Глобальный рыскание оценивается методом проб и ошибок в двух итерациях с интервалом пи / 8 и пи / 32.

MonoPSR (CVPR 2019) принадлежит тем же авторам, что и популярный фреймворк AVOD. Сначала он генерирует трехмерное предложение, а затем восстанавливает локальное облако точек динамических объектов. Этап предложения центроида использует высоту 2D-бокса и регрессированную высоту 3D-объекта для определения глубины и повторного проецирования центра 2D-ограничивающего прямоугольника в 3D-пространство на предполагаемой глубине. Предложение очень практично и довольно точно (средняя абсолютная погрешность ~ 1,5 м). Ветвь реконструкции регрессирует локальное облако точек объекта и сравнивает его с GT в облаке точек и камере (после проецирования). Это перекликается с утверждениями MonoGRNet и TLNet о том, что глубина всей сцены чрезмерна для обнаружения трехмерных объектов. Ориентация на экземпляры упрощает задачу, избегая регрессии больших диапазонов глубины.

GS3D (CVPR 2019) в значительной степени основан на структуре Faster RCNN с дополнительной головкой регрессии ориентации. Он генерирует приблизительное положение трехмерной ограничивающей рамки с использованием локальной ориентации и расстояния, оцененных по высоте двухмерной ограничительной рамки. Оценка глубины использует интересную и практическую статистику, согласно которой проекция высоты трехмерного ограничивающего прямоугольника, проецируемого на 2D-изображение, примерно в 0,93 раза больше высоты 2D-прямоугольника, полученной в результате анализа набора обучающих данных. Он также использует модуль извлечения поверхностных элементов (аффинное расширение RoIAlign) для уточнения 3D-обнаружения.

Таким образом, этот подход легко расширяет возможности обнаружения 2D-объектов и, на мой взгляд, является наиболее практичным. Влияние новаторской работы Deep3DBox в этой области огромно.

4. Прямая генерация 3D-предложения

Одной из новаторских работ в области обнаружения трехмерных монокулярных объектов является Mono3D компании Uber ATG в формате CVPR16. Он фокусируется на прямом создании 3D-предложений и генерирует подробные предложения, основанные на том факте, что автомобили должны находиться на уровне земли. Затем он оценивает каждое предложение по множеству созданных вручную функций и выполняет NMS для получения окончательных результатов обнаружения. В некотором смысле это похоже на FQNet, который оценивает предложения 3D bbox, проверяя спроецированный каркас, хотя FQNet размещает предложения 3D вокруг первоначального предположения Deep3DBox.

MonoDIS (ICCV 2019) напрямую регрессирует 2D bbox и 3D bbox на основе расширенной архитектуры RetinaNet. Вместо того, чтобы напрямую контролировать каждый из компонентов вывода 2D и 3D bbox, он принимает целостное представление о регрессии bbox и использует 2D (подписанные) потери IoU и потери 3D углов. Эти потери трудно обучить в целом, поэтому он предлагает технику распутывания, фиксируя все элементы, кроме одной группы (включая один или несколько элементов), для определения истинности и вычисления потерь, по сути, обучая только параметры в этом группа. Этот избирательный процесс обучения вращается до тех пор, пока он не охватит все элементы прогноза, и общие потери не будут накапливаться за один прямой проход. Этот процесс обучения распутыванию обеспечивает сквозное обучение 2D / 3D bbox-ов и может быть распространен на многие другие приложения.

Авторы MonoDIS дополнительно улучшили алгоритм, взяв на вооружение идею Виртуальных камер. Основная идея заключается в том, что модель должна изучать разные представления для автомобилей на разных расстояниях, а модели не хватает универсальности для автомобилей за пределами диапазона расстояний при обучении. Чтобы охватить больший диапазон расстояний, мы должны увеличить емкость модели и сопутствующие обучающие данные. Виртуальная камера предлагает разбить все изображение на несколько фрагментов изображения, каждый из которых содержит как минимум один автомобиль целиком и с ограниченным изменением глубины. Во время вывода для вывода создается пирамидальная мозаика изображений. Каждая плитка или полоса изображений соответствует определенному пределу диапазона, имеет разную ширину и одинаковую высоту.

CenterNet - это универсальная среда обнаружения объектов, которую можно расширить для решения многих задач, связанных с обнаружением, таких как обнаружение ключевых точек, оценка глубины, оценка ориентации и т. Д. Сначала она регрессирует тепловую карту, показывающую достоверность расположение центра объекта и ухудшает другие свойства объекта. CenterNet легко расширить, включив в него обнаружение 2D и 3D объектов в качестве атрибута центральных точек.

И SS3D делает именно это. Он использует структуру, подобную CenterNet, и сначала находит центр потенциального объекта, а затем одновременно регрессирует двухмерные и трехмерные ограничительные рамки. Задачи регрессии регрессируют более чем достаточно информации о двухмерных и трехмерных ограничивающих прямоугольниках для оптимизации. Всего в параметризации кортежа двухмерной и трехмерной ограничительной рамки 26 суррогатных элементов. Общая потеря - это взвешенная потеря 26 чисел, где веса учатся динамически (см. Мой обзор самостоятельного многозадачного обучения). Функция потерь имеет ложные локальные минимумы, и обучение может извлечь выгоду из хорошего начального предположения, основанного на эвристике.

M3D-RPN (ICCV 2019) регрессирует параметры 2D и 3D bbox одновременно, предварительно вычисляя среднюю статистику 3D для каждой привязки 2D. Он напрямую регрессирует двухмерные и трехмерные ограничительные рамки (11 + num_class), аналогично SS3D, который непосредственно регрессирует 26 чисел. В статье предлагается интересная идея 2D / 3D якорей. По сути, они по-прежнему являются двухмерными якорями, покрывающими все изображение, но со свойствами трехмерной ограничительной рамки. Якоря могут иметь различную предварительную статистику для 3D-якорей в зависимости от местоположения 2D-привязки. M3D RPN предлагает использовать отдельные фильтры свертки для разных интервалов строк (свертка с учетом глубины), поскольку глубина в значительной степени коррелирует со строками в сценах автономного вождения.

D4LCN (CVPR 2020) развил идею свертки с учетом глубины из M3D-RPN еще дальше, представив ветвь прогнозирования динамический фильтр. Эта дополнительная ветвь, которая принимает прогноз глубины в качестве входных данных и генерирует объем функции фильтра, который генерирует различные фильтры для каждого конкретного местоположения с точки зрения как весов, так и скорости расширения. D4LCN также использует идею 2D / 3D якорей из M3D-RPN и одновременно регрессирует 2D и 3D блоки (35 + 4 класса на якорь).

TLNet (CVPR 2019) в основном ориентирован на пары стереоизображений, но они также имеют прочную основу для монокуляра. Он помещает трехмерные якоря внутри усеченной пирамиды, которую обнаруживает двухмерный объект, в качестве моно базовой линии. Он повторяет точку зрения MonoGRNet, что карты глубины на уровне пикселей слишком дороги для 3DOD, а глубина на уровне объектов должна быть достаточно хорошей. Он имитирует Mono3D в том, что он использует плотное размещение трехмерных якорей (интервал 0,25 м) в диапазонах [0, 70 м], с двумя ориентациями (0 и 90 градусов) для каждого класса объектов, со средним размером класса объекта. Предложение 3D проецируется на 2D, чтобы получить RoI, а функции RoIpooled используются для регрессии смещения местоположения и смещения размеров.

Таким образом, прямое размещение трехмерных якорей в трехмерном пространстве затруднено из-за большого количества возможных местоположений. Якоря - это, по сути, скользящие окна, и исчерпывающее сканирование трехмерного пространства невозможно. Поэтому прямая генерация трехмерных ограничивающих прямоугольников обычно использует эвристику или обнаружение двухмерных объектов, например, автомобили обычно находятся на земле, а трехмерная ограничивающая рамка автомобиля находится внутри усеченной пирамиды, образуемой соответствующей двухмерной ограничивающей рамкой и т. Д.

Выводы

  • Обнаружение монокулярных 3D-объектов - некорректная задача. Однако мы можем идентифицировать несколько геометрических намеков, включая локальную ориентацию и ключевые точки в 2D-изображении, связанном с 2D-ограничивающими рамками, чтобы помочь рассуждать в 3D-пространстве или пространстве BEV. Обратите внимание, что ключевые точки включают реальные, такие как фары или углы лобового стекла, или искусственные, созданные трехмерными ограничивающими рамками, например проекция центра ограничивающей трехмерной рамки или верхняя / нижняя поверхности на двухмерном изображении.
  • Согласованность 2D и 3D может помочь упорядочить совместное обучение в 2D и 3D, а также в 3D-рассуждениях в качестве этапа постобработки после предсказания двухмерной ограничительной рамки и геометрических подсказок.
  • Монокулярная оценка глубины значительно продвинулась за последние несколько лет. Плотная оценка глубины позволяет преобразовать изображение RGB в псевдолидарное облако точек, готовое к использованию современными алгоритмами обнаружения 3D-объектов.
  • С помощью перспективного представления сложно выполнить прямое 3D-обнаружение. Поднятие в пространство с высоты птичьего полета (BEV) делает обнаружение транспортных средств гораздо более простой задачей с сохранением масштабируемости на разных расстояниях.
  • Все вышеперечисленные методы предполагают известные особенности камеры. Если внутренние характеристики камеры неизвестны, многие алгоритмы все равно будут работать, но только с точностью до коэффициента масштабирования.

использованная литература

Преобразование представления (псевдолидар, BEV)

Ключевые точки и форма

Расстояние через ограничение 2D / 3D

Прямая генерация 3D-предложений