Например, Бобцов

Цифровая стабилизация изображений в условиях запланированного движения

УДК 004.932.2
ЦИФРОВАЯ СТАБИЛИЗАЦИЯ ИЗОБРАЖЕНИЙ В УСЛОВИЯХ ЗАПЛАНИРОВАННОГО ДВИЖЕНИЯ

© 2012 г. С. П. Званцев*, канд. техн. наук; П. И. Иванов**, студент; Е. Ю. Мерзлютин*, канд. техн. наук
** ЗАО НИИВЦ “Карат”, Санкт-Петербург
** Cанкт-Петербургский национальный исследовательский университет информационных ** технологий, механики и оптики, Санкт-Петербург
** Е-mail: pavel.ivanov.lp@gmail.com

Рассмотрены аспекты решения задачи стабилизации изображений при съемке подвижной камерой для улучшения восприятия изображений сцены оператором в условиях, когда размеры сцены превышают размеры области визуализации. Предложены методы повышения качества выбора пар точек для оценки параметров реального и запланированного движения изображения сцены. Обсуждается подход к реализации алгоритма в реальном времени.

Ключевые слова: цифровая стабилизация изображений, подвижное основание, оценка параметров движения.

Коды OCIS: 100.2960

Поступила в редакцию 29.05.2012

Введение
Стабилизация изображения – актуальная задача при обработке видеопоследовательностей, получаемых от видеокамер или оптикоэлектронных систем (ОЭС), установленных на подвижном основании (носителе). Съемка может вестись как с транспортного средства, так и “с руки” оператором. В обоих случаях присутствуют случайные движения поля зрения камеры относительно объекта съемки, вызванные угловыми и линейными смещениями носителя. Стабилизация изображений сцены тесно связана с визуализацией изображения на мониторе оператора в процессе наблюдения. Область изображения, предназначенную для отображения оператору, будем называть областью визуализации. Область визуализации содержит информацию, полученную из текущего кадра, в том числе после стабилизации изображения относительно заданного направления поля зрения. При этом текущий кадр в его пространственной ориентации можно отождествлять с данными датчика изображения. Под стабилизацией изображений понимается комплекс мер, обеспечивающих комфортное восприятие оператором сцены в области визуализации на мониторе в условиях случайного

движения поля зрения ОЭС. В целях улучшения восприятия информации при регулярном движении поля зрения относительно сцены стабилизация может осуществляться путем компенсации случайной составляющей этого движения с сохранением систематической составляющей. Отсутствие стабилизации, помимо ухудшения зрительного восприятия сцены, усложняет решение задач обработки изображений, таких как обнаружение изображений подвижных объектов на фонах и их межкадровой идентификации при сопровождении или поиске корреляционного подобия.
Известен ряд подходов к стабилизации изображений, в том числе применение средств механической, оптической или электронной стабилизации. В настоящее время значительный интерес вызывают методы цифровой стабилизации изображений [1–7].
В гиростабилизированных ОЭС, как правило, выполняется двухосная стабилизация поля зрения, при которой изображение движется относительно строк матрицы камеры в соответствии с движением центра масс носителя до появления ненулевой проекции угловой скорости ориентации носителя в направлении оптической оси ОЭС. Ее наличие приводит к вращению изображения на мониторе оператора. Для

“Оптический журнал”, 79, 11, 2012

59

компенсации вращения может использоваться дополнительная стабилизация по третьей оси, хотя, зачастую, от нее отказываются ввиду сложности реализации и появления у оператора неадекватного представления о его собственной ориентации в пространстве при длительном наблюдении. Так же при гироскопической стабилизации (как и при электронной) отсутствует стабилизация масштаба изображения.
В отличие от гиростабилизации, цифровая стабилизация связана с наблюдаемой сценой, что имеет как достоинства, так и недостатки. К достоинствам можно отнести возможность переключения режимов стабилизации (например, компенсации только вращения или масштаба изображения, фиксации положения сцены, фиксации с периодической сменой опорного положения сцены и т. п.). Использование цифровых методов в дополнение к двухосной гироскопической стабилизации позволяет обеспечить ситуационное включение стабилизации по третьей оси на время изучения сцены.
Цифровые методы позволяют уменьшить габариты и стоимость оптико-электронной системы за счет отказа от использования гиростабилизированных платформ или снижения требований к ним, что является актуальным для беспилотных летательных аппаратов и малоразмерных мобильных роботов. Цифровая стабилизация незаменима, когда требуется осуществить стабилизацию ранее снятого видео, т. е. выполнить его пост-обработку.
К недостаткам цифровых методов можно отнести: наличие методических ошибок, вызванных неадекватностью применяемых моделей преобразования изображений, приводящих к накоплению ошибок в оценках параметров преобразований; сложность реализации алгоритмов в реальном времени; технические проблемы, связанные с передачей видеопотока с малым коэффициентом сжатия к компьютеру обработки; ограниченный выбор аппаратных средств, позволяющих выполнять параллельные вычисления и удовлетворяющих требованиям бортового применения.
При наблюдении оператором с подвижного основания можно выделить несколько этапов: обзор пространства, наблюдение объекта (в том числе при удержании области интереса средствами сопровождения), наведение на выбранный объект. Стабилизация полезна для первых двух этапов, поскольку в них происходит визуальный поиск области интереса и анализ сцены, требующие движения изо-

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

Преобразования координат при стабилизации

Суть рассматриваемых методов стабилизации состоит в получении стабилизированного изображения в области визуализации, отображаемой на мониторе оператора или в поле обработки алгоритмов обнаружения и сопровождения подвижного объекта. В момент включения стабилизации фиксируется область визуализации, которая совпадает с текущим кадром. При получении следующего кадра путем оценки параметров межкадрового преобразования изображения W1 появляется возможность попиксельного отображения изображения текущего кадра в область визуализации. Процесс расчета межкадровых преобразований Wk и суммарного преобразования

i
Wi = Wk
k=1

(1)

повторяется для последующих i-х кадров. Этот процесс описывает стабилизацию изображения в области визуализации. Дальнейшая работа по стабилизации основана на следующих рассуждениях.
Получаемые текущие изображения являются двумерными проекциями трехмерных сцен, наблюдаемых при линейных и угловых движениях камеры. Как будет показано ниже, в межкадровых преобразованиях используется набор параметров, включающий сдвиги по осям кадра, поворот, масштаб, искажения по осям, что характерно для преобразований на плоскости. Таким образом, можно рассматривать двумерную прямоугольную систему координат, связанную с начальной областью визуализации (СКОВ0), относительно которой получаются изображения смещенных, повернутых и прочими способами преобразованных текущих кадров.
При удалении текущего поля зрения от первоначального положения целесообразно

60 “Оптический журнал”, 79, 11, 2012

смещать область визуализации относительно СзоКвОанВи0йнаW–оi снтаоквеимоцоебнроакзопма,рачмтеотбрыовдвпиржеоебнриаестабилизированного изображения в текущем j-м положении области визуализации СКОВj соответствовало плавному движению камеры относительно сцены при условии нахождения значительной доли кадра в области визуализации. Данный процесс описывает “запланированное движение”, прогнозирующее намерение оператора при осмотре сцены или предоставляющее оператору возможность ее комфортного рассмотрения при анализе.
Таким образом, преобразование изображения i-го кадра при стабилизации с учетом запланированного движения области визуализации имеет вид

i = Wi-1 Vj ,

(2)

j
Vj = Vn,

(3)

n=1

где V–j преобразование координат области визу-

ализации после j-го перемещения относитель-

но СКОВ0. Преобразования Vn могут включать смещения по осям X и Y, вращение и измене-

ние масштаба изображения.

Отметим случайный характер преобразо-

ваний Wi, полученных на основании оценок параметров, и детерминированный характер

Vj, заданных на основе изменения параметров движения поля зрения относительно области

визуализации. Ошибка оценки преобразова-

ний Wi отражается в ошибке стабилизации и определяется как отклонение центра кадра

стабилизированного изображения от текущего

положения области визуализации. Эта ошибка

увеличивается с ростом числа кадров. Ошиб-

ка выбора детерминированной составляющей

влияет на величину пересечения текущего

кадра с областью визуализации.

В зависимости от поставленной перед опера-

тором задачи возможны различные стратегии

компенсации движения камеры, отличающие-

ся поведением области визуализации:

– фиксация области визуализации в выбран-

ном направлении для статичных сцен,

– сглаженное движение области визуализа-

ции по оценкам параметров смещения и поворо-

та, например, при панорамном обзоре, рис. 1а,

– периодическая фиксация области визуа-

лизации с последующим быстрым переходом

к следующему неподвижному положению,

рис. 1б, как вариант компромисса между двумя

dx, пикс
160 140 120 100 80 60 40 20
00 100

1 2
200

(а)
300 400

500 600
n, кадр

dx, пикс
160
140 1
120 100
80 60 40 20 0
0 100 200

(б) 2
300 400

500 600
n, кадр

Рис. 1. Стратегии компенсации движения камеры, отличающиеся поведением области визуализации. На рисунке а) представлена модель сглаженного движения области визуализации, на рисунке б) периодическая смена фиксированного положения области визуализации. Кривая 1 – оценка параметра движения сцены (смещения по оси X), кривая 2 – принятое изменение параметра движения области визуализации.

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

Оценка параметров преобразования

Оценка параметров межкадрового преоб-

разования изображения строится с учетом вы-

бранного типа преобразования. В данной рабо-

те использовано аффинное преобразование

X¢ = WX,

W = éêêëêêaa01211

a12
a22 0

tx ty 1

ùúúúúû

,

(4)

где X и X – координаты соответствующих точек в n-м и (n + 1)-м кадрах, W – матрица аффинного преобразования. При этом tx и ty от-

“Оптический журнал”, 79, 11, 2012

61

вечают за смещение изображения вдоль осей x и y системы координат области визуализации, а элементы a11, a12, a21, a22 содержат информацию о повороте, наклоне и масштабировании. Можно записать отдельные составляющие преобразования, выделяя параметры смещения

W = TA, T = êëêêêé100

0 1 0

tx ty 1

úúùúûú,

A = éêëêêêaa01211

a12
a22 0

100úûúúúù,

(5)

где Т – преобразование смещения, А – преобразования вращения и масштаба.
Чтобы произвести оценку матрицы аффинного преобразования W, применялся метод наименьших квадратов (МНК), в котором использовались пары соответствующих особых точек в соседних кадрах. Здесь искомые элементы матрицы аффинного преобразования представлены в виде 6-мерного вектора искомых параметров c

q = Sc,

q

=

êêêêëêêêêêêéê

x1¢ 
xn¢ y1¢ 
yn¢

ûúúúúúúúùúúúú

,

S = êëêêêêêêêêêêéxx00n1

y1 
yn 0 
0

0 
0 x1 
xn

0 
0 y1 
yn

1 
1 0 
0

1100 úúúûúúúúúúúùú,

c = êéêêêêêêêêêêëcccccc125643 úúùúúúúúûúúúú = êêêêêêêêêêëêéaaaatt1122xy2121 úúúúúúúúûúúùú,

(6)

( ) ( )c = ST´S -1´ ST´q ,

где x1, …, xn, y1, …, yn и x1 , …, xn , y1 , …, yn – координаты соответствующих точек в n-м и (n + 1)-м кадрах.
Для последующей оценки динамики запланированного движения необходимо оценить параметры преобразования, такие как смещения, поворот, масштаб, наклон. В матрице межкадрового аффинного преобразования W смещения выделяются с помощью выражения (5). Для выделения параметров вращения, мас-

штаба и наклона в матрице A, элементы которой содержат сочетания этих параметров, необходимо выполнить ее декомпозицию. Для этого может быть использована декомпозиция методом мультипликативного разложения. Одним из его вариантов является QR-разложение [11], дающее представление матрицы A (5) в виде

A = QR,

(7)

где Q – ортогональная матрица, R – верхняя треугольная матрица.
В результате QR-разложения матрица A может быть записана в виде

A = ëêêêêêécsoins0(())

-sin() cos()
0

100úùúúûúú êêêéêêës00x

sy tg()
sy 0

100úúúûúùú,

(8)

где  и  – углы поворота и наклона, соответственно, а sx и sy – увеличение по осям x и y системы координат области визуализации.
Следует отметить, что в аффинном преобразовании подразумевается вращение относительно начала координат изображения. Однако при вращении камеры оператором относительно оптической оси изображение поворачивается относительно центра поля зрения. При этом в аффинном преобразовании выполняется следующая последовательность действий: изображение поворачивается относительно начала координат, затем смещается таким образом, чтобы центры поля зрения исходного и повернутого изображения совпали. Это смещение неявно присутствует в оценке межкадрового смещения tx и ty в формуле (4). Аналогичные эффекты проявляются при масштабировании и наклонах. Для его исключения при оценке параметров межкадрового преобразования необходимо перейти к системе координат, связанной с центром поля зрения. Таким образом, оценка линейного движения камеры осуществляется по вычислению смещений центра поля зрения.
На основе оценки параметров движения камеры в серии кадров и принятой гипотезы о характере их изменения производится оценка случайной и систематической составляющих изменения этих параметров. Здесь под гипотезой движения подразумевается тип уравнения, описывающего изменения параметров: постоянное значение, линейное или квадратичное. Примером гипотезы изменения параметров могут быть постоянные значения масшта-

62 “Оптический журнал”, 79, 11, 2012

ба, углов поворота и наклона при линейном изменении смещений центра поля зрения.
Выбор пар точек для оценивания
Точность результата вычисления параметров преобразования в МНК зависит от качества сопоставления ключевых точек. Для получения ключевых точек и их сопоставления в работе использован метод SURF [8]. Возможен выбор точек и другими методами, например, алгоритмом блочного сопоставления 3DRS [9] или методом сопоставления ключевых точек SIFT [10], однако SURF обеспечивает потенциально более высокую точность нахожде-

ния пар точек при значительных межкадровых изменениях, чем блочные методы и работает быстрее метода SIFT.
Во избежание грубых ошибок необходимо отсеять максимальное количество недостоверных или малонадежных пар точек. Для этого в работе использовано три этапа фильтрации результатов сопоставления.
Первый этап представляет собой модификацию процедуры сопоставления ключевых точек метода SURF. В SURF поиск наилучшего кандидата обычно выполняется методом “ближайшего соседа”, для чего используется евклидово расстояние между дескрипторами точек

åå ( ) ( )( ) ( )dist =

4 i=1

j=41èççæç

dxi¢j - dxij

2+

dyi¢j - dyij

2+

 dxi¢j -  dxij

2 +  dy¢ ij -  dyij

2 ÷÷÷øö.

(9)

В случае, когда на “ближайшего соседа” точки претендуют одновременно несколько точек соседнего кадра, велика вероятность ошибочного сопоставления, поэтому подобные точки в выборе пары не используют.
Для повышения надежности выбора пар использовано усиленное правило: к парам с недостаточной надежностью сопоставления предлагается относить и случаи, когда вектор дескриптора, следующего за ближайшим соседом кандидата, удален от дескриптора исследуемой точки менее чем в tratio раз (значения порядка 0,5) по отношению к найденному “ближайшему соседу”.
Второй этап фильтрации недостоверных пар точек осуществляется методом RANSAC, который часто используется в алгоритмах сопоставления. Суть этого метода состоит в следующем: берутся сопоставленные ключевые точки исследуемой пары кадров, например n и n + 1, в них делается k случайных выборок из 3-х или более пар соответствующих точек. На основе каждой отдельной выборки по МНК строится своя модель преобразования из n-го в (n + 1)-й кадр, называемая гипотезой. Затем все сопоставленные в исследуемой паре кадров точки проверяются на соответствие данной гипотезе, т. е. проверяется, будет ли после преобразования точка на n-м кадре отстоять от соответствующей ей точки на (n + 1)-м кадре на расстояние, не превышающее tRANSAC. Среди гипотез выбирается лучшая – соответствующая

наибольшему количеству сопоставлений, прошедших порог. Пары точек, не удовлетворяющие условию соответствия лучшей гипотезе, отбраковываются. Метод RANSAC успешно фильтрует грубые ошибки сопоставления, превышающие tRANSAC, однако при этом ложные пары точек, удовлетворяющие этому порогу, не будут отбракованы.
Проведенные исследования показали, что целесообразно выполнить третий этап – дополнительную фильтрацию результатов сопоставления, методом, описанным в [12], использующим вычисление гистограмм локального увеличения с выбором максимально правдоподобного значения.
Пусть

Sn,m =

(xn¢ - xm¢ )2 +(yn¢ - ym¢ )2 , (xn - x m)2 +(yn - y m)2

( )Sn = argçèæççmaxèççæçmhÎ[i1s; tM] Sn,m ÷øö÷÷÷÷÷÷øö,

S = argçèæççmaxèçççænhÎ[i1s;Nt ](Sn )ø÷÷ö÷÷ø÷÷ö÷,

(10)

где hist(…), n  [1; N] – гистограмма распределения масштабов, масштаб S соответствует координате максимума гистограммы. Тогда, если Sn, m  [S – tscale, S + tscale], то сопоставленные пары считаются надежными.
В отличие от RANSAC, в описанном методе нет нижнего предела порога чувствитель-

“Оптический журнал”, 79, 11, 2012

63

ности. Тем не менее, поскольку используются гистограммы, его точность зависит от размаха значений локального увеличения, поэтому использование метода целесообразно следом за методом RANSAC в качестве уточняющего. На практике этот этап фильтрации позволяет удалить из рассмотрения точки, принадлежащие движущимся объектам и объектам переднего плана сцены.
Реализуемость цифровой стабилизации в реальном времени
В экспериментальной части данной работы были промоделированы алгоритмы стабилизации с сохранением запланированной составляющей движения камеры, сопровождения точек по косвенным признакам и стабилизация с периодической сменой опорного положения области визуализации, также были произведены замеры времени, затрачиваемого различ-

ными этапами обработки. Эксперимент проводился на реальных видеопоследовательностях. На рис. 2 для сравнения представлены результаты работы алгоритма стабилизации и исходные кадры одной из видеопоследовательностей, использованных в эксперименте. Можно видеть, что в стабилизированном видео точка сцены (белый маркер), соответствующая центру области визуализации (черный маркер), как и остальные точки сцены, остается неподвижной вне зависимости от происходившего в исходной видеопоследовательности движения.
Для оценки вычислительных затрат на реализацию стабилизации между блоками программы были установлены счетчики времени. Усредненные результаты замеров представлены в виде диаграммы на рис. 3, из которой следует, что 90% времени обработки – это межкадровое сопоставление, т. е. работа метода SURF. Существует множество примеров успеш-

(а) (б)

Рис. 2. Результаты обработки. В левом столбце (а) представлены: 1-й, 16-й, 28-й, 51-й кадры стабилизированной видеопоследовательности, сверху вниз, на рисунке в правом столбце (б) – кадры исходного видео.
64

t, мс
500
450
400
350

6 5 4
3

300

250

200 2
150

100

50 1
0
Рис. 3. Диаграмма затрат времени на реализацию стабилизации (расчет). 1 – восстановление кадра, 2 – вычисление преобразования, 3 – сопоставление точек интереса, 4 – расчет дескриптов, 5 – выделение точек интереса, 6 – расчет интегрального изображения.

“Оптический журнал”, 79, 11, 2012

Зависимость времени обработки от размеров кадра

Размер кадра, пикс

720576

640480

512384

Время обработки, мс

476

349

246

352288 124

220176 53

160112 28

ной оптимизации этого метода с использованием специальных процессоров, реализующих параллельные вычисления. В частности, авторы статьи [3] достигли скорости выполнения алгоритма SURF 30 кадр/с с использованием графических процессоров NVIDIA.
Из диаграммы (рис. 3) следует, что значительная часть времени обработки кадра занята процедурами, имеющими пропорциональную зависимость времени их выполнения от площади обрабатываемого изображения. Была проведена оценка зависимости времени обработки от размера обрабатываемого фрагмента, результаты которой приведены в таблице.
Основываясь на этой зависимости, можно, уменьшая разрешение в 2 раза (пирамида изображения), увеличивать скорость обработки в 4 раза и использовать грубую оценку, инвариантную к масштабированию и поворотам, полученную методом SURF, для последующего уточнения, например, корреляционными методами.

Выводы
1. Рассмотрен подход к стабилизации видеопоследовательности при съемке с подвижного основания, обеспечивающий выделение запланированной составляющей движения для повышения качества восприятия сцены оператором.
2. Предложен метод повышения надежности межкадрового сопоставления пар точек путем использования нескольких этапов проверки, в том числе за счет усиленной фильтрации неоднозначных ситуаций.
3. Оценены затраты времени на реализацию алгоритма. Показано, что 90% времени составляют линейные операции, допускающие распараллеливание вычислений. Предложено повысить скорость расчета за счет использования пирамиды изображений.
4. Проведены эксперименты, подтверждающие работоспособность и эффективность рассмотренного метода на реальных видеопоследовательностях.

*****

ЛИТЕРАТУРА
1. Yang J, Schonfeld D. Robust Video Stabilization based on particle filter tracking of projected camera motion // IEEE Transection. Circuits and Systems for Video Technology. 2009. V. 19. № 7. Р. 945–954.
2. Lin CT, Hong CT. Real-Time Digital Image Stabilization System Using Modified Proportional Integrated Controller // IEEE Transactions. Circuits and Systems for Video Technology. 2009. V. 19. № 3. Р. 427–431.
3. Terriberry, French L.M., Helmsen J. GPU Accelerating Speeded-Up Robust Features // Proceedings of 3DPVT. 2008.
4. Pan Z., Ngo C.-W. Selective Object Stabilization for Home Video Consumers. // IEEE Transactions on Consumer Electronics. 2005. V. 51. № 4. Р. 248–253.
5. Litvin A., Konrad J. Probabilistic video stabilization using Kalman filtering and mosaicking // Proc. of SPIE Electronic Imaging. 2003. V. 5022. Р. 663–674.
6. Duric Z., Rosenfeld A. Shooting a smooth video with a shaky camera // Machine Vision and Applications. 2003. V. 13. P. 303–313.
7. Ertürk S. Real-time digital image stabilization using Kalman filters // Real-Time Imaging. 2002. V. 8. P. 317–328.
8. BayH., Tuytelaars T., Van Gool L. SURF: Speeded Up Robust Features // In ECCV (1). 2006. P. 404–417.

“Оптический журнал”, 79, 11, 2012

65

9. De Haan G., Biezen P.W.A., Huijgen H., Ojo O.A. True Motion Estimation with 3-D Recursive Search Block Matching // IEEE Transection o, Circuits and Systems for Video Technology. 1993. V. 3. № 6. P. 248.
10. Lowe D.G. Distinctive Image Features from Scale-Invariant Keypoints // International Journal of Computer Vision. 2004.
11. Канатников А.Н., Крищенко А.П. Математика в техническом университете. Выпуск IV: Линейная алгебра. М.: Изд. МГТУ им. Баумана, 2002. C. 296.
12. Солдатов С.А., Стрельников К.Н., Ватолин Д.С. Быстрое и надежное определение глобального движения в видеопоследовательностях // Труды конференции “Graphicon-2006”. 2006. C. 430–437.
66 “Оптический журнал”, 79, 11, 2012