Введение
Цель, постановка задачи, возможности использования
Глава 1. Определение требований и выбор подхода
1.1. Исследование существующих решений
1.2. Ограничения и требования
1.3. Выбор метода нахождения и построения локальных особенностей. „. 17
Глава 2. Сравнение изображений и видео
2.1. Описание кадров
2.2. Составление словаря “визуальных слов
2.3. Классификатор
2.3.1. Метод опорных векторов
2.3.2. Метод релевантных векторов
2.3.3. Сравнение методов опорных и релевантных векторов
Глава 3. Поиск областей движения
3.1. Выбор метода поиска движущихся объектов
3.2. Вычитание фона
2.2.1. Нерекурсивные методы построения модели фона
2.2.2. Рекурсивные методы построения модели фона. ViBe
3.2.3. Рекурсивные методы построения модели фона. MOG
3.3. Удаление шума
3.3.1. Размытие по Гауссу
3.3.2. Математическая морфология
Глава 4. Выделение движущихся объектов
4.1. Сопоставление особых точек
4.1.1. Простые фильтры
2.1.2. Итеративные фильтры. RANSAC
4.2. Использование алгоритмов трекинга
4.3. Оптический поток
4.4. Сравнение подходов и вывод
4.4.1. Сравнение качества работы
4.4.2. Сравнение времени работы
4.4.3. Выводы
Глава 5. Архитектура прототипа и его тестирование
5.1. Архитектура решения
5.1.1. Работа в режиме реального времен
5.1.2. Индексирование
5.1.3. Данные, вводимые пользователем
5.2. Тестирование прототипа
5.2.1. Результаты профилирования второго этапа
5.2.2. Анализ полученных результатов и выводы
Заключение
Список литературы и источников
Приложение. Рекомендуемые электронные ресурсы
Современный мир невозможно представить без информационных
технологий, проникших во все сферы нашей жизни: тогда как первые
вычислительные системы имели огромный размер и были применимы только
для численного решения научных задач, сегодня их миниатюрные аналоги
широко используются в быту и сопровождают нас повсеместно.
После создания в 70-ых годах XX-го века первых цифровых камер, а
также с учётом интенсивного роста вычислительных мощностей
компьютерные вычисления стали активно применяться для цифровой
обработки изображений, что в итоге привело к необходимости решения
задачи распознавания изображений при помощи компьютерного зрения. С
каждым днём количество задач, которые решаются с его помощью,
неуклонно растёт, и его технологии используются всё чаще ввиду
удешевления и повышения доступности не только устройств фото- и
видеозаписи (например, оснащение смартфонов камерами высокого
разрешения), что послужило причиной небывалому расширению базы
изображений и видео, но и устройств хранения и обработки данных.
Компьютерное зрение также применяется для обработки видеопотоков,
которые, хотя и могут быть представлены как последовательность
изображений, из-за чего можно применять к ним все используемые при
работе с изображениями алгоритмы, в то же время имеют дополнительные
присущие им свойства. Это позволяет решать не только те же задачи, что и
для изображений, с использованием более эффективных учитывающих эти
свойства алгоритмов, но и некоторые новые. Например, помимо
обнаружения и классификации объектов компьютерное зрение позволяет
также отслеживать эти объекты, для чего используется свойство связности
изображений в видеопотоке.
4Так как человеку для анализа цифровой информации может
потребоваться немалое количество времени, а её объём неуклонно растёт,
возникает необходимость в способе обработки и представления данных
таким образом, чтобы повысить скорость их визуального восприятия. Если
эти данные представлены в виде коллекции видео, на которых присутствуют
мешающие восприятию движущиеся объекты, для этого можно использовать
специальную систему, основанную на машинном обучении и компьютерном
зрении, которая будет автоматически переключаться между элементами коллекции.
В данной работе будут рассмотрены существующие наработки,
которые могут приблизить к решению данной проблемы, а также будет
предложен один из способов построения такой системы. Конечным
результатом работы является прототип программного обеспечения.
Таким образом, в рамках представленной работы:
● После изучения публикаций и существующих решений была
спроектирована архитектура комплекса, позволяющего объединять
технологии построения виртуального видеопотока и видеоаналитики.
При этом был проведён анализ следующих методов:
- сравнения изображений и видео;
- поиска областей движения;
- выделения движущихся объектов.
● Был проведён эксперимент, который позволил полностью подтвердить
выдвинутую гипотезу, установив, что существуют средства и методы,
позволяющие построить виртуальный видеопоток с использованием
данных о движущихся объектах без высоких затрат на приобретение
дорогостоящего оборудования и программного обеспечения. В ходе
эксперимента для уменьшения времени работы программы в режиме
реального времени формировались и использовались файлы со
специальной структурой.
● В результате эксперимента было получено решение, представленное в
виде прототипа программного обеспечения. Ссылку на репозиторий
можно найти в приложении.
Всё вышеперечисленное позволило существенно приблизиться к
поставленной цели, и, что самое главное, получить бесценный опыт решения
задач машинного обучения и компьютерного зрения, а также проектирования
и разработки программного обеспечения.