Смекни!
smekni.com

Техническое зрение роботов (стр. 6 из 8)

каждого участка прямой линией, а затем присваивания каждой линии направления, ближайшего к одному из допустимых направлений цепного кода. Важно отметить, что цепной код данной границы зависит от начальной точки. Однако можно нормировать код с помощью простой процедуры. Для создания цепного кода начальная точка на решетке выбирается произвольным образом. Рассмат­ривая цепной код как замкнутую последовательность индексов направлений, мы вновь выбираем начальную точку таким обра­зом, чтобы результирующая последовательность индексов была целым числом, имеющим минимальную величину. Также можно нормировать повороты, если вместо цепного кода рассматри­вать его первую разность. Первая разность вычисляется в ре­зультате отсчитывания (в направлении против часовой стрелки)' числа направлений, разделяющих два соседних элемента кода. Например, первая разность для цепного кода с 4 направле­ниями 10103322 есть 3133030. Если рассматривать код как зам­кнутую последовательность, тогда первый элемент разности можно вычислить, используя переход между последним и пер­вым компонентами цепи. В данном примере результатом яв­ляется 33133030. Нормирование можно осуществить путем раз­биения всех границ объекта на одинаковое число равных сег­ментов и последующей подгонкой длин сегментов кода с целью их соответствия этому разбиению.

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

3.1.2.Сигнатуры.

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

3.1.3.Аппроксимация многоугольниками.

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

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

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

3.2.Дескрипторы области

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

3.2.1.Некоторые простые дескрипторы.

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

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

Большая и малая оси области полезны для определения ориентации объекта. Отношение длин этих осей, называемое эксцентриситетом области, также является важным дескриптором для описания формы области.

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

Связной называется область, в которой любая пара точек может быть соединена кривой, полностью лежащей в этой об­ласти. Для множества связных областей (некоторые из них имеют отверстия) в качестве дескриптора полезно использовать число Эйлера, которое определяется как разность между числом связных областей и числом отверстий. Например, числа Эйлера для букв А и В соответственно равны 0 и —1. Другие дескрип­торы области рассматриваются ниже.

3.2.2.Текстура.

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

3.2.3.Скелет области.

Важным подходом для описания вида струк­туры плоской области является ее представление в виде графа. Во многих случаях для этого определяется схема (скелет) об­ласти с помощью так называемых прореживающих (или же сокращающих) алгоритмов. Прореживающие процедуры иг­рают основную роль в широком диапазоне задач компьютерного зрения — от автоматической проверки печатных плат до под­счета асбестовых волокон в воздушных фильтрах. Скелет об­ласти можно определить через преобразование средних осей (ПСО), предложенное в работе.ПСО областиR с грани­цей В определяется следующим образом. Для каждой точки р из R мы определяем ближайшую к ней точку, лежащую на В. Если р имеет больше одной такой точки, тогда о ней говорится, что она располагается на средней оси (скелете) области R. Важно отметить, что понятие «ближайшая точка» зависит от определения расстояния, и поэтому на результаты операции ПСО будет влиять выбор метрики. Хотя ПСО дает довольно удовлетворительный скелет обла­сти, его прямое применение затруднительно с вычислительной точки зрения, поскольку требуется определение расстояния между каждой точкой области и границы. Был предложен ряд алгоритмов построения средних осей, обладающих большей вычислительной эффективностью. Обычно это алгоритмы про­реживания, которые итеративно устраняют из рассмотрения точки контура области так, чтобы выполнялись следующие ограничения: