№ 2(26) 2010
И. Б. Кондратенков, Л. И. Рубанов
Обнаружение устойчивых изменений наблюдаемой сцены
при пространственно-временном анализе видеопоследовательности
В последнее десятилетие бурными темпами развивается индустрия компьютерных систем наблюдения за оперативно меняющимися ситуациями, основанных на использовании видеокамер и компьютеров в качестве средств обработки, анализа и визуализации изображений. В статье описывается метод совместной обработки видеопоследовательности в пространственной и временной областях, предназначенный для применения в составе компьютерных систем наблюдения наряду с другими известными методами обработки и анализа видеоданных.
Введение
Внедрение компьютеров в традиционный аналоговый канал видеонаблюдения «камера — монитор» не только существенно упрощает коммутацию и регистрацию сигнала, но и позволяет повысить качество его визуализации с помощью адаптивных алгоритмов улучшения цифровых изображений в реальном масштабе времени. Такие компьютерные системы наблюдения эффективно используются для контроля доступа на охраняемые объекты и территории, для предотвращения противоправных действий, включая террористические акты, для дистанционного наблюдения за участками местности и т.д. Учитывая постоянно растущую производительность современных компьютеров, имеется возможность не ограничиваться лишь обработкой изображений (улучшение, сжатие и т. д.), а дополнить ее средствами предварительного анализа наблюдаемых динамических сцен, что позволяет повысить надежность и эффективность системы наблюдения и одновременно уменьшить нагрузку на оператора.
Под динамической сценой понимается пространство, в котором происходит появ-
ление, перемещение, исчезновение или изменение структуры объектов. Источником информации о динамической сцене в компьютерной системе наблюдения обычно является цифровая телевизионная камера. Динамика на наблюдаемой сцене передается последовательностью статических цифровых изображений, которую в системах наблюдения обычно называют видеопоследовательностью. Отдельное изображение видеопоследовательности называют видеокадром (кадром), который состоит из большого числа элементов изображения (пикселей), образующих двумерный растр, чаще всего в виде прямоугольной матрицы.
Анализ ситуации на динамической сцене сводится к содержательной обработке последовательности изображений. Такая обработка может проводиться в двух аспектах: анализ состояния всех или части пикселей одного кадра (обработка в пространственной области) или анализ состояния соответственных пикселей на протяжении некоторой последовательности кадров (обработка во временной области). Надо заметить, что в настоящее время не существует универсальных методов анализа видеопоследовательности, сравнимых по эффективности
№ 2(26) 2010
с интеллектуальными возможностями человека, В статье описывается метод совместной обработки видеопоследовательности в пространственной и временной областях, предназначенный для применения в составе компьютерных систем наблюдения наряду с другими известными методами обработки и анализа видеоданных.
Постановка задачи и общая схема решения
Имеется множество практически важных ситуаций, когда возникает задача автоматического обнаружения, локализации и классификации устойчивых (т.е. стабильных) изменений, имеющих место в обрабатываемой последовательности кадров. Устойчивыми признаются изменения, связанные с переходом динамической сцены в новое состояние, длящееся не менее заданного времени х . При этом предполагается, что продолжительность перехода из старого состояния в новое заметно меньше х , так что, например, плавные изменения освещенности сцены, для которых характерна постоянная времени больше х , не должны рассматриваться как устойчивые. В частности, такая постановка характерна для систем, в которых видеонаблюдение ведется с целью контроля сохранности объектов, обнаружения оставленных предметов, фиксации дорожно-транспортных происшествий, случаев падения груза и др.
Отметим, что изображение сцены неизбежно содержит шумовую составляющую, и сама сцена может кратковременно переходить в другие состояния(например, из-за прохода людей или проезда автомобилей), однако длительность каждой такой флуктуации обычно много меньше х . Таким образом, устойчивость здесь рассматривается в некотором среднем масштабе времени, определяемом величиной х , которая зависит от конкретного приложения и обычно варьируется от 10-15 сек. (при наблюдении за дорожным движением) до 1-2 мин. (при наблюдении за местами посещения людей).
Как правило, решение необходимо принимать в реальном времени, т.е. в темпе поступления кадров изображения с запаздыванием порядка постоянной времени интересующего масштаба. В реальных приложениях изменения динамической сцены обычно связаны с различными подвижными объектами, такими как люди, автомобили, детали на конвейере ит. п., однако устойчивыми будутлишь такие изменения, когда движущийся объект останавливается (или ранее неподвижный начинает двигаться) на время не менее х .
По существу, такая постановка аналогична традиционной задаче выделения объекта из фоновой составляющей цифрового изображения, однако само понятие фона расширяется: теперь фоновая составляющая не предполагается постоянной (с точностью до шума и медленных изменений освещенности), а может значительно изменяться, но на относительно короткое время. Из этой аналогии становится понятной и основная трудность, связанная с таким расширением: чем сильнее и чаще меняется фон, тем сложнее и менее надежно удается его отделить.
В данной работе задача обнаружения и выделения объекта решается одновременно в двух каналах обработки — временном и пространственном. В результате анализа во временной области независимо выделяются те пиксели, которые предположительно принадлежат объекту, а пространственная обработка в каждый момент времени состоит в анализе выделенной совокупности пикселей-кандидатов. Если в ней обнаруживаются области, отвечающие заданным критериям (например, в отношении площади, форм-фактора, плотности заполнения точками, компактности расположения и др.), такие области считаются предварительными кандидатами на роль объекта, однако окончательное решение принимается лишь для объектов, которые сохраняются на протяжении времени х и более, причем с мало меняющимися характеристиками. Благодаря двухступенчатому временному анализу удается снизить частоту возникновения «ложных тревог», которые потенциально возмож-
' (¡,],п)
9 (1,Ьп) е (/.¿л)
ФЯ ДФ ДП
Поэлементный временной анализ
Пространственный анализ областей
Временной анализ объектов
Рис. 1. Этапы конвейерной обработки (ФЯ — фильтр яркости, ДФ — дискриминатор фоновой составляющей, ДП — детектор перепадов, СО — селектор областей, ФД — фильтр длительности)
ны из-за того, что на первом этапе временные изменения пикселей анализируются независимо друг от друга, в том числе, от ближайших соседей в поле изображения.
Таким образом, предлагаемый метод решения задачи можно схематически представить в виде трехэтапной конвейерной обработки (рис. 1). Все этапы и их составляющие описываются ниже.
Поэлементный временной анализ
На первом этапе алгоритма автоматического обнаружения и выделения устойчивых изменений, возникающих в последовательности кадров, проводится оценка и последующий анализ стабильных изменений, независимо возникающих в каждой точке изображения во времени (рис. 2) [2,3,5].
Как отмечалось выше, поставленная задача сводится к обнаружению стабильных изменений фона изображения. Для этого из динамической сцены предлагается вначале «изъять» заведомо нестабильные, т.е. движущиеся фрагменты. Их выделение выполняется на основе анализа изменений фоновой и шумовой составляющих наблюдаемой сцены в последовательности кадров. Предполагается, что система представляет со-
бой неподвижную видеокамеру, подключенную к компьютеру, и, следовательно, дрожание и сдвиги изображения отсутствуют. Для простоты изложение ведется на примере монохромного (черно-белого полутонового) изображения, хотя алгоритм допускает естественное обобщение для видеопоследовательности, состоящей из многокомпонентных (цветных) кадров.
Считаем, что дискретное изображение объекта представляет собой связное множество точек с неизвестными яркостями. Под связностью здесь и далее будем пони-
Изображение п
Изображение 2 Изображение 1
Рис. 2. Последовательность статических изображений
-'Л'Л
• м» • • /4 т • • • •
№ 2(26) 2010
мать расположение точек объекта в соседних ячейках дискретного растра [4].
При наблюдении за объектом, перемещающимся на сложном фоне, наиболее характерной является ситуация, когда фоновое изображение расположено в пространстве дальше, чем объект. В этом случае на изображении объект слежения закрывает собой участок фона, расположенный за ним.
Наблюдая за изменениями элемента изображения во времени, мы имеем возможность оценить как сам фон, так и искажающую его помеху. Таким образом, появляется реальная возможность отделить полезный сигнал, создаваемый динамическим объектом, от шума и относительно стабильного фонового уровня. Поэтому, в разработанном алгоритме применяется параллельная оценка уровней яркости точек фона и величин их изменения [1].
Оценки яркостей точек фона д{1,у,п) формируем путем рекуррентного усреднения одноименных точек по набору из в предшествующих кадров, то есть получаем сглаженное (эталонное) изображение фона:
д(1,у,п) = р0/(/,у,п) + ХрЗд(1,У,п - з), (1)
где /(/',у,п) — уровень яркости точки (/',у) в п-ом кадре наблюдаемой сцены; рз — веса (параметры) экспоненциального рекурсивного фильтра с временной апертурой в, выбираемые с соблюдением условия Р0 + Р1 +... + рз = 1. Значение в выбирается так, чтобы ожидаемая длительность «быстрого» изменения сцены укладывалась в апертуру фильтра. Для выяснения характера возможных изменений уровней яркости точек фона во времени вычисляем оценки величин их изменения А.
А (/, У, п) = [д(1, У, п) -1 (/, У, п)]2, (2)
А(/,У,п) = рА(/,у,п -1) + (1 - Р)А(/,у,п), (3)
где р — параметр экспоненциального рекурсивного фильтра, выбираемый в интервале [0,1]. При р = 1 в качестве оценки величины изменения уровней яркости точек фо-
на выбирается величина изменения, взятая из предыдущего кадра, при р = 0 осуществляется покадровая смена оценок, а при О < р < 1 оценка происходит путем межкадрового усреднения. При проведении вычислений р выбиралось равным 0,95-0,98, т. к. при этом удается оптимально сочетать возможность обновления эталона с подавлением помех, имеющих место на обрабатываемом изображении.
Расчет оценок изменения величины уровня яркости, наряду с оценками уровня яркости, ведется независимо для каждой точки (/,У) наблюдаемого изображения. На основе этих оценок в каждой точке принимается решение о принадлежности ее фону или, предположительно, движущемуся фрагменту. Это решение можно выразить в форме
/(/, У, п) =
9(1,У. п),
если |д(1,у,п -1) - /(/',у,л)| <
< ЦА(/, у, п -1) '
Л(/',У,п) в противном случае
(4)
где ¡1(1,у,п) — уровень яркости точки, принадлежащей изображению движущегося объекта; к — некоторый пороговый коэффициент. Так как д, по существу, представляет собой оценку дисперсии величины изменения уровня яркости, то значение к должно быть порядка 3.
В результате, для каждого кадра получаем фоновое изображение д(1, У, п), в котором определены не все элементы, а те из них, которые закрыты подвижным объектом, в соответствии с (4) имеют неопределенные значения. Далее поэлементный временной анализ применяется к этому изображению в качестве исходного, при этом не учитываются те кадры, в которых значение уровня яркости фона рассматриваемого пикселя не определено.
Обозначим за Г число кадров, соответствующих промежутку времени х при используемой частоте кадров. Рассмотрим кадр п совместно с предшествующими Г кадрами; эту последовательность, состоящую из Т +1 кадров, будем называть блоком В(п). Кадры
67
внутри блока удобно нумеровать в обратном хронологическом порядке, начиная с нуля. Если существует такой номер г е (0,7") и такие 0 > 0, 5 > 0 , что для любой пары номеров УГ1,Г2 6 [О,Т]
(Г1 < г) а (Г2 > г) ^
у,л - Г1) >9 + 5) а , (5)
а(дт(/,у,л-Г2) <9-5)
то будем говорить, что в г-ом кадре этого блока наблюдается положительный фоновый перепад с порогом 9 высотой 25,который (опуская для краткости /',/, л) обозначим Е+(г,9) = 5. Если же выполняется условие
в противном случае, когда е(/,у,л-1) = 1, применяется правило
(Г1 < г) а (Г2 > г) ^
=>(д(1,У,л-Г1) <9-5)а , а (д(/, у, л - у >9 + 5)
е(/, у, л) =
1, если Е+ (Т -1,9) = 5, и тогда ю(/,у,л) = 9 1, если Е-(Т -1,9) = 5, и тогда ю(/,у,л) = -9 О в остальных случаях, и тогда ю(/, у, л) = О
е(/, у, л) =
1, если ю(/', у, л -1) > 0 а лд(/, у, л) >ю(/,у, л -1) 1, если ю(/, у, л -1) < 0 а , ад{1, у, л) <-«(/', У, л -1) О в остальных случаях
(8)
(6)
будем говорить об отрицательном фоновом перепаде, Е~(г,9) = 5. Естественно считать, что высота порога 5 в (5, 6) всегда принимает максимально возможное значение, и рассматривать только значимые переходы, у которых эта высота не меньше минимально допустимой: 5>5т,п. Поскольку значение уровня яркости фона определено не во всех точках, возможная неоднозначность в определении г устраняется по соглашению выбором минимально возможного номера (т. е. самого позднего кадра).
Детектор фоновых перепадов (рис. 1) построен на основе критериев (5, 6) и действует следующим образом. Для каждого кадра по рекуррентным правилам формируются два изображения — бинарное е(/, у, л) и вспомогательное знакопеременное ю(/, У, л). А именно, для случая е(/, у, л -1) = О применяется правило
(7)
при котором элемент вспомогательного изображения не изменяет своего значения.
Поясним правила (7, 8). Если в блоке В(п) в кадре с номером г = Т-1 (т.е. втором в хронологическом порядке) для пикселя (/,у) имеется фоновый перепад, то соответствующий пиксель бинарного изображения е(/,у, л) устанавливается в 1. Это значение сохраняется и в последующих кадрах, до тех пор, пока уровень фона не перейдет порог перепада. Таким образом, единичное значение пикселя бинарного изображения говорит о том, что в этом пикселе исходного изображения произошло устойчивое изменение яркости фона с амплитудой не менее 5 и длительностью не менее х . Изображение е(/,у,л) является результатом первого этапа алгоритма.
Последующие этапы алгоритма
Дальнейшие этапы алгоритма автоматического обнаружения и выделения устойчивых изменений, изображенные на рис. 1, носят в основном традиционный характер и поэтому описываются в общих чертах, тем более, что на выбор применяемых на этой стадии средств существенно влияют особенности конкретного приложения.
Второй этап алгоритма включает в себя обработку в пространственной области бинарного изображения е(л), построенного на первом этапе. Целью обработки является выделение компактных областей изображения, насыщенных пикселями с единичными значениями. Поскольку каждый
№ 2(26) 2010
такой пиксель свидетельствует об устойчивом изменении в одной точке фона исходного изображения, естественно ожидать, что их скопления отвечают локальным устойчивым изменениям большей площади, которые сопутствуют появлению или исчезновению объектов динамической сцены.
Для выделения областей на бинарном изображении применяются традиционные морфологические методы [2] с добавлением ряда эвристических критериев, которые тесно связаны со спецификой сферы применения и позволяют исключить из рассмотрения недостаточно перспективные для дальнейшей обработки области. Перечислим некоторые из таких критериев, учитываемых при выделении областей: линейные размеры, отношение линейных размеров, площадь, коэффициент формы, коэффициент заполнения, параметры распределения единичных точек в области и вне ее и т. д.
Заметим, что в рассматриваемой задаче нет необходимости точно находить форму объекта сцены, который вызвал устойчивое изменение, поскольку окончательное решение принимает оператор системы наблюдения, внимание которого будет привлечено системой. Для практических целей вполне достаточно подавать сигнал о произошедшем изменении и локализовывать место изменения в поле зрения с помощью метки центра или габаритной рамки. Таким образом, во многих случаях допустимо ограничиться выделением областей прямоугольной или круглой формы, что значительно упрощает вычисления.
Дальнейший этап обработки реализуется в виде параллельных ветвей, в каждой из которых независимо проводится временной анализ одной выделенной области. Поскольку ресурс таких ветвей лимитирован, на практике целесообразно ограничиться максимальным числом областей, которые могут анализироваться одновременно, оставляя из них самые крупные или наиболее надежные по степени заполнения точками. Это не снижает эффективность всей сис-
темы наблюдения, поскольку более мелкие или неуверенно идентифицируемые изменения будут также учтены оператором, когда система привлечет его внимание к наблюдаемой сцене.
В результате описанных действий выделяется набор областей Ар(л), р = 1 ,Р , которые передаются на третий этап для временной обработки параллельно в Р каналах (рис. 1). Компоненты вектора А суть параметры, позволяющие однозначно идентифицировать область, например, линейные размеры и положение левого верхнего угла для прямоугольной области.
Заключительный этап конвейерной обработки тривиален — он состоит в фильтрации выделенного набора областей по критерию длительности их существования. А именно, если изменения параметров области Ар(л) на протяжении времени х не превышают заданных величин, то принимается окончательное решение об обнаружении объекта Вч(л) в текущем кадре л, в противном случае область игнорируется.
Таким образом, суммарная продолжительность обработки по описанному алгоритму (и, значит, время задержки распознавания объекта) при надлежащей реализации конвейера составляет 2х без учета временных затрат на выделение областей.
Результаты работы алгоритма
Макет описанного алгоритма был реализован в среде МаИаЬ 7.6. Экспериментальная проверка алгоритма проводилась на двух тестовых видеопоследовательностях с размерами кадров 720x480 пикселей и длительностью около 5 минут каждая.
Первые 25 кадров видеопоследовательности использовались для получения стартовых значений оценок уровней яркости точек изображения и величин их изменения. Затем включался описанный алгоритм обнаружения и выделения устойчивых изменений в последовательности кадров.
I
>!S
! §
1 £
Si
s
Рис. 3. Примеры работы алгоритма: а) при появлении объекта, б) при исчезновении объекта
На рисунке 3 показаны примеры работы алгоритма в ситуациях, когда на фоне динамической сцены происходят стойкие изменения в связи с появлением и исчезновением неподвижных объектов на фоне сцены, при том, что сама динамическая сцена содержит большое число объектов (люди, поезд), движущихся с разными скоростями и в различных направлениях.
Описок литературы
1. Алпатов Б. А., Блохин А. Н. Модели и алгоритмы обнаружения и выделения движущихся фрагментов изображений //Автометрия, 1995, №4, с. 100-104.
2. Гонсалес Р., Вудс Р. Цифровая обработка изображений. М.: Техносфера, 2006, 1072 с.
3. Rafael С. Gonzalez, Richard Е. Woods, Steven L. Eddlns. Digital Image Processing using MAT-LAB, 2004, 624 pp.
4. Прэтт У. Цифровая обработка изображений. Книга 2. М.: Мир, 1982, 784 с.
5. Zlou, D., Tabbone, S. Edge Detection Techniques: An Overview // International Journal of Pattern Recognition and Image Analysis, 1998, 8 (4): 537-559.
6. Мурашко H. И. Особенности обработки полутоновых изображений в компьютерных системах наблюдения // Информатика: Сборник научных трудов, Минск: ОИПИ НАН Беларуси, 2004. с. 57-67.