3D-реконструкция из нескольких изображений — это создание трехмерных моделей из набора изображений. Это обратный процесс получения 2D-изображений из 3D-сцен.
Суть изображения — это проекция с 3D-сцены на 2D-плоскость, в ходе которой глубина теряется. 3D-точка, соответствующая определенной точке изображения, ограничена тем, чтобы находиться на линии визирования. Из одного изображения невозможно определить, какая точка на этой линии соответствует точке изображения. Если доступны два изображения, то положение 3D-точки можно найти как пересечение двух проекционных лучей. Этот процесс называется триангуляцией . Ключом к этому процессу являются отношения между несколькими видами, которые передают информацию о том, что соответствующие наборы точек должны содержать некоторую структуру и что эта структура связана с позами и калибровкой камеры.
В последние десятилетия наблюдается значительный спрос на 3D-контент для компьютерной графики , виртуальной реальности и коммуникации, что приводит к изменению акцентов в требованиях. Многие существующие системы для построения 3D-моделей построены на основе специализированного оборудования (например, стереоустановок), что приводит к высокой стоимости, которая не может удовлетворить требования его новых приложений. Этот разрыв стимулирует использование цифровых средств обработки изображений (например, камеры). Ранний метод был предложен Томази и Канаде. [2] Они использовали подход аффинной факторизации для извлечения 3D из последовательностей изображений. Однако предположение об ортогональной проекции является существенным ограничением этой системы.
Задача преобразования нескольких 2D-изображений в 3D-модель состоит из ряда этапов обработки:
Калибровка камеры состоит из внутренних и внешних параметров, без которых на определенном уровне не может работать ни одна схема алгоритмов. Пунктирная линия между Калибровкой и Определением глубины показывает, что калибровка камеры обычно требуется для определения глубины.
Определение глубины является наиболее сложной частью всего процесса, поскольку оно вычисляет 3D-компонент, отсутствующий в любом данном изображении – глубину. Проблема соответствия , нахождение соответствий между двумя изображениями, чтобы положение сопоставленных элементов затем можно было триангулировать в 3D-пространстве, является здесь ключевой проблемой.
После того, как у вас есть несколько карт глубины, вам нужно объединить их, чтобы создать окончательную сетку, вычислив глубину и проецируя из камеры – регистрация . Калибровка камеры будет использоваться для определения того, где многочисленные сетки, созданные картами глубины, могут быть объединены для разработки более крупной, предоставляющей более одного вида для наблюдения.
На этапе применения материалов у вас есть полная 3D-сетка, что может быть конечной целью, но обычно вы захотите применить к сетке цвет из исходных фотографий. Это может варьироваться от случайного проецирования изображений на сетку, через подходы комбинирования текстур для сверхразрешения и, наконец, до сегментации сетки по материалу, например, по зеркальным и диффузным свойствам.
Дана группа 3D-точек, просматриваемых N камерами с матрицами , определить как однородные координаты проекции точки на камеру. Задача реконструкции может быть изменена на: дана группа пиксельных координат , найти соответствующий набор матриц камеры и структуру сцены, такую что
В общем случае, без дополнительных ограничений, мы получим проективную реконструкцию. [4] [5] Если и удовлетворяют (1), то и будут удовлетворять (1) с любой невырожденной матрицей T размером 4 × 4 .
Проективную реконструкцию можно рассчитать только по соответствию точек без какой-либо априорной информации.
При автокалибровке или самокалибровке сначала восстанавливаются движение и параметры камеры с использованием жесткости. Затем можно легко рассчитать структуру. Два метода, реализующие эту идею, представлены ниже:
При минимум трех смещениях мы можем получить внутренние параметры камеры, используя систему полиномиальных уравнений Круппы [6], которые выводятся из геометрической интерпретации ограничения жесткости. [7] [8]
Матрица неизвестна в уравнениях Круппы, называется матрицей коэффициентов Круппы. С помощью K и методом факторизации Холецкого можно легко получить внутренние параметры:
Недавно Хартли [9] предложил более простую форму. Пусть будет записано как , где
Затем уравнения Круппы переписываются (вывод можно найти в [9] )
Этот метод основан на использовании ограничения жесткости. Разработать функцию стоимости, которая рассматривает внутренние параметры как аргументы, а фундаментальные матрицы как параметры. определяется как фундаментальная матрица, а как матрицы внутренних параметров.
Недавно были предложены новые методы, основанные на концепции стратификации . [10] Начиная с проективной структуры, которая может быть рассчитана только из соответствий, усовершенствуйте эту проективную реконструкцию до евклидовой реконструкции, используя все доступные ограничения. С помощью этой идеи проблема может быть стратифицирована на различные разделы: в зависимости от количества доступных ограничений ее можно анализировать на другом уровне, проективном, аффинном или евклидовом.
Обычно мир воспринимается как трехмерное евклидово пространство . В некоторых случаях невозможно использовать полную евклидову структуру трехмерного пространства. Простейшая из них — проективная, затем аффинная геометрия, которая образует промежуточные слои, и, наконец, евклидова геометрия. Понятие стратификации тесно связано с рядом преобразований геометрических объектов: в проективном страте — ряд проективных преобразований (гомография ) , в аффинном страте — ряд аффинных преобразований , а в евклидовом страте — ряд евклидовых преобразований.
Предположим, что фиксированная сцена захвачена двумя или более перспективными камерами, и соответствия между видимыми точками на разных изображениях уже даны. Однако на практике сопоставление является существенной и чрезвычайно сложной проблемой в компьютерном зрении. Здесь мы предполагаем, что 3D-точки наблюдаются камерами с проекционными матрицами. Ни положение точки, ни проекция камеры не известны. Известны только проекции точки на изображении.
Простой подсчет показывает, что у нас есть независимые измерения и только неизвестные, поэтому задача должна быть разрешима с достаточным количеством точек и изображений. Уравнения в однородных координатах можно представить следующим образом:
Таким образом, мы можем применить невырожденное преобразование 4 × 4 H к проекциям → и мировым точкам → . Следовательно, без дополнительных ограничений, реконструкция представляет собой лишь неизвестную проективную деформацию трехмерного мира.
Более подробную информацию о вычислении положения плоскости на бесконечности см . в разделе аффинное пространство . Самый простой способ — использовать имеющиеся знания, например, информацию о том, что линии на сцене параллельны или что точка находится на расстоянии одной трети между двумя другими.
Мы также можем использовать априорные ограничения на движение камеры. Анализируя различные изображения одной и той же точки, можно получить линию в направлении движения. Пересечение нескольких линий — это точка на бесконечности в направлении движения, и одно ограничение на аффинную структуру.
Отображая проективную реконструкцию в ту, которая удовлетворяет группе избыточных евклидовых ограничений, мы можем найти проективное преобразование H в уравнении (2). Уравнения являются сильно нелинейными, и требуется хорошее начальное предположение для структуры. Это может быть получено путем предположения линейной проекции - параллельной проекции, что также позволяет легко реконструировать с помощью разложения SVD. [2]
Неизбежно, измеренные данные (т. е. положение точек изображения или мира) зашумлены, и шум исходит из многих источников. Чтобы уменьшить влияние шума, мы обычно используем больше уравнений, чем необходимо, и решаем с помощью наименьших квадратов .
Например, в типичной формулировке задачи нулевого пространства Ax = 0 (например, алгоритм DLT) квадрат остатка ||Ax|| минимизируется с помощью метода наименьших квадратов.
В общем случае, если ||Ax|| можно рассматривать как расстояние между геометрическими объектами (точками, прямыми, плоскостями и т. д.), то минимизируется геометрическая ошибка , в противном случае (когда ошибка не имеет хорошей геометрической интерпретации) она называется алгебраической ошибкой .
Поэтому, по сравнению с алгебраической ошибкой, мы предпочитаем минимизировать геометрическую ошибку по перечисленным причинам:
Все линейные алгоритмы (DLT и другие), которые мы видели до сих пор, минимизируют алгебраическую ошибку. На самом деле, нет никаких оправданий для минимизации алгебраической ошибки, кроме простоты реализации, поскольку это приводит к линейной проблеме. Минимизация геометрической ошибки часто является нелинейной проблемой, которая допускает только итерационные решения и требует отправной точки.
Обычно линейное решение, основанное на алгебраических остатках, служит отправной точкой для нелинейной минимизации геометрической функции стоимости, что обеспечивает решению окончательную «полировку». [11]
2-D визуализация имеет проблемы анатомии, накладывающейся друг на друга, и не раскрывает аномалии. 3-D визуализация может использоваться как в диагностических, так и в терапевтических целях.
3-D модели используются для планирования операции, морфометрических исследований и имеют большую надежность в ортопедии. [12]
Для реконструкции 3D-изображений из 2D-изображений, полученных камерой под разными углами. Медицинские методы визуализации, такие как КТ и МРТ, являются дорогостоящими, и хотя КТ-сканирование является точным, оно может вызывать высокие дозы облучения, что является риском для пациентов с определенными заболеваниями. Методы, основанные на МРТ, не являются точными. Поскольку во время МРТ мы подвергаемся воздействию мощных магнитных полей, этот метод не подходит для пациентов с ферромагнитными металлическими имплантатами. Оба метода можно применять только в положении лежа, когда изменяется глобальная структура кости. Поэтому мы обсудим следующие методы, которые можно применять стоя и которые требуют низкой дозы облучения.
Хотя эти методы представляют собой трехмерную визуализацию, интересующая область ограничена срезом; данные собираются для формирования временной последовательности.
Этот метод прост и реализуется путем ручного определения точек на многопроекционных рентгенограммах. Первым шагом является извлечение соответствующих точек на двух рентгеновских снимках. Вторым шагом является реконструкция изображения в трех измерениях с использованием алгоритмов, таких как дискретное линейное преобразование (DLT). [13] Реконструкция возможна только при наличии стерео соответствующих точек (SCP). Качество результатов зависит от количества SCP, чем больше SCP, тем лучше результаты [14] , но это медленно и неточно. Навыки оператора являются фактором качества изображения. Методы, основанные на SCP, не подходят для костных структур без идентифицируемых краев. Как правило, методы, основанные на SCP, используются как часть процесса, включающего другие методы. [15]
Этот метод использует рентгеновские снимки для трехмерной реконструкции и разработки трехмерных моделей с низкой дозой облучения в положениях с весовой нагрузкой.
В алгоритме NSCC предварительным шагом является расчет начального решения. Во-первых, определяются анатомические области из общего объекта. Во-вторых, выполняется ручная идентификация 2D-контуров на рентгенограммах. Из каждой рентгенограммы генерируются 2D-контуры с использованием 3D-объекта начального решения. 3D-контуры поверхности начального объекта проецируются на связанную с ними рентгенограмму. [15] 2D-ассоциация, выполняемая между этими 2 заданными точками, основана на расстояниях от точки до точки и выводах контуров, разрабатывающих соответствие между 2D-контурами и 3D-контурами. Следующий шаг — оптимизация начального решения. Наконец, деформация оптимизированного решения выполняется путем применения алгоритма Кригинга к оптимизированному решению. [16] Наконец, путем итерации последнего шага до тех пор, пока расстояние между двумя заданными точками не превзойдет заданное значение точности, получается реконструированный объект.
Преимущество этого метода в том, что его можно использовать для костных структур непрерывной формы, а также он сокращает вмешательство человека, но он отнимает много времени.
Рендеринг поверхности визуализирует 3D-объект как набор поверхностей, называемых изоповерхностями. Каждая поверхность имеет точки с одинаковой интенсивностью (называемой изо-значением). Этот метод обычно применяется к высококонтрастным данным и помогает иллюстрировать отдельные структуры; например, череп может быть создан из срезов головы, а кровеносная система — из срезов тела. Два основных метода:
Другие методы используют статистические модели формы, параметрические модели или гибриды этих двух методов.