Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Метод и система детектирования и классификации движущих объектов в видеопоследовательности Шепелев Кирилл Валерьевич

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Шепелев Кирилл Валерьевич. Метод и система детектирования и классификации движущих объектов в видеопоследовательности: диссертация ... кандидата Технических наук: 05.13.17 / Шепелев Кирилл Валерьевич;[Место защиты: ФГБОУ ВО «Пензенский государственный университет»], 2018.- 129 с.

Содержание к диссертации

Введение

Глава 1. Анализ существующих методов и средств детектирования и классификации движущихся объектов 10

1.1. История развития компьютерного зрения 10

1.2 Существующие виды детектирования с помощью компьютерного зрения. 13

1.2.1 Детектирование движения с учетом изменения яркости свечения пикселя 13

1.2.2 Детектирование движения с учетом характеристик объекта 14

1.3 Существующие методы детектирования движения и классификации объектов в задачах подсчета посетителей 15

1.4 Постановка задачи исследования 18

Глава 2. Математические и алгоритмические методы решения задачи подсчета посетителей 23

2.1 Основные положения анализа видеопоследовательности 23

2.2 Алгоритм детектирования движения по простой межкадровой разнице 32

2.2.1 Приведение изображение к полутоновому 32

2.2.2 Алгоритм детектирования движения по простой межкадровой разнице 34

2.3 Алгоритм детектирования движения на основе функции нормального распределения яркости свечения пикселей 35

2.4 Алгоритм детектирования движения на основе функции смеси нормальных распределений яркости свечения пикселей 37

2.6 Классификация объектов в задачах детектирования движения 40

2.7 Синтезированный метод детектирования и классификации движущихся объектов 56

Глава 3. Практическая реализация алгоритмов и статистическое сравнение результатов 59

3.1 Методика практической реализации алгоритмов с применением библиотеки OpenCV 59

3.1.1 Основные инструменты библиотеки OpenCV 59

3.1.2 Методика установки и подключения библиотек компьютерного зрения для разработчика программного обеспечения 61

3.1.3 Возможности и функционал библиотеки OpenCV, для реализации алгоритмов детектирования объектов 67

3.2 Методика реализации синтезированного метода детектирования и классификации движущихся объектов 70

3.2.1 Методика работы с виртуальной памятью 70

3.2.2 Реализация алгоритма нормального распределения 72

3.2.3 Реализация алгоритма детектирования движения на основе смеси нормальных распределений 75

3.2.4 Реализация классификатора объектов в видеопоследовательности 76

3.3 Анализ экспериментальной реализации применения алгоритма детектирования движения на основе нормального распределения 81

3.4 Анализ результатов экспериментальной реализации алгоритма детектирования движения на основе смеси нормальных распределений 89

3.5 Анализ экспериментальной реализации алгоритма идентификации посетителей, основанного на классификации объектов 97

3.6 Сравнительный анализ результатов работы алгоритмов 107

3.7 Анализ экспериментальной реализации синтезированного метода детектирования и классификации движущихся объектов 111

Заключение 118

Список использованной литературы: 119

Приложение А. Акт внедрения 129

Введение к работе

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

Основные понятия теории обработки изображения определили
российские ученые Ю. И. Журавлев, Э. М. Браверман, Л. И. Розоноэр,
М. А. Айзерман, В. А. Сойфер, B. И. Матросов. Ученые В. Н. Вапник,
А. Я. Червоненкис, А. Н. Горбань, М. Ю. Хачай и Н. Г. Загоруйко усо
вершенствовали методы и сделали их доступными для алгоритмической
реализации. По исследованиям компании Google, в 2015 г. при испыта
нии программных средств результат детектирования в видео с точно
стью 95,12 % стал возможен на базе лиц YouTube Faces DB. При этом
уровень ошибок детектирования на 30 % ниже, чем у всех конкурентов,
которые опубликовали свои работы в свободном доступе. Разработка
компании Facebook показала результат около 97,5 %, причем тогда
в своей работе исследователи утверждали, что даже человек показывает
результат в среднем 97,5 % при распознавании лиц. Разработка ученых
из Google предназначена для поддержки исключительно семейства про
грамм этой корпорации и не имеет программных компонент для откры
того использования и внедрения в существующие системы видеонаблю
дения. Существующая точность детектирования движущихся объектов
бесплатных систем или программного обеспечения с открытым кодом не
превышает 60 %, таким образом, существует несколько аспектов про
блемы детектирования движущихся объектов и их классификации как
посетителей в системах видеонаблюдения. Первый аспект проблемы со
стоит в отсутствии алгоритмов и программного обеспечения для им-
портозамещения, второй аспект заключается в высокой стоимости со
здания отдельной системы видеонаблюдения с функциями
детектирования
и классификации движущихся объектов.

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

Объектом исследования диссертационной работы является система детектирования и классификации движущихся объектов в видеопоследовательности.

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

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

Для достижения цели в ходе диссертационной работы необходимо решить следующие задачи:

– анализ существующих методов и средств детектирования и классификации движущихся объектов;

– разработка модели представления структуры видеопоследовательности в виде трехмерного динамического информационного массива уровней яркости элементов информационного поля;

– разработка алгоритма детектирования движения;

– разработка синтезированного метода детектирования и классификации движущихся объектов на видеопоследовательности;

– исследование особенности работы алгоритмов при практической реализации с помощью паттернов и библиотек OPENCV, определение преимуществ и недостатков практической реализации алгоритмов детектирования движения и классификации объектов в видеопоследовательности;

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

Научная новизна:

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

сти алгоритмов классификации за счет детектирования и ограничения области движения.

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

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

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

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

На защиту выносятся:

1) синтезированный метод детектирования и классификации движущихся объектов в видеопоследовательности, использующий детекти-5

рование и ограничение области движения для уменьшения вычислительной сложности алгоритмов классификации объектов;

  1. модель представления видеопоследовательности в задачах детектирования движения на основе трехмерного динамического информационного массива уровней яркости элементов информационного поля;

  2. алгоритмы детектирования движения на основе оценки плотности вероятности выпадения статичных пикселей в видеопоследовательности и использовании функции смеси нормальных распределений уровней яркости элементов информационного поля;

  3. система подсчета посетителей, реализованная на основе синтезированного метода детектирования и классификации движущихся объектов.

Степень достоверности и апробация результатов. Полученные результаты основаны на известных положениях теории детектирования и классификации объектов в видеопоследовательности, их достоверность подтверждается экспериментальными результатами практической реализации алгоритмов в реальных условиях. Основные результаты исследований докладывались и опубликованы автором в материалах международных научно-практических конференций «Актуальные вопросы современной науки: теория и практика научных исследований», «Open Innovation», «Экспериментальные и теоретические исследования в современной науке», «Современный мир: опыт, проблемы и перспективы развития», «Проблемы информатики в образовании, управлении, экономике и технике 2013», «Новые информационные технологии и системы».

Система прошла тестирование и подтверждена актом внедрения в государственном бюджетном образовательном учреждении дополнительного образования «Областная специализированная детско-юношеская спортивная школа олимпийского резерва по гимнастике им. Н. А. Лавровой» (Дворец спорта «Буртасы»). Разработанная система подсчета посетителей имеет точность 97 % и успешно решает задачу подсчета болельщиков на соревнованиях со свободным входом. Система также позволяет учитывать среднюю посещаемость и динамику посещаемости Дворца спорта в целом.

Публикации. Всего опубликовано 12 статей, из которых 4 – в журналах из списка ВАК.

Структура и объем работы. Диссертационная работа состоит из введения, трех глав, заключения, библиографического списка и приложения. Объем работы: 128 страниц основного текста, 41 рисунок, приложение – на одной странице.

Основные положения анализа видеопоследовательности

В диссертации под изображением понимается - объект, образ, явление, в той или иной степени подобное (но не идентичное) изображаемому или сам процесс их создания [20].

Каждое изображение представляет собой трехмерную матрицу, элементы которой являются значения яркости свечения каждого пиксела в изображении в формате RGB (Red, Green, Blue - Красный, Зеленый, Синий). Для осуществления данного представления изображения, рассмотрим определения понятия цвета.

Впервые разбиение цветового спектра на отдельные составляющие предложил английский ученый Исаак Ньютон, сделав это во многом случайно и интуитивно [21]. Основываясь на европейской нумерологии, он выделил из спектра 7 основных цветов: красный, оранжевый, желтый, зеленый, голубой, синий, фиолетовый. Визуально взглянув на спектр, можно легко заметить, что при переходе одного цвета в другой, под конец цвет возвращается опять к красному, что подразумевает некую цикличность. Поэтому, палитру возможно представить в виде цветового круга, как указано на рисунке 1.

Исходя из цветового круга на рисунке 1, можно утверждать, что любая точка есть смесь цветов, расположенных по самым краям круга. Данный взгляд на палитру определил аддитивное определение цвета. Джеймс Максвелл предложил аддитивный синтез цвета как способ получения цветных изображений в 1861 году по трём основным цветам - красному, зеленому и синему [22]. При этом аддитивность (лат. additivus — прибавляемый) рассматривается как свойство величин, состоящее в том, что значение величины, соответствующее целому объекту, равно сумме значений величин, соответствующих его частям, в некотором классе возможных разбиений объекта на части. Например, аддитивность объёма означает, что объём целого тела равен сумме объёмов составляющих его частей [23].

RGB (аббревиатура английских слов Red, Green, Blue — красный, зелёный, синий) аддитивная цветовая модель, как правило, описывающая способ синтеза цвета для цветовоспроизведения [24].

Изображение в данной цветовой модели состоит из трёх каналов. При смешении основных цветов (основными цветами считаются красный, зелёный и синий) — например, синего (B) и красного (R), мы получаем пурпурный (M magenta), при смешении зеленого (G) и красного (R) — жёлтый (Y yellow), при смешении зеленого (G) и синего (B) — циановый (С cyan). При смешении всех трёх цветовых компонентов мы получаем белый цвет (W) [24].

Цветовая модель RGB была изначально разработана для описания цвета на цветном мониторе, но поскольку мониторы разных моделей и производителей различаются, было предложено несколько стандартов цветовых пространств для этой модели, соответствующих «усредненному» монитору. Цветовая модель RGB может использовать разные оттенки основных цветов, разную цветовую температуру (задание «белой точки»), и разный показатель гамма-коррекции.

XYZ (цветовая модель) - - на базе разработки человеческого зрения с помощью CIE RGB с соответствующими функциями, члены специальной комиссии МОК, пожелали, чтобы развивать альтернативное направление представления цветовых моделей, которое будет касаться CIE цветового пространства RGB. Предполагалось, новое пространство будет связано с CIE RGB пространством линейного преобразования. Новое пространство будет определяться в терминах трех новых функций подбора цветов Новое цветовое пространство будет выбрано со следующими полезными свойствами:

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

-Функция подбора V(x) цветов будет в точности равна фотопической (подбор ярких цветов — типа дневных) световой функции эффективности V(X) для "CIE стандартного фотопического наблюдателя". Функция яркости свечения пикселя описывает изменение воспринимаемой яркости с длиной волны. Тот факт, что функция яркости может быть построена с помощью линейной комбинации подбора цветов функций, что не гарантируется с помощью любых средств, но и можно было ожидать, что будет почти верно в связи с почти линейным характером человеческого зрения. Опять же, основной причиной этого требования было вычислительное упрощение.

Для постоянной энергии белой точки требовалось, что бы х = у = z = 1/3. В силу определения цветности и требованием положительных значений х и у , можно увидеть, что охват всех цветов будет лежать внутри треугольника [1,0], [0,0], [0,1] . Это требовалось, чтобы это пространство заполнить гаммой практически полностью.

Было обнаружено, что функция (-М подбора цветов может принимать нулевые значения при длине волны выше 650 нм, оставаясь при этом в пределах экспериментальной ошибки. Для снижения вычислительной сложности, в диссертационной работе было принято, что данное условие принятия нулевых значений функции при установленной длине волны не выше 650 нм истинно.

В геометрических терминах, выбирая новый цвет, определяется выбор нового треугольника цветов в rgb-цветности пространства. Цветность координаты отображаются на двух осях в чёрном цвете вместе с гаммой стандартного наблюдателя. координаты являются CIE xyz-цветности осей, которые были определены требованиями выше. Требование о том, что XYZ координаты быть неотрицательными, означает, что треугольник, образованный CrCgCb должен охватить всю гамму стандартного наблюдателя. Линии, соединяющей Сг и СЬ устанавливают требование о том, что функция VW равна функции яркости. Эта линия является линией нулевой яркости, так и называется alychne. Требование о том, что гМфункция нуля выше 650 нм означает, что линия, соединяющая Cg и Сг, должна быть касательной к гамме в регионе Кг. Это определяет положения точки Сг. Требование о том, что равная величина энергетических точек определяется x = y = 1/3, ставит ограничение на линии, соединяющей СЬ и Cg, наконец, требование о том, что гамма заполнения пространства ставит второе ограничение на эту строку, которое должно быть очень близкой к гамме в зелёной области, которое определяет местоположение Cg и СЬ [25].

Классификация объектов в задачах детектирования движения

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

Теория классификации объектов — раздел информатики, развивающий теоретические основы и методы классификации и идентификации предметов, явлений, процессов, сигналов, ситуаций и т. п. объектов, которые характеризуются конечным набором некоторых свойств и признаков [37].

Такие задачи решаются довольно часто, например, при переходе или проезде улицы по сигналам светофора. Распознавание цвета загоревшейся лампы светофора и знание правил дорожного движения позволяет принять правильное решение о том, можно или нельзя переходить улицу в данный момент [38].

Создание искусственных систем классификации объектов остаётся сложной теоретической и технической проблемой. Необходимость в таком распознавании возникает в самых разных областях — от военного дела и систем безопасности до оцифровки всевозможных аналоговых сигналов. Традиционно задачи классификации объектов включают в круг задач искусственного интеллекта [39].

Распознавание образов — это отнесение исходных данных к определенному классу с помощью выделения существенных признаков, характеризующих эти данные, из общей массы несущественных данных [40]. В аспекте проблемы, необходимо рассматривать теорию классификации объектов в математическом виде и описывать процессы распознавания математическим языком.

Рассмотрим саму задачу теории распознавания образов: пусть дано некое множество объектов, каждый из которых необходимо максимально точно определить в какую-то конкретную и заранее определенную категорию, т.е. классифицировать, разбивая данное множество на подмножества, т.н. классы объектов. Следует учитывать, что заранее определены некоторые данные: параметры классов, их особые и уникальные свойства, позволяющие отличить данные объекты от объектов другого типа (классов), и определены объекты, чья принадлежность к конкретному классу неизвестна [41]. Решением данной задачи будет максимально правильное распределение объектов по классам [42].

Как правило, в теории распознавания образов используются монохромные изображения. Это значит, что объектом анализа является в данном случае множество точек на плоскости изображения, где функция, взятая в каждой конкретной точке пространства и принадлежащая данной плоскости, является формальной записью изображения [43]. Совокупность всех возможных функций на данной плоскости будет являться моделью всех изображений, и определяя сходство между образами, появляется возможность постановки задачи распознавания в соответствии с тем или иным подходом [44].

Вэйвлет (от англ. wavelet) — это математическая функция, позволяющая анализировать различные частотные компоненты данных [45]. График функции выглядит как волнообразные колебания с амплитудой, уменьшающейся до нуля вдали от начала координат. Однако это частное определение — в общем случае анализ сигналов производится в плоскости вэйвлет-коэффициентов (масштаб — время — уровень). Вэйвлет-коэффициенты определяются интегральным преобразованием сигнала. Полученные вэйвлет-спектрограммы принципиально отличаются от обычных спектров Фурье тем, что дают четкую привязку спектра различных особенностей сигналов ко времени [46].

Вэйвлет Хаара — один из первых и наиболее простых вэйвлетов. Он был предложен венгерским математиком Альфредом Хааром в 1909 году. Вэйвлеты Хаара ортогональны, обладают компактным носителем, хорошо локализованы в пространстве, но не являются гладкими [45].

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

Пусть имеется одномерный дискретный входной сигнал . Каждой паре соседних элементов ставятся в соответствие два числа

Если применить данные действия для каждого элемента входящего сигнала, то на выходе возможно получить два сигнала, один из которых будет являться огрубленной версией входящего - cq, а второй будет содержать информацию, необходимую для восстановления исходного сигнала. Аналогично, преобразование Хаара может быть применено к полученному сигналу [48].

Двумерное преобразование Хаара — это ни что иное, как композиция одномерных преобразований Хаара. Пусть двумерный входной сигнал представляется матрицей. После применения одномерного преобразования Хаара к каждой строке матрицы получаются две новые матрицы, строки которых содержат аппроксимированную и детализирующую часть строк исходной матрицы. Аналогично к каждому столбцу полученных матриц применяют одномерное преобразование Хаара и на выходе получают четыре матрицы, одна из которых является аппроксимирующей составляющей исходного сигнала, а три оставшиеся содержат детализирующую информацию — вертикальную, горизонтальную и диагональную [49].

Признаки Хаара — признаки цифрового изображения, используемые в распознавании образов. Своим название они обязаны интуитивным сходством с вэйвлетами Хаара. Признаки Хаара использовались в первом детекторе лиц, Функция f отображает множество X в множество допустимых значений признака Df, при это принято считать, что существует функциональная зависимость между этими двумя множествами

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

Начальный размер секций поиска определяется заранее, размер секции прямо пропорционален скорости работы алгоритма: чем больше окно для поиска, тем выше скорость анализа одного кадра видеопоследовательности.

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

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

Реализация классификатора объектов в видеопоследовательности

Программа детектора пересечения границы с использованием каскадов Хаара разработана в среде Microsoft Visual Studio 12.0 с использованием библиотеки OpenCV 3.0 под операционную систему Windows 8.1 [71], что отвечает самым современным требованиям в разработке программного обеспечение. Для проектирования использовался типизированный каркас MFC, что позволило сэкономить время написания стандартных функций работы оконного приложения. MVS 12 позволяет верстать оконное приложение лишь манипуляции через графический интерфейс среды разработки [72], автоматически вставляя нужные части кода в соответствующие файлы. Все алгоритмы содержаться в файле реализации 020Dlg.cpp. Для корректной работы нам необходимо расширить стандартный проект MFC до проекта MFC с подключенными библиотеками компьютерного зрения и сопутствующими библиотеками для работы с математическими функциями. Их необходимо включить как часть проекта посредством оператора Include.

Подключаемые заголовочные файлы cv.h и highgui.h отвечают за работу основных функций интерфейса библиотеки компьютерного зрения, iostream и fstream отвечают за обработку файловых потоков для записи информации на жесткий диск, time.h содержит в себе основные функции для работы с таймером и системным временем, остальные подключаемые заголовочные файлы содержат в себе функции работы приложения в оконной среде Windows [73].

Далее, для корректной работы с RGB-изображением типа Bitmap, нам необходимо создать макрос, определяющий значение округления до ближайшего бита:

#define WIDTHBYTES(bits) ((((bits)+31)/32) 4) [74]

Для удобства обращения к пространству имен std определяем данное пространство, используемое по умолчанию:

using namespace std;

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

Сам захваченный видеопоток с камеры или из файла с жесткого диска будут определять переменные типа CvCapture, уникальные для каждого потока:

CvCapture capture1; CvCapture capture6.

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

IplImage frame1=0;....IplImage frame6=0.

Для того, чтобы обеспечить передачу данных между интерфейсом и окнами с видеозаписью, следует объявить переменные класса CDC. Класс CDC представляет собой класс контекста устройств. Объект класса CDC содержит методы для работы с контекстом таких устройств, как дисплей или принтер, а также позволяет работать с контекстом дисплея, связанным с рабочей областью окна. Все операции вывода информации на дисплей и принтер должны производиться только с использованием методов, предоставляемых объектом класса CDC. Данный класс содержит методы для работы с контекстом устройств, осуществляющих вывод графической информации, методы выбора объектов интерфейса графических устройств (GDI), учитывающие тип выбираемых объектов, и методы для работы с цветами и палитрами [75]. Он также обеспечивает методы для получения и установки атрибутов отображения графической информации, масштабирования, работы с областями просмотра, работы с расширениями окон, преобразования координат, работы с областями, отсечения неотображаемых фрагментов, рисования линий, простых форм, эллипсов и многоугольников. Данный класс содержит, также методы позволяющие выводить текст, работать со шрифтами, использовать управляющие последовательности принтера, прокрутку окон и проигрывание метафайлов.

Чтобы использовать объект класса CDC, необходимо его создать, а затем использовать его функции, соответствующие функциям Windows, предназначенным для работы с контекстами устройств [76]. Кроме того, следует объявить контексты устройства для элементов вывода текстовой информации на форму интерфейса. Поскольку в программе присутствует таймер, потребуются переменные, фиксирующие текущее системное время: int day, mon, year, hour, minut,sec,h1,m1,sec1;

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

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

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

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

CvHaarClassifierCascade pCascade.

Кроме этого, необходимо объявить хранилище памяти, в котором будут хранится данные об обратываемых объектах одного кадра текущей камеры.

Функция CreateRGBBitmap создается для конвертации изображения типа IplImage в формат Bitmap. Это делается для корректного отображения без искажений на форме MFC. В противном случае происходит сдвиг и искажение цветов. Функция HBITMAP CreateRGBBitmap(IplImage Grab) возвращает картинку, которая используется для показа в одном из окон камер на форме.

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

Затем необходимо сжать кадр до размера выделенной на форме области. Непосредственный вывод кадра происходит с использованием ранее упомянутой функции CreateRGBBitmap. Затем удаление временных переменных и контекстов устройства, это необходимо для повторного вызова функции при других контекстах устройства.

Анализ экспериментальной реализации синтезированного метода детектирования и классификации движущихся объектов

Несомненным преимуществом программной реализации алгоритмов непосредственно для операционной системы Microsoft Windows является модульность системы [91]. Модули для разработки находятся в динамически связанных библиотеках. Они имеют следующее преимущество: всё содержание библиотеки загружается только во время выполнения, по требованию, и, кроме того, многие программы могут использовать один файл библиотеки [92].

Если рассматривать данный метод в задаче детектирования и классификации движущихся объектов, то удобнее всего сосредоточиться на поиске лиц, что безусловно определит направление движения человека и точно идентифицирует его как идущего к камере, и, соответственно, как входящего\выходящего. Для точной идентификации лица следует помнить, что важным параметр является разница в яркости участков глаз и щек - щеки всегда будут ярче глаз [93]. Следовательно, общим признаком Хаара для идентификации лица человека будут являться два смежных прямоугольных участка, расположенных на щеках и глазах. Если применить данные алгоритмы для каждого элемента входящего сигнала, то на выходе возможно получить два сигнала, один из которых будет являться огрубленной версией входящего, а второй будет содержать информацию, необходимую для восстановления исходного сигнала. Аналогично, преобразование Хаара может быть применено к полученному сигналу [94].

Допустим, дано некое множество объектов, каждый из которых необходимо максимально точно определить в какую-то конкретную и заранее определенную категорию, т.е. классифицировать, разбивая данное множество на подмножества, т.н. классы объектов [95]. Следует учитывать, что заранее определены некоторые данные: параметры классов, их особые и уникальные свойства, позволяющие отличить данные объекты от объектов другого типа (классов), и определены объекты, чья принадлежность к конкретному классу неизвестна. Решением данной задачи будет максимально правильное распределение объектов по классам.

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

Интегральное представление изображения позволяет быстро вычислить необходимые объекты. Поиск объектов осуществляется с использованием признаков Хаара и бустинга для выбора наиболее подходящих объектов в текущем фрагменте изображения. Все признаки проходят через классификатор, который однозначно выбирает из вариантов «правда» или «ложь». Для ускорения работы используются каскады признаков.

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

Результатом действия алгоритма будет представлена видеопоследовательность, где у каждого пикселя изображения инвариантно возможно лишь два значения: 0, при отсутствии движения и принадлежности пикселя к заднему плану, и 1, при наличии движения и принадлежности пикселя к переднему плану.

По умолчанию, на входе мы имеем видеосигнал в формате RGB при разрешении 640 на 480 пикселов [96]. Для его обработки целесообразно применение некоторых фильтров для обработки изображения, для отсеивания ненужных шумов и помех.

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

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

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

Чтобы вновь стабилизировать статичный задний фон, в рекомендациях к использованию данного алгоритма появляется пункт о необходимости отключения счетчика на период включения освещения, или же стоит использовать данный алгоритм в тех местах, где используется постоянная освещенность, и лампы дневного света работают круглосуточно, ну или, по крайней мере, работают в период подсчета посетителей. При прекращении подсчета, например, с закрытием торгового центра в 22:00 [97], возможно отключения счетчика посетителей при отсутствии потребности подсчета, и система может перейти в режим обеспечения и контроля безопасности при выключенном функционале статистики.

Что касается алгоритма классификации объектов, то в абсолютно любых, пусть даже резко изменяющихся условиях, алгоритм ведёт себя стабильно и выдает одинаковый процент точности при условии, что качество передаваемой с камеры картинки не ухудшается [98]. Кроме того, что алгоритм устойчив к изменению освещенности, он создает базу данных посетителей, что несомненно увеличивает функциональность программы, расширяя её до справочной системы.

Работа с файлами статистики не зависит от выбора алгоритма и одинакова эффективна и в том, и в другом случае. Статистика ведётся через текстовые файлы, хранящиеся в базе данных операционной системы по принципу именного задания параметров.

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

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

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

После успешной реализации, программное обеспечение прошло испытание серией экспериментов в Пензенском Государственном Университете и на улицах города Пензы, решая задачу детектирования и классификации движущихся объектов. Всего в ходе эксперимента отснято более 1000 часов видео, что доказало стабильность работы программного обеспечения. В качестве единицы времени в результатах взят 20минутный отрезок видеопоследовательности [100].

Результаты работы детекторов были преобразованы в статистические таблицы, которые послужили материалом для анализа эффективности работы алгоритмов. Для сравнения конкретных результатов, видеопоследовательности были отсмотрены автором и просчитаны «вручную», давая 100%-ную эталонную точность.

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