Пару слов о распознавании образов. Обработка и распознавание изображений (курс лекций, Л.М. Местецкий)

Распознавание изображений является важным и интересным разделом компьютерной науки, имеющим самые различные применения в реальной жизни. Так, распознавание изображений может применяться для задачи распознавания автомобильных номеров, идентификации наличия пешеходов на дороге, поиска и распознавания лиц на фотографиях, системах для управления каким-либо устройством жестами, проведения автоматического контроля качества на производстве - и это только очень небольшое подмножество практических применений распознавания изображений. Поэтому неудивительно, что интерес исследователей в области computer science и искусственного интеллекта к распознаванию изображений появился еще в 60-х годах 20 века и эта область науки активно развивается до сих пор.

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

Распознавание изображений обычно является сложной задачей для компьютерного алгоритма. Это связано, в первую очередь, с высокой вариативностью изображений отдельных объектов. Так, задача поиска автомобиля на изображении является простой для человеческого мозга, который способен автоматически идентифицировать у объекта наличие важных для автомобиля признаков (колеса, специфическая форма) и при необходимости «достаивать» картинку в воображении, представляя недостающие детали, и крайне сложной для компьютера, так как существует огромное количество разновидностей автомобилей разных марок и моделей, имеющих во многом разную форму, кроме того, итоговая форма объекта на изображении сильно зависит от точки съемки, угла, под которым он снимается и других параметров. Также немаловажную роль играет освещение, которое оказывает влияние на цвет полученного изображения, а также может делать незаметными или искажать отдельные детали.

Таким образом, основные трудности при распознавании изображений вызывают:

  • · Вариативность предметов внутри класса
  • · Вариативность формы, размера, ориентации, положения на изображении
  • · Вариативность освещения

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

Первые исследования в области распознавания изображений были опубликованы в 1963 году Л.Робертсом в статье «Machine Perception Of Three-Dimensional Solids», где автор сделал попытку абстрагироваться от возможных изменений в форме предмета и сконцентрировался на распознавании изображений простых геометрических форм в условиях различного освещения и при наличии поворотов. Разработанная им компьютерная программа была способна идентифицировать на изображении геометрические объекты некоторых простых форм и формировать их трехмерную модель на компьютере.

В 1987 году Ш.Улманом и Д.Хуттенлохером была опубликована статья «Object Recongnition Using Alignment» где они также сделали попытку распознавания объектов относительно простых форм, при этом процесс распознавания был организован в два этапа: сначала поиск области на изображении, где находится целевой объект, и определение его возможных размеров и ориентации (“alignment”) с помощью небольшого набора характерных признаков, и затем попиксельное сравнение потенциального изображения объекта с ожидаемым.

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

Одним из важных направлений в дальнейшем развитии распознавания изображений стало распознавание изображений на основе идентификации контуров. Во многих случаях именно контуры содержат большую часть информации об изображении, и в то же время рассмотрение изображения в виде совокупности контуров позволяет его существенно упростить. Для решения задачи поиска контуров на изображении классическим и наиболее известным подходом является детектор Кэнни (Canny Edge Detector), работа которого основана на поиске локального максимума градиента .

Другим важным направлением в области анализа изображений является применение математических методов, таких как частотная фильтрация и спектральный анализ. Данные методы применяются, например, для сжатия изображений (JPEG сжатие) или повышения его качества (фильтр Гаусса). Однако, поскольку данные методы не связаны непосредственно с распознаванием изображений, более подробно они здесь рассматриваться не будут.

Еще одна задача, которая часто рассматривается в связи с задачей распознавания изображений - это задача сегментации. Основная цель сегментации - это выделение на изображении отдельных объектов, каждый из которых затем может быть отдельно изучен и проклассифицирован. Задача сегментации значительно упрощается, если исходное изображение является бинарным - то есть состоит из пикселей только двух цветов. В этом случае задача сегментации часто решается с применением методов математической морфологии . Суть методов математической морфологии заключается в представлении изображения как некоторого множества двоичных значений и применении к этому множеству логических операций, основные среди которых это перенос, наращивание (логическое сложение) и эрозия (логическое умножение). С применением данных операций и их производных, таких как замыкание и размыкание, появляется возможность, например, устранить шум на изображении или выделить границы. Если подобные методы применяются в задаче сегментации, то наиболее важной их задачей становится как раз таки задача устранения шума и формирования на изображении более-менее однородных участков, которые затем легко найти с помощью алгоритмов, аналогичных поиску связных компонент в графе - это и будут искомые сегменты изображения.

Что касается сегментации RGB-изображений, то одним из важных источников информации о сегментах изображения может стать его текстура. Для определения текстуры изображения часто применяется фильтр Габора , который был создан в попытках воспроизвести особенности восприятия текстур человеческим зрением. В основе работы данного фильтра лежит функция частотного преобразования изображения.

Другое важное семейство алгоритмов, используемых для распознавания изображений - это алгоритмы, основанные на поиске локальных особенностей. Локальные особенности представляют собой некоторые хорошо различимые области изображения, которые позволяют соотнести изображение с моделью (искомым объектом) и определить, соответствует ли данное изображение модели и, если соответствует, определить параметры модели (например, угол наклона, примененное сжатие и т.д.). Для качественного выполнения своих функций локальные особенности должны быть устойчивы к афинным преобразованиям, сдвигам и т.д. Классическим примером локальных особенностей являются углы, которые часто присутствуют на границах различных объектов. Наиболее популярным алгоритмом для поиска углов является детектор Харриса .

В последнее же время все большей популярностью пользуются методы распознавания изображений, основанные на нейронных сетях и глубоком обучении. Основной расцвет этих методов наступил после появления в конце 20 века сверточных сетей (LeCun, ), которые показывают значительно лучшие результаты в распознавании изображений по сравнения с остальными методами. Так, большая часть лидирующих (и не только) алгоритмов в ежегодном соревновании по распознаванию изображений ImageNet-2014 использовала в том или ином виде сверточные сети.

РАСПОЗНАВАНИЕ НЕДЕФОРМИРУЕМЫХ ТРЕХМЕРНЫХ ОБЪЕКТОВ НА ИЗОБРАЖЕНИЯХ ПО КОНТУРАМ

Студент 545 гр. кафедры системного программирования СПбГУ, nikolai. *****@***com

Аннотация

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

Введение

Задача распознавания объектов возникает во многих сферах, например, в медицинских приложениях для распознавания типа кости на рентгене, или в криминалистической сфере для сличения объекта на изображении с объектом из базы данных , например распознавание лиц или машин.

Существующие методы рассматривают на два типа изменений модели: недеформирующие изменения и деформирующие. Первый вид изменений предполагает вращение, сдвиг и масштабирование модели, а второй – еще и деформации самой модели, таких как, например, изменение позы человеческого тела или мимики.

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

Существующие решения

Задача распознавания объекта по его контуру в общем виде решается либо параметризацией контура и дальнейшим подсчетом функции схожести по двум параметризацией, либо подсчетом некоторого дескриптора контура (например, набор гистограмм) и сравнивая уже их.

В подходе Belongie и др. вводятся контексты формы контура и сравниваются уже они . Выбирается равномерно n точек контура, из каждой точки пускаются отрезки во все остальные точки выборки и строится гистограмма по направлениям и длинам этих отрезков. Набор всех таких гистограмм и является контекстом формы контура. Сравнение двух контуров проходит накладыванием одного набора на другой со всевозможными смещениями, находя наилучший поворот одного контура к другому. Сложность этого подхода O(n3).

Подход Sebastian и др. основан на редакционном расстоянии, введенном ранее для строк . Для каждой точки контура известно расстояние заранее определенной точки (начала контура) и кривизна в данной точке. При сравнении двух контуров функция схожести считается путем накладывания одного контура на другой и подсчетом разницы кривизны с возможностью выбрасывания кусков контуров с начислением штрафов.

Для сравнения контуров также можно использовать понятие граф шоков, как в подходе Macrini и др. . По контуру строится его скелет в виде дерева как набор точек равноудаленных от пар точек контура. Узлами этого дерева и являются шоки, они бывают разных типов и силы. Сравнивая уже эти графы, можно сравнить сами контуры.

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

Предлагаемый подход

На входном изображении объекта, полученном с помощью камеры с известными параметрами без дисторсии, необходимо сначала выделить контур объекта, используя градиент изображения. Затем из точек контура оставить только особые и запомнить лишь направление градиента в этих точках. Затем отфильтровать некоторым способом полученные точки и уже их использовать при сравнении контуров.

Выделение контуров

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

https://pandia.ru/text/78/196/images/image002_10.png" width="198" height="207 src=">

Выделение особых точек

Среди точек полученного градиента изображения оставляем только те, норма градиента в которых больше определенного порога, таким образом, получая точки контура. Для этих точек градиента оставим только угол между направлением градиента и осью Ох. Если угол α больше π, то запишем вместо него α - π, потому что градиент может быть направлен в противоположные стороны при различных фонах. Отказ от использования информации о норме градиента позволяет использовать точки контура, находящиеся в тени, тем же образом, каким точки контура в освещенной части объекта. Далее бинаризуем посчитанные углы в n бинов, то есть если угол α,: 0 < α < π / n, тогда он попадает в первый бин, а если α,: π / n < α < π * 2 / n, тогда во второй и так далее. Затем из точек удаляем те, для которых неверно, что направление в этой точке является самым частым направлением в некоторой небольшой окрестности точки. Это обеспечивает локальную сонаправленность точек контура и чистит контур от шума. Оставшиеся точки (направление и координаты) и будут использоваться для сравнения двух контуров

Создание базы по трехмерным моделям

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

Рис. 3 Пример трехмерной модели в ракурсе повернутом по оси Оу на 20 градусов и по оси Ох на 10 градусов от фронтального.

Функция схожести и ее подсчет

Назовем каждый контур из базы образцом модели в некотором ракурсе и масштабе. Сдвинем координаты точек в образцах так, чтобы абсцисса самой левой точки была нулем, а ордината самой верхней точки была тоже нулём. Тогда для входного изображения I в точке с и образца T можно ввести функцию схожести

где P – это множество точек образца, О – изображение, соответствующее образцу, ori(O, r) – бинаризованое направление градиента изображения О в точке r. Функция основана на работе Steger и подобная использовалась в работе Farhan . Проблема состоит в том, что такая функция совершенно не устойчива к изменениям, поэтому для каждой точки образца необходимо рассматривать некоторую окрестность R (например, квадрат 7х7 пикселей) вокруг прикладываемой точки:

DIV_ADBLOCK44">

0 " style="border-collapse:collapse;border:none">

Результат теста на размытие зависит от размера ядра размытия и его силы. Чем больше – тем ниже процент. При преграждении процент распознавания зависит от того какая часть объекта перекрыта (много ли на ней точек контура).

Рис. 4 График схожести тестового примера по базе (по осям – углы вращения по х и по у). Он показывает, что в области правильного ракурса явный пик функции, который можно найти быстрее, чем перебором всех ракурсов.

Литература

1. Belongie, S.; Malik, J.; Puzicha, J., "Shape matching and object recognition using shape contexts," Pattern Analysis and Machine Intelligence, IEEE Transactions on , vol.24, no.4, pp.509,522, Apr 2002

2. Sebastian, T. B.; Klein, P. N.; Kimia, B. B., "On aligning curves," Pattern Analysis and Machine Intelligence, IEEE Transactions on , vol.25, no.1, pp.116,125, Jan. 2003

3. Macrini, D.; Shokoufandeh, A.; Dickinson, S.; Siddiqi, K.; Zucker, S., "View-based 3-D object recognition using shock graphs," Pattern Recognition, 2002. Proceedings. 16th International Conference on , vol.3, no., pp.24,28 vol.3, 2002

4. Farhan U.; Shun"ichi K.; Satoru I., “Object Search Using Orientation Code Matching”, IAPR Workshop on Machine Vision Applications, Nov. 28-30, 2000

5. C. Steger, “Occlusion Clutter, and Illumination Invariant Object Recognition,” in International Archives of Photogrammetry and Remote Sensing, 2002.

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

Рассмотрим пример распознавания простых объектов на основе набора признаков. При реализации метода в качестве основных будем использовать две функции bwlabel и imfeature, которые встроены в приложение Image Processing Toolbox.

Сначала считаем исходное тестовое изображение в рабочее пространство Matlab

L=imread("test_image.bmp");

и визуализируем его

Figure, imshow(L);

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

Функции bwlabel и imfeature в качестве исходных данных используют полутоновые двумерные изображения. Поскольку изображение test_image.bmp было сформировано как бинарное, но сохранено в формате bmp, то из трехмерной матрицы изображения L, которая содержит три идентичных цветовых шара, необходимо выделить один из шаров, например, первый.

L=L(:,:,1);

Такого же результата можно достичь, используя функцию rgb2gray. Таким образом, матрица L представляет бинарное двумерное изображение.

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

Size(L);

Далее необходимо локализировать, т.е. определить расположение объектов на изображении. Для этого будем использовать функцию bwlabel, которая ищет на бинарном изображении связные области пикселей объектов и создает матрицу, каждый элемент которой равен номеру объекта, которому принадлежит соответствующий пиксель исходного изображения. Параметр num дополнительно возвращает количество объектов, найденных на исходном бинарном изображении.

Bwlabel(L,8);

Кроме того, в функции bwlabel указывается еще один параметр – значение связности.

Далее приступаем к вычислению признаков объектов, которые отмечены в матрице номеров объектов L. Рассмотрим этот вопрос более подробно. Значения признаков возвращаются в массиве структур feats. Как было отмечено ранее, при распознавании объектов могут использоваться любые наборы признаков.

В рамках этого примера применим наиболее наглядный статистический подход к классификации объектов на основе морфометрических признаков. К основным морфометрическим признакам относятся коэффициенты формы:

  1. ‘solidity’ – коэффициент выпуклости: равен отношению площади к выпуклой площади объекта. Представляется числом в диапазоне (0,1].
  2. ‘extent’ – коэффициент заполнения: равен отношению площади объекта к площади ограничивающего прямоугольника. Представляется числом в диапазоне (0,1].
  3. ‘eccentricity’ – эксцентриситет эллипса с главными моментами инерции, равными главным моментам инерции объекта. Представляется числом в диапазоне (0,1].

Поскольку в данном примере используется тестовое изображение объектов простой формы, то из перечисленных признаков в программной реализации будем использовать только коэффициент заполнения ‘extent’. Как было сказана ранее, параметр ‘extent’ определяется отношением площади объекта к площади ограничивающего прямоугольника. Для круга этот параметр будет равен , а для квадрата – 1. Но эти данные приведены для случая, когда круг и квадрат имеют идеальную форму. Если форма круга или квадрата искажена, то значения параметра ‘extent’ также могут отличаться от приведенных выше значений. Поэтому коэффициенты формы могут вычисляться с некоторой погрешностью. Таким образом, вводя некоторую погрешность в коэффициент формы, допускаются некоторые ее искажения. Причем значение погрешности пропорционально степени искажения. Однако слишком большое значение погрешности может привести к неправильному распознаванию объектов.

Дополнительно также будем определять центр масс объекта с помощью опции ‘centroid’.

Feats=imfeature(L,"Centroid","Extent",8);

Перепишем значения признаков из массива структур feats в отдельные массивы:

Extent=zeros(num); CentX=zeros(num); CentY=zeros(num); for i=1:1:num; Extent(i)=feats(i).Extent; CentX(i)=feats(i).Centroid(1); CentY(i)=feats(i).Centroid(2); end;

Также в рамках этого примера реализуем следующее. Для наглядности, каждый распознанный объект будет подписан. Для реализации этого возможны различные подходы. Один самых простых – это помещать около распознанного объекта изображение с его названием. Для этого прежде нужно сформировать изображения с названиями объектов и считать их в рабочее пространство Matlab. Поскольку на тестовом изображении присутствуют только круги и квадраты, то сформирует и считаем соответствующие изображения.

Krug=imread("krug.bmp"); Kvadrat=imread("kvadrat.bmp"); d=0.15; % погрешность коэффициента формы for i=1:num; L(round(CentY(i)):round(CentY(i))+1,round(CentX(i)):round(CentX(i))+1)=0; if (abs(Extent(i)-0.7822)

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

Figure, imshow(L);

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

Выполнен обзор нейросетевых методов, используемых при распознавании изображений. Нейросетевые методы - это методы, базирующиеся на применении различных типов нейронных сетей (НС). Основные направления применения различных НС для распознавания образов и изображений:

  • применение для извлечение ключевых характеристик или признаков заданных образов,
  • классификация самих образов или уже извлечённых из них характеристик (в первом случае извлечение ключевых характеристик происходит неявно внутри сети),
  • решение оптимизационных задач.

Архитектура искусственных НС имеет некоторое сходство с естественными нейронными сетями. НС, предназначенные для решения различных задач, могут существенно различаться алгоритмами функционирования, но их главные свойства следующие .

НС состоит из элементов, называемых формальными нейронами, которые сами по себе очень просты и связаны с другими нейронами. Каждый нейрон преобразует набор сигналов, поступающих к нему на вход в выходной сигнал. Именно связи между нейронами, кодируемые весами, играют ключевую роль. Одно из преимуществ НС (а так же недостаток при реализации их на последовательной архитектуре) это то, что все элементы могут функционировать параллельно, тем самым существенно повышая эффективность решения задачи, особенно в обработке изображений. Кроме того, что НС позволяют эффективно решать многие задачи, они предоставляют мощные гибкие и универсальные механизмы обучения, что является их главным преимуществом перед другими методами (вероятностные методы, линейные разделители, решающие деревья и т.п.). Обучение избавляет от необходимости выбирать ключевые признаки, их значимость и отношения между признаками. Но тем не менее выбор исходного представления входных данных (вектор в n-мерном пространстве, частотные характеристики, вэйвлеты и т.п.), существенно влияет на качество решения и является отдельной темой. НС обладают хорошей обобщающей способностью (лучше чем у решающих деревьев ), т.е. могут успешно распространять опыт, полученный на конечном обучающем наборе, на всё множество образов.

Опишем применение НС для распознавания изображений, отмечая возможности применения для распознавания человека по изображению лица.

1. Многослойные нейронные сети

Архитектура многослойной нейронной сети (МНС) состоит из последовательно соединённых слоёв, где нейрон каждого слоя своими входами связан со всеми нейронами предыдущего слоя, а выходами - следующего. НС с двумя решающими слоями может с любой точностью аппроксимировать любую многомерную функцию. НС с одним решающим слоем способна формировать линейные разделяющие поверхности, что сильно сужает круг задач ими решаемых, в частности такая сеть не сможет решить задачу типа “исключающее или”. НС с нелинейной функцией активации и двумя решающими слоями позволяет формировать любые выпуклые области в пространстве решений, а с тремя решающими слоями - области любой сложности, в том числе и невыпуклой. При этом МНС не теряет своей обобщающей способности. Обучаются МНС при помощи алгоритма обратного распространения ошибки, являющегося методом градиентного спуска в пространстве весов с целью минимизации суммарной ошибки сети. При этом ошибки (точнее величины коррекции весов) распространяется в обратном направлении от входов к выходам, сквозь веса, соединяющие нейроны.

Простейшее применение однослойной НС (называемой автоассоциативной памятью) заключается в обучении сети восстанавливать подаваемые изображения. Подавая на вход тестовое изображение и вычисляя качество реконструированного изображения, можно оценить насколько сеть распознала входное изображение. Положительные свойства этого метода заключаются в том, что сеть может восстанавливать искажённые и зашумленные изображения, но для более серьёзных целей он не подходит.

Рис. 1. Многослойная нейронная сеть для классификации изображений. Нейрон с максимальной активностью (здесь первый) указывает принадлежность к распознанному классу.

МНС так же используется для непосредственной классификации изображений – на вход подаётся или само изображение в каком-либо виде, или набор ранее извлечённых ключевых характеристик изображения, на выходе нейрон с максимальной активностью указывает принадлежность к распознанному классу (рис. 1). Если эта активность ниже некоторого порога, то считается, что поданный образ не относится ни к одному из известных классов. Процесс обучения устанавливает соответствие подаваемых на вход образов с принадлежностью к определённому классу. Это называется обучением с учителем. В применении к распознаванию человека по изображению лица, такой подход хорош для задач контроля доступа небольшой группы лиц. Такой подход обеспечивает непосредственное сравнение сетью самих образов, но с увеличением числа классов время обучения и работы сети возрастает экспоненциально. Поэтому для таких задач, как поиск похожего человека в большой базе данных, требует извлечения компактного набора ключевых характеристик, на основе которых можно производить поиск.

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

Применение МНС для классификации изображений лиц на основе таких характеристик, как расстояния между некоторыми специфическими частями лица (нос, рот, глаза), описано в . В этом случае на вход НС подавались эти расстояния. Использовались так же гибридные методы – в первом на вход НС подавались результаты обработки скрытой марковской моделью, а во втором – результат работы НС подавался на вход марковской модели. Во втором случае преимуществ не наблюдалось, что говорит о том, что результат классификации НС достаточен.

В показано применение НС для классификации изображений, когда на вход сети поступают результаты декомпозиции изображения по методу главных компонент.

В классической МНС межслойные нейронные соединения полносвязны, и изображение представлено в виде одномерного вектора, хотя оно двумерно. Архитектура свёрточной НС направлена на преодоление этих недостатков. В ней использовались локальные рецепторные поля (обеспечивают локальную двумерную связность нейронов), общие веса (обеспечивают детектирование некоторых черт в любом месте изображения) и иерархическая организация с пространственными подвыборками (spatial subsampling). Свёрточная НС (СНС) обеспечивает частичную устойчивость к изменениям масштаба, смещениям, поворотам, искажениям. Архитектура СНС состоит из многих слоёв, каждый из которых имеет несколько плоскостей, причём нейроны следующего слоя связаны только с небольшим числом нейронов предыдущего слоя из окрестности локальной области (как в зрительной коре человека). Веса в каждой точке одной плоскости одинаковы (свёрточные слоя). За свёрточным слоем следует слой, уменьшающий его размерность путём локального усреднения. Затем опять свёрточный слой, и так далее. Таким образом, достигается иерархическая организация. Более поздние слои извлекают более общие характеристики, меньше зависящие от искажений изображения. Обучается СНС стандартным методом обратного распространения ошибки. Сравнение МНС и СНС показало существенные преимущества последней как по скорости, так и по надёжности классификации. Полезным свойством СНС является и то, что характеристики, формируемые на выходах верхних слоёв иерархии, могут быть применимы для классификации по методу ближайшего соседа (например, вычисляя евклидово расстояние), причём СНС может успешно извлекать такие характеристики и для образов, отсутствующих в обучающем наборе. Для СНС характерны быстрая скорость обучения и работы. Тестировании СНС на базе данных ORL, содержащей изображения лиц с небольшими изменениями освещения, масштаба, пространственных поворотов, положения и различными эмоциями, показало приблизительно 98% точность распознавания, причём для известных лиц, предъявлялись варианты их изображений, отсутствующие в обучающем наборе. Такой результат делает эту архитектуру перспективной для дальнейших разработок в области распознавания изображений пространственных объектов.

МНС применяются и для обнаружения объектов определённого типа. Кроме того, что любая обученная МНС в некоторой мере может определять принадлежность образов к “своим” классам, её можно специально обучить надёжному детектированию определённых классов. В этом случае выходными классами будут классы принадлежащие и не принадлежащие к заданному типу образов. В применялся нейросетевой детектор для обнаружения изображения лица во входном изображении. Изображение сканировалось окном 20х20 пикселей, которое подавалось на вход сети, решающей принадлежит ли данный участок к классу лиц. Обучение производилось как с использованием положительных примеров (различных изображений лиц), так и отрицательных (изображений, не являющихся лицами). Для повышения надёжности детектирования использовался коллектив НС, обученных с различными начальными весами, вследствие чего НС ошибались по разному, а окончательное решение принималось голосованием всего коллектива.

Рис. 2. Главные компоненты (собственные лица) и разложение изображения на главные компоненты.

НС применяется так же для извлечения ключевых характеристик изображения, которые затем используются для последующей классификации. В , показан способ нейросетевой реализации метода анализа главных компонент. Суть метода анализа главных компонент заключается в получении максимально декореллированных коэффициентов, характеризующих входные образы. Эти коэффициенты называются главными компонентами и используются для статистического сжатия изображений, в котором небольшое число коэффициентов используется для представления всего образа. НС с одним скрытым слоем содержащим N нейронов (которое много меньше чем размерность изображения), обученная по методу обратного распространения ошибки восстанавливать на выходе изображение, поданное на вход, формирует на выходе скрытых нейронов коэффициенты первых N главных компонент, которые и используются для сравнения. Обычно используется от 10 до 200 главных компонент. С увеличением номера компоненты её репрезентативность сильно понижается, и использовать компоненты с большими номерами не имеет смысла. При использовании нелинейных активационных функций нейронных элементов возможна нелинейная декомпозиция на главные компоненты. Нелинейность позволяет более точно отразить вариации входных данных. Применяя анализ главных компонент к декомпозиции изображений лиц, получим главные компоненты, называемые собственными лицами (holons в работе ), которым так же присуще полезное свойство – существуют компоненты, которые в основном отражают такие существенные характеристики лица как пол, раса, эмоции. При восстановлении компоненты имеют вид, похожий на лицо, причём первые отражают наиболее общую форму лица, последние – различные мелкие отличия между лицами (рис. 2). Такой метод хорошо применим для поиска похожих изображений лиц в больших базах данных. Показана так же возможность дальнейшего уменьшения размерности главных компонент при помощи НС . Оценивая качество реконструкции входного изображения можно очень точно определять его принадлежность к классу лиц.

Обнаружение и распознавание объектов составляет неотъемлемую часть человеческой деятельности. Пока еще не совсем понятно, как человеку удается так точно и так быстро выделять и узнавать нужные предметы в разнообразии окружающей среды. Попытки выяснить это делаются физиологами и психологами уже более ста лет. Однако здесь наша цель состоит не в понимании механизма восприятия человека (и животных), а в описании методов автоматизированного распознавания объектов по их изображениям: новой информационной технологии, мощной, практичной и в некотором смысле универсальной методологии обработки и оценивания информации и выявления скрытых закономерностей .

Распознавание трехмерных объектов по их двумерным изображениям стало в последнее время одной из важнейших задач анализа сцен и машинного зрения. Исходную для распознавания информацию содержат изображения в различных частях полного спектра излучений (оптические, инфракрасные, ультразвуковые и т.д.), полученные различными способами (телевизионные, фотографические, лазерные, радиолокационные, радиационные и т.д.), преобразованные в цифровую форму и представленные в виде некоторой числовой матрицы. Под объектом понимаем не только (и не столько) цифровое представление локального фрагмента двумерной сцены, а некоторое его приближенное описание, в виде набора характерных свойств (признаков). Основное назначение описаний (образов объектов)- это их использование в процессе установления соответствия объектов, осуществляемого путем сравнения (сопоставления). Задачей распознавания является определение «скрытой» принадлежности объекта к тому или иному классу путем анализа вектора значений наблюдаемых признаков. Информацию о связи между значениями признаков объекта и его принадлежностью к определенному классу алгоритм распознавания должен извлечь из обучающей совокупности объектов, для которых известны либо значения и признаков и классов, либо только значения их признаков. В первом случае задача называется задачей обучения распознаванию образов с учителем, а во втором - без учителя. Здесь предполагается что каждый объект «принадлежит» одному образу из некоторого фиксированного множества. При отнесении (классификации) объектов требуется применить некоторое установленное ранее правило, чтобы решить, какому образу (классу) принадлежит объект. В задаче распознавания с обучением правило классификации должно вырабатываться на основе исследования множества объектов с известной принадлежностью различным классам. Эти объекты в совокупности называются обучающим множеством или выборкой. В задаче автоматического формирования образов объекты предъявляются «наблюдателю» без указания их принадлежности классам (распознавание без учителя). Наблюдатель (алгоритм распознавания) должен самостоятельно построить соответствующее определение классов (кластерный анализ). Разумеется, такой подход к анализу изображений адекватен лишь одному из двух аспектов двуединой задачи обнаружения и распознавания объектов сцены, а именно, собственно распознаванию класса вполне определенного (выделенного) фрагмента изображения, рассматриваемого как внешнее проявление некоторого скрытого образа. При этом вынужденно предполагается уже решенной задача сегментации, т. е. определение границ фрагментов, каждый из которых допустимо рассматривать как единое целое (объект).

Исследования по распознаванию образов пространственных объектов отличаются большим разнообразием в постановке задач и выборе средств их решения (методов обработки соответствующих фрагментов изображений), что является следствием разнообразия областей практического применения. Традиционными задачами, решавшимися еще в первых опытных разработках систем машинного зрения, служат задачи обнаружения и распознавания объектов, имеющих заданную форму на основе зашумленных и (возможно) деформированных изображений. Так, одной из первых практических задач, стимулировавших становление и развитие теории распознавания объектов, была задача идентификации и распознавания человеческих лиц

Рис. 9.1. Иллюстрация проблемы распознавания человеческих лиц и подходов к выбору информативных фрагментов (источник )

Сложность этой задачи обусловлена многообразием возможных ракурсов (масштабов, положений, углов поворота) распознаваемых лиц (см. рис. 9.1). Здесь предварительно необходимо построить внутреннее представление объектов, включающее проекции изображений . Данная задача до сих пор имеет широкое применение в системах охраны, при верификации кредитных карточек, в криминалистической экспертизе, на телеконференциях и т.д. Для ее решения предложены методы распознавания, основанные на теории нейрокомпыотерных сетей, корреляционно-экстремальных алгоритмах, методах вычисления статистических и алгебраических моментов, контурном анализе, 3D-моделировании и др. . Среди них особое внимание уделяется направлению, связанному с автоматическим выделением характерных (информативных) признаков объектов сцены, в данном случае элементов глаз, носа, рта, подбородка – рис. 9.1.

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

Рис. 9.2. Кластер-анализ спектральной яркости природных объектов, отображенный и двумерную плоскость пары информативных спектральных каналов

Наиболее употребительным методом обработки была «классификация без учителя» на основе кластерного анализа, с помощью которого пространство спектральных признаков разбивалось на различимые группы (кластеры, см. рис. 9.2), а классификация элементов изображений позволяла одновременно сегментировать сцену на спектрально однородные области .

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

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




Top