УДК 004.932.72'1
ОПТОЭЛЕКТРОННЫЕ СИСТЕМЫ: ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ РАСПОЗНАВАНИЯ ИЗОБРАЖЕНИЙ
Сергей Александрович Кравец
Новосибирский государственный технический университет, 630073, Россия, г. Новосибирск, пр. К. Маркса, 20, аспирант, тел. (383)346-26-23, e-mail: santoserg@yandex.ru
Владимир Николаевич Легкий
Новосибирский государственный технический университет, 630073, Россия, г. Новосибирск, пр. К. Маркса, 20, доктор технических наук, доцент, зав. кафедрой автономных информационных и управляющих систем, тел. (383)346-26-23, e-mail: sniios@mail.ru
Владимир Александрович Шумейко
Новосибирский государственный технический университет, 630073, Россия, г. Новосибирск, пр. К. Маркса, 20, старший преподаватель кафедры автономных информационных и управляющих систем, тел. (383)346-26-23, e-mail: shumeyko@corp.nstu.ru
Рассмотрены пути решения задачи обнаружения объекта интереса. Описана концепция сверточных нейронных сетей, которые предполагается использовать в ИК системах летательных аппаратов. Данный метод основан на алгоритмах машинного обучения, особенность которого заключается в выделении признаков из изображения.
Ключевые слова: методы распознавания, сверточные нейронные сети, ИК системы.
OPTOELECTRONIC SYSTEMS: METHODS OF OBJECT RECOGNITION
Sergey А. Kravets
Novosibirsk State Technical University, 630073, Russia, Novosibirsk, 20 K. Marksa Prospekt, graduate student, tel. (383)346-26-23, e-mail: santoserg@yandex.ru
Vladimir N. Legkiy
Novosibirsk State Technical University, 630073, Russia, Novosibirsk, 20 K. Marksa Prospekt, D. Sc., associate Professor, Head of the Department Autonomous Information and Control Systems, tel. (383)346-26-23, e-mail: sniios@mail.ru
Vladimir A. Shumeyko
Novosibirsk State Technical University, 630073, Russia, Novosibirsk, 20 K. Marksa Prospekt, Senior Lecturer of the Department Autonomous Information and Control Systems, tel. (383)346-26-23, email: sniios@mail.ru
This article describes the main principles for the solution of task of detecting object. The concept of convolutional neural networks to be used in the IR systems of aircraft. This method is based on machine learning algorithms, a feature of which consists in the allocation of signs of images.
Key words: methods of object recognition, convolutional neural network, IR systems.
Известно несколько подходов к классификации объектов из заданной группы, основанных на разных методах обработки изображений.
Корреляционный метод реализует линейный пространственный фильтр. В основе данного метода лежит выбор некоторого участка изображения в качестве эталонного, который представляет собой объект анализа. При перемещении данного эталона по изображению вычисляется матрица корреляции. Вычислительная сложность данного метода растет экспоненциально от количества степеней свободы объекта анализа, что и представляет основную сложность. Также, из-за непосредственного использования полутоновых значений, данный метод может быть неустойчивым при сильном изменении интенсивности изображения.
Можно отметить методы, использующие извлеченные из изображения признаки. SURF [1] (Speeded up Robust Features) представляет собой дескриптор, который проводит поиск особых точек и строит их описание, инвариантное к изменению масштаба и вращению. Особые точки определяются с помощью матрицы Гессе, что и обеспечивает инвариантность относительно поворота. Для инвариантности при изменении масштаба используются фильтры различных размеров. HOG (Histogram of Oriented Gradients) [2] алгоритм основан на разделении изображения на заданное число областей и подсчете в них преобладающего направления градиентов. Для использования указанных дескрипторов в задаче классификации возможно использование методов машинного обучения. Например, метода опорных векторов (SVM - support vector machines) [3]. Принцип работы SVM состоит в линейном разделении гиперплоскостью векторов признаков в многомерном пространстве. Оптимальная разделяющая гиперплоскость - плоскость, расстояние от которой до ближайшего вектора максимально с любой стороны. Ближайшие к плоскости векторы, на которых она построена, являются опорными векторами.
Из методов машинного обучения в качестве перспективного является применение архитектуры сверточной нейронной сети. Сверточная нейронная сеть (англ. convolutional neural network, CNN) — специальная архитектура компьютерных нейронных сетей, предложенная Яном Ле Куном для распознавания изображений (рис. 1). Данный метод достаточно устойчиво решает задачу классификации объектов на изображении с искажениями вида: поворот, сдвиг, масштабирование и деформация [4].
Для дискретного двумерного варианта, например для изображения, свертка выглядит следующим образом:
т-1 m-1 m -1 m -1
Xij=SS waby (i +a)( j +b) Xij = E E waby (i + a)( j + b), (1)
a = 0 b = 0 a = 0 b = 0
где i, j - координаты пикселя "сворачиваемого" изображения, а, b-координаты пикселя в "сворачивающем" изображении.
Данная формула фактически отображает обычную фильтрацию изображения, где Wab ™аъ - фильтр. В сверточном слое таких фильтров находится несколько. Если входное изображение полноцветное, то каждый из RGB слоев сво-
рачивается с фильтром, а затем результат суммируется. Очевидно, что суммирование карт признаков (то есть выходов с предыдущих слоев) так же используется для более глубоких сверточных слоев.
Рис. 1. Архитектура одной из первых версий сверточной нейронной сети
Слой субдискретизации (пулинг, англ. Pooling) предназначен для сокращения размерности изображений, которые получаются после слоя фильтрации. Пулинг - это операция, при которой из 4 пикселей выбирается максимальный (рис. 2) или же выполняется процедура усреднения. Помимо сокращения размерности, эта операция призвана как бы "выбирать" самые заметные, самые максимальные части карты признаков. После пулинг слоя к карте признаков применяется некоторая нелинейная функция, например такие функции, как tanh, softmax или ReLu.
X
1 2 5 6
3 4 7 8 max-pool 4 8
9 1 4 5 9 7
2 3 6 7
Рис. 2. Принцип вычислений в max-pool слое
Полносвязный слой идет после комбинации сверточных и пулинг слоев. Полносвязный слой это обычная нейронная сеть прямого распространения. Назначение полносвязного слоя - классификация. Дело в том, что когда изображение проходит через комбинацию сверточных и пулинг слоев, то в результате этого похождения происходит выбор определенных признаков. Полносвязный слой предназначен классифицировать эти отобранные признаки. Но, по сути,
вместо полносвязного слоя можно поставить любой классификатор, такой как SVM или регрессионный.
Для данной архитектуры, которую иногда относят к методам глубинного обучения (англ. Deep Learning), характерна такая особенность, как требование большого набора данных для настройки весовых коэффициентов.
Процесс настройки коэффициентов провоодится по алгоритму обратного распространения ошибки, который на текущий момент является одним из распространенных методов обучения нейронной сети. Данная методика заключается в вычислении сигнала прямого распространения сети, последующего определения функции потерь, вычисления сигнала обратного распространения для определения тех весовых значений, которые оказали большее влияние на полученную функцию потерь. После выполнения данных операций происходит обновление весовых коэффициентов нейронной сети. Для определения функции потерь обычно используют выражение среднеквадратичной ошибки (СКО):
E = 2 (t-О(w ))2
(2)
В формуле (2) Е - это ошибка распознавания для текущего примера, t - это желаемое значение отклика системы, о(м') - выходное значение сети. В итоге сама задача настройки весовых коэффициентов сводится к процессу минимизации значения ошибки распознавания. Весовые коэффициенты нейронной сети обновляются по следующему правилу:
w
: w - q
dE dw
(3)
В формуле (3) Wnew - новое значение весового коэффициента, Wi - начальное значение весового коэффициента, п - коэффициент скорости обучения.
Пример объекта показан на рис. 3. На рис. 4 приведен пример архитектуры нейронной сети, на рис. 5-7 показан пример отклика в сверточных слоях в результате процесса обработки изображения и принятия решения.
Рис. 3. Пример объекта, используемого для демонстрации процесса вычисления
в сверточных слоях
максимального значения
максимального значения
максимального значения Полносвязный слой
отсутствует присутствует
Рис. 4. Архитектура сверточной нейронной сети, выбранной для демонстрации процесса вычисления в сверточных слоях
а)
У ■ ^
_____ь ** к№
б)
Рис. 5. Графическое представление процесса вычислений в первом слое: а) в сверточном слое; б) в тах-роо1 слое
а) б)
Рис. 6. Графическое представление процесса вычислений во втором слое:
а) в сверточном слое; б) в тах-роо1 слое
а) б)
Рис. 7. Графическое представление процесса вычислений в третьем слое: а) в сверточном слое; б) в max-pool слое
В работах по распознаванию в качестве объектов интереса для исследований используются данные с набором изображений лиц. Информация в данном типе набора данных представлена в виде RGB изображений, имеющих цветовую информацию. Однако, объекты интереса могут быть другими, как и информ ация, получаемая с камеры. Так, в качестве примера, ниже представлены изображения в ИК диапазоне 8-12 мкм, рис. 8. В качестве объектов интереса выбраны легковые автомобили. В качестве алгоритма распознавания заданных объектов применен max-margin алгоритм [5], который использует признаки, извлеченные с помощью нейронной сети, состоящей только из сверточных слоев.
Рис. 8. Результат оценки возможности распознавания и обнаружения нейронной сети
Для улучшения обнаружительной способности данной нейронной сети можно использовать следующие пути: увеличение размеров обучающей выборки, улучшение алгоритмов по обогащению обучающей выборки, усложнение архитектуры нейронной сети.
С учетом случайных условий получения изображения (с искажениями вида: поворот, сдвиг, масштабирование и деформация) при решении задач классификации объектов представляется целесообразным провести сравнение нейросете-вых методов с методами распознавания, основанными на ориентации градиента
яркости [6], а далее разработать интегральный алгоритм обработки изображений на основе двух указанных подходов.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. SURF: Speeded Up Robust Features / Herbert Bay, Tinne Tuytelaars, Luc Van Gool // Computer Vision and Image Understanding (CVIU).- 2008.- V 110, №. 3.- P 346-359.
2. Dalal N., Triggs B. Histograms of Oriented Gradients for Human Detection // Computer Vision and Pattern Recognition.- 2005.- V 1.-P. 886-893.
3. Хайкин С. Нейронные сети: полный курс. 2-е изд. - М.: Вильямс, 2006.
4. Gradient-Based Learning Applied to Document Recognition / Y LeCun, L. Bottou, YBen-gio, I» Haffner // Proc. of the IEEE. - 1998. - V86, № 11.-P2278-2324.
5. King Davis E. Max-margin object detection [Электронный ресурс] / Cornell University Library - Англ. -https://arxiv.org/abs/1502.00046.
6. Борисова И.В. Сегментация и автосопровождение объектов на сложном подстилающем фоне // Оптический журнал.- 2011.- т.78, №5.- С.27-30.
© С. А. Кравец, В. Н. Легкий, В. А. Шумейко, 2017