Сердце машины Оригинал
автор:Yuanyuan Li
редактировать:Hao Wang
Долгое время исследователи надеялись дать машинам то же восприятие, что и человеческие чувства, включая зрение. Как одно из самых важных человеческих чувств, более 70% информации, получаемой людьми, исходит от глаз. Человеческий глаз может воспринимать трехмерную информацию, а благодаря наличию бинокулярного зрения относительно легко получить информацию о глубине даже при просмотре фотографии. Однако это трудная задача для компьютеров — объекты разной формы в 3D-мире могут иметь точно такую же проекцию в 2D-мире, а оценка 3D-формы на самом деле является некорректно поставленной задачей (ill-posed Problem). Традиционные исследования в основном используют различные геометрические отношения или предварительную информацию, но в последние годы, с ростом популярности глубокого обучения, исследования геометрических методов, похоже, игнорируются.
Не так давно профессор Ма И из Калифорнийского университета в Беркли также написал на Weibo: «…ни один инструмент или алгоритм не является панацеей. неэффективен. Научная - совсем не надежна и точна".
В этой статье делается попытка дать краткое введение в трехмерную реконструкцию, а также обсудить и сравнить два популярных метода.
Терминология
Трехмерная реконструкция относится к процессу приобретения истинной формы и внешнего вида объекта, а методы ее моделирования можно разделить на активные и пассивные методы.
Активный метод:
В активном методе предоставляется информация о глубине объекта - ее можно получить, используя источник света или источник энергии, такой как лазер, для отправки сигнала на объект, а затем анализируя возвращенный сигнал - реконструкция в основном использует числовые значения. аппроксимация для восстановления трехмерного контура объекта. Некоторые из основных методов:
-
Метод муара: это метод, предложенный Эндрю П. Уиткиным в 1987 году, когда он еще работал в Центре искусственного интеллекта в SRI International. Метод муара основан на интерференционном изображении, создаваемом перекрывающимися полосами, похожими на забор. Преимуществами этого метода являются высокая точность и надежность, но требования к объекту очень высоки - поверхность должна иметь регулярную фактуру.
-
Метод структурированного света: Метод структурированного света устойчив к цвету и текстуре самого объекта.В нем используется проектор для проецирования закодированного структурированного света на фотографируемый объект, который затем захватывается камерой. Размер и форма рисунка, закодированного структурированным светом, также изменяются из-за разного расстояния и ориентации разных частей фотографируемого объекта относительно камеры. Это изменение может быть зафиксировано камерой, а затем преобразовано вычислительным блоком в информацию о глубине, после чего будет получен трехмерный контур. В соответствии с различными методами кодирования его можно разделить на прямое кодирование, кодирование с временным мультиплексированием и пространственное мультиплексирование. кодирование). Метод структурированного света прост в реализации и широко используется в промышленных продуктах, таких как Kinect от Microsoft и iPhone X от Apple. Однако на этот метод сильно влияет сильный свет, а также он ограничен расстоянием проецирования.
-
Метод триангуляции: этот метод основан на принципе триангуляции и на самом деле широко использует принцип подобных треугольников в геометрии. Метод триангуляции требует, чтобы измерительная система содержала лазерный передатчик и ПЗС-датчик изображения. Луч лазерного света, излучаемый лазерным передатчиком, отражается объектом и обнаруживается датчиком изображения.Сравнивая смещение лазерного луча, обнаруженного датчиком изображения после смещения объекта, можно определить расстояние между передатчиком и объектом. быть рассчитаны. Этот метод имеет высокую точность и низкую стоимость, поэтому он широко используется в гражданских и коммерческих продуктах, таких как подметальные роботы.
Пассивный метод:
Пассивные методы не имеют никакого «взаимодействия» с реконструированным объектом в процессе 3D-реконструкции и в основном используют окружающую среду для получения изображений, а затем делают вывод о 3D-структуре объекта посредством понимания изображения. Можно разделить на три категории:
Монокулярное стереозрение
3D-реконструкция в основном выполняется с использованием одной камеры для получения изображения. Далее он делится на:
-
Метод восстановления тени (Shape From Shading, SFS): используйте тень изображения, чтобы оценить особенности контура объекта, и используйте несколько различных условий освещения, чтобы сравнить яркость изображения и результирующую тень, чтобы оценить информацию о глубине объекта. объект. Вполне возможно, что SFS требует точных параметров источника света, поэтому его нельзя использовать в сценах со сложным освещением.
-
Форма из текстуры (SFT): SFT в основном изучает изменение текстуры на изображении после деформации, такой как перспектива — например, фотография в шахматном порядке, сделанная с помощью объектива «рыбий глаз», сетка на краю фотографии будет вытянута и деформирована — и через эта деформация для обратного вычисления данных глубины. Этот метод требует понимания информации об искажении, а также имеет много ограничений по текстуре поверхности объекта и редко используется в реальных продуктах.
Бинокулярное стереозрение
В этом методе изображения получают две камеры, находящиеся в разных положениях и одновременно фотографирующие объект, или одна камера постоянно перемещается в разные точки обзора для фотографирования объекта. Очевидно, этот метод пытается смоделировать ситуацию, в которой люди используют оба глаза для восприятия параллакса изображения для получения информации о глубине. Метод бинокулярного зрения основан на сопоставлении пикселей изображения и может использовать выравнивание шаблона или эпиполярную геометрию.
Метод стереозрения (Multi-view стерео, MVS)
Стереозрение изначально было естественным развитием двух вышеупомянутых исследований.Методы стереозрения устанавливают несколько камер на точку обзора или используют монокулярную камеру для захвата изображений с нескольких разных точек зрения для повышения надежности, см. пример на рисунке 1. В ходе своего развития эта область исследований столкнулась со многими новыми проблемами, например вычислительными взрывами, и превратилась в задачи другого типа. Эта область исследований в настоящее время очень активна.
Рисунок 1:Используйте монокулярную камеру, чтобы сделать несколько фотографий с разных точек обзора для 3D-реконструкции.Источник:Multi-View 3D Reconstruction https://vision.in.tum.de/research/image-based_3d_reconstruction/multiviewreconstruction
Ранние исследования стереозрения в основном проводились в лабораторных условиях, поэтому параметры камеры были известны. Однако, поскольку исследователи все чаще используют изображения, полученные в нелабораторных условиях, такие как фотографии, загруженные из Интернета, положение камеры и 3D-точки должны быть сначала получены для оценки параметров камеры перед началом работ по реконструкции.
Термин «параметры камеры» относится к набору значений, которые описывают конфигурацию камеры, т. е. информацию о положении камеры, состоящую из положения и ориентации, и внутренних свойств камеры, таких как фокусное расстояние и размер сенсора в пикселях. Существует множество различных способов или «моделей» для параметризации этой конфигурации камеры, наиболее распространенной из которых является модель камеры-обскуры.
Эти параметры необходимы, потому что камера проецирует захваченные объекты 3D-мира на 2D-изображение, и теперь нам нужно вывести информацию о 3D-мире из 2D-изображения. Можно сказать, что параметры камеры — это параметры геометрической модели, определяющие отношения между точками мира и точками изображения объекта.
В настоящее время основным алгоритмом расчета параметров камеры является Structure from Motion (SfM), и успех разработки MVS также во многом зависит от успеха SfM. Аналогичным алгоритму SfM является алгоритм VSLAM, оба из которых основаны на сопоставлении пикселей изображения и допущении, что сцена является жесткой. SfM чаще всего используется для вычисления моделей камер для неупорядоченных наборов изображений, обычно в автономном режиме, в то время как VSLAM вычисляет положения камер исключительно из видеопотоков, обычно в режиме реального времени.
Structure from Motion
Вероятно, на уроках физики в средней школе мы познакомились с принципом пинхол-визуализации. На примере рисунка 2 рассмотрим, как спроецировать объект X в точку x на изображении. Центр проекции c — также известный как центр камеры — система координат камеры может быть взята из него как начало координат, а координаты объекта X равны (X, Y, Z). Центральная линия, проходящая через центр камеры и перпендикулярная плоскости изображения, называется главной осью, которая является осью Z на рисунке 2. Пересечение главной оси и плоскости камеры называется главной точкой и становится началом координат p системы координат изображения. Расстояние между точкой p и точкой c в центре камеры равно f, что является фокусным расстоянием.
фигура 2:Модель пинхол-камеры.Источник:Richard Hartley and Andrew Zisserman. Multiple view geometry in computer vision. Cambridge university press, 2003.
В соответствии с принципом подобного треугольника (правая часть рис. 2) мы можем легко изобразить связь между системой координат камеры и системой координат изображения: Z/f = Y/y = X/x.
После сортировки вы можете получить:
х = f*X/Z
у = f*Y/Z
г = е
То есть соответствующие координаты точки (X, Y, Z) в системе координат изображения равны (fX/Z, fY/Z, f). Это отношение отображения является нелинейным для координаты Z, и нам необходимо линеаризовать его, расширив размерность координат для выполнения матричных операций:
Система координат изображения, которую мы используем в приведенной выше формуле, принимает центр плоскости изображения в качестве начала координат Фактически, мы обычно используем угол изображения — обычно верхний левый угол — в качестве начала координат с горизонтальной линией в качестве x -ось и вертикальная линия как ось Y. Поэтому нам нужно масштабировать и переводить систему координат изображения, чтобы она соответствовала фактическим координатам пикселей. Масштабируйте точки в системе координат изображения на m_x раз и m_y в направлениях осей x и y соответственно и переведите точки p_x и p_y соответственно, и скорректированная матрица станет следующей:
где f_x = f*m_x, f_y=f*m_y, иногда пишется как \alpha_x, \alpha_y.
В приведенной выше формуле первая матрица в правой части уравнения представляет собой матрицу внутренних параметров камеры K:
s — параметр перекоса камеры, обычно равный 0.
Далее нам нужно рассмотреть, как координаты объекта определяются в вышеописанном процессе — фактически его координаты вычисляются с камерой в качестве источника. Но положение камеры можно переместить в любой момент, а вместе с ним будет перемещаться и положение объекта в системе координат камеры.Нам нужно преобразовать координаты объекта в мировую систему координат, чтобы получить устойчивое положение координат .
изображение 3:Преобразование системы координат камеры в мировые координаты.Источник:Richard Hartley and Andrew Zisserman. Multiple view geometry in computer vision. Cambridge university press, 2003.
Точно так же преобразование между системой координат камеры и мировой системой координат может быть достигнуто путем масштабирования и панорамирования, написав:
X_cam = RX + t
Где X_cam и X — координатное представление точки в системе координат камеры и мировой системе координат, R — матрица вращения 3x3, а t — вектор перемещения 3x1. Для унификации метода работы мы также перепишем приведенную выше формулу в матричной форме:
Комбинируя матрицы внешних и внешних параметров камеры, мы можем получить полное соотношение преобразования координат объекта, спроецированного из 3D-мира в 2D-изображение:
Полную матрицу камеры можно резюмировать следующим образом:
Внешний параметр камеры отвечает за преобразование из мировой системы координат в систему координат камеры, а внутренний параметр отвечает за последующее преобразование из системы координат камеры в систему координат 2D-изображения.
Алгоритм SfM может, учитывая набор изображений, напрямую выводить параметры камеры для каждого изображения, а также набор трехмерных точек, видимых на изображении, обычно закодированных в виде дорожек.
Рисунок 4:Общий поток алгоритма SfM.Источник:Чиппендейл, Пол и Томаселли, Валерия и Д'Альто, Вивиана и Урлини, Джулио и Модена, Карла и Месселоди, Стефано и Мауро Страно, Себастьяно и Альсе, Гюнтер и Хермодссон, Клас и Разафимахазо, Матье и Мишель, Тибо и Фаринелла, Джованни (2014) Персональная система помощи при покупках и навигатор для слабовидящих 10.1007/978-3-319-16199-0_27.
Первым шагом алгоритма SfM является извлечение ряда признаков из изображения (детектор признаков), обычно с использованием масштабно-инвариантного преобразования признаков (SIFT). SIFT получает различные масштабы изображения, применяя к изображению непрерывное размытие по Гауссу и находит на нем возможные ключевые точки, а затем отбрасывает незаметные ключевые точки. Ключевые точки, обнаруженные алгоритмом SIFT, обычно довольно устойчивы к изменениям освещения, угла обзора и т. д., и на них даже не влияет окклюзия на линии прямой видимости. Еще одно преимущество алгоритма SIFT заключается в том, что скорость вычислений очень высока, что в основном соответствует операциям в реальном времени.
Рисунок 5: Пример алгоритма SIFT.Источник:URL-адрес Википедии:https://en.wikipedia.org/wiki/Scale-invariant_feature_transform
После определения признаков, как правило, необходимо использовать алгоритм K-D Tree для сопоставления ближайших соседей признаков на разных изображениях. После завершения сопоставления необходимо удалить повторное сопоставление и сопоставление, не удовлетворяющее геометрическим ограничениям, иначе несоответствие вызовет большую ошибку.Как правило, для расчета восьмиточечного алгоритма согласованности выборки RANSC используется геометрические ограничения.
Рисунок 6: Пример сопоставления признаков.Источник:CS 6476: Проект компьютерного зрения 2: URL-адрес сопоставления локальных функций:https://www.cc.gatech.edu/~hays/compvision/proj2/
Совпадения, прошедшие фильтр, объединяются в дорожки для определения параметров камеры, оценивая разреженную структуру сцены с параметрами камеры.
Поскольку алгоритм очень чувствителен к точности оцениваемой модели камеры, для оптимизации предполагаемых результатов обычно необходимо использовать уравнивание связки.Основная идея заключается в обратном проецировании полученных 3D-точек на изображение, сравнении их с исходным координаты, и вычислить в соответствии с допуском погрешности.Сделайте разрез, а затем заново настройте параметры камеры.
У SfM есть свои недостатки, один из самых важных заключается в том, что, поскольку SfM опирается на предположение о том, что функции могут сопоставляться между представлениями, если это предположение не выполняется, SfM вообще не будет работать. Например, если расстояние между точками обзора между двумя изображениями слишком велико (одно спереди и одно сбоку) или частично закрыто, установление совпадения признаков становится чрезвычайно проблематичным. Кроме того, поскольку SfM необходимо оптимизировать путем настройки пакета, скорость работы всего алгоритма чрезвычайно низкая, и скорость будет значительно падать по мере увеличения количества изображений.
глубокое обучение
использоватьглубокое обучение, исследователи на самом деле надеются пропустить ручные ссылки, такие как извлечение признаков, сопоставление признаков и определение параметров камеры, и напрямую моделировать форму 3D-объектов из изображений — иногда требуется только одно изображение. При этом нейросеть должна не только изучить структуру видимой части, но и уметь рассуждать о структуре скрытой части.
Как упоминалось ранее, обычно существует четыре метода представления 3D-объектов: карта глубины (depth), облако точек (point cloud), воксель (voxel) и сетка (mesh). Следовательно, глубокое обучение также можно разделить на обучение представлению изображения в глубину, представлению изображения в воксель и т. д., но есть также исследования, которые пытаются интегрировать несколько представлений. Из-за требований к форме выходных данных в большинстве исследований используются нейронные сети со структурой декодер-кодировщик, такие как сеть 3D-R2N2 [1] (см. рис. 7). Сеть состоит из трех частей: кодировщик, состоящий из 2D сверточной нейронной сети (2D-CNN), 3D сверточной LSTM (3D-LSTM) в качестве промежуточной архитектуры и 3DДеконволюционная сеть(3D-DCNN) декодер, который преобразует входные изображения в воксельные представления 3D-объектов.
Рисунок 7:Структура модели 3D-R2N2.Источник:C. B. Choy, D. Xu, J. Gwak. (2016). 3D-R2N2: A Unified Approach for Single and Multi-view 3D Object Reconstruction. ECCV.
Учитывая одно или несколько изображений объектов с произвольных точек зрения, 2D-CNN сначала кодирует входное изображение x в низкоразмерные функции T (x). Затем, на основе заданного закодированного ввода, ячейки 3D-LSTM выборочно обновляют состояние своей ячейки или сохраняют исходное состояние. Наконец, 3D-DCNN декодирует скрытые состояния ячеек LSTM и генерирует трехмерные вероятностные реконструкции вокселей. [1] указал, что основная причина использования сети на основе LSTM заключается в том, что такая сеть может эффективно работать с закрытыми объектами, поскольку сеть обновляет только ячейки, соответствующие видимым частям объекта. Если последующее представление показывает ранее закрытую часть, которая не соответствует предсказаниям сети, сеть обновит LSTM ранее закрытой части. состоянии, но сохраняют состояние других частей.
Однако проблема, связанная с использованием воксельного представления, заключается в том, что объем вычислений модели будет увеличиваться экспоненциально с увеличением разрешения. результаты будут потеряны много деталей. Некоторые исследования делят выходное пространство иерархически для достижения эффективности вычислений и хранения [2, 3, 4], среди которых сеть Octree [4], предложенная Максимом Татарченко и другими учеными, добилась значительного увеличения разрешения, даже достигнув 512^3.
С точки зрения вычислительной сложности для изучения карт глубины выгоднее использовать нейронные сети. Взяв в качестве примера исследования Д. Эйгена и др. [5], они могут использовать только сверточные слои, пытаясь явно закодировать более высокие разрешения в структуру нейронной сети.
Нейронная сеть, предложенная Д. Эйгеном и др., делится на две части: глобальную крупнозернистую сеть и локальную мелкозернистую сеть (см. рис. 8). Задача крупнозернистой сети состоит в том, чтобы предсказать всю структуру карты глубины, используя глобальное представление сцены. Верхние слои этой сети полностью связаны и, таким образом, могут содержать все изображение в своем поле зрения. Крупнозернистая сеть содержит пять слоев извлечения признаков свертки и максимального объединения, за которыми следуют два полносвязных слоя. Входные данные, карта объектов и выходной размер также показаны на рисунке ниже. Конечный результат уменьшен в 4 раза по сравнению с входом. Детализированная сеть получает предсказания и входные изображения из крупнозернистой сети, чтобы согласовать грубые предсказания с локальными деталями. Мелкозернистые сети содержат только сверточные слои, за исключением слоев конкатенации, которые соединяют входное изображение и грубые предсказания.
Рисунок 8:Структура модели нейронной сети, предложенная Д. Эйгеном и другими учеными.Источник:D. Eigen, C. Puhrsch, and R. Fergus. (2014). Depth map prediction from a single image using a multi-scale deep network. NIPS.
Эта модель достигла уровня искусства в то время, но на самом деле предсказание все еще очень приблизительное, и иногда предсказание модели позволяет увидеть только общие очертания объекта. Чтобы еще больше улучшить разрешение, ученые, такие как Д. Эйген, с тех пор внесли в модель некоторые улучшения. Включая масштабирование сети с двух до трех частей, таким образом, удваивая разрешение, но все еще вдвое меньше разрешения входного изображения.
Применение нейронных сетей к оставшимся двум формам данных — облакам точек и сеткам — сопряжено с дополнительной трудностью: облака точек и сетки не являются обычными геометрическими формами данных и не могут использоваться напрямую. Более ранние исследования, такие как Voxnet [6], предложенный Д. Матураной и С. Шерером, Voxne и 3D shapenets [7], предложенный З. Ву и другими учеными, сначала преобразовывали данные в воксельную форму или представление изображения, а затем тренировались на вокселизированные данные. Но это может значительно увеличить вычислительную нагрузку, а также может скрыть данные. С тех пор было проведено несколько исследований, пытающихся заставить нейронные сети изучить геометрические характеристики сеток, таких как Джонатан Геодезические сверточные нейронные сети [8], предложенные Masciy et al.
В целом, если вам нужно выбрать одно из четырех представлений, точность реконструкции с использованием вокселей, как правило, самая высокая, а с помощью карт глубины проще всего перенести задачи реконструкции в глубокое обучение. Текущим состоянием техники является сеть Matryoshka Networks [9], предложенная Стефаном Р. Рихтером и Стефаном Ротом, которая использует представление формы, состоящее из нескольких вложенных графов глубины.
С точки зрения функции потерь, из-за различных форм данных в настоящее время нет единой функции потерь.Обычно используемые из них - масштабно-инвариантная ошибка и перекрестная энтропия. Стандартами, используемыми для измерения точности, в основном являются RMSE и IoU.
Геометрические методы против методов глубокого обучения
Такие ученые, как Максим Татарченко [10], считают, что на самом деле наиболее эффективные алгоритмы глубокого обучения на самом деле изучают классификацию изображений, а не реконструкцию изображений. Они разработали несколько простых базовых алгоритмов, алгоритм K-средних, который группирует фигуры в обучающем наборе в 500 подкатегорий, алгоритм поиска, который проецирует фигуры в наборе данных в низкоразмерное пространство, чтобы найти сходство с другими фигурами. также является алгоритмом ближайшего соседа (Oracle NN), который находит наиболее близкую форму к обучающему набору для трехмерных фигур в тестовом наборе на основе IoU. Этот метод нельзя применять на практике, но он может дать верхнюю границу производительности, которую методы поиска могут достичь в этой задаче.
Тесты на наборе данных ShapeNet показывают, что ни один нейросетевой алгоритм не может превзойти по производительности алгоритм ближайшего соседа (Oracle NN), то есть средний IoU в результатах тестов самый высокий или даже меньше 0,6.
Рисунок 9:Пример того, как модель работает на тестовых данных.Источник:M. Tatarchenko, S. R. Richter, R. Ranftl, Z. Li, V. Koltun, T. Brox. (2019). What Do Single-view 3D Reconstruction Networks Learn? arXiv:1905.03678v1.
На рисунке 9 показана производительность нескольких моделей на некоторых тестовых данных.Видно, что производительность базовой модели, разработанной автором, в основном такая же, как и у нейронной сети. Число в правом нижнем углу каждого образца представляет IoU, и базовая модель может гарантировать правильность общей формы путем поиска похожих форм, но детали могут быть неверными.
Еще один удивительный вывод заключается в том, что если вы визуализируете гистограммы оценок IoU для каждого класса объектов, внутриклассовые распределения нейронной сети и двух базовых методов будут очень похожими. Однако эти два базовых метода по сути являются методами распознавания изображений.
Авторы выполнили критерий Колмогорова-Смирнова на гистограммах для 55 классов и всех тестируемых методов. Нулевая гипотеза для этого теста состоит в том, что два распределения не демонстрируют статистически значимой разницы. Три примера показаны справа на рисунке 10, и каждая ячейка на тепловой карте слева показывает количество классов, для которых статистический тест не позволяет отвергнуть нулевую гипотезу, т. е. значения p больше 0,05. . Как видно, нулевая гипотеза о том, что метод глубокого обучения и два базовых метода имеют одинаковое распределение гистограмм, не может быть отвергнута абсолютным большинством классов. Метод ближайшего соседа сильно отличается от других методов.
Рисунок 10:Сравнение гистограмм IoU методов испытаний и результатов теста Колмогорова-Смирнова.Источник:M. Tatarchenko, S. R. Richter, R. Ranftl, Z. Li, V. Koltun, T. Brox. (2019). What Do Single-view 3D Reconstruction Networks Learn? arXiv:1905.03678v1.
Даже если мы проигнорируем вопрос о том, что изучает глубокое обучение во время обучения, и сосредоточимся только на производительности реконструкции нейронных сетей, результаты, показанные в исследовании Д. Эйгена и др. [1], заслуживают обсуждения. Автор использовал 4 различных класса высококачественных CAD-моделей, отредактировал текстуры вручную, чтобы повысить силу их текстур до низкого, среднего и высокого уровня, а также визуализировать различные перспективы. Алгоритм MVS, используемый для сравнения, называется Patch-Match, который оценивает положение камеры с помощью глобального SfM. Эффект реконструкции представлен вокселями, которые измеряются IoU. Поскольку 3D-объекты, созданные Patch-Match, представлены сетками, их также необходимо вокселизировать для сравнения. Окончательный выходной размер 32×32×32.
Рисунок 11:Пример данных испытаний и результатов сравнения.Источник:C. B. Choy, D. Xu, J. Gwak. (2016). 3D-R2N2: A Unified Approach for Single and Multi-view 3D Object Reconstruction. ECCV.
В первой строке рисунка выше приведен пример используемых тестовых данных, слева направо изображения с различными точками обзора и изображения с высоким или низким уровнем текстуры. Результаты тестов интересны — плюсы и минусы алгоритмов 3D-R2N2 и Patch-Match практически полностью противоположны. Из приведенного выше рисунка а) видно, что когда метод Patch-Match сталкивается с объектами с низким уровнем текстуры, точность предсказания будет сильно снижаться. С другой стороны, точность алгоритма Patch-Match намного выше, чем у 3D-R2N2, при условии выполнения допущений алгоритма Patch-Match (высокий уровень текстуры объекта), даже несмотря на то, что размер выходных данных данные только 32x32x32. При изучении глубоких нейронных сетей мы также видели, что в предсказаниях нейронных сетей по-прежнему преобладают контуры, а детали отсутствуют. Автор считает, что это происходит в основном из-за смещения обучающих данных, большинство из которых представляют собой данные с более низким уровнем текстуры, поскольку на практике Производительность 3D-R2N2 падает по мере увеличения уровня текстуры. На рис. б) выше показано, что при недостаточной точке обзора алгоритм Patch-Match вообще не может работать, а на 3D-R2N2 это не влияет. Однако точность алгоритма Patch-Match можно повысить с увеличением количества точек обзора, а 3D-R2N2 не может реконструировать столько деталей.
На рисунках с (c) по (h) выше показаны характеристики 3D-R2N2 и Patch-Match при использовании моделей самолетов с высокой текстурой и 20, 30 и 40 точек обзора соответственно. где (c-e) — результаты реконструкции Patch-Match, а (f-h) — результаты реконструкции 3D-R2N2. Можно видеть, что предсказания 3D-R2N2 действительно не сильно отличаются, в то время как Patch-Match улучшается от совершенно неузнаваемых предсказаний до плавных, подробных реконструкций.
Когда я увидел этот результат, я почувствовал, что это почти воспроизведение теории отсутствия бесплатных обедов. Поскольку алгоритм глубокого обучения использует только одно изображение в качестве входных данных, количество информации, которую можно использовать, уменьшается, а увеличение применимости должно привести к снижению оптимальной производительности. Ясутака Фурукава также подчеркнул в своей книге [11]: «Алгоритм MVS настолько хорош, насколько хороши качество входных изображений и параметров камеры».
Кроме того, в текущих исследованиях глубокого обучения все еще есть две проблемы: как измерить производительность модели и какие обучающие данные использовать.
Как упоминалось ранее, средний IoU часто используется в качестве основной количественной метрики для сравнительного анализа методов реконструкции с одним представлением. Но использование его в качестве единственной метрики может быть проблематичным, поскольку качество прогнозируемой формы может быть представлено только в том случае, если IoU достаточно высок. Низкие и средние баллы указывают на значительные различия между двумя формами. Пример показан ниже.
Рисунок 11:IoU различных сгенерированных результатов.Источник:M. Tatarchenko, S. R. Richter, R. Ranftl, Z. Li, V. Koltun, T. Brox. (2019). What Do Single-view 3D Reconstruction Networks Learn? arXiv:1905.03678v1.
Что касается второго вопроса, обучающий набор, используемый в настоящее время для глубокого обучения, в основном представляет собой набор данных ShapeNet. Однако форма в тестовом наборе этого набора данных очень похожа на форму в обучающем наборе. Реконструированная модель, обученная на наборе данных ShapeNet, может легко найти ярлыки — ей просто нужно получить похожие формы из обучающего набора. Мы также видели это явление в исследованиях таких ученых, как Максим Татарченко.
До сих пор мы обсуждали некоторые часто используемые алгоритмы, и автор резюмирует производительность этих алгоритмов в таблице 1.
будущее направление
Видно, что преимущества и недостатки геометрических алгоритмов и методов глубокого обучения совершенно разные. Когда условия не позволяют, полезно использовать изображение для восстановления трехмерной структуры, но когда доступно больше данных, лучше использовать информацию как можно больше. И исследования глубокого обучения, направленные на восстановление трехмерных структур из одного изображения, на самом деле предполагают, что одно монокулярное изображение может обнаруживать трехмерную информацию, что теоретически должно быть невозможно, поэтому у большинства живых существ есть два глаза.
Кроме того, с точки зрения производства, стоит изучить, как сочетать его с конкретными приложениями, например, как применять трехмерное зрение к AGV и беспилотному вождению. Этот процесс неизбежно принесет больше проблем, включая, помимо прочего:
-
Развертывание алгоритмов, встраивание, встроенный SLAM получили много исследований, но недостаточно внимания в области SfM.
-
С повышением скорости вычислений встроенные системы предъявляют чрезвычайно высокие требования к скорости работы алгоритма.Как оптимизировать текущие SfM, алгоритмы глубокого обучения и другие алгоритмы с огромной вычислительной нагрузкой для удовлетворения требований работы в реальном времени
-
Слияние датчиков, точно так же, как современная система машинного зрения в беспилотных автомобилях, часто использует различные датчики, такие как камеры и радары. Восстанавливайте системы, которые могут обрабатывать различные типы данных и всесторонне анализировать их.
Перед лицом сложной среды, в которой фактически используется алгоритм, геометрические алгоритмы и методы глубокого обучения могут фактически дополнять друг друга, и нет необходимости делать выбор между ними. Тенденция развития состоит в том, чтобы использовать геометрический метод в качестве доминирующего метода и использовать мощную способность выражения признаков глубокого обучения, чтобы дополнить ситуацию, когда геометрический метод неприменим.
ресурс
Библиотека программного обеспечения:
-
PCL (библиотека облаков точек) (http://pointclouds.org (http://pointclouds.org/))
-
Meshlab: система с открытым исходным кодом для обработки и редактирования трехмерных треугольных сеток (http://www.meshlab.net/).
-
Colmap: универсальный конвейер Structure-from-Motion (SfM) и Multi-View Stereo (MVS) с графическим интерфейсом и интерфейсом командной строки (https://colmap.github.io/).
Учебник:
-
Multi-View Stereo: учебник Ясутака Фурукава (https://www.nowpublishers.com/article/Details/CGV-052)
-
Ричард Хартли и Эндрю Зиссерман, Многоракурсная геометрия в компьютерном зрении, Издательство Кембриджского университета, 2003 г. (https://www.robots.ox.ac.uk/~vgg/hzbook/)
-
D. Scharstein, R. Szeliski. (2001). A Taxonomy and Evaluation of Dense Two-Frame Stereo Correspondence Algorithms. Proceedings IEEE Workshop on Stereo and Multi-Baseline Vision (SMBV 2001). (http://vision.middlebury.edu/stereo/taxonomy-IJCV.pdf)
-
NYU course slide Lecture 6: Multi-view Stereo & Structure from Motion (https://cs.nyu.edu/~fergus/teaching/vision_2012/6_Multiview_SfM.pdf)
набор данных:
-
Набор данных Shapenet (https://www.shapenet.org/about)
Автор текста — Юаньюань Ли, аналитик Heart of Machines. Она несколько раз меняла карьеру, получив степень бакалавра в области международной торговли и аспирантуру в области статистики. После окончания учебы она осталась в Европе и решила заняться исследованиями и разработками в области механики. В основном она отвечала за обработку изображений и внедрение компьютерного зрения. алгоритмы. Цените все простые, элегантные, но эффективные алгоритмы, пытаясь найти баланс между поклонниками глубокого обучения и скептиками. Я надеюсь, что, поделившись своими скромными мнениями и столкновением идей, я смогу расширить свое мышление.
Персональная домашняя страница Machine Heart: https://www.jiqizhixin.com/users/a761197d-cdb9-4c9a-aa48-7a13fcb71f83
использованная литература:
[1] C. B. Choy, D. Xu, J. Gwak. (2016). 3D-R2N2: A Unified Approach for Single and Multi-view 3D Object Reconstruction. ECCV.
[2] C. Hane, S. Tulsiani, and J. Malik. (2017). Hierarchical surface prediction for 3D object reconstruction. 3DV.
[3] G. Riegler, A. O. Ulusoy, H. Bischof, and A. Geiger.(2017). OctNetFusion: Learning depth fusion from data. 3DV.
[4] M. Tatarchenko, A. Dosovitskiy, and T. Brox. (2017). Octree generating networks: Efficient convolutional architectures for high-resolution 3D outputs. ICCV.
[5] D. Eigen, C. Puhrsch, and R. Fergus. (2014). Depth map prediction from a single image using a multi-scale deep network. NIPS.
[6] D. Maturana; S. Voxne. (2015). VoxNet: A 3D Convolutional Neural Network for Real-Time Object Recognition. IROS.
[7] Z. Wu, S. Song, A. Khosla, F. Yu, L. Zhang, X. Tang and J. Xia. (2015). 3D ShapeNets: A Deep Representation for Volumetric Shape Modeling. CVPR.
[8] J. Masci, D. Boscaini, M. M. Bronstein, P. Vandergheynst. (2015). Geodesic convolutional neural networks on Riemannian manifolds. arXiv:1501.06297.
[9] S. R. Richter and S. Roth. (2018). Matryoshka networks: Predicting 3D geometry via nested shape layers. CVPR.
[10] M. Tatarchenko, S. R. Richter, R. Ranftl, Z. Li, V. Koltun, T. Brox. (2019). What Do Single-view 3D Reconstruction Networks Learn? arXiv:1905.03678v1.
[11] Ю. Фурукава и К. Эрнандес (2015 г.) Multi-View Stereo: A Tutorial Foundations and Trends® in Computer Graphics and Vision 9(1-2):1-148.
глубина Pro
Подробная теория | Инженерная практика | Отраслевой анализ | Отчет об отраслевых исследованиях
Последняя колонка с подробным содержанием Heart of Machines обобщает подробные статьи об искусственном интеллекте и подробно объясняет теорию, разработку, промышленность и применение. Каждая статья здесь требует 15 минут углубленного чтения.
Подробная рекомендация сегодня
Анализ технологии классификации коротких видео iQIYI
CVPR 2019 Взгляд вперед: несколько тем для обучения
В статье на 10 000 символов вы сможете интерпретировать различные модели глубокого обучения НЛП.
Нажмите на картинку, чтобы войти в колонку Mini Program Deepin Pro
ПК нажмите, чтобы прочитать исходный текст, посетите официальный сайт
Лучше для глубокого чтения
www.jiqizhixin.com/insight
Не хотите пропустить важные ежедневные статьи, учебные пособия, информацию и отчеты?