ВИДЕОДЕТЕКТОРЫ – ВЗГЛЯД ИЗНУТРИ

(часть вторая – практическая плоскость)

 

 

            Так уж получилось, что в первой части статьи (СБ, N49) образовалось больше вопросов, чем ответов. Пора бы спуститься с аналитической колокольни и перейти в практическую плоскость проблемы – лицом к потребителю. Ему ведь выбирать надо, и для этого желательны привычные числовые характеристики, которые хоть сравнивать можно, а не эмоциональные термины типа: “интеллектуальный или эвристический детектор движения”. Диву даёшься, что иногда пишут: попались мне как-то две системы, так судя по описаниям, одна может отстроиться от шелеста, а другая – от шороха листвы! Тут уж волей-неволей запоёшь: “Не видны в саду даже шо-ро-хи…”???  

 

 

КАК  ДЕТЕКТОР ОБРАЗМЕРИТЬ?

           

            Интересный вопрос, мне такие попытки не известны  - попробую сам, в первом приближении. Начнём с простого, пока без “интеллектуальности” - может быть, потом кто-нибудь придумает соответствующий коэффициент. Словом - без отстройки от дождя, снега, упомянутого шороха листвы, без  “эвристического” разбиения на классы типа: кошки, собаки, люди, лошади, машины и т.д.  Необходимо найти реальные характеристики для классического детектора движения.

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

 

Фиг. 1.

 

 

На фиг.1 в качестве примера отмечено 5 объектов. N1 – автомобиль белого цвета, имеет размеры приблизительно 30х20 пиксел (при формате кадра  384х288 пиксел) и контрастность порядка 50%. N2 – человек, размер головы которого составляет 3х3 пиксела, контрастность около 40%. N3 – серый автомобиль, размеры 50х20 пиксел, контрастность 10%. N4 – фары автомобиля, 3х2 пиксела, контрастность 60%. N5 – человек, 4х10 пиксел, контрастность 80%.           Конечно, все эти значения измерены  “на глазок”, поскольку в реальном  мире практически нет объектов и фона с равномерной яркостью, а контурные перепады сглажены в силу дискретности сенсора и ограниченной полосы пропускания видеотракта. Но для общего понимания  решаемой задачи детектирования вполне достаточно.

            Почему так важны предложенные  параметры. Во-первых, чем выше пространственная  чувствительность, тем больше площадь контроля. Во-вторых, высокая контрастная чувствительность позволяет работать в условиях низкой освещённости, а это фактически основной режим охраны (ночью лезут). Более того, ситуация  усугубляется необходимостью устанавливать на камере высокие значения электронного затвора (1/250 и выше), иначе объект наблюдения буквально “размазывается” в движении. Как следствие, снижается интегральное накопление светового потока и падает соотношение сигнал/шум.

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

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

 

 

МЕТОДИЧКУ  ГДЕ  ДОСТАТЬ?

 

            А вот и не достать, самим писать придется. Поскольку исследуется движение, то требуется создание тестовых видеоклипов. Можно конечно катать по полу шарики с разным контрастом и размерами, а лучше такой “боулинг” синтезировать. Вот этим и займемся. Первым делом надо построить модель видеокамеры, выходом которой является любимый нами аналоговый ТВ-сигнал. Его-то и будем подавать на входы тестируемых систем.

            Итак, синтезировать объект любой формы с нужными значениями размера, яркости, скорости и траектории перемещения не составит больших трудностей. Далее начинается чистая геометрия. Зная размеры и расположение элементов видео-сенсоров, можно подсчитать накопленный ими световой поток. Теперь пришла очередь шумов. Грубо говоря, есть следующие составляющие: фотонный шум, шум сенсора и видеотракта. Причем все эти процессы очень хорошо изучены,  есть соответствующие модели, и самое главное - сохранились очень грамотные профессионалы, ещё советской закалки. Далее, надо что-то делать с фоном, ну нельзя же просто задать значение яркости – нет такого в природе. Зато 3-D игрушек достаточно – берём оттуда. Важно отметить, что такие технологии позволяют синтезировать разнообразные объекты и освещать их со всех сторон источниками с заданными параметрами изменения светового потока во времени. Всё это нужно, чтобы воссоздать реальную среду с необходимым уровнем помех. Далее, невозможно себе представить, что камера “забетонирована” в одну стенку монолитной комнаты, и смотрит - на другую. Надо задать микровибрации и т.д. Короче, хороший дипломный проект получается, за который и приплатить можно! Был бы студент толковый, а вообще всё упирается в добрую волю производителей систем: одни хотят, чтобы их измерили (есть что показать), а другим это и даром не надо – им бы “котами в мешках” торговать!

            Теперь несколько слов об аппаратных средствах. Хорошим инструментом для вышеуказанных целей является, например Pinnacle Studio Deluxe, в состав которого входит плата захвата видео и программное обеспечение. Плата позволяет вводить и выводить композитный видеосигнал, S-Video и цифровой поток через интерфейс FireWire. С помощью программного обеспечения можно редактировать видеоклипы и сохранять в разных форматах. Таким образом, обеспечивается проведение тестирования в лабораторных условиях – видеосигнал поступает прямо из компьютера или мобильный вариант – видеоклипы переписываются на mini-DV кассету или на DVD-диск, с последующим воспроизведением. Причем, оба типа носителей удобны для копирования и распространения.  Кроме того, возможность создания AVI-файлов с разными кодеками (с MPEG-4  в том числе) и степенями сжатия позволит, наконец-то реально проверить влияние компрессии на качество детектирования.

            Вроде всё красиво получается, одно только но – ну нет такого пока в природе! Создавать надо, и одному человеку это не под силу, хорошо бы сообща навалиться. А как же быть потребителю? Хоть на пальцах детектируй!

 

ДЕТЕКТИРУЕМ  НА  ПАЛЬЦАХ

 

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

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

 

Фиг. 2.

 

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

            Итак, приступаем. Встаём, замираем и начинаем шевелить глазными яблоками – смотрим вправо, влево, вверх, вниз, только головой вертеть не надо (фиг.2). В данном примере размер зрачков (а именно они и детектируются) составляет примерно 4х4 пиксела с контрастностью около 20%. Это самый тяжелый тест. Если он не проходит, то переходим на пальцы (фиг.3).

 

 

Фиг. 3.

 

Здесь уже размер детектируемой зоны (толщина пальца) где-то15х15 пиксел, а контрастность всего 10%. Можно попробовать и более контрастный вариант. Для этого шевелите пальцем на фоне более тёмного объекта.  Если и тут тест не проходит - переходим на кулак (80х80 пиксел, 40%), далее - на голову (120х200 пиксел, 50%). На туловище переходить не надо, поскольку это будет означать, что перед Вами уже не детектор движения!

Далее проверим систему на медленных движениях. Из собственного опыта могу отметить, что большинство камер или мультиплексоров, со встроенным детектором, в таких случаях вообще не реагируют. Причем иногда требуется  взмахнуть рукой как саблей, чтобы зажёгся здоровенный  квадратный маркер-индикатор движения. А так можно плавно въезжать и выезжать из кадра, без каких-либо последствий. Попробуйте на разных скоростях – ясность наступит моментально.

Ну и ещё один тест – проверка детектора на подавление флуктуаций освещения. Обычно это происходит на открытых пространствах при прохождении облаков или ещё по каким-либо причинам. Важно отметить, что в пространственный спектр изображения добавляется не только низкочастотная составляющая, а ещё и меняется амплитуда в других полосах. Это приводит к появлению межкадровой разности со всеми вытекающими последствиями. В комнатных условиях  можно провести следующий эксперимент. Для этого нужны две вещи: люминесцентное освещение и камера с ручной установкой электронного затвора, но без синхронизации от сети. Установите затвор, например, на значение 1/250 и Вы увидите, как начнёт “скакать” контрастность под воздействием 100-герцовых  световых пульсаций, а гистограмма яркости будет напоминать “играющую гармонь”. Причём делать это надо без изменения чувствительности от предыдущих тестов. Справится ли Ваш детектор с такой игрой света?

Конечно это очень примитивные тесты, но они дают, по крайней мере, оценку по шкале: хорошо, так себе, отвратительно…. Если же Вам нужно знать, как поведёт себя детектор на конкретном объекте – запишите необходимые клипы на видеокамеру, с ней и приезжайте. Однако лучше всего взять систему на тестирование с возможностью возврата.

В заключение - несколько практических советов. Обязательно посмотрите, что написано в техническом описании о детекторе движения. Сразу хочу предупредить -  фильтруйте всё высокопарное, типа “интеллектуальный”, оно малоинформативно!  Складывается впечатление, что все пишут сочинение на единую тему, непрерывно списывая друг у друга.  Например, стала уже обиходной дежурная фраза-характеристика: “Полная отстройка от дождя, снега, и естественно -  шороха листвы!”. 

Первым делом смотрим на настройку зон детекции. Если предлагается использовать точечные зоны-маркеры, то это - те самые “дырки, насверленные в заборе” (см. первую часть статьи). Если предоставляется возможность запрограммировать “врукопашную” порядка тысячи зон детекции, то это навевает только тоску. И ещё одно наблюдение - часто встречается предупреждение, примерно такого содержания: “Не рисуйте слишком много зон, иначе система впадёт в заторможенное состояние”. Это означает только одно -  алгоритм работает с фрагментами изображения, что фактически исключает возможность использования высокоскоростной потоковой MMX или SSE  технологии. Как следствие – непредсказуемое (от настроек) снижение быстродействия системы, относительно заявленного.

Вот пока и всё  – надеюсь, что данная статья слегка взбодрит нашу аудиторию и вызовет только положительные эмоции!  

 

 

Об авторе: Руцков Михаил Вадимович, кандидат технических наук, директор MegaPixel Ltd., e-mail mailto: megapixel@tochka.ru тел. (095)4129422

 

Rambler's Top100