Рассматривается модификация метода Виолы–Джонса – одного из самых эффективных методов классификации изображений. Вместо детекторов прямоугольных особенностей в предложенной модификации используются детекторы особенностей, построенные на конечных автоматах. Применение автоматов позволяет сократить число уровней в каскаде и число детекторов на каждом уровне за счет того, что детектор, управляемый автоматом, может обнаружить более сложные особенности, нежели простые прямоугольники.
Устойчивый к искажениям алгоритм распознавания штрих-кода EAN-13Zheka Kozlov
Цель работы заключалась в разработке алгоритма, эффективно распознавающего штрих-коды EAN-13 с возможностью дефокусировки и яркостно-геометрических искажений. Анализ ряда существующих алгоритмов показал, что все они не в полной мере отвечают представленным требованиям. Алгоритм, описанный в http://users.soe.ucsc.edu/~orazio/barcodes.html, дает впечатляющие результаты как в плане эффективности, так и в плане производительности, но он не способен распознавать сильно дефокусированные штрих-коды.
В процессе работы была разработан алгоритм распознавания искаженного штрих-кода, который получает на входе изображение, содержащее уже локализованный ненаклоненный штрих-код.
Суть алгоритма заключается в минимизации функционала вида J = sum(h_i - g_i(P))^2, где h_i - измерения сигнала, P - вектор оцениваемых неизвестных параметров, g_i(P) - модель дискретного сигнала. Для минимизации J используется итеративная процедура оценивания. В первой итерации модель сигнала использует положения границ штрихов, полученных с помощью алгоритма http://users.soe.ucsc.edu/~orazio/barcodes.html. После минимизации в случае успешного декодирования выдается результат, в противном случае выводится сообщение о невозможности распознавания.
Испытания показали, что реализованный алгоритм способен быстро и эффективно распознавать штрих-коды на сильно дефокусированных изображениях с высоким уровнем шума и различными яркостно-геометрическими искажениями при количестве пикселей области штрих-кода от 200 и более. Среднее время распознавания на смартфоне HTC Legend составило приблизительно 1 секунду, что позволяет в случае неуспеха быстро повторить попытку распознавания.
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...Iosif Itkin
The dynamic analysis of executable code in ELF format based on static binary instrumentation
Mikhail Yermakov,ISP RAS
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Multi-Module Application Tracing in z/OS EnvironmentIosif Itkin
Multi-Module Application Tracing in z/OS Environment
Rostislav Efremov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...yaevents
Александр Петренко, ИСП РАН
Профессор, доктор физико-математических наук, заведующий отделом технологий программирования Института системного программирования (ИСП РАН), профессор ВМК МГУ. Основные работы в областях: формализация требований, генерация тестов на основе формализованных требований и формальных моделей (model based testing – MBT). Приложения: тестирование операционных систем и распределенных систем, тестирование компиляторов, верификация дизайна микропроцессоров, формализация стандартов на API операционных систем и телекоммуникационных протоколов. Сопредседатель оргкомитетов International MBT workshop (http://www.mbrworkshop.org/), Spring Young Researcher Colloquium on Software Engineering – SYRCoSE (http://syrocose.ispras.ru), городского семинара по технологиям разработки и анализа программ ТРАП/SDAT (http://sdat.ispras.ru/).
Тема доклада
Модели в профессиональной инженерии и тестировании программ.
Тезисы
Model Based Software Engineering (MBSE) является расширением подхода к разработке программ на основе моделей. В MBSE в отличие, например, от MDA (Model Driver Architecture) существенное внимание уделяется не только задачам собственно проектирования и разработки кода, но и задачам других фаз жизненного цикла – анализу требований, верификации и валидации, управлению требованиями на всех фазах жизненного цикла. Model Based Testing (MBT) хронологически возник гораздо раньше, чем MBSE и MDA, однако его место в разработке программ в полной мере раскрылось вместе с развитием MBSE. По этой причине MBT и MBSE следует рассматривать в тесной связке. В докладе будут рассмотрены концепции MBSE-MDA-MBT, основные источники и виды моделей, которые используются в этих подходах, методы генерации тестов на основе моделей, известные инструменты для
Устойчивый к искажениям алгоритм распознавания штрих-кода EAN-13Zheka Kozlov
Цель работы заключалась в разработке алгоритма, эффективно распознавающего штрих-коды EAN-13 с возможностью дефокусировки и яркостно-геометрических искажений. Анализ ряда существующих алгоритмов показал, что все они не в полной мере отвечают представленным требованиям. Алгоритм, описанный в http://users.soe.ucsc.edu/~orazio/barcodes.html, дает впечатляющие результаты как в плане эффективности, так и в плане производительности, но он не способен распознавать сильно дефокусированные штрих-коды.
В процессе работы была разработан алгоритм распознавания искаженного штрих-кода, который получает на входе изображение, содержащее уже локализованный ненаклоненный штрих-код.
Суть алгоритма заключается в минимизации функционала вида J = sum(h_i - g_i(P))^2, где h_i - измерения сигнала, P - вектор оцениваемых неизвестных параметров, g_i(P) - модель дискретного сигнала. Для минимизации J используется итеративная процедура оценивания. В первой итерации модель сигнала использует положения границ штрихов, полученных с помощью алгоритма http://users.soe.ucsc.edu/~orazio/barcodes.html. После минимизации в случае успешного декодирования выдается результат, в противном случае выводится сообщение о невозможности распознавания.
Испытания показали, что реализованный алгоритм способен быстро и эффективно распознавать штрих-коды на сильно дефокусированных изображениях с высоким уровнем шума и различными яркостно-геометрическими искажениями при количестве пикселей области штрих-кода от 200 и более. Среднее время распознавания на смартфоне HTC Legend составило приблизительно 1 секунду, что позволяет в случае неуспеха быстро повторить попытку распознавания.
TMPA-2015: The dynamic Analysis of Executable Code in ELF Format Based on Sta...Iosif Itkin
The dynamic analysis of executable code in ELF format based on static binary instrumentation
Mikhail Yermakov,ISP RAS
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
TMPA-2015: Multi-Module Application Tracing in z/OS EnvironmentIosif Itkin
Multi-Module Application Tracing in z/OS Environment
Rostislav Efremov, Saint Petersburg State University, Saint Petersburg
12 - 14 November 2015
Tools and Methods of Program Analysis in St. Petersburg
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...yaevents
Александр Петренко, ИСП РАН
Профессор, доктор физико-математических наук, заведующий отделом технологий программирования Института системного программирования (ИСП РАН), профессор ВМК МГУ. Основные работы в областях: формализация требований, генерация тестов на основе формализованных требований и формальных моделей (model based testing – MBT). Приложения: тестирование операционных систем и распределенных систем, тестирование компиляторов, верификация дизайна микропроцессоров, формализация стандартов на API операционных систем и телекоммуникационных протоколов. Сопредседатель оргкомитетов International MBT workshop (http://www.mbrworkshop.org/), Spring Young Researcher Colloquium on Software Engineering – SYRCoSE (http://syrocose.ispras.ru), городского семинара по технологиям разработки и анализа программ ТРАП/SDAT (http://sdat.ispras.ru/).
Тема доклада
Модели в профессиональной инженерии и тестировании программ.
Тезисы
Model Based Software Engineering (MBSE) является расширением подхода к разработке программ на основе моделей. В MBSE в отличие, например, от MDA (Model Driver Architecture) существенное внимание уделяется не только задачам собственно проектирования и разработки кода, но и задачам других фаз жизненного цикла – анализу требований, верификации и валидации, управлению требованиями на всех фазах жизненного цикла. Model Based Testing (MBT) хронологически возник гораздо раньше, чем MBSE и MDA, однако его место в разработке программ в полной мере раскрылось вместе с развитием MBSE. По этой причине MBT и MBSE следует рассматривать в тесной связке. В докладе будут рассмотрены концепции MBSE-MDA-MBT, основные источники и виды моделей, которые используются в этих подходах, методы генерации тестов на основе моделей, известные инструменты для
As gerações BB|X|Y|Z - Comportamento do ConsumidorDaniel Caldas
Este traballho da matéria de Comportamento do Consumidor teve como principal objetivo discutir um pouco sobre as gerações Baby Boomer, X, Y e Z.
Não há um final conclusivo, pois o desenvolvimento das gerações nunca pára, mas procuramos ressaltar tópicos importantes sobre cada geração.
Redes Sociais e o Consumo - Comportamento do ConsumidorDaniel Caldas
Estes slides são de um trabalho de universidade da matéria "Comportamento do Consumidor". A tarefa era fazer um seminário sobre Redes Sociais e Consumo.
As gerações BB|X|Y|Z - Comportamento do ConsumidorDaniel Caldas
Este traballho da matéria de Comportamento do Consumidor teve como principal objetivo discutir um pouco sobre as gerações Baby Boomer, X, Y e Z.
Não há um final conclusivo, pois o desenvolvimento das gerações nunca pára, mas procuramos ressaltar tópicos importantes sobre cada geração.
Redes Sociais e o Consumo - Comportamento do ConsumidorDaniel Caldas
Estes slides são de um trabalho de universidade da matéria "Comportamento do Consumidor". A tarefa era fazer um seminário sobre Redes Sociais e Consumo.
Исследование и разработка алгоритмов распознавания номерных знаковAnatoly Simkin
Статья описывает результаты проведенных исследований алгоритмов распознавания автомобильных номерных знаков. Представлены процедуры распознавания номерных знаков, их особенности и результаты верификации.
The article describes the results of the research of pattern recognition algorithms of license plates. Describes the procedures for license plate recognition, their features and the results of verification.
Detecting logged in user's abnormal activityArvids Godjuks
Detection of abnormal user's activity is currently not performed in most popular Intrusion Detection Systems (IDS). However, it's not so rare when one user credentials are used by another user (for example, when password was stolen or watched). Also there are more and more sensitive data available through Internet.
To prevent this type of attacks we've developed an algorithm of building preferences based user behavior model.
It is using Markov chains to represent user behavioral information. For the time being, an experimental system that allows to analyze such method efficiency and detect irregular access to medical data is under development.
Since systems protected are a set of webservices, popular open source tools such as PHP, MySQL, GraphML, and Flare were used to implent it.
ПРИМЕНЕНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ К ГЕНЕРАЦИИ ТЕСТОВ ДЛЯ АВТОМАТНЫХ ПРОГРАММITMO University
Описан подход к автоматизации тестирования автоматных программ. Для формализации требований спецификации к модели и объектам управления предлагается использовать контракты. Тест описывается как последовательность переходов в модели. Для автоматизации процесса создания кода теста предложен генетический алгоритм, который позволяет находить значения переменных, удовлетворяющие условиям на переходах.
РЕАЛИЗАЦИЯ РАДИАЛЬНО-БАЗИСНОЙ НЕЙРОННОЙ СЕТИ НА МАССИВНО-ПАРАЛЛЕЛЬНОЙ АРХИТЕК...ITMO University
Предлагается распараллеливание в технологии программно-аппаратной архитектуры (CUDA) алгоритма обучения радиально-базисной нейронной сети (RBFNN), основанного на идее последовательной настройки центров, ширины и весов сети, а также идее коррекции весов по алгоритму минимизации квадратичного функционала методом сопряженных градиентов. Приводятся результаты сравнения времени обучения RBFNN на различных центральных и графических процессорах, доказывающие эффективность распараллеливания.
АВТОМАТИЧЕСКИЙ ПОДБОР ПАРАМЕТРОВ ВНЕШНЕЙ СРЕДЫ ПРИ ГЕНЕРАЦИИ АВТОМАТНЫХ ПРОГР...ITMO University
Предлагается новый метод генетического программирования, позволяющий улучшить способ построения функции приспособленности для генетических алгоритмов, проводящих тестирование особей путем симуляции окружающей среды. Метод позволяет автоматически подбирать параметры внешней среды, что приводит к улучшению качества генерируемых особей. В ходе исследований на примере задачи об «Итерированной дилемме узника» было показано, что разработанный подход применим для генерации автоматных программ в задачах, где поведение окружающей среды может быть описано с помощью конечного автомата.
Мы постараемся показать, как любой технический специалист может использовать различные методы машинного обучения в своей повседневной работе. Продемонстрируем специализированные инструменты Classification Learner и Regression Learner для быстрого обучения классификаторов и сравнения точности распознавания. Особе внимание уделим созданию и обучению сверточных нейронных сетей (CNN)
Современный статический анализ кода: что умеет он, чего не умели линтерыcorehard_by
Статический анализ появился почти 40 лет назад. В своём докладе мы хотим показать, чему за это время научились статические анализаторы. Мы рассмотрим различные методики анализа, как они появлялись и какие ошибки можно найти с помощью них. Посмотрим на примеры ошибок, найденных PVS-Studio в Open Source проектах. Поговорим о том, чем статический анализатор отличается от "линтеров" и некоторых других инструментов, а также какие проблемы решает современный статический анализатор C++ кода, помимо собственно анализа кода.
Павел Беликов
@PVS-Studio, Тула, Россия
АВТОМАТИЧЕСКИЙ СИНТЕЗ СИСТЕМЫ УПРАВЛЕНИЯ МОБИЛЬНЫМ РОБОТОМ ДЛЯ РЕШЕНИЯ ЗАДАЧИ...ITMO University
Приводится пример автоматического синтеза системы управления мобильным роботом для решения задачи «Кегельринг». Автоматический синтез системы проводится с использованием генетического алгоритма, при помощи которого определяется структура управляющего автомата.
Similar to ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ–ДЖОНСА, ПОСТРОЕННЫЕ НА ОСНОВЕ КОНЕЧНЫХ АВТОМАТОВ (20)
МЕТОД ПОВЫШЕНИЯ ЧУВСТВИТЕЛЬНОСТИ ВОЛОКОННО-ОПТИЧЕСКОГО ГИДРОФОНАITMO University
Рассмотрен один из методов повышения чувствительности волоконно-оптического гидрофона путем формирования покрытий на чувствительной части волокна. Представлены результаты измерений чувствительности для некоторых типов покрытий. Экспериментальные результаты показали, что с помощью специальных покрытий можно достичь увеличения чувствительности на 25–30 дБ по сравнению с волокном в стандартном полиакрилатном покрытии.
МЕТОДЫ ПОЛУЧЕНИЯ И СВОЙСТВА СЛОЕВ НА ОСНОВЕ АМОРФНОГО УГЛЕРОДА, ОРИЕНТИРУЮЩИ...ITMO University
Представлен обзор работ, посвященных исследованиям слоев на основе аморфного углерода, ориентирующих жидкие кристаллы. Рассматриваются бесконтактные способы создания анизотропии поверхности алмазоподобных и полимероподобных слоев аморфного углерода с помощью пучков ионов и плазмы, а также ультрафиолетового излучения. Анализируется влияние условий обработки поверхности таких слоев на характер ориентации и начальный угол наклона директора нематического жидкого кристалла, а также оптические и динамические свойства устройств на их основе.
ПРИМЕНЕНИЕ ДИСКРЕТНОГО КОСИНУСНОГО ПРЕОБРАЗОВАНИЯ ДЛЯ ПОСТРОЕНИЯ ГОЛОГРАММЫ ...ITMO University
Показаны возможность применения и преимущества дискретного косинусного преобразования для встраивания и восстановления скрытых водяных знаков. Установлено, что метод построения голограммы на основе дискретного косинусного преобразования обеспечивает расширение динамического диапазона и сокращает избыточность при восстановлении изображения водяного знака по сравнению с изображением, восстанавливаемым по методике, основанной на преобразовании Фурье.
ПОГРЕШНОСТИ ИЗГОТОВЛЕНИЯ И УСТАНОВКИ ОТРАЖАТЕЛЬНЫХ ПРИЗМITMO University
Проведен анализ влияния на положение базовой линии (оптической оси) погрешностей изготовления и базирования при сборке отражательных призм. Получено выражение закона преломления в матричной форме, позволившее в результате простого и наглядного вывода получить инвариант декомпланарности. Применив его последовательно к каждой из поверхностей призмы, после последней поверхности получим отклонение выходящего из призмы луча от плоскости главного сечения в виде функции от отклонений нормалей ко всем поверхностям призмы от ее главного сечения, т. е. от декомпланарности нормалей к поверхностям призмы.
СПЕКТРОСКОПИЧЕСКОЕ И ТЕРМОДИНАМИЧЕСКОЕ ИССЛЕДОВАНИЕ ТЯЖЕЛОЙ ВОДЫITMO University
Проведено спектроскопическое и термодинамическое исследование тяжелой воды с целью организации корректного изотопного анализа. Проанализирована зависимость натурального показателя поглощения тяжелой воды α(ν) от ее концентрации. Показано, что в общем случае эта зависимость имеет квадратичный характер с точностью до 0,1 ат.%, а при содержании в тяжелой воде одного из изотопов водорода H или D менее 1 ат.% эта зависимость становится линейной. На основе проведенного анализа экспериментально получены зависимости α(ν) от концентрации тяжелой воды, которые имеют ожидаемый вид.
Рассматриваются особенности экспериментального определения количественных и статистических характеристик виртуальных социальных сообществ в сети Интернет.
Рассмотрены основные проблемы конструирования и изготовления многослойных систем, предназначенных для формирования энергетических характеристик оптических элементов и волнового фронта прошедшего и отраженного излучения.
ИССЛЕДОВАНИЕ ПРОЦЕССОВ ФОРМИРОВАНИЯ ПОЛИМЕРНОГО МИКРОЭЛЕМЕНТА НА ТОРЦЕ ОПТИЧЕ...ITMO University
Рассмотрен процесс формирования самоорганизованных полимерных микроэлементов на торце оптоволокна в ограниченном объеме фотополимера. Исследуются причины возникновения оптических потерь на стыке оптоволокна с микро- элементом.
МЕТОД ДИАГНОСТИКИ ФУНКЦИОНАЛЬНОЙ АКТИВНОСТИ ТКАНЕЙ И ОРГАНОВ БИООБЪЕКТОВITMO University
Для исследования функциональной активности тканей и органов биообъектов предлагается неинвазивный метод ближнепольного высокочастотного зондирования. Рассмотрены физико-биологические основы метода и представлен изме- рительный комплекс для его реализации в клинических условиях. В качестве иллюстрации возможностей метода приведены результаты определения функциональной активности ростковых зон костей у подростков и детей.
КОЛИЧЕСТВЕННАЯ ОЦЕНКА КАЧЕСТВА ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ МЕТОДОВ НЕЧЕТКОЙ ...ITMO University
Рассматриваются пути улучшения и оценки качества изображения методами нечеткой логики, в частности, с помощью известного способа определения границ объекта.
АЛГЕБРАИЧЕСКИЙ МЕТОД ОПРЕДЕЛЕНИЯ ПОЛНОГО МНОЖЕСТВА ПРОСТЫХ РАЗРЕЗОВ В ДВУХПОЛ...ITMO University
Рассматривается задача поиска простых разрезов в двухполюсных структурно-сложных сетях. В основу предлагаемого метода положена алгебраическая модель сети, базирующаяся на алгебре кубических комплексов. Это позволяет предложить эффективную с точки зрения трудоемкости процедуру определения полного множества простых разрезов.
РЕКУРРЕНТНОЕ СИСТЕМАТИЧЕСКОЕ ПОМЕХОЗАЩИТНОЕ ПРЕОБРАЗОВАНИЕ КОДОВ: ВОЗМОЖНОСТИ...ITMO University
Рассматривается проблема формирования матричных компонентов векторноматричного описания двоичных динамических систем помехозащитного преобразования кодов. Показано, что базис представления матричных компонентов зависит от проверочной и образующей матриц помехозащищенного кода, а также от его образующего модулярного многочлена.
ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ–ДЖОНСА, ПОСТРОЕННЫЕ НА ОСНОВЕ КОНЕЧНЫХ АВТОМАТОВ
1. ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ-ДЖОНСА...
Научно-технический вестник Санкт-Петербургского государственного университета
информационных технологий, механики и оптики, 2011, № 2 (72)
40
УДК 004.932.72'1
ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ–ДЖОНСА,
ПОСТРОЕННЫЕ НА ОСНОВЕ КОНЕЧНЫХ АВТОМАТОВ
П.А. Скорынин
Рассматривается модификация метода Виолы–Джонса – одного из самых эффективных методов классификации изо-
бражений. Вместо детекторов прямоугольных особенностей в предложенной модификации используются детекторы
особенностей, построенные на конечных автоматах. Применение автоматов позволяет сократить число уровней в
каскаде и число детекторов на каждом уровне за счет того, что детектор, управляемый автоматом, может обнару-
жить более сложные особенности, нежели простые прямоугольники.
Ключевые слова: классификация изображений, конечные автоматы, машинное обучение.
Введение
Задачи, связанные с компьютерным зрением, были всегда, пока существуют компьютеры. Основным
шагом в создании эффективных алгоритмов в данной области стало применение в них методов машинного
обучения. Одна из наиболее распространенных задач компьютерного зрения – задача о классификации. В
рамках этой задачи требуется определить, принадлежит ли некоторое изображение или его часть к опреде-
ленному классу. Примером такой задачи является задача о локализации лиц на изображении.
Один из примеров применения машинного обучения в задачах компьютерного зрения – метод Вио-
лы–Джонса [1], являющийся одним из наиболее эффективных методов в своем классе. Основная его идея
заключается в том, чтобы вместо одного сложного классификатора использовать каскад сильных класси-
фикаторов, построенных из слабых классификаторов, представляющих собой детекторы особенностей.
Слабые классификаторы составляют основу получаемого сильного классификатора и во многом
определяют его эффективность. Заметим, что прямоугольные особенности не всегда достаточно хорошо
могут описать характерные признаки искомого класса либо для этого требуется линейная комбинация
достаточно большого числа таких особенностей. Таким образом, несмотря на высокую в среднем ско-
рость работы получаемых классификаторов, в худшем случае требуется вычислять большое число осо-
бенностей. В работе Виолы и Джонса [1] для задачи детекции лиц был получен классификатор, в кото-
ром использовалось 4297 детекторов прямоугольных особенностей.
2. П.А. Скорынин
Научно-технический вестник Санкт-Петербургского государственного университета
информационных технологий, механики и оптики, 2011, № 2 (72)
41
Постановка задачи и обоснование метода
Целью данной работы является модификация метода Виолы–Джонса с использованием детекторов
особенностей на основе конечных автоматов. Синтезированный при помощи модифицированного метода
классификатор должен распознавать признаки не хуже классификатора, синтезированного методом Вио-
лы–Джонса.
Существует два способа повышения быстродействия методов компьютерного зрения. Первый –
алгоритмическое улучшение, второй – аппаратная реализация методов. Использование детекторов осо-
бенностей на основе конечных автоматов может дать преимущество в эффективности и позволит умень-
шить число слабых классификаторов в каскаде, поскольку прямоугольные особенности ограничены
формой, а автомат, «двигаясь» по пикселям изображения, может распознавать не только прямоугольные
элементы. При этом конечные автоматы легко реализуются на программируемой логической интеграль-
ной схеме (ПЛИС) [2]. Главное их преимущество – отсутствие сложных операций. Все, что необходимо –
это сравнение и сложение. Поэтому использование конечных автоматов в детекторах особенностей га-
рантирует их легкую реализацию на ПЛИС с минимальными затратами ресурсов.
Описание управляющего автомата
В детекторах особенностей используется конечный автомат Мили. Выходные воздействия такого
автомата генерируются в зависимости от текущего состояния и входного воздействия. В данной работе
используются конечные автоматы Мили из восьми состояний.
В процессе своей работы автомат «двигается» по окну изображения размером 19×19, начиная с
некоторой фиксированной позиции. Находясь в некотором пикселе изображения, автомат «видит» теку-
щий пиксель и еще четырех соседей. По разнице между текущим пикселем и соседями принимается ре-
шение о передвижении на один пиксель в одну из четырех сторон. Кроме того, на каждом шаге отдается
голос «за» или «против» текущего окна.
Работа автомата заканчивается через некоторое число шагов. Опытным путем было выяснено, что
наилучшим числом шагов для заданного размера окна является 10. При «выходе» автомата за край окна
окно сразу отклоняется. Если число голосов «за» превышает пороговое значение Т , рассматриваемое
окно считается принятым. В противном случае оно также отклоняется. Оптимальный порог Т необхо-
димо находить в процессе обучения слабого классификатора.
Входные и выходные воздействия
Для описания входных воздействий применяется тернарная логика. Всего используется четыре
входных переменных – по одной на каждого соседа текущего пикселя. Рассмотрим пример вычисления
входной переменной для одного из соседних пикселей. Если значения в текущем и соседнем пикселях
отличаются не более чем на пороговое значение dТ , то записываем в соответствующую переменную 0.
В противном случае, если значение в текущем пикселе больше, записываем «1», иначе записываем «–1».
Таким образом, получаем четыре значения для четырех соседей. Всего возможных вариантов оказывает-
ся 34
= 81. На рис. 1 показан пример того, как вычисляется входное воздействие.
Рис. 1. Пример вычисления входного воздействия
На выходе автомат осуществляет следующие воздействия:
направление движения (вверх, вниз, влево или вправо);
голос «за»/«против»;
новое состояние (одно из восьми).
3. ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ-ДЖОНСА...
Научно-технический вестник Санкт-Петербургского государственного университета
информационных технологий, механики и оптики, 2011, № 2 (72)
42
Генерация автоматов
Чтобы оценить эффективность детекторов особенностей на конечных автоматах и сравнивать их
между собой, определим следующую фитнесс-функцию:
N
T
m
P
T
kf Np
,
где рТ – число положительных тестов, на которых автомат ответил «Да»; NТ – число отрицательных
тестов, на которых автомат ответил «Нет»; P – общее число положительных тестов, N – общее число от-
рицательных тестов; k и m – весовые коэффициенты. В данной работе k= 3, а m=1. Выбор такой фитнесс-
функции обоснован необходимостью получения низкого уровня ошибок I рода, так как в каскаде ошибки
накапливаются. Поэтому вес правильно определенных положительных тестов выше, чем вес правильно
определенных отрицательных тестов.
Таблица переходов для каждого из восьми состояний автомата генерируется случайно. Среди сге-
нерированных автоматов выбираются только те, уровень ошибок I и II рода которых является приемле-
мым при некоторых пороговых значениях dТ и Т . В данной работе для этих параметров были эмпири-
чески подобраны значения в 5% и 60% соответственно.
После этого запускается процесс последовательного улучшения автомата. Для этого применяется
(1+1) эволюционная стратегия [3]. Мутацией в данной работе является изменение случайно выбранного
перехода. Так как при одной мутации изменяется лишь один из 648 переходов, можно говорить о малом
изменении автомата в ходе мутации.
Сильные классификаторы
Слабым классификатором называется такой классификатор, который правильно классифицирует
изображения с вероятностью более 50%. Усиление слабых классификаторов – подход к решению задачи
классификации путем комбинирования нескольких слабых классификаторов в один сильный. Для этой
задачи может подойти любой алгоритм усиления (boosting). В данной работе для выбора особенностей, а
также для обучения сильного классификатора используется алгоритм AdaBoost [4].
Фройнд и Шапир (Freund, Schapire) в работе [4] доказали, что ошибка обучения у сильного клас-
сификатора приближается к нулю в экспоненциальной зависимости от числа циклов. Кроме того, метод
AdaBoost показал высокую эффективность на практике.
Вычисление классификатора из двух особенностей на основе конечных автоматов требует около
80 команд микропроцессора. Сканирование же простых шаблонов изображений или вычисление просто-
го персептрона [5] требует в 15 раз больше операций на одно окно.
Каскад
В работе [1] описан алгоритм построения каскада классификаторов, который позволяет увеличить
эффективность классификации и сократить время вычислений. Идея алгоритма заключается в том, что
могут быть построены меньшие и, следовательно, более эффективные сильные классификаторы, которые
отклоняют большую часть отрицательных окон при обнаружении почти всех положительных. При этом
простые классификаторы будут отклонять большую часть отрицательных окон до того, как будут ис-
пользованы более сложные классификаторы для достижения низкого уровня ошибок I рода.
Уровни каскада строятся из сильных классификаторов, обученных с помощью AdaBoost. Начиная
с сильного классификатора из одной особенности, эффективный классификатор может быть получен
путем корректировки порога сильного классификатора для минимизации ошибки I рода.
На рис. 2 представлен общий вид процесса классификации – это вырожденное дерево решений,
называемое каскадом.
Т Т Т
F F F
Рис. 2. Общий вид каскада сильных классификаторов
4. П.А. Скорынин
Научно-технический вестник Санкт-Петербургского государственного университета
информационных технологий, механики и оптики, 2011, № 2 (72)
43
Осуществляется последовательное применение классификаторов к изображению:
простые классификаторы отбрасывают часть отрицательных окон, при этом принимая почти все по-
ложительные окна;
положительный отклик первого классификатора запускает вычисление второго, более сложного,
классификатора, положительный отклик второго запускает третий и так далее;
отрицательный отклик на любом этапе приводит к немедленному отклонению окна.
Обучение каскада классификаторов
В большинстве случаев классификаторы с большим числом особенностей достигают более высокого
уровня распознавания и низкого уровня ошибок I рода. В то же время классификаторы с большим числом
особенностей требуют больше времени для вычисления. Это может послужить базой оптимизации, при
которой для оптимизации ожидаемого числа особенностей N, решающих задачу для уровня ошибки II рода
F и уровня распознавания для каскада классификаторов I, варьируются следующие величины: количество
уровней классификатора, количество особенностей ni на каждом уровне, порог на каждом уровне.
Поиск оптимальных значений параметров является трудной задачей. В настоящей работе приме-
няется простой, но демонстрирующий хорошие результаты алгоритм оптимизации.
Структура полученного классификатора
При синтезе детекторов особенностей на конечных автоматах для решения задачи детекции лиц
были использованы те же базы изображений, что и в работах [6] и [7]. На первом этапе работы метода
было синтезировано 250 детекторов особенностей на конечных автоматах. Уровень детекции положи-
тельных примеров у них колеблется от 96% до 99%. Ошибка II рода составляет от 23% до 55%. Полу-
чившиеся детекторы удовлетворяют требованиям для слабых классификаторов.
Для обучения каскада были выбраны следующие значения параметров: максимально допустимый
уровень ложных срабатываний – 50% на слой, минимально допустимый уровень обнаружения – 99% на
слой. При таких параметрах обучения максимальная общая ошибка II рода в 0,1% может быть достигну-
та каскадом, состоящим всего из 10 слоев.
В результате работы обучающего алгоритма был построен каскад сильных классификаторов, со-
стоящий из 10 слоев. Первый слой состоит из одного детектора особенностей, который отсеивает более
75% отрицательных окон. Уровень распознавания первого слоя близок к 100%. Второй слой состоит уже
из трех детекторов. После него отсеиваются более 90% отрицательных окон при уровне распознавания
по-прежнему близкому к 100%. Следующие слои представляют собой линейные комбинации слабых
классификаторов и включают в среднем по 6 детекторов. Общее число использованных в каскаде слабых
классификаторов равно 52.
Тестирование получившегося классификатора и сравнение с аналогами
Для тестирования классификатора использовалась база изображений лиц CMU (Carnegie Mellon
University) [7]. Та же база использовалась и для тестирования классификатора в работе Виолы и Джонса
[1]. База изображений включает в себя 472 изображений лиц и 23573 изображений других типов (не лиц).
При тестировании использовались те данные, которые не использовались при обучении. Та же методика
использовалась Виолой и Джонсом.
a б
Рис. 3. ROC-кривая для классификатора, построенного: оригинальным методом Виолы-Джонса (а);
на детекторах особенностей на конечных автоматах (б)
5. ДЕТЕКТОРЫ ОСОБЕННОСТЕЙ В МЕТОДЕ ВИОЛЫ-ДЖОНСА...
Научно-технический вестник Санкт-Петербургского государственного университета
информационных технологий, механики и оптики, 2011, № 2 (72)
44
На рис. 3 показаны для сравнения ROC-кривые [8] для классификаторов, построенных в работе
Виолы и Джонса и в данной работе.
В таблице приведены значения уровня распознавания для некоторых значений числа ложных сра-
батываний.
Число ложных
срабатываний
10 31 50 65 78 95 110 167 422
Автоматы 81,5% 87,5% 89,9% 90,9% 91,4% 91,7% 92,0% 92,4% 93,3%
Виола-Джонс 78,3% 85,2% 88,8% 89,8% 90,1% 90,8% 91,1% 91,8% 93,7%
Таблица 1. Уровень распознавания при различном числе ложных срабатываний
Заключение
Результаты проделанной работы:
построены слабые классификаторы на основе конечных автоматов;
разработан и реализован метод автоматического синтеза слабых классификаторов на конечных авто-
матах;
проведен анализ полученных результатов, который показал, что синтезированный классификатор не
уступает по качеству классификатору, построенному методом Виолы–Джонса, но при этом обладает
более высокой скоростью работы;
реализован метод построения каскада классификаторов на основе детекторов особенностей на конеч-
ных автоматах.
В дальнейшем планируется разработка метода автоматического преобразования получаемого
классификатора в язык описания схем и реализация полученного классификатора на реальном аппарат-
ном обеспечении. Для достижения высокой надежности также возможно комбинирование аппаратной
реализации метода с программной реализацией других методов: области, выделенные классификатором
на автоматах, следует подвергать дополнительной проверке программными методами. При этом сущест-
венно сократится время программной обработки.
Кроме того, одним из направлений в развитии метода является усовершенствование структуры ав-
томата в детекторах особенностей. Применение сокращенных таблиц [9] и увеличение числа состояний
может помочь улучшить поведение автомата. Также существует возможность применять дополнитель-
ные фильтры над исходным изображением для того, чтобы подчеркнуть на нем некоторые особенности
или, наоборот, сгладить шумы. При этом требуется, чтобы любые модификации не уменьшали скорость
метода и не усложняли процесс реализации на ПЛИС.
Литература
1. Jones M. Robust Real-time Object Detection // Journal of Computer Vision. – 2004. – № 57(2). – P. 137–154.
2. Стешенко В.Б. ПЛИС фирмы Altera: элементная база, система проектирования и языки описания
аппаратуры. – М.: Додэка-XXI, 2007.
3. Beyer H.-G. Evolution strategies – A comprehensive introduction // Natural Computing: an international
journal. – 2002. – № 1. – P. 3–52.
4. Schapire R.E. Boosting the margin: A new explanation for the effectiveness of voting methods // Ann. Stat.
– 1998. – № 26(5). – P. 1651–1686.
5. Kanade T. Neural network-based face detection // Patt. Anal. Mach. Intell. – 1998. – № 20. – P. 22–38.
6. Sung K.-K. Learning and Example Selection for Object and Pattern Detection: PhD thesis: 13.03.1996.
Massachusetts Institute of Technology. 1996.
7. Heisele B. Face Detection in Still Gray images / A.I. memo AIM-1687, Artificial Intelligence Laboratory,
MIT. – 2000.
8. Fawcett T. An introduction to ROC analysis // Pattern Recognition Letters. – 2006. – № 27. – P. 861–874.
9. Точилин В.Н. Метод сокращенных таблиц для генерации автоматов с большим числом входных
воздействий на основе генетического программирования: Магистерская диссертация. – СПб:
СПбГУ ИТМО, 2008. – 130 с.
Скорынин Павел Александрович – Санкт-Петербургский государственный университет информационных
технологий, механики и оптики, студент, pavel.skorynin@gmail.com