УДК 004.42
DOI: 10.18698/0236-3933-2018-6-22-36
СИСТЕМА ТЕСТИРОВАНИЯ АЛГОРИТМОВ СТАБИЛИЗАЦИИ ВИДЕОИЗОБРАЖЕНИЙ, ФУНКЦИОНИРУЮЩИХ В РЕЖИМЕ РЕАЛЬНОГО ВРЕМЕНИ
Д.А. Гаврилов А.В. Ивкин Н.Н. Щелкунов
gavrilov.da@mipt.ru
alex.v.ivkin@gmail.com
shchelkunov.nn@mipt.ru
Московский физико-технический институт (государственный университет), г. Долгопрудный, Московская обл., Российская Федерация
Аннотация
Приведена система тестирования алгоритмов стабилизации изображений. Выполнен анализ входных данных, рассмотрены способы представления возможных искажений, осуществлен отбор алгоритмов в целях последующих испытаний. Разработан испытательный стенд для тестирования каждого алгоритма и оценки его применимости в задаче совмещения кадров. Система тестирования алгоритмов стабилизации изображений состоит из параметризованного генератора видеопоследовательностей, симулирующего режим слежения, параметризованного генератора искажений и помех, анализатора ошибок работы алгоритма совмещения и модуля генерирования отчета. В параметризованном генераторе искажений реализована физически корректная модель шумов, а также модель помех на изображении. Опытным путем установлены критические значения параметров искажений каждого тестируемого алгоритма. Проведено тестирование и сравнение выбранных алгоритмов. На основе анализа полученных результатов в качестве примера выбран наиболее подходящий алгоритм поиска совмещения кадров в режиме реального времени
Ключевые слова
Алгоритмы стабилизации, компьютерное зрение, обработка видеоизображений
Поступила в редакцию 15.02.2018 © МГТУ им. Н.Э. Баумана, 2018
Введение. С развитием вычислительных систем и информационных технологий возрастает потребность в системах автоматизации и роботизации в различных областях науки и промышленности и, как следствие, необходимость внедрения эффективных методов обработки поступающей информации в режиме реального времени [1]. В последнее время большое внимание уделяется системам, использующим машинное зрение в качестве основного источника информации. Компьютерное или машинное зрение — это совокупность программно-технических средств, обеспечивающих считывание в цифровой форме видеоизображений, их обработку и выдачу результата в форме, пригодной для практического применения в реальном масштабе времени. Одной из важнейших задач является разработка систем стабилизации видеоизображений.
Современные системы компьютерного зрения позволяют осуществлять детектирование и слежение за нестационарными объектами на изображении, полученном с движущейся камеры. Движение камеры во время съемки, как правило, приводит к неустойчивости изображения, что создает определенные трудности для работы различных автоматических систем и оператора. Применительно к задаче трекинга движение камеры интерферирует с движением объектов интереса, что затрудняет использование для трекинга информации о скорости и положении объекта. Движение камеры приводит к изменению неподвижного фона изображения от кадра к кадру, что не позволяет эффективно использовать для детектирования объектов информацию, содержащуюся в изменении изображения во времени. Таким образом, работа любого алгоритма детектирования и слежения должна начинаться с оценки движения камеры и стабилизации видеоизображения [2, 3].
Для решения проблемы стабилизации изображений применяются средства механической (или оптической) и цифровой стабилизации видеоизображений.
Механическая или оптическая стабилизация осуществляется с помощью оптических систем, настраивающих датчики движения камеры и обеспечивающих ее устойчивое положение [4]. Одним из механизмов такой стабилизации является использование гиростабилизаторов [5].
Цифровые методы стабилизации связаны с наблюдаемой сценой и основаны на анализе смещения изображения. Для электронной стабилизации используются программные способы улучшения качества изображений. Известны различные методы, которые могут применяться для стабилизации видеоизображений, в том числе корреляционные [6-8], основанные на определении глобального движения кадра [9] и расчета оптического потока [10, 11].
Цель настоящей работы — исследование алгоритмов стабилизации видеоизображения, работающих в режиме реального времени.
Для достижения поставленной цели необходимо решить следующие задачи: выделить входные данные, поступающие на вход системы стабилизации, определить возможные алгоритмы стабилизации, выполнить тестирование выбранных алгоритмов, затем на основе проведенных исследований выбрать наиболее подходящий алгоритм для использования в целях поиска совмещения кадров в режиме реального времени.
Входные данные. На вход разрабатываемой системы стабилизации видеоизображения подается поток видео. Система должна проанализировать поступающие кадры в режиме реального времени и сравнить очередной кадр с предыдущим. Это позволит оценить перемещение камеры за промежуток времени между моментами поступления данных кадров [12].
Для камеры кадры видеопотока представляют собой набор 2Б-изображений. Существует несколько видов преобразований, которые возможно реализовать на 2Б-изображении [13]. Каждое изображение такого типа в системе стабилизации является проекцией внешнего мира, захватываемого обзором камеры. Исходя из этого, любая точка изображения описывает какой-либо объект внешнего мира.
Введем нормализованную систему координат, где большая сторона изображения принадлежит отрезку [-1; 1], меньшая сторона — отрезку [-а; а] (а — соотношение сторон). Тогда для изображения высотой Н и шириной W любой пиксель с координатами в целых величинах X = (x,y) перейдет в x = (x,y):
2x - W 2 y - H
x =—; y=—' (1)
где S = max (W, H ).
Смещение можно записать как X' = (x,í) или x' = [l|t]x, где I — единичная матрица и x = ( x, y,l) однородные или проективные координаты 2Б-изображения. Вращение и смещение можно представить в виде х' = Rx +1, где
( cos 0 - sin 0^
R = 1 • o o I (2)
Sin 0 cos 0 J
— матрица поворота на угол 0.
Вращение с изменением масштаба определяет равенство x = sRx +1, где
f a - b tx ^
x = ísRt\x = x. (3)
^ b a ty )
Аффинные преобразования записываются так:
x ' = AX =
( Я00 Я01 a02 ^
v Я10 On a12 j
X, (4)
где матрица А — матрица аффинных преобразований.
В проекциях данные преобразования могут быть представлены в виде х' ~ Нх, причем координаты выражаются как
, Нпх + НП 7 + ^13 , Ь.21Х + Н22 7 + ^23 х =--- и у =---. (5)
Нз1Х + Нз2 у + Нз2 Нз1Х + Нз2 у + Нз2
Рассмотрим способ перехода от зБ-координат к 2Б-изображению, полученному камерой. Такие преобразования требуются для уточнения положения камеры и фона в пространстве. Координаты зБ задаем вектором р = (Х, 7,7), координаты
2Б — вектором х = ( х, у, I), расстояние от интересуемого объекта в координатах
зБ до камеры обозначаем / Тогда переход от зБ-координат к 2Б-координатам определяют равенства
х=/Х, у=4 (6)
С учетом того, что экран камеры мал по сравнению с окружающим фоном, параметр / можно задать как
о
/ 1 = (7)
где 0 — угол, определяемый в соответствии с рис. 1.
В общем случае следует рассматривать переход от 3 Б-координат к 2Б-координатам следующим образом:
( K
0 ^
p=pp'
(8)
(
где K =
0 0 ^ f 0 0 1
— внутренняя калибровоч-
Рис. 1. Отношение между координатами 3D и 2D
ная матрица; Р — проекционная матрица. Последний столбец в матрице Р определяет г-буфер.
Введем векторы р = (X, У, 2,1), х = (х, у, 1, г).
Рассмотрим два изображения, полученные с разных позиций камеры. Индекс 0 обозначает координаты, принадлежащие первому положению камеры. Переход к координатам изображения определяет выражение
x 0 —
R0 tf
0T
1
p = E0 p'
(9)
проекции перспективы равны
Хо~ Po Eo p. (10)
Предполагая, что z-буфер известен, можно вычислить p ~ E01Po lX. Подставляя эту формулу в следующее выражение, получаем 5c1 ~ P1E1 p = P1E1 Eq1P0'1X0 = = M10X0. Данное выражение описывает переход от одного изображения к другому при перемещении камеры.
Для представления вращения и изменения расстояния от камеры до 3Б-фона вращение следует параметризовать. Вектор, задающий преобразование, определяется выражением q = (x, y, z, w) = (v, w), где w = 9П, причем 9 и n — угол и ось вращения. Матрицу преобразования запишем в виде
R(n, 9) = I + sin9[n] + (1 - cos 9) [П]2; (11)
Í 0 -Hz Hy
[n] = nz 0 ~Пх . (12)
к-П y n X 0 V
Для малых вращений запишем
R(w)«I + 0[n] = I + [w] = I + sin 0[n] + (1 - cos 9) [П]2 = I + 2w[v] + 2[v]2. Переписывая R как функцию от x, y, z, w, получаем
' 1 - 2(y2 + z2) 2(xy - zw) 2(xz + yw) ^ 2( xy + zw) 1 - 2( x2 + z2) 2( yz - xw) 2(xz - yw) 2(yz + xw) 1 - 2(x2 + y2)
R(q) =
(13)
(14)
При построении алгоритма стабилизации будем рассматривать искажения переноса, вращения и изменения масштаба. Преобразования аффинного и проекционного типов можно не учитывать, так как наблюдаемая сцена находится на достаточно большом расстоянии и параллаксом (изменением видимого положения объекта относительно удаленного фона в зависимости от положения наблюдателя) можно пренебречь.
Алгоритмы определения смещения кадра. Существуют различные способы определения величины смещения кадра. Первый из таких способов предполагает сравнение всех точек предыдущего кадра с точками текущего кадра. Данный способ является довольно медленным, так как требует перебора большого числа точек. Кроме того, этот способ является недостаточно надежным, поскольку на изображении могут присутствовать различные шумы.
Второй способ основан на детектировании особых точек изображения и реализуется с помощью алгоритмов Scale-Invariant Feature Transform (SIFT) [14], Speeded Up Robust Features (SURF) [15] или Fast Retina Keypoint (FREAK) [16]. Эти алгоритмы выделяют на изображении особые точки и создают их описания, так называемые дескрипторы.
Третий способ основан на покадровом сравнении всего изображения и определении смещения. Одной из реализаций данного способа является алгоритм, основанный на вычислении функции кросс-корреляции с помощью быстрого преобразования Фурье (БПФ или FFT) [16].
Еще один способ реализует алгоритм Канаде — Лукаса — Томаса (далее КЛТ) или алгоритм трассировки особых точек изображений. Этот алгоритм рассматривает смещение между двумя кадрами, предполагая, что между ними существует лишь небольшое отличие, что является верным для потока видео.
Описание испытательного стенда. Для тестирования каждого указанного алгоритма и оценки его применимости в задаче совмещения кадров был разработан испытательный стенд. В качестве стенда использовался сервер с установленным программным обеспечением MATLAB 2013a и управляющей программой трассировки. Общая схема стенда представлена на рис. 2.
Программа разбита на несколько самостоятельных логических блоков. Эти блоки, в свою очередь, делятся на блоки подготовки данных и обработки. Всего в алгоритме выделены три блока подготовки данных: траектория целей; спектр ускорений камеры; генератор параметров.
Указанные блоки полностью задают начальные данные для проведения эксперимента, причем первые два блока формируют условия движения камеры наблюдения. Алгоритм формирования видеоряда приведен на рис. 3.
Модель сцены состоит из изображения фона, а также модели изображения цели, которая реализована в виде небольшого черного прямоугольника. Симулированное движение камеры формируется как суперпозиция преднамеренного и непреднамеренного движений. Преднамеренное движение представляет собой имитацию слежения за целью. Непреднамеренное движение задается извне
Рис. 2. Общая схема испытательного стенда
Рис. 3. Схема алгоритма формирования видеопоследовательности
спектром ускорений камеры. Затем изображение с помощью модуля имитации движения камеры поступает в блок формирования видеопотока. В файле логов записывается информация об истинном движении камеры.
Контроль и формирование видов и параметров искажений осуществляет блок «Генератор параметров». Он формирует трассу параметров, которые должны быть протестированы на стенде. Для каждого эксперимента формируется свой блок параметров, состоящий из нескольких частей. В процессе формирования этого блока каждый набор параметров р, индексируется. Полная информация о сформированном блоке параметров записывается в таблицу. Принципиальная схема сформированной трассы параметров, поступающих на стенд тестирования алгоритмов, приведена на рис. 4.
На первом этапе обработки сформированное видео поступает на вход генератора искажений. Искажения, вносимые генератором, следующие.
Блок параметров #3
f ч Блок параметров #2
Генератор искажений с ч Блок параметров #1 \
Генератор искажений РТ\ Р с
РГ\ Р Генератор искажений Алгоритм совмещения /
ftJ — д. Л3-!—
1 РЦ Р\ РЦ Р\
ч
Рис. 4. Схема трассы тестируемых параметров
Ошибка фокусировки. Данный вид искажений формируется семейством функций «Скользящая средняя». Каждая точка изображения вычисляется заново, исходя из информации о соседних точках. В общем случае это линейная сумма с весами
п
р1 =Х Wt- i pt - i, (15)
i=1
где р1 -1 — значение точки — wt _ 1 — ее «вес».
Для определения ошибки фокусировки данное усреднение выполняется в полярных координатах.
«Шевеленка» — в данном фильтре происходит усреднение изображений, сдвинутых на заданный вектор. В качестве параметров используются наклон вектора и его длина.
Неоднородность чувствительности сенсора. Для имитации данного эффекта создано несколько моделей шумов. Идея состоит в добавлении к изображению шумового сигнала. Реализовано два вида шумов — мультипликативный белый гауссов шум и аддитивный пуассоновский шум.
«Соль и перец». Данная модель шума имитирует случайное отключение пикселя или полное выгорание (белая точка).
Ошибка экспозиции. В рамках данной модели сдвиг экспозиции симулируется сдвигом значений интенсивности освещения на постоянную величину, после чего учитывается динамический диапазон матрицы и число битов на точку изображения.
«Засветка» изображения от мощного источника света. Как и в предыдущем шуме, данное искажение формирует матрицу с градиентным распределением интенсивности, добавляя ее к исходному изображению, при этом засвечивается лишь часть снимка.
На рис. 5 приведен пример кадра, к которому применили искажение, имитирующее смазанное движение камеры. Изображение подготовлено при значении параметра «амплитуда шевеленки», равном 25.
Рис. 5. Пример искаженного кадра
После обработки видео и добавления всех необходимых шумов поток видеоданных поступает в блок «Совмещения кадров». Данный блок получает из набора параметров имя алгоритма совмещения кадров. После обработки формируются отчетные данные. Наибольший интерес представляют собой ошибки совмещения кадров.
Одним из параметров трассировки, который не меняется в процессе вычислений, является число кадров в сформированном видео (Л). Между каждой парой последовательных кадров вычисляется невязка в стабилизации, равная сумме квадратов некомпенсированных смещений. Тем самым для одного набора параметров вычисляется N-1 набор ошибок. В последующем анализе формируется график зависимости средней величины ошибки и ее дисперсии от номера эксперимента.
В диапазоне стабильной работы алгоритма совмещения наблюдается низкое значение средней ошибки, которое слабо колеблется. При критических значениях искажений возможны два случая.
Алгоритм начинает выдавать некорректные данные, при этом значение средней ошибки начинает резко расти. Критерием срыва алгоритма считается условие
вттМван > еттМеапОоой + 2* егЮ1$рОоой,
где еггМеап — полученная средняя ошибка в данной точке; еттМеапОоой — средняя ошибка в точке без искажений; еттВ1$рОоой — дисперсия ошибки в точке без искажений.
Алгоритм не может вычислить преобразование между кадрами, наблюдается обрыв на графике.
Используя эти закономерности, можно опытным путем установить критические значения параметров искажений для каждого тестируемого алгоритма. Таким образом, предлагаемый стенд позволяет определить диапазон значений параметров искажений для каждого алгоритма, в результате реализации которых возможно выполнение задачи совмещения кадров.
Результаты экспериментальной проверки алгоритмов и интерпретация данных. Поскольку цель данного исследования — сравнение выбранных алгоритмов, а не тестирование на возможные виды искажений, то исследовали искажения лишь нескольких типов. Важно получить не столько абсолютные значения пороговых параметров искажений, сколько относительный выигрыш в диапазоне значений искажений того или иного алгоритма по сравнению с другим.
Для искажений каждого вида генерировалась серия видеорядов с различными искажениями. Параметры искажений и диапазоны их значений приведены в табл. 1. Считали, что нижняя граница соответствует отсутствию искажения, а верхняя — полному уничтожению полезной информации из кадра.
Таблица 1
Параметры искажений
Тип искажения Параметры Диапазон значений Обоснование верхней границы
регулируемые нерегулируемые
Размытие по Гауссу а (амплитуда) sigma = 2* a От 0 до 200 Подобрано экспериментально на основании визуального восприятия искаженного изображения оператором
Снижение контрастности Нижний порог Верхний порог От 0 до 0,72 Соответствует верхнему порогу контрастности, при этом изображение перестает быть контрастным
Засветка Масштаб а = 1 От 0 до 2,5 Подобрано экспериментально — все пиксели тестового кадра становятся белыми
Ошибка экспозиции Коррекция интенсивности (ехрСогг) - От 0 до 1 Все пиксели тестового кадра становятся белыми
«Шевеленка» Амплитуда - От 0 до 300 Подобрано экспериментально, на основании визуального восприятия искаженного изображения оператором
Малая интенсивность — цифровое усиление Цифровая разрядность интенсивности - От 1 000 000 до 0 Все пиксели тестового кадра становятся белыми
Отметим, что не все типы реализованных искажений участвовали в эксперименте. Установлено, что некоторые из них плохо поддаются параметризации. Имеет смысл рассматривать их однократно, не исследуя в широком диапазоне возможных вариантов искажения.
Полученные видеоряды подавались на вход алгоритмам. Алгоритмы совмещения кадров давали оценку движения камеры, которое сравнивалось с истинным движением. В качестве метрики величины ошибки использовано сред-неквадратическое значение отклонений положений пикселей совмещенных кадров. Для набора статистики вычисляли среднее значение и дисперсию этой метрики по всем кадрам видеоряда с фиксированными значениями параметров искажения.
Таким образом, в качестве меры эффективности работы алгоритма выбрана ширина диапазона рабочих значений параметров искажений, при которых алгоритм сохраняет устойчивость, т. е. способен выдавать корректные оценки преобразований от кадра к кадру, а также среднее время вычисления совмещения двух кадров. В табл. 2 приведены верхние границы рабочих диапазонов алгоритмов, полученные в результате эксперимента. Сравнительный анализ максимальных значений параметров искажений, при которых происходит срыв алгоритма, позволяет выбрать оптимальный алгоритм для каждого вида помех.
Таблица2
Верхние границы рабочих диапазонов алгоритмов и среднее время работы
Наименование параметра FREAK SIFT SURF FFT
Гауссово размытие 10 150 56 25
Контраст 0,5 0,68 0,66 0,57
Засветка 1,4 1,6 1,6 1,8
Ошибка экспозиции -0,95 -0,97 -0,91 -0,99
«Шевеленка» 10 >50 >200 50
Малая интенсивность — цифровое усиление 10 1 1 1
Среднее время вычисления совмещения двух кадров, с 0,99 6,69 1,91 н/о
Отметим, что существует два типа поведения алгоритмов совмещения кадров при достижении критического значения уровня помех. Первый и более желательный тип поведения представляет собой резкий, но непрерывный рост ошибки и дисперсии. Такое поведение связано с самой природой искажений. Например, невозможно зарегистрировать кадр, к которому применено гауссово размытие с точностью, существенно превышающей характерный размер области усреднения. Второй тип поведения представляет собой разрыв в зависимо-
сти средней ошибки и дисперсии от величины искажений. Такое поведение связано с тем, что при некотором критическом значении параметров искажений алгоритм переходит в ложное решение. Это более опасно и может быть вовремя обнаружено и скорректировано только с помощью обработки информации с внешних сенсоров ускорения и положения камеры.
Как следует из табл. 2, самые слабые результаты показал алгоритм FREAK. По сравнению с остальными алгоритмами FREAK наименее устойчив к искажениям. Наибольшую устойчивость к искажениям в видеопотоке имеет алгоритм SIFT. Он успешно совмещает кадры даже при критичных значениях искажений. Отметим, что хотя алгоритм SIFT проигрывает FFT по устойчивости к искажениям ошибки экспозиции и неоднородности засветки, разность порога не более 2 %. С учетом того, что для алгоритмов SIFT и FFT пороги достаточно высоки, этими отличиями можно пренебречь. Таким образом, наиболее надежным по результатам тестирования является алгоритм SIFT. Одновременно этот алгоритм является наиболее вычислительно сложным, что видно из статистики времени выполнения (см. табл. 2).
Алгоритм SURF незначительно менее устойчив, чем SIFT, при этом он допускает возможность оптимизации, существенно уменьшающей его вычислительную сложность. Такие закономерности в поведении алгоритмов SURF и SIFT не являются случайными. Алгоритм SURF во многом является более быстрой реализацией алгоритма SIFT, хотя увеличение скорости работы ведет к незначительным снижениям порога устойчивости к максимально допустимым искажениям.
Сравнение SURF и FFT показывает, что между этими алгоритмами сохраняется такое же соотношение, как и между SIFT и FFT, с небольшим снижением разрыва в характеристиках.
Таким образом, учитывая как устойчивую работу в области сильных искажений, так и вычислительную сложность рекомендуемым алгоритмом для использования в целях поиска совмещения кадров в режиме реального времени является алгоритм SURF.
Заключение. Разработана система тестирования алгоритмов совмещения изображений, состоящая из параметризованного генератора видеопоследовательностей, симулирующего режим слежения, параметризованного генератора искажений и помех, анализатора ошибок работы алгоритма совмещения и модуля генерирования отчета.
В параметризованном генераторе искажений реализована физически корректная модель шумов камеры, состоящая из таких шумов, как темновые токи и их шум, неоднородность чувствительности сенсора, «горячие» пиксели, «битые» пиксели, выпавшие строки/столбцы, а также помехи на изображении — туман (уменьшение контрастности), ошибка экспозиции, неоднородная засветка (от источника света), ошибка фокусировки, «шевеленка», «соль и перец», треснувший IR-фильтр.
Для тестирования были выбраны следующие алгоритмы совмещения изображений: FFT, SURF, SIFT, FREAK и КЛТ.
В результате проведенного тестирования установлено, что наибольшую устойчивость к помехам имеют алгоритмы FFT, SIFT и FREAK. При этом алгоритмы FFT и FREAK вычислительно сложные и могут быть рекомендованы к реализации только на достаточно производительном оборудовании. В качестве наиболее оптимального выбран алгоритм SURF.
ЛИТЕРАТУРА
1. Головастов А. Машинное зрение и цифровая обработка изображений // Современные технологии автоматизации. 2010. № 4. С. 8-18.
2. Вишняков Б.В., Визильтер Ю.В., Лагутенков А.В. Использование модифицированного метода оптических потоков в задаче обнаружения и межкадрового прослеживания движущихся объектов // Вестник компьютерных и информационных технологий. 2007. № 5. С. 2-8.
3. Бронштейн И.Г., Унчун Чо, Старченко А.П. Разработка методики и исследование электронной системы стабилизации изображений видеокамеры // Информационно-управляющие системы. 2008. № 1. С. 7-11.
4. Карпухин И.В. Способы стабилизации изображений // Евразийский научный журнал. 2016. № 2. С. 174-177.
5. Борисова А.Ю., Смаль А.В., Синицын А.В. Обзор и оценка методов стабилизации изображения систем технического зрения // Молодежный научно-технический вестник. 2015. № 8.
6. Думчев С.В., Думчев Е.В. Стабилизация изображения, полученного со статически установленной видеокамеры // Известия ТулГУ. Технические науки. 2014. № 9 (Ч. 1). С. 64-70.
7. Курчанов Г.О., Шведов А.П. Система цифровой стабилизации видеоизображения на базе экстремально-корреляционного метода поиска // Известия ТулГУ. Технические науки. 2016. № 10. С. 103-111.
8. Zhu J., Guo B. Video stabilization with sub-image phase correlation // Chinese Opt. Lett. 2006. Vol. 4. № 9. P. 553-555.
9. Буряченко В.В., Зотин А.Г. Анализ методов стабилизации видео, основанных на определении движения кадра // Актуальные проблемы авиации и космонавтики. 2010. № 6. С. 339-341.
10. Щербаков В.В., Гарганеев А.Г., Шакиров И.В. Алгоритм расчета оптического потока в задачах оценки параметров геометрических преобразований // Докл. ТУСУР. 2012. № 2 (26). Ч. 1. С. 265-268.
11. Bab-Hadiashar A., Suter D. Robust optic flow computation // Int. J. Comput. Vis. 1998. Vol. 29. No. 1. P. 59-77. DOI: 10.1023/A:1008090730467
12. Стрельников К.Н. Использование особенностей современного представления цифровых видеоданных для оптимизации алгоритмов обработки // Техническое зрение в системах управления мобильными объектами-2010. Тр. науч.-техн. конф. М.: КДУ, 2011. С. 277-281.
13. Hartley R., Zisserman A. Multiple view geometry in computer vision. New York: Cambridge University Press, 2004. 670 p.
14. Lowe D. Distinctive image features from scale-invariant keypoints // Int. J. Comput. Vis. 2004. No. 1. P. 91-110. DOI: 10.1023/B:VISI.0000029664.99615.94
15. Bay H., Essa A., Tuytelaars T., Van Gool L. Speeded-up robust features (SURF) // Comput. Vis. Image Underst. 2008. Vol. 110. No. 3. P. 346-359. DOI: 10.1016/j.cviu.2007.09.014
16. Szeliski R. Image alignment and stitching: a tutorial // Foundations and Trends in Computer Graphics and Vision. 2006. Vol. 2. No. 1. P. 1-104.
Гаврилов Дмитрий Александрович — канд. техн. наук, руководитель лаборатории цифровых систем специального назначения, доцент кафедры радиоэлектроники и прикладной информатики Московского физико-технического института (государственного университета) (Российская Федерация, Московская обл., 141701, г. Долгопрудный, Институтский переулок, д. 9).
Ивкин Александр Владимирович — программист кафедры радиоэлектроники и прикладной информатики Московского физико-технического института (государственного университета) (Российская Федерация, Московская обл., 141701, г. Долгопрудный, Институтский переулок, д. 9).
Щелкунов Николай Николаевич — канд. техн. наук, заместитель заведующего кафедрой радиоэлектроники и прикладной информатики Московского физико-технического института (государственного университета) (Российская Федерация, Московская обл., 141701, г. Долгопрудный, Институтский переулок, д. 9).
Просьба ссылаться на эту статью следующим образом:
Гаврилов Д.А., Ивкин А.В., Щелкунов Н.Н. Система тестирования алгоритмов стабилизации видеоизображений, функционирующих в режиме реального времени // Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2018. № 6. C. 22-36. DOI: 10.18698/0236-3933-2018-6-22-36
THE IMAGE STABILIZATION ALGORITHMS TESTING SYSTEM
D.A. Gavrilov gavrilov.da@mipt.ru
A.V. Ivkin alex.v.ivkin@gmail.com
N.N. Shchelkunov shchelkunov.nn@mipt.ru
Moscow Institute of Physics and Technology (State University), Dolgoprudny, Moscow Region, Russian Federation
Abstract Keywords
The study introduces a system for testing image stabilization Algorithms of stabilization, computer algorithms. The analysis of input data is performed, ways of vision, processing of video images representing possible distortions are considered, algorithms for further tests are selected. A test bench was developed to test each algorithm and evaluate its applicability in the task of combining frames. The system for testing image stabilization algorithms consists of a parameterized video sequence generator that simulates a tracking mode, a parameterized distortion and interference generator, an error analysis algorithm for the alignment algorithm, and a report genera-
tion module. In the parameterized distortion generator, a physically correct noise model is implemented, as well as a model of interference in the image. The critical values of the distortion parameters of each tested algorithm are established experimentally. The testing and comparison of the selected algorithms was carried out. On the basis of the analysis of the obtained results, the most suitable algorithm was chosen for search of the combination of frames in real time
REFERENCES
[1] Golovastov A. Machine vision and digital emage processing. Sovremennye tekhnologii avtomatizatsii [Contemporary Technologies in Automation], 2010, no. 2, pp. 8-18 (in Russ.).
[2] Vishnyakov B.V., Vizil'ter Yu.V., Lagutenkov A.V. Using modified optical flow method in problem of moving objects detecting and interframe tracking. Vestnik komp'yuternykh i informatsionnykh tekhnologiy [Herald of Computer and Informational Technologies], 2007, no. 5, pp. 2-8 (in Russ.).
[3] Bronshteyn I.G., Unchun Ch., Starchenko A.P. Videocamera electronic stabilization image system research and methods development. Informatsionno-upravlyayushchie sistemy [Information and Control Systems], 2008, no. 1, pp. 7-11 (in Russ.).
[4] Karpukhin I.V. Methods of image stabilization. Evraziyskiy nauchnyy zhurnal, 2016, no. 2, pp. 174-177 (in Russ.).
[5] Borisova A.Yu., Smal' A.V., Sinitsin A.V. Review and assessment of stabilization methods of machine vision systems. Molodezhnyy nauchno-tekhnicheskiy vestnik, 2015, no. 8 (in Russ.).
[6] Dumchev S.V., Dumchev E.V. Image stabilization is obtained with a statically set the camcorder. Izvestiya TulGU. Tekhnicheskie nauki [News of the Tula State University. Technical sciences], 2014, no. 9 (P. 1), pp. 64-70 (in Russ.).
[7] Kurchanov G.O., Shvedov A.P. Digital image stabilization system based on the method of extreme-correlation search poiska. Izvestiya TulGU. Tekhnicheskie nauki [News of the Tula State University. Technical Sciences], 2016, no. 10, pp. 103-111 (in Russ.).
[8] Zhu J., Guo B. Video stabilization with sub-image phase correlation. Chinese Opt. Lett., 2006, vol. 4, no. 9, pp. 553-555.
[9] Buryachenko V.V., Zotin A.G. Analysis of video stabilization methods based on frame motion detection. Aktual'nye problemy aviatsii i kosmonavtiki [Actual Problems of Aviation and Cosmonautics], 2010, no. 6, pp. 339-341 (in Russ.).
[10] Shcherbakov V.V., Garganeev A.G., Shakirov I.V. The algorithm for calculating the optical flow estimation in the tasks of the parameters of geometric transformations. Doklady TUSUR [Proceedings of TUSUR], 2012, no. 2 (26), p. 1, pp. 265-268 (in Russ.).
[11] Bab-Hadiashar A., Suter D. Robust optic flow computation. Int. J. Comput. Vis., 1998, vol. 29, no. 1, pp. 59-77. DOI: 10.1023/A:1008090730467
[12] Strel'nikov K.N. Using the features of the modern presentation of digital video processing algorithms for optimization. Tekhnicheskoe zrenie v sistemakh upravleniya mobil'nymi ob"ektami-2010. Trudy nauch.-tekh. konf.-seminara [Computer vision in control systems of the mobile objects-2010. Proc. of the Conf.-Workshop]. Moscow, KDU Publ., 2011, no. 4, pp. 277-281 (in Russ.).
Received 15.02.2018 © BMSTU, 2018
[13] Hartley R., Zisserman A. Multiple view geometry in computer vision. New York, Cambridge University Press, 2004. 670 p.
[14] Lowe D. Distinctive image features from scale-invariant keypoints. Int. J. Comput. Vis., 2004, no. 1, pp. 91-110. DOI: 10.1023/B:VISI.0000029664.99615.94
[15] Bay H., Essa A., Tuytelaars T., Van Gool L. Speeded-up robust features (SURF). Comput. Vis. Image Underst, 2008, vol. 110, no. 3, pp. 346-359. DOI: 10.1016/j.cviu.2007.09.014
[16] Szeliski R. Image alignment and stitching: a tutorial. Foundations and Trends in Computer Graphics and Vision, 2006, vol. 2, no. 1, pp. 1-104.
Gavrilov D.A. — Cand. Sc. (Eng.), Head of Special Purpose Digital Systems Laboratory, Moscow Institute of Physics and Technology (State University) (Institutsky pereulok 9, Dolgo-prudny, Moscow Region, 141701 Russian Federation).
Ivkin A.V. — Programmer at Department of Radioelectronics and Applied Informatics, Moscow Institute of Physics and Technology (State University) (Institutsky pereulok 9, Dolgo-prudny, Moscow Region, 141701 Russian Federation).
Shchelkunov N.N. — Cand. Sc. (Eng.), Deputy Head of the Department of Radioelectronics and Applied Informatics, Moscow Institute of Physics and Technology (State University) (Institutsky pereulok 9, Dolgoprudny, Moscow Region, 141701 Russian Federation).
Please cite this article in English as:
Gavrilov D.A., Ivkin A.V., Shchelkunov N.N. The Image Stabilization Algorithms Testing System. Vestn. Mosk. Gos. Tekh. Univ. im. N.E. Baumana, Priborostr. [Herald of the Bauman Moscow State Tech. Univ., Instrum. Eng.], 2018, no. 6, pp. 22-36 (in Russ.). DOI: 10.18698/0236-3933-2018-6-22-36