Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Камера (красная) вращается вокруг синей оси от 5 ° до 90 ° (зеленая), так как изображения исправляются путем проецирования на виртуальную плоскость изображения (синяя). Виртуальная плоскость должна быть параллельна базовой линии стерео (оранжевого цвета) и для визуализации расположена в центре вращения. В этом случае выпрямление достигается виртуальным вращением красной и зеленой плоскостей изображения соответственно, чтобы они были параллельны базовой линии стерео.

[1]

В компьютерном зрении [ править ]

Поиск совпадения точки ограничен линией на правом изображении. Поскольку изображения не исправлены, линия наклонная. После исправления он будет горизонтальным.

Компьютерное стереозрение делает два или более изображений с известным относительным положением камеры, которые показывают объект с разных точек зрения. Затем для каждого пикселя он определяет глубину соответствующей точки сцены (то есть расстояние от камеры), сначала находя совпадающие пиксели (то есть пиксели, показывающие одну и ту же точку сцены) в другом изображении (ах), а затем применяя триангуляцию к найденным совпадениям, чтобы определить их глубина. Поиск совпадений в стереозрении ограничен эпиполярной геометрией: Соответствие каждого пикселя на другом изображении можно найти только на линии, называемой эпиполярной линией. Если два изображения компланарны, то есть они были сделаны таким образом, что правая камера смещена только по горизонтали по сравнению с левой камерой (не перемещается к объекту и не поворачивается), то эпиполярная линия каждого пикселя горизонтальна и находится в том же вертикальном положении, что и эта. пиксель. Однако в общих настройках (камера действительно двигалась к объекту или вращалась) эпиполярные линии наклонены. Исправление изображения искажает оба изображения таким образом, что они выглядят так, как будто они были сделаны только с горизонтальным смещением, и, как следствие, все эпиполярные линии являются горизонтальными, что немного упрощает процесс стереосопоставления. Однако обратите внимание, что исправление принципиально не меняет процесс стереосопоставления: он ищет в строках,наклонные до и горизонтальные после исправления.

Исправление изображения также является эквивалентной (и более часто используемой [2] ) альтернативой идеальной компланарности камеры. Даже с использованием высокоточного оборудования обычно выполняется исправление изображения, поскольку поддерживать идеальную компланарность между камерами может быть непрактично.

Исправление изображений может выполняться только с двумя изображениями одновременно, а одновременное исправление более двух изображений обычно невозможно. [3]

Трансформация [ править ]

Если изображения, которые необходимо исправить, взяты с пар камер без геометрического искажения , этот расчет может быть легко выполнен с помощью линейного преобразования . Вращение по осям X и Y помещает изображения в одну плоскость, при масштабировании кадры изображений имеют одинаковый размер, а регулировка поворота и наклона по оси Z заставляет строки пикселей изображения выстраиваться в прямую линию [ необходима ссылка ] . Необходимо знать жесткое выравнивание камер (путем калибровки), и коэффициенты калибровки используются при преобразовании. [4]

При выполнении преобразования, если сами камеры откалиброваны по внутренним параметрам, необходимая матрица обеспечивает взаимосвязь между камерами. Более общий случай (без калибровки камеры) представлен фундаментальной матрицей . Если фундаментальная матрица неизвестна, необходимо найти предварительные точечные соответствия между стереоизображениями, чтобы облегчить их извлечение. [4]

Алгоритмы [ править ]

Алгоритмы исправления изображений делятся на три основные категории: плоское выпрямление, [1] цилиндрическое выпрямление [2] и полярное выпрямление. [5] [6] [7]

Детали реализации [ править ]

Все исправленные изображения удовлетворяют следующим двум свойствам: [8]

  • Все эпиполярные линии параллельны горизонтальной оси.
  • Соответствующие точки имеют одинаковые вертикальные координаты.

Для того , чтобы превратить исходную пару изображений в выпрямленную пару изображений, необходимо найти проективное преобразование H . На H накладываются ограничения, чтобы удовлетворить двум свойствам, указанным выше. Например, ограничение эпиполярных линий параллельностью горизонтальной оси означает, что эпиполи должны быть сопоставлены с бесконечной точкой [1,0,0] T в однородных координатах . Даже с этими ограничениями H по- прежнему имеет четыре степени свободы. [9] Также необходимо найти совпадение H ', чтобы исправить второе изображение пары изображений. Плохой выбор H и H 'может привести к получению исправленных изображений, которые резко изменятся в масштабе или сильно искажены.

Существует множество различных стратегий выбора проективного преобразования H для каждого изображения из всех возможных решений. Одним из передовых методов является минимизация несоответствия или разницы по методу наименьших квадратов соответствующих точек на горизонтальной оси пары выпрямленных изображений. [9] Другой метод - разделение H на специализированное проективное преобразование, преобразование подобия и преобразование сдвига для минимизации искажения изображения. [8] Один простой метод - повернуть оба изображения так, чтобы они выглядели перпендикулярно линии, соединяющей их общие оптические центры, повернуть оптические оси так, чтобы горизонтальная ось каждого изображения указывала в направлении оптического центра другого изображения, и, наконец, масштабировать меньшее изображение для соответствия между строками.[3] Этот процесс демонстрируется в следующем примере.

Пример [ править ]

Модель, использованная для примера исправления изображения.
Трехмерный вид примера сцены. Оптический центр и плоскость изображения первой камеры представлены зеленым кружком и квадратом соответственно. Вторая камера имеет аналогичные красные изображения.
Набор 2D изображений из примера. Исходные изображения взяты с разных ракурсов (строка 1). Используя систематические преобразования из примера (строки 2 и 3), мы можем преобразовать оба изображения так, чтобы соответствующие точки находились на одних и тех же горизонтальных линиях сканирования (строка 4).

Наша модель для этого примера основана на паре изображений, которые наблюдают трехмерную точку P , которая соответствует p и p ' в пиксельных координатах каждого изображения. O и O ' представляют оптические центры каждой камеры с известными матрицами камер и (мы предполагаем, что мировое начало находится в первой камере). Мы кратко опишем и изобразим результаты для простого подхода к поиску проективного преобразования H и H ', которое исправляет пару изображений из примера сцены.

Сначала мы вычисляем эпиполи e и e ' на каждом изображении:

Во-вторых, мы находим проективное преобразование H 1, которое поворачивает наше первое изображение так, чтобы оно было перпендикулярно базовой линии, соединяющей O и O ' (строка 2, столбец 1 набора 2D-изображений). Это вращение можно найти, используя перекрестное произведение между исходной и желаемой оптическими осями. [3] Затем мы находим проективное преобразование H 2, которое берет повернутое изображение и скручивает его так, чтобы горизонтальная ось совпадала с базовой линией. Если рассчитано правильно, это второе преобразование должно отобразить е на бесконечность по оси x (строка 3, столбец 1 набора 2D-изображений). Наконец, определите как проективное преобразование для исправления первого изображения.

В-третьих, с помощью эквивалентной операции мы можем найти H ', чтобы исправить второе изображение (столбец 2 набора 2D-изображений). Обратите внимание, что H ' 1 должен вращать оптическую ось второго изображения, чтобы быть параллельной преобразованной оптической оси первого изображения. Одна из стратегий состоит в том, чтобы выбрать плоскость, параллельную линии пересечения двух исходных оптических осей, чтобы минимизировать искажения в процессе перепроецирования. [10] В этом примере мы просто определяем H ', используя матрицу вращения R и начальное проективное преобразование H как .

Наконец, мы масштабируем оба изображения до одинакового приблизительного разрешения и выравниваем теперь горизонтальные эпиполи для облегчения горизонтального сканирования соответствий (строка 4 набора 2D-изображений).

Обратите внимание, что можно выполнить этот и аналогичные алгоритмы, не имея матриц параметров камеры M и M ' . Все, что требуется, - это набор из семи или более соответствий изображения для изображения для вычисления фундаментальных матриц и эпиполей. [9]

В геоинформационной системе [ править ]

Исправление изображений в ГИС преобразует изображения в стандартную систему координат карты. Это достигается путем сопоставления наземных опорных точек (GCP) в картографической системе с точками на изображении. Эти опорные точки вычисляют необходимые преобразования изображения. [11]

Возникают первичные трудности в процессе

  • когда точность точек карты не известна
  • когда на изображениях отсутствуют четко идентифицируемые точки, соответствующие картам.

Карты, которые используются с исправленными изображениями, не являются топографическими. Однако используемые изображения могут содержать искажения от местности. Ортотрансформирование изображения дополнительно устраняет эти эффекты. [11]

Исправление изображений - это стандартная функция, доступная в пакетах программного обеспечения ГИС.

Эталонные реализации [ править ]

В этом разделе представлены внешние ссылки на эталонные реализации исправления изображений.

  • stereoRectify и stereoRectifyUncalibrated (часть OpenCV ), с открытым исходным кодом для Windows, Linux / Mac, Android и iOS
  • Набор для исправления и неоткалиброванный набор для исправления , исходный код MATLAB с учебным пособием Андреа Фузиелло [4]
  • исправление , часть пакета MATLAB от Du Huynh с кратким руководством [12]
  • rectifyStereoImages , родная функция MATLAB в Computer Vision System Toolbox

См. Также [ править ]

  • Бинокулярное несоответствие
  • Проблема с перепиской
  • Эпиполярная геометрия
  • Географическая информационная система
  • Географическая привязка
  • Гомография
  • Регистрация изображения
  • Фотограмметрия
  • Регистрация набора точек
  • Каучуковое покрытие
  • Стерео камера
  • Стерео видение
  • Конструкция из движения

Ссылки [ править ]

  1. ^ a b Фузиелло, Андреа; Трукко, Эмануэле; Верри, Алессандро (2000-03-02). «Компактный алгоритм исправления стереопар» (PDF) . Машинное зрение и приложения . 12 : 16–22. DOI : 10.1007 / s001380050120 . S2CID  13250851 . Проверено 8 июня 2010 .
  2. ^ a b Орам, Дэниел (2001). «Ректификация для любой эпиполярной геометрии». Отсутствует или пусто |url=( справка )
  3. ^ a b c Ричард Селиски (2010). Компьютерное зрение: алгоритмы и приложения . Springer. ISBN 9781848829350.
  4. ^ a b c Фузиелло, Андреа (17 марта 2000). «Эпиполярная ректификация» . Проверено 9 июня 2008 .
  5. ^ Поллефейс, Марк; Кох, Рейнхард; Ван Гул, Люк (1999). «Простой и эффективный метод исправления общего движения» (PDF) . Proc. Международная конференция по компьютерному зрению : 496–501 . Проверено 19 января 2011 .
  6. ^ Лим, Сер-Нам; Миттал, Анураг; Дэвис, Ларри; Парагиос, Никос. «Некалиброванное стерео-выпрямление для автоматического 3D-наблюдения» (PDF) . Международная конференция по обработке изображений . 2 : 1357. Архивировано из оригинального (PDF) 21 августа 2010 года . Проверено 8 июня 2010 .
  7. ^ Роберто, Рафаэль; Тейхриб, Вероника; Кельнер, Джудит (2009). "Retificação Cilíndrica: um método eficente para retificar um par de imagens" (PDF) . Мастерские Сибграпи 2009 - Работы бакалавриата (на португальском языке). Архивировано из оригинального (PDF) 06.07.2011 . Проверено 5 марта 2011 .
  8. ^ a b Петля, Чарльз; Чжан, Чжэнъю (1999). "Вычисление выпрямляющих омографий для стереозрения" (PDF) . Ход работы. Конференция компьютерного общества IEEE 1999 года по компьютерному зрению и распознаванию образов (номер по каталогу PR00149) . С. 125–131. CiteSeerX 10.1.1.34.6182 . DOI : 10,1109 / CVPR.1999.786928 . ISBN   978-0-7695-0149-9. S2CID  157172 . Проверено 9 ноября 2014 .
  9. ^ a b c Ричард Хартли и Эндрю Зиссерман (2003). Геометрия множественного просмотра в компьютерном зрении . Пресса Кембриджского университета. ISBN 9780521540513.
  10. ^ Дэвид А. Форсайт и Жан Понсе (2002). Компьютерное зрение: современный подход . Профессиональный технический справочник Prentice Hall.
  11. ^ a b Фогель, Дэвид. «Исправление изображений с радиальными базовыми функциями» . Архивировано из оригинала на 2008-05-24 . Проверено 9 июня 2008 .
  12. ^ Huynh, Du. «Полярное выпрямление» . Проверено 9 ноября 2014 .
  1. Р.И. Хартли (1999). «Теория и практика проективной ректификации». Международный журнал компьютерного зрения . 35 (2): 115–127. DOI : 10,1023 / A: 1008115206617 . S2CID  406463 .
  2. Поллефейс, Марк. «Полярное выпрямление» . Проверено 9 июня 2007 .
  3. Линда Г. Шапиро и Джордж К. Стокман (2001). Компьютерное зрение . Прентис Холл. С.  580 . ISBN 978-0-13-030796-5.

Дальнейшее чтение [ править ]

  • Вычислительный ректификационной Homographies для стереозрении по Charles Loop и Zhengyou Чжан (8 апреля 1999 г.) Microsoft Research
  • Computer Vision: Алгоритмы и приложение, раздел 11.1.1 "выпрямление" по Ричард Сцелиски (3 сентября 2010) Springer