Результаты экспериментального исследования, Программа экспериментальных исследований - Исследование алгоритмов

Программа экспериментальных исследований

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

Общее тестирование приложения включало в себя:

    1) Проверку приложения на предмет ошибок безотносительно изучаемых методов детектирования (проведение юнит-тестов при помощи JUnit, проведение тестирования UI приложения путем использования библиотеки Espresso URL: https://developer. android. com/training/testing/ui-testing/espresso-testing. html); 2) Непосредственно анализ эффективности исследуемых методов в задаче детектирования пешеходов в реальном времени, производимый по следующим критериям:
      - продолжительность обучения классификаторов (T); - ошибки I рода; абсолютное число и процент пропусков объектов: false negatives (FN) и false negatives rate (FNR); - средне число пропущенных объектов в секунду (FNa); - ошибки II рода; абсолютное число и процент ложных срабатываний: false positives (FP) и false positives rate, (FPR); - абсолютное число и процент верно классифицированных положительных примеров: true positives (TP) и true positives rate (TPR); - процент верно классифицированных отрицательных примеров (истинно отрицательных случаев, true negatives rate, TNR); - чувствительность и специфичность модели (Se и Sp соответственно); - среднее время обработки одного кадра из видеопотока в реальном времени (T).

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

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

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

Для проведения тестирования использовались три смартфона, обладающие различными характеристиками дисплея, камеры и процессора, а также функционирующие на разных версиях платформы Android (4.0.3.Ice Cream Sandwich, 4.2.2 Jelly Bean, 5.0.2 Lollipop). Такие меры по учету аппаратной и программной специфики устройств обязательны при оптимизации мобильного приложения как с точки зрения интерфейса, так и с точки зрения производительности. В таблице 3.1. обозначены все необходимые для анализа характеристики выбранных устройств.

Таблица 3.1.

Используемые для тестирования устройства

Устройство

Характеристики

Дисплей

Процессор

Память

Основнаякамера

Смартфон LG G-серии G2 GOLD D802

    5,2" 1980x1080

FULL HD IPS

423 точек на дюйм

4-ядерный 2,26 ГГц

ОС: Android v. 5.0.2

ОЗУ: 2 Гб

Встроенная: 32 Гб

13 Мп

Смартфон Philips Xenium W8510

    4,7" 1280x720

TFT IPS

312 точек на дюйм

4-ядерный 1,2 ГГц

ОС: Android v. 4.2.2

ОЗУ: 1 Гб

Встроенная:

32 Гб

8 Мп

Смартфон LG Optimus L7 P705

    4,3" 800x480

IPS

1-ядерный ГГц OC: Android v. 4.0.3

ОЗУ: 512 Мб

Встроенная:

16 Гб

5 Мп

Подготовка к тестированию была осуществлена в несколько этапов:

    1) На персональный компьютер был установлен интерфейс для отладки Android, ADB (Android Debug Bridge) Driver, для выполнения отладки по USB и, в целом, контроля работы устройств через USB-соединение; 2) На все используемые устройства было установлено приложение OpenCVManager URL:http://docs. opencv. org/platforms/android/service/doc/index. html, обеспечивающее поддержку средств библиотеки OpenCV; в противном случае запуск созданного приложения для детектирования невозможен; 3) Приложение было успешно установлено на все устройства. В отличие от закрытых систем, в ОС Android предусмотрена возможность установки приложения на устройство без участия Google Play Market двумя способами:
      - установка через пакет. apk c помощью менеджера приложений или файлового менеджера; - установка приложения через пакет. apk с компьютера через Android SDK (средствами отладки ADB). Именно этот вариант и был использован.

После подготовительных работ была проведена серия тестов. Ход эксперимента выглядел следующим образом:

    1) Смартфоны устанавливались в автомобиле в горизонтальное положение таким образом, чтобы их основные камеры имели максимальный обзор и возможность полного захвата происходящего на дороге; 2) При приближении к регулируемому перекрестку или пешеходному переходу производился запуск приложения для детектирования пешеходов; 3) Запускалась запись работы приложения с экранов; 4) Для каждого имплементированного метода детектирования пешеходов проводились два теста одинаковой длительности, подробно описанные в пп. 4.1 и 4.2; 5) После завершения эксперимента полученные видеозаписи разбивались на кадры (изображения в формате *.jpg) . 6) Полученные результаты подвергались визуальному анализу.

Похожие статьи




Результаты экспериментального исследования, Программа экспериментальных исследований - Исследование алгоритмов

Предыдущая | Следующая