Разработка системы видеонаблюдения c возможностью улучшения визуального качества видеопотока

Комментирование кода

Хотя в большинстве случаев правильное именование полей и методов класса делает код читабельным и вполне понятным при беглом просмотре, иногда комментарии могут разъяснить непрозрачные фрагменты кода [3]. Код программного пакета «Конструктор» описывает специфическую предметную область, поэтому с пониманием методов расчета при ознакомлении с кодом неизбежно возникают проблемы. Он отражает технологический процесс, ряд физико-химических явлений и множество вычислительных методов. Естественно, это требует пояснения комментариями, например: //Расчет движения границы геля

for(int i=0; i<countPoints; i++) {

//Изменяем Slider в зависимости от положения //слайдера. Перем-я Slider связана с толщиной //линии объектов CPen CString sliderPosition = slider.getPosition(); Однако следует отметить, что неверные комментарии усложняют понимание программы, а избыточные только захламляют код. Нет никакого смысла комментировать правильно именованное поле или метод. Его имя расскажет о намерениях программиста больше, чем пространный комментарий. В ходе рефакторинга бессодержательные комментарии были удалены, а неточные заменены на правильно поясняющие контекст.

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

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

Литература

1. Фаулер М. Рефакторинг: улучшение существующего кода; [пер. с англ.]. СПб: Символ-Плюс, 2003.

2. Макконнелл С. Совершенный код. Мастер-класс; [пер. с англ.]. СПб: Питер, 2005.

3. Мартин Р. Чистый код: создание, анализ и рефакторинг. Библиотека программиста. СПб: Питер, 2010.

4. Калабин А.Л., Керницкий А.В., Пакшвер Э.А. Программная система предпроектных исследований технологических процессов формования химических волокон // Программные продукты и системы. 2008. № 1.

5. Гамаюнов Н.И., Калабин А.Л., Свистунов В.А. Моделирование диффузии в бикомпонентных волокнах типа ядро-оболочка // Теоретические основы химической технологии. 1994. Т. 28. Вып. 3. С. 285-287.

References

1. Fowler M., Beck K., Brant J., Opdyke W., Roberts D., Refactoring: Improving the Design of Existing Code, Addison-Wesley Professional, 1999, 431 p.

2. MacConnell S., Code Complete : A Practical Handbook of Software Construction, Microsoft Press, 2004.

3. Martin R., Clean Code: A Handbook of Agile Software Craftsmanship, Prentice Hall, 1st ed., 2008.

4. Kalabin A.L., Kernitsky A.V., Pakshver E.A., Programm-nye produkty i sistemy [Software and Systems], Tver, 2008, no. 1.

5. Gamayunov N.I., Kalabin A.L., Svistunov V.A., Teoreticheskie osnovy khim. tekhnologii [Theoretical Foundations of Chemical Engineering], 1994, Vol. 28, iss. 3, pp. 285-287.

УДК 004.932

РАЗРАБОТКА СИСТЕМЫ ВИДЕОНАБЛЮДЕНИЯ С ВОЗМОЖНОСТЬЮ УЛУЧШЕНИЯ ВИЗУАЛЬНОГО КАЧЕСТВА

ВИДЕОПОТОКА

А.Г. Зотин, к.т.н., доцент; A.И. Пахирка, к.т.н., ст. преподаватель; В.В. Буряченко, аспирант, ассистент

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

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

Ключевые слова: видеонаблюдение, анализ видео, обнаружение движения, оценка движения, стабилизация видеопоследовательности, нелинейное улучшение качества, Retinex, HDR.

DEVELOPMENT OF VIDEO SURVEILLANCE SYSTEM WITH VISUAL QUALITY ENHANCEMENT Zotin A.G., Ph.D., associate professor; Pakhirka A. I., Ph.D., senior lecturer; Buryachenko V.V., postgraduate, assistant

Abstract. The article considers the question of realization of video surveillance system based on IP-cameras that designed for outdoor surveillance. The major factors adversely affecting the video perception are uneven illumination of the observed scene, weather conditions and camera movement. The system provides the opportunity to enhance video stream quality based on nonlinear image enhancement technology with local contrast preserving in bright and poorly lit areas. The usage of non-linear image correction method allows enhancing the quality of the observed scene in the evening and under bad weather conditions. The method of video sequence stabilization based on the corresponding blocks analysis with the spatial-temporal post-processing is proposed. There is a possibility to set up preset scene zones that allows increasing algorithm efficiency in the absence of camera movement. To inform the operator about events in a supervision zone the method of motion detection taking into account three types of movement is offered. The video file format archive based on MJpeg stream is designed. It allows keeping information about movement in the frame. The results of experiments for a movement detector are shown. Data of the stabilization effectiveness and increasing the images visual quality obtained in difficult lighting conditions are presented.

Keywords: video surveillance, video analysis, motion detection, motion evaluation, video stabilization, block-matching, non linear quality enhancement, Motion JPEG, video compression, Retinex.

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

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

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

Предлагаемая программная система предназначена для улучшения качества видеоматериала, полученного в сложных условиях освещения, при организации видеонаблюдения на АЗС, парковках, во дворах и т.п. В системе реализован трехступенчатый детектор движения, разделяющий ситуацию в кадре на три вида: нет движения, слабое и сильное движение. В связи с проблемами детекторов движения, а именно большой чувствительностью к погодным условиям, дрожанию камеры и незначительным помехам в кадре, предлагается алгоритм стабилизации видео, позволяющий значительно повысить устойчивость к таким эффектам. Применение метода MSR для повышения качества цветных изображений позволяет улучшить качество восприятия видеоданных в вечернее время суток, а также снизить влияние помех от самих камер.

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

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

Основными модулями предлагаемой системы видеонаблюдения являются модули улучшения качества изображения, детектора движения и стабилизации видео. Кроме них, с ядром системы связаны модули взаимодействия с камерами, с БД и модули пользовательского интерфейса (рис. 1).

Оценка движения

Наиболее значимым в системах видеонаблюдения является модуль детектора движения, поскольку при обнаружении движения встает необходимость привлечения внимания оператора. Существует большое количество методов обнаружения движения, однако многие являются достаточно сложными с вычислительной точки зрения. К самым быстродействующим методам определения движения относятся методы на основе вычитания фона и сравнения соседних кадров. В их основу закладывается сравнение текущего кадра с предыдущим или с некоторым опорным кадром. При этом для вычисления разницы между кадрами существуют три основных подхода по вычислению значений на основе компонент цветовой модели RGB, яркости пикселей, хроматических компонент цветовой модели YUV.

Для расчета величины движения был разработан метод, который предполагает использование факторов цветового усиления с применением вычисления значения на основе цветовой модели RGB. Расчет абсолютной разности между значениями цветовых компонент R, G, B (Red, Green, Blue) пикселей анализируемых кадров Iop и I^,. проводится в нормированном диапазоне [0..1] согласно формуле

X если S^x^ZTSxF^,

ad

Сs,x,y)xK

boost'

если SM{s,xy)>

^ TS и

SAs,x,y) =

АА-^зО, если где 5 - указатель компоненты цветовой модели (Я, О, В); х и у - пространственные координаты; ГЬоо51

- величина, определяющая степень активации режима усиления; Къоо& - коэффициент усиления; ТЪ

- пороговое значение, которое определяет, произошли ли изменения в цвете пикселя; х, у) -функция вычисления абсолютной разницы по указанной цветовой компоненте между заданными кадрами, которая вычисляется по формуле

^(5У) = (5У)~^Ю*(5х'У)\, (2) где Ъу1ор, 5у1сиг - значения компоненты цветовой модели (Я, О, В) опорного и текущего кадров соответственно.

В качестве опорного кадра 1ор можно использовать как предыдущий, так и фоновый кадр.

IP-камера 1

IP-камера 2

IP-камера 9

Модуль взаимодействия с камерами

Модуль детектора движения

Пользовательский интерфейс

Ядро системы

L

Модуль связи с БД

Модуль улучшения качества изображения

Модуль стабилизации видео

Рис. 1. Структура программного продукта

Для расчета величины изменения пикселя в нормированной форме цветовой модели RGB используется формула

Рвш(х>У) = -

3

-

Зачастую шум в кадрах может быть засчитан как изменение в пикселе, и в итоге в большом количестве этот шум будет оказывать влияние на величину движения. Для уменьшения влияния шума на величину движения необходима дополнительная коррекция. Она происходит в зависимости от установленного порогового значения [75] и коэффициента подавления малых отклонений [Ьс] согласно формуле

рт(х,у)<Т8хЬс,

^ о,ж О' у)> если рош <Х у) > те х ьс.

Параметр коэффициента подавления малых отклонений вычисляется на основе экспериментальных исследований и может быть скорректирован во время настройки параметров системы. Общая величина, характеризующая изменения пикселя [Рв^х, у)], рассчитывается по формуле

гР1т (х, у), если Р1т (х, у) < ТБ,

plD,AX> У) =

J 0, если Рп

\Р„

PDiffi^y) =

plaff <Х У) +1 если Р1Ш (х, у) > TS

и Plm

Р1Щ- <Х у) + 2, если Plm (х, у) >

>TSx F.

Значение величины, характеризующей движение между двумя кадрами (изменения в кадре), вычисляется на основании общей величины, характеризующей изменение значений пикселей анализируемой области кадра согласно формуле

ш н

ХХРГНМх,у)

F.

=0 у=0

-хЮО,

НхГГ

где Ж, Н - размеры анализируемой области кадра по горизонтали и вертикали (ширина и высота) соответственно.

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

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

Стабилизация видеоданных

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

После получения кадра находятся локальные векторы движения с применением метода соответствия блоков. Для каждого блока пикселей на предыдущем кадре ищется соответствующий блок на текущем кадре [1]. Функция сравнения переданных блоков, используя метрику Р8МЯ, рассчитывает разницу между кадрами. Расчет глобального вектора движения производится на основе найденных локальных векторов по формуле

1 т-1 п-1

МЫ <=0 ; = 0

1 т-1 п-1

МЫ <=о >0

После нахождения глобального вектора движения кадра выполняется компенсация движения. Данный этап раскладывается на две задачи: учет глобального движения кадра и восстановление границ, выпавших за рамки кадра [2]. Корректи-

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

Последним этапом предлагаемого алгоритма стабилизации видео является постобработка кадра. Для нее используются автоматическая коррекция, а также обработка модифицированным для нескольких кадров фильтром 2^с1еапег. В этом фильтре для каждого пикселя изображения рассчитывается значение с учетом окрестности по формуле

Р*,у =

С, =СИ

где Px,y - пиксель, с окрестностью которого ведется работа; R, G, B - значения каналов ЯОБ-спект-ра; Ts - значение порога, характеризующего возможность обработки; г - ранг окрестности; Ch(Ts, г) - функция расчета значения канала в спектре:

/=-г 7 = -г

где Sv(i, ]) - функция отсечения значения спектра по порогу; ]) - функция указания пригодности значения спектра по порогу, значение которой определяется по формуле

Сс{1,}) =

| 5У( j , если 5У( 7 - 01 < /л . I 0, если |лт\; - лт0 01 > /л.

1, если 5У( - 5У„ 0 < 75, 0, если - 5У0 01 > 75,

где svij - значение спектра рассматриваемого цветового канала; Ts - значение порога.

Реализация модифицированного фильтра 2^с1еапег выполнена с учетом обработки по временной оси нескольких кадров видеопоследовательности, что позволяет уменьшить влияние помех после стабилизации. В ходе экспериментов было выяснено, что для видеопоследовательности, полученной со стационарной 1Р-камеры, при выполнении такой фильтрации целесообразно использование двух или трех предыдущих кадров.

Нелинейное улучшение качества изображения

Поскольку в большинстве случаев при организации наружного видеонаблюдения возникает за-

Г ]

г

дача улучшения визуального качества видеопотока для его лучшего восприятия оператором, в основу модуля улучшения качества изображений был положен модифицированный алгоритм Multi-Scale Retinex (MSR), имитирующий визуальную систему человека [3]. Реализация алгоритма в виде отдельного модуля предоставляет возможность через ядро системы производить улучшение визуального качества изображений в полноформатном виде только для отображаемого на экране видеопотока.

MSR-алгоритм сжимает динамический диапазон изображения с сохранением (увеличением) локального контраста в плохо и ярко освещенных областях. Классический многомерный MSR-алгоритм [4] является взвешенной суммой одномерных SSR-алгоритмов (Single-Scale Retinex) для различных масштабов. Одномерная выходная функция i-го цветового канала Ri(x, y, ст) вычисляется следующим образом:

Ri(x, y, CT)=log{/,(x, y)}-log{F(x, y, ct)*I(x, y)}, (11) где Ii(x, y) - входная функция i-го цветового канала по координатам x и y; ст - масштабный коэффициент; символ * обозначает свертку функций; F(x, y, ст) - гауссиан, определяемый как

F

При этом коэффициент K выбирается таким образом, чтобы выполнялось условие

J" Jn F x.v.a dxdv = 1,

где Q.x,y - множество пикселей, принадлежащих всему изображению.

Тогда многомерная выходная функция i-го цветового канала RM.(x, y, w, ст) определяется следующим образом:

RM x,v,w, с = 5>,Д. x,v,cr„

где w=(wj, w2, ..., wm), m= 1, 2, ..M- весовой вектор одномерных выходных функций i-го цветового канала Ri(x, y, ст); ст=(сть ст2, ..., стп), n=1, 2, ..., N -вектор масштабов одномерных выходных функ-

N

ЦИЙ. При ЭТОМ W„ = 1 •

и-1

Размерность вектора масштабов обычно выбирается не меньше 3. При проведении экспериментов значения составили 13, 87, 180. Весовой вектор w, как правило, имеет элементы с равными значениями.

Однако классический алгоритм MSR приводит к искажению цвета изображения, так как значение каждой цветовой составляющей пикселя (например в RGB-пространстве) заменяется отношением ее исходного значения к среднему значению данной цветовой составляющей окружающих пикселей. Существуют несколько решений данной проблемы. Так, некоторое улучшение результатов наблюдается при переходе в другие цветовые пространства с явным разделением яркостной и отте-ночной составляющих (HIS-, HSV-, HSL-простран-

ства). Однако лучший эффект достигается при использовании модели нормализованного разделения яркостной и оттеночной составляющих. Дополнительная обработка выполняется в соответствии с выражением

Я'м(х, у, w, ст, Ь)=Ям.(х, у, w, ст)*/',(х, у, с), (15) где I',(х, у, с) - нормализованная яркость, которая

определяется по формуле

( ' \

/; х, у, с =iog

1 + с-

х,у

ЕЛ

где c - коэффициент, выбираемый из середины диапазона значений [0...255], c=100-125.

Из-за характеристик логарифмической функции MSR-алгоритм делает детали изображения более различимыми в теневых областях, чем в засвеченных [3]. Чтобы сделать детали различимыми в засвеченных областях, можно применить логарифмическую функцию к инвертированному изображению. Строится модифицированная логарифмическая функция L(I(x,y)), зависящая от порогового значения Th, выбираемого пользователем:

к, • log I x, y , если I x, y < Th;

L I x,y =

-Äv log DR-I x, v + log DR , (17) если 1 x.y >Th:

где

K =

Th DR

log DR

K =

Th

1- — I-log DR DR

log Th - log DR - Th

DR - динамический диапазон изображения, в данном случае DR=255 (для изображений с 8 битами на цветовой канал); k и к2 - весовые коэффициенты; Th - пороговое значение.

Пороговое значение Th было выбрано равным 200. Вид функции L(I(x, y)) приведен на рисунке 2.

Объединение ветвей дает классическому алгоритму MSR возможность повышать контрастность деталей в областях повышенной яркости (для примера на рисунке 2 область повышенной яркости выделена замкнутым контуром). Использование

Log

L

1 DR

Рис. 2. Вид функции L(I(x, y)) c Th=200

i=i

н=1

Th

2

1,5

0,5

0

такого вида логарифмической функции в определенной мере повышает контрастность деталей информативной области типичных распределений яркости (60-200), но в значительно меньшей мере, чем в затененных участках и участках с высокой яркостью.

Однако выходные данные MSR-алгоритма с модифицированной логарифмической функцией находятся вне динамического диапазона изображения [3]. Чтобы привести значения к динамическому диапазону изображения [0, 255], сделаем корректировку выходного изображения на основе корректирующего коэффициента и среднего значения яркостей пикселей обработанного изображения:

/

x,.v =-

X, V -1 X, V

_gvg • Q

W

где Im(x, y) - яркость пикселя после обработки MSR-алгоритмом с модифицированной логарифмической функцией; Iavg(x, y) - среднее значение яркости пикселей обработанного изображения; wcor - корректирующий коэффициент, выбирается экспериментальным путем (wcor=0,007), за константу С берется половина динамического диапазона изображения (С=127,5).

На рисунке 3 показан пример работы MSR-алгоритма с модифицированной логарифмической функцией.

а)

б)

Рис. 3. Пример нелинейного улучшения изображений фотографии, сделанной во время заката (г. Казань): а) оригинальное изображение, б) изображение с применением модифицированного метода MSR

Экспериментальные результаты

Для оценки эффективности и целесообразности использования предложенных методов было разработано экспериментальное ПО. Проверка методов обнаружения движения и сбор статистики осуществлялись с использованием видеоданных с девяти №-камер, расположенных как на оживленных улицах, так и в местах с минимальным движением. Исследование проводилось на 57 последовательностях по 1 500 кадров в каждой. Сравнение в разработанном методе движения осуществлялось при одинаковом способе вычисления величины движения, отличие заключалось в разных способах формирования значения абсо-

лютнои разницы, то есть использованием трех основных подходов. На рисунке 4 представлен график, характеризующий величину движения для разных реализаций метода обнаружения движения на отрезке видеопоследовательности с двумя интервалами движения. Фрагмент последовательности получен с IP-камеры, находящейся на берегу залива Nordfjorden (Норвегия).

в3,5 Анализ значения величины движения

i g 2,5 ? 1 -,

il

, , Л it ' \

Ci?--_

—ROB -ÏDV Y I_YDV_irv " " " " "нт.р.вдр.

4. Величина движения в кадре для детектора движения с использованием различных цветовых моделей

Наибольшую эффективность предложенный метод показал в цветовой модели RGB с использованием фактора цветового усиления 4. Для выяснения возможности ускорения работы алгоритма вычисления величины движения был проведен ряд экспериментов. Для оценки быстродействия и точности работы детектора движения использовались кадры различного масштаба, так как уменьшение анализируемого изображения дает существенное увеличение скорости работы. В таблице приведены данные о точности определения движения и уровне ложного определения движения.

Качество детектирования движения в зависимости от масштаба кадров

Показатель Масштаб кадров, %

качества, % 100 70 60 50 40 30 20 10

Точность оп-

ределения 94,31 95 94,5 93,77 95,01 94,27 88,4 78

движения

Ложное оп-

ределение 2,78 3,19 3,6 3,28 5,6 4,1 7,8 23,8

движения

На рисунке 5 показаны результаты анализа быстродействия работы детектора движения в зависимости от масштаба кадров. Результаты были получены при размере кадра 640*480 на компьютере œ следующими параметрами: процессор Intel Core 2 duo 3 Ггц, ОЗУ 4 Gb, видеокарта Nvidia Geforce GTS 250, ОС Windows 7.

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

. 25 и 1

of 20

1

а/

& 15

а

а/

I 10 ^

а/

a 5

i 1 л

\ Г m  - _

100% 70%

60%

50%

40°%

30%

20%

10%

Масштаб кадров

Время подготовки кадра

Время расчета величины движения

Полное время поиска движения

Рис. 5. Анализ быстродействия детектора движения в зависимости от масштаба

б)

Рис. 7. Пример улучшения качества изображения: в левой части представлен оригинал, в правой улучшенное изображение а) Трабен-Трарбах, б) Кейп-Бретон

0

Р8№Я. Применение пространственно-временного фильтра 2^с1еапег при стабилизации видеоматериала значительно улучшает качество, устраняя следы мелкого дрожания видеопоследовательности, от которого не удалось избавиться при стабилизации (рис. 6). Р8МЯ-значение стабилизированной последовательности заметно выше, что показывает меньшую разницу между кадрами (более низкое дрожание кадра). При применении временного фильтра Р8МЯ-значение видеопоследовательности увеличивается в пределах 30 %.

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

В заключение можно сделать следующие выводы. Предлагаемая система видеонаблюдения с возможностью улучшения визуального качества позволит повысить эффективность работы службы охраны благодаря возможностям улучшения визуального качества отображаемых данных и стаби-

лизации видеопотока. Предложенные детектор движения и формат хранения видеоданных позволят более гибко управлять просмотром событий без необходимости выполнения расчета параметров движения при каждом просмотре видеоархива. При изменении масштаба от 100 до 30 % фактор движения, характеризующий точность определения движения, находится на схожем уровне, а при масштабе менее 15 % значительно ухудшается. Использование стабилизации видеопотока позволяет повысить качество нахождения движения в среднем на 2-7 % в зависимости от степени дрожания камеры, поскольку этот фактор оказывает значительное влияние на работу алгоритма. Применение стабилизации видеопотока также улучшает возможности визуального наблюдения для оператора.

Литература

1. Ko-Cheung H., Wan-Chi S., Extended analysis of motion-compensated frame difference for block-based motion prediction error, IEEE Transactions on Image Processing, 2007, Vol. 16 (5), pp. 1232-1245.

2. Rawat P., Singhai J., Review of Motion Estimation and Video Stabilization techniques for hand held mobile video, Intern. Journ. (SIPIJ), 2011, Vol. 2, no. 2, pp. 159-168.

3. Фаворская М.Н., Зотин А.Г., Пахирка А.И. Метод улучшения цветных изображений на основе выравнивания спектральных диапазонов и коррекции контрастности // Механика, управление и информатика. 2012, № 8. С. 99-103.

4. Choi D.H., Jang I.H., Kim M.H., Kim N.C., Color image enhancement based on single-scale retinex with a JND-based nonlinear filter, In Proc. IEEE Int. Symp. Circuits and Syst., New Orleans, USA, 2007, pp. 3948-3951.

References

1. Ko-Cheung H., Wan-Chi S., IEEE, 2007, Vol. 16 (5), pp. 1232-1245.

2. Rawat P., Singhai J., SIPIJ, Vol. 2, no. 2, 2011, pp. 159-168.

3. Favorskaya M.N., Zoting A.G., Pahirka A.I., Mekhanika, upravlenie i informatika [Mechatronics, Control, and Informatics], no. 8, Moscow, 2012, pp. 99-103

4. Choi D.H., Jang I.H., Kim M.H., Kim N.C., IEEE Int. Symp. Circuits and Syst., New Orleans, USA, 2007, pp. 3948-3951.

Значение

70 P

Качество стабилизации

SNR

- ---

♦ ' 1

100

150

200 Номер кадра

—♦— Оригинальное видео

-— Стабилизированное видео

-А— Стабилизированное видео с фильтром

Рис. 6. PSNR-разница между кадрами исходной, стабилизированной и обработанной временным фильтром 2d_cleaner видеопоследовательности