Сшивание изображений или фотосшивание — это процесс объединения нескольких фотографических изображений с перекрывающимися полями зрения для создания сегментированной панорамы или изображения с высоким разрешением. Обычно выполняемое с помощью компьютерного программного обеспечения , большинство подходов к сшиванию изображений требуют почти точного наложения изображений и одинаковой экспозиции для получения бесшовных результатов, [1] [2] хотя некоторые алгоритмы сшивания фактически извлекают выгоду из изображений с разной экспозицией, создавая изображения с высоким динамическим диапазоном в областях перекрытия. [3] [4] Некоторые цифровые камеры могут сшивать свои фотографии внутренне.
Сшивание изображений широко используется в современных приложениях, таких как:
Процесс сшивания изображений можно разделить на три основных компонента: регистрацию изображений , калибровку и смешивание .
Для оценки выравнивания изображения необходимы алгоритмы для определения соответствующей математической модели, связывающей координаты пикселей в одном изображении с координатами пикселей в другом. Алгоритмы, которые сочетают прямые сравнения пикселей с градиентным спуском (и другими методами оптимизации), могут использоваться для оценки этих параметров.
Отличительные черты могут быть найдены в каждом изображении, а затем эффективно сопоставлены для быстрого установления соответствий между парами изображений. Когда в панораме существует несколько изображений, были разработаны методы для вычисления глобально согласованного набора выравниваний и эффективного обнаружения того, какие изображения перекрывают друг друга.
Необходима конечная композитная поверхность, на которой можно деформировать или проективно преобразовать и разместить все выровненные изображения, а также алгоритмы для бесшовного смешивания перекрывающихся изображений, даже при наличии параллакса, искажения объектива, движения сцены и разницы в экспозиции.
Поскольку нельзя гарантировать идентичность освещения в двух видах, сшивание двух изображений может привести к появлению видимого шва. Другими причинами появления швов могут быть изменение фона между двумя изображениями при одном и том же непрерывном переднем плане. Другими важными проблемами, с которыми необходимо иметь дело, являются наличие параллакса , искажение объектива , движение сцены и различия в экспозиции . В неидеальном реальном случае интенсивность меняется по всей сцене, а также контрастность и интенсивность между кадрами. Кроме того, необходимо учитывать соотношение сторон панорамного изображения, чтобы создать визуально приятную композицию .
Для панорамной сшивки идеальный набор изображений будет иметь разумное количество перекрытия (не менее 15–30%), чтобы преодолеть искажение объектива и иметь достаточно обнаруживаемых особенностей. Набор изображений будет иметь постоянную экспозицию между кадрами, чтобы минимизировать вероятность появления швов.
Обнаружение признаков необходимо для автоматического поиска соответствий между изображениями. Надежные соответствия требуются для оценки необходимого преобразования для выравнивания изображения с изображением, на котором оно компонуется. Углы, пятна, углы Харриса и различия гауссианов углов Харриса являются хорошими признаками, поскольку они повторяемы и различимы.
Один из первых операторов для обнаружения точек интереса был разработан Гансом П. Моравецем в 1977 году для его исследований, связанных с автоматической навигацией робота через кластерную среду. Моравец также определил концепцию «точек интереса» на изображении и пришел к выводу, что эти точки интереса могут быть использованы для поиска соответствующих областей на разных изображениях. Оператор Моравеца считается детектором углов, поскольку он определяет точки интереса как точки, в которых наблюдаются большие изменения интенсивности во всех направлениях. Это часто происходит в углах. Однако Моравец не был специально заинтересован в поиске углов, а только в отдельных областях на изображении, которые можно было бы использовать для регистрации последовательных кадров изображения.
Харрис и Стивенс улучшили детектор углов Моравека, рассмотрев дифференциал углового счета относительно направления напрямую. Им это было нужно как этап обработки для построения интерпретаций среды робота на основе последовательностей изображений. Как и Моравеку, им нужен был метод для сопоставления соответствующих точек в последовательных кадрах изображений, но они были заинтересованы в отслеживании как углов, так и краев между кадрами.
SIFT и SURF — это недавние алгоритмы обнаружения ключевых точек или точек интереса, но следует отметить, что SURF запатентован и его коммерческое использование ограничено. После обнаружения признака можно применить метод дескриптора, например дескриптор SIFT, для их последующего сопоставления.
Регистрация изображений включает сопоставление признаков [7] в наборе изображений или использование методов прямого выравнивания для поиска выравниваний изображений, которые минимизируют сумму абсолютных различий между перекрывающимися пикселями. [8] При использовании методов прямого выравнивания можно сначала откалибровать свои изображения, чтобы получить лучшие результаты. Кроме того, пользователи могут ввести грубую модель панорамы, чтобы помочь этапу сопоставления признаков, так что, например, только соседние изображения будут искаться для сопоставления признаков. Поскольку имеется меньшая группа признаков для сопоставления, результат поиска более точный, а выполнение сравнения происходит быстрее.
Для оценки надежной модели на основе данных используется распространенный метод, известный как RANSAC . Название RANSAC является аббревиатурой от « RAN dom SA mple C onsensus». Это итеративный метод надежной оценки параметров для подгонки математических моделей из наборов наблюдаемых точек данных, которые могут содержать выбросы. Алгоритм является недетерминированным в том смысле, что он выдает разумный результат только с определенной вероятностью, причем эта вероятность увеличивается по мере выполнения большего количества итераций. То, что это вероятностный метод, означает, что при каждом запуске алгоритма будут получены разные результаты.
Алгоритм RANSAC нашел множество применений в компьютерном зрении, включая одновременное решение проблемы соответствия и оценку фундаментальной матрицы, связанной с парой стереокамер. Основное предположение метода заключается в том, что данные состоят из «внешних», т. е. данных, распределение которых можно объяснить некоторой математической моделью, и «выбросов», которые являются данными, не соответствующими модели. Выбросами считаются точки, которые возникают из-за шума, ошибочных измерений или просто неверных данных.
Для задачи оценки гомографии RANSAC работает, пытаясь подогнать несколько моделей, используя некоторые пары точек, а затем проверяя, смогли ли модели связать большинство точек. Лучшая модель — гомография, которая дает наибольшее количество правильных совпадений — затем выбирается в качестве ответа на задачу; таким образом, если отношение количества выбросов к точкам данных очень низкое, RANSAC выдает достойную модель, соответствующую данным.
Калибровка изображения направлена на минимизацию различий между идеальными моделями объектива и используемой комбинацией камера-объектив, оптических дефектов, таких как искажения , различия в экспозиции между изображениями, виньетирование , [9] реакция камеры и хроматические аберрации . Если для регистрации изображений использовались методы обнаружения признаков, а абсолютные положения признаков были записаны и сохранены, программное обеспечение для сшивания может использовать данные для геометрической оптимизации изображений в дополнение к размещению изображений на паносфере. Panotools и его различные производные программы используют этот метод.
Выравнивание может быть необходимо для преобразования изображения в соответствии с точкой обзора изображения, с которым оно компонуется. Выравнивание, говоря простыми словами, представляет собой изменение системы координат таким образом, чтобы она приняла новую систему координат, которая выводит изображение, соответствующее требуемой точке обзора. Типы преобразований, которые может пройти изображение, это чистый перенос, чистый поворот, преобразование подобия, которое включает перенос, поворот и масштабирование изображения, которое необходимо преобразовать, аффинное или проективное преобразование.
Проективное преобразование — это самое далекое из возможных преобразований изображения (в наборе двумерных плоских преобразований), при котором в преобразованном изображении сохраняются только видимые элементы — прямые линии, тогда как при аффинном преобразовании сохраняется параллельность.
Проективное преобразование можно математически описать как
где x — точки в старой системе координат, x' — соответствующие точки в преобразованном изображении, а H — матрица гомографии .
Выражая точки x и x' с помощью внутренних параметров камеры (K и K') и ее поворота и перемещения [R t] в реальные координаты X и X', получаем
Используя два приведенных выше уравнения и гомографическое соотношение между x' и x, мы можем вывести
Матрица гомографии H имеет 8 параметров или степеней свободы. Гомография может быть вычислена с использованием прямого линейного преобразования и разложения по сингулярным значениям с
где A — матрица, построенная с использованием координат соответствий, а h — одномерный вектор из 9 элементов преобразованной матрицы гомографии. Чтобы получить h, мы можем просто применить SVD: A = USVT и h = V (столбец, соответствующий наименьшему сингулярному вектору). Это верно , поскольку h лежит в нулевом пространстве A. Поскольку у нас есть 8 степеней свободы, алгоритм требует как минимум четырех точечных соответствий. В случае, когда для оценки гомографии используется RANSAC и доступно несколько соответствий, правильной матрицей гомографии является матрица с максимальным числом инлайеров.
Композитинг — это процесс, в котором исправленные изображения выравниваются таким образом, что они выглядят как один снимок сцены. Композитинг может выполняться автоматически, поскольку алгоритм теперь знает, какие соответствия перекрываются.
Смешивание изображений включает в себя выполнение настроек, рассчитанных на этапе калибровки, в сочетании с перераспределением изображений в выходную проекцию. Цвета корректируются между изображениями для компенсации разницы экспозиции. Если применимо, выполняется слияние в высоком динамическом диапазоне вместе с компенсацией движения и устранением двоения. Изображения смешиваются вместе, и выполняется корректировка линии шва для минимизации видимости швов между изображениями.
Шов можно уменьшить простой регулировкой усиления. Эта компенсация в основном минимизирует разницу в интенсивности перекрывающихся пикселей. Алгоритм смешивания изображений придает больший вес пикселям вблизи центра изображения. Изображения с компенсацией усиления и многополосные смешанные изображения сравниваются лучше всего. IJCV 2007.
Выпрямление — еще один метод исправления изображения. Мэтью Браун и Дэвид Г. Лоу в своей статье «Автоматическое сшивание панорамных изображений с использованием инвариантных признаков» описывают методы выпрямления, которые применяют глобальное вращение таким образом, чтобы вектор u был вертикальным (в кадре рендеринга), что эффективно устраняет волнистый эффект из выходных панорам. Этот процесс похож на исправление изображения и, в более общем смысле, на программную коррекцию оптических искажений в отдельных фотографиях.
Даже после компенсации усиления некоторые края изображения все еще видны из-за ряда немоделированных эффектов, таких как виньетирование (интенсивность уменьшается к краю изображения), эффекты параллакса из-за нежелательного движения оптического центра, ошибки неправильной регистрации из-за неправильного моделирования камеры, радиальные искажения и т. д. По этим причинам они предлагают стратегию смешивания, называемую многополосным смешиванием.
Для фрагментов изображений, снятых из одной и той же точки пространства, сшитые изображения можно организовать с использованием одной из различных картографических проекций .
Прямолинейная проекция , где сшитое изображение просматривается на двумерной плоскости, пересекающей паносферу в одной точке. Прямые линии в реальности отображаются как прямые независимо от их направления на изображении. Широкие виды — около 120° или около того — начинают демонстрировать серьезные искажения вблизи границ изображения. Одним из случаев прямолинейной проекции является использование граней куба с кубическим отображением для просмотра панорамы. Панорама отображается на шесть квадратов, каждая грань куба показывает область панорамы размером 90 на 90 градусов.
Цилиндрическая проекция , где сшитое изображение показывает горизонтальное поле зрения 360° и ограниченное вертикальное поле зрения. Панорамы в этой проекции предназначены для просмотра так, как будто изображение обернуто в цилиндр и просматривается изнутри. При просмотре на 2D-плоскости горизонтальные линии кажутся изогнутыми, а вертикальные остаются прямыми. [10] Вертикальное искажение быстро увеличивается при приближении к верхней части паносферы. Существуют различные другие цилиндрические форматы, такие как цилиндрические Меркатора и Миллера , которые имеют меньше искажений вблизи полюсов паносферы.
Сферическая проекция или равнопрямоугольная проекция – которая, строго говоря, является еще одной цилиндрической проекцией – где сшитое изображение показывает 360° по горизонтали и 180° по вертикали поле зрения, т.е. всю сферу. Панорамы в этой проекции предназначены для просмотра так, как будто изображение обернуто в сферу и просматривается изнутри. При просмотре на 2D-плоскости горизонтальные линии выглядят изогнутыми, как в цилиндрической проекции, в то время как вертикальные линии остаются вертикальными. [10]
Поскольку панорама по сути является картой сферы, при желании можно использовать и другие различные картографические проекции . Кроме того, существуют специализированные проекции, которые могут иметь более эстетически приятные преимущества по сравнению с обычными картографическими проекциями, такими как проекция Панини Хугина [11] – названная в честь итальянского художника -ведутизма Джованни Паоло Панини [12] – или проекция Ведутизма П. Т. Гуи. [13] Различные проекции можно комбинировать в одном изображении для точной настройки окончательного вида выходного изображения. [14]
Стереографическая проекция или проекция «рыбий глаз» может быть использована для формирования небольшой панорамы планеты , если направить виртуальную камеру прямо вниз и установить поле зрения достаточно большим, чтобы показать всю землю и некоторые области над ней; направление виртуальной камеры вверх создает эффект туннеля. Конформность стереографической проекции может дать более визуально приятный результат, чем равновеликая проекция «рыбий глаз», как обсуждалось в статье о стереографической проекции.
Использование изображений, снятых не с одного и того же места (на повороте вокруг входного зрачка камеры) [15], может привести к ошибкам параллакса в конечном продукте. Когда захваченная сцена характеризуется быстрым движением или динамичным движением, артефакты могут возникать из-за разницы во времени между сегментами изображения. «Слепое сшивание» с помощью методов выравнивания на основе признаков (см. автосшивание ), в отличие от ручного выбора и сшивания, может привести к несовершенствам в сборке панорамы.
Специализированные программы включают Autostitch , Hugin , Ptgui , Panorama Tools , Microsoft Research Image Composite Editor и CleVR Stitcher . Многие другие программы также могут сшивать несколько изображений; популярным примером является Adobe Systems ' Photoshop , который включает в себя инструмент, известный как Photomerge , и, в последних версиях, новый Auto-Blend . Другие программы, такие как VideoStitch, позволяют сшивать видео, а Vahana VR обеспечивает сшивание видео в реальном времени. Модуль сшивания изображений для программного обеспечения микроскопа QuickPHOTO позволяет интерактивно сшивать несколько полей зрения с микроскопа, используя вид в реальном времени с камеры. Его также можно использовать для ручного сшивания целых образцов микроскопии.
{{cite web}}
: CS1 maint: url-status ( ссылка )