ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ 4
ВВЕДЕНИЕ 5
1 КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ 7
2.1 ОБЩИЕ СВЕДЕНИЯ 7
2.2 ОБЗОР СУЩЕСТВУЮЩИХ РЕШЕНИЙ 7
2.3 ВЛИЯНИЕ ФОКУСНОГО РАССТОЯНИЯ НА РАЗМЕР ОБЪЕКТА НА ИЗОБРАЖЕНИИ 17
2.4 ОБЗОР СОВРЕМЕННЫХ СРЕДСТВ ДЛЯ РАЗРАБОТКИ МОБИЛЬНОГО ПРИЛОЖЕНИЯ 21
2.5 БИБЛИОТЕКА OPENCV 22
2 РАЗРАБОТКА ПРОГРАММНОГО МОДУЛЯ 26
2.6 ОБЩАЯ СТРУКТУРА 26
2.7 ГРАФИЧЕСКИЙ ИНТЕРФЕЙС 28
2.8 ОПТИМИЗАЦИЯ ПАРАМЕТРОВ ДЕТЕКТИРОВАНИЯ ДВИЖУЩИХСЯ ОБЪЕКТОВ 34
2.9 АНАЛИЗ И ТЕСТИРОВАНИЕ ПРОГРАММНОГО МОДУЛЯ 36
ЗАКЛЮЧЕНИЕ 40
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 41
ПРИЛОЖЕНИЕ А
Зрение помогает нам надежно распознавать людей, животных и неодушевленные объекты. В области искусственного интеллекта или компьютерного зрения обозначением всех этих способностей принято считать термин распознавание объектов. К этому относится определение класса конкретных объектов, представленных на изображениях [1].
Задача распознавания пешеходов становится всё более актуальной. Это обусловлено тем, что доступность вычислительных мощностей и камер постоянно увеличивается. Системы распознавания пешеходов могут встраиваться в транспорт, тем самым повышать безопасность на дорогах. Такие системы являются важными для беспилотных транспортных средств. Визуальное распознавание пешеходов также может быть полезно при необходимости считывания численности проходящего мимо камеры потока людей, например, чтобы собрать информацию о загруженности городских улиц.
В области распознавания пешеходов ведутся активные исследования. Стандартный подход к проблеме — выбор способа формирования векторов
признаков и выбор классификатора. Учёные предлагают способы получения из изображений новых признаков и варьируют классификаторы, чтобы изучение полученного метода распознавания происходило по таким критериям, как точность (вероятность обнаружить, имеется ли в текущем поисковом окне пешеход или нет) и скорость работы (некоторые методы обнаружения используют в реальном времени, а некоторые могут занять минуты). Иногда учёные подходят к такой проблеме более широко и стараются изучить не только сам метод обнаружения, но и статистическую информацию о самой проблеме, например, распределение пешеходов по разным областям изображения. Статья [2] представляет собой исследование, в котором приводится и обширная статистическая информация о задаче, и сравнение множества перспективных современных детекторов пешеходов.
В данной работе в качестве методов распознавания пешеходов были выбраны метод гистограмм направленных градиентов и метод каскадов Хаара. Навнит Далал и Билл Триггс, исследователи из INRIA, впервые описали гистограмму направленных градиентов в своей работе [3]. В данной работе был использован алгоритм по нахождению людей на статичных изображениях, впоследствии Навнит и Билл рас-ширили область применения до обнаружения пешеходов на видео, а также различных животных и машин на статичных изображениях.
Признаки Хаара — это признаки цифрового изображения, используемые в распознавании образов. Название термина произошло от интуитивного сходства с «вейвлетами» (математическими функциями) Хаара. Признаки Хаара были использованы в первом детекторе лиц, который работал в реальном времени.
Целью исследования является разработка программного модуля для обнаружения пешеходов на дороге по видеоизображению.
Для достижения поставленной цели необходимо решить следующие задачи:
- познакомиться с методами выделения объектов на видеоизображении;
- изучить методы распознавания пешеходов библиотеки OpenCV, а также реализовать использование дескриптора в программе на их основе;
- реализовать программный модуль поиска пешеходов с использованием дескриптора гистограмм направленных градиентов;
- провести тестирование созданной программы.
Для реализации программного модуля обработки видеоданных была выбрана интегрированная среда разработки Android Studio.
В ходе выполнения данной работы цель была достигнута, было разработано графическое мобильное приложение для распознавания пешеходов. Для этого была изучена библиотека OpenCVи создан класс, содержащий все необходимые для этого методы. В приложении реализована возможность выбора загрузки изображения, а также его вывода на весь экран. Были решены все поставленные задачи, а именно:
- реализована программа с использованием дескриптора гистограмм направленных градиентов;
- проведены анализ и тестирование созданной программы;
Результаты, полученные при работе программы удовлетворяют требованиям скорости вычисления. Время реакции программы превосходит время реакции среднестатистического человека. Приложение работает стабильно и без ошибок. Было произведено тестирование дескриптора. Адекватность работы приложения была проверена путем наблюдения областей, указывающих на наличие пешеходов. Возможно дальнейшее улучшение в сторону оптимизации и повышения скорости работы.
Программный модуль может быть использован как элемент более сложных автоматизированных систем. Например, в случае использования в автоматизированной системе ассистента водителя, данные, полученные от программного модуля, могут быть использованы для оповещения водителя или корректировки движения транспортного средства.
Дальнейшие исследования в этой области могут быть направлены на совершенствование алгоритма, или же переобучение или создание нового классификатора.