Техническое зрение роботов
1.ВВЕДЕНИЕ
С целью классификации методов и подходов, используемых в системах технического зрения, зрение разбито на три основных подкласса: зрение низкого, среднего и высокого уровней. Системы технического зрения низкого уровня предназначены для обработки информации с датчиков очувствления.
Эти системы можно отнести к классу «интеллектуальных» машин, если они обладают следующими признаками (признаками интеллектуального поведения):
1) возможностью выделения существенной информации из множества независимых признаков;
2) способностью к обучению на примерах и обобщению этих знаний с целью их применения в новых ситуациях;
3) возможностью восстановления событий по неполной информации;
4) способностью определять цели и формулировать планы для достижения этих целей.
Создание систем технического зрения с такими свойствами для ограниченных видов рабочего пространства в принципе возможно, но характеристики таких систем далеки от возможностей человеческого зрения. В основе технического зрения лежит аналитическая формализация, направленная на решение конкретных задач. Машины с сенсорными характеристиками, близкими к возможностям человека, по-видимому, появятся еще не скоро. Однако отметим, что копирование природы не является единственным решением этой проблемы. Читателю наверняка известны ранние экспериментальные образцы аэропланов с машущими крыльями и другими особенностями полета птиц. Современное решение задачи о полете в пространстве в корне отличается от решений, подсказанных природой. По скорости и достижимой высоте самолеты намного превосходят возможности птиц.
Системы технического зрения среднего уровня связаны с задачами сегментации, описания и распознавания отдельных объектов. Эти задачи охватывают множество подходов, основанных на аналитических представлениях. Системы технического зрения высокого уровня решают проблемы, рассмотренные выше. Для более ясного понимания проблем технического зрения высокого уровня и его связи с техническим зрением низкого и среднего уровней введем ряд ограничений и упростим решаемую задачу.
2.СЕГМЕНТАЦИЯ
Сегментацией называется процесс подразделения сцены на составляющие части или объекты. Сегментация является одним из основных элементов работы автоматизированной системы технического зрения, так как именно на этой стадии обработки объекты выделяются из сцены для дальнейшего распознавания и анализа. Алгоритмы сегментации, как правило, основываются на двух фундаментальных принципах: разрывности и подобии. В первом случае основной подход основывается на определении контуров, а во втором — на определении порогового уровня и расширении области. Эти понятия применимы как к статическим, так и к динамическим (зависящим от времени) сценам. В последнем случае движение может служить мощным средством для улучшения работы алгоритмов сегментации.
2.1.Проведение контуров и определение границы
Методы - вычисление градиента, пороговое разделение - определяют разрывы в интенсивности представления образа объекта. В идеальном случае эти методы определяют пикселы, лежащие на границе между объектом и фоном. На практике данный ряд пикселов редко полностью характеризует границу из-за шума, разрывов на границе вследствие неравномерной освещенности и других эффектов, приводящих к размытию изображения. Таким образом, алгоритмы обнаружения контуров сопровождаются процедурами построения границ объектов из соответствующих последовательностей пикселов. Ниже рассмотрено несколько методик, пригодных для этой цели.
2.1.1.Локальный анализ.
Одним из наиболее простых подходов соединения точек контура является анализ характеристик пикселов в небольшой окрестности (например, в окрестности размером 3 X 3 или 5 X 5) каждой точки (х, у) образа, который уже подвергся процедуре обнаружения контура. Все точки, являющиеся подобными (определение критерия подобия дано ниже), соединяются, образуя границу из пикселов, обладающих некоторыми общими свойствами.
При таком анализе для установления подобия пикселов контура необходимо определить:
1 ) величину градиента, требуемого для построения контурного пиксела,
2) направление градиента.
Первая характеристика обозначается величиной G{f(x, у)).
Таким образом, пиксел контура с координатами (х', у') подобен по величине в определенной ранее окрестности (х, у) пикселу с координатами (х, у), если справедливо неравенство
где Т—пороговое значение.
Направление градиента устанавливается по углу вектора градиента, определенного в уравнении
где —угол (относительно оси х), вдоль которого скорость изменения имеет наибольшее значение. Тогда можно сказать, что угол пиксела контура с координатами {х', у') в некоторой окрестности (х, у) подобен углу пиксела с координатами {х, у) при выполнении следующего неравенства:
где А—пороговое значение угла. Необходимо отметить, что направление контура в точке {х, у) в действительности перпендикулярно направлению вектора градиента в этой точке. Однако для сравнения направлений неравенство дает эквивалентные результаты.
Основываясь на этих предположениях, мы соединяем точку в некоторой окрестности (х, у) с пикселом, имеющим координаты (х, у), если удовлетворяются критерии по величине и направлению. Двигаясь от пиксела к пикселу и представляя каждую присоединяемую точку как центр окрестности, процесс повторяется для каждой точки образа. Для установления соответствия между уровнями интенсивности освещения и последовательностями пикселов контура применяется стандартная библиотечная процедура.
Цель состоит в определении размеров прямоугольников, с помощью которых можно построить качественное изображение. Построение таких прямоугольников осуществляется в результате определения строго горизонтальных и вертикальных контуров. Дальнейший процесс состоял в соединении сегментов контура, разделенных небольшими промежутками, и в объединении отдельных коротких сегментов.
2.1.2.Глобальный анализ с помощью преобразования Хоуга.
Рассмотрим метод соединения граничных точек путем определения их расположения на кривой специального вида. Первоначально предполагая, что на плоскости ху образа дано п точек, требуется найти подпоследовательности точек, лежащих на прямых линиях. Одно из возможных решений состоит в построении всех линий, проходящих через каждую пару точек, а затем в нахождении всех подпоследовательностей точек, близких к определенным линиям. Задача, связанная с этой процедурой, заключается в нахождении п(п— 1)/2 ~ п2 линий и затем в осуществлении п(п(п—1))/2 ~ п3 сравнений каждой точки со всеми линиями. Этот процесс трудоемок с вычислительной точки зрения за исключением самых простых приложений.
Данную задачу можно решить по-другому, применяя подход, предложенный Хоугом и называемый преобразованием Хоуга. Рассмотрим точку (хi yi) и общее уравнение прямой линии у:= аxi + i. Имеется бесконечное число линий, проходящих через точку (хi yi), но все они удовлетворяют уравнению у:= аxi + i при различных значениях а и b. Однако, если мы запишем это уравнение в виде b = -хiа + yi и рассмотрим плоскость аb (пространство параметров), тогда мы имеем уравнение одной линии для фиксированной пары чисел (хi yi). Более того, вторая точка (хj, уj) также имеет в пространстве параметров связанную с ней линию, которая пересекает другую линию, связанную с точкой (хi yi) в точке (а', b’), где значения а' и b’—параметры линии, на которой расположены точки (хi yi) и (хj, уj) в плоскости ху. Фактически все точки, расположенные на этой линии, в пространстве параметров будут иметь линии пересечения в точке (а', b’).
Вычислительная привлекательность преобразования Хоуга заключается в разделении пространства параметров на так называемые собирающие элементы , где (aмакс, амин) и (bмакс, bмин)—допустимые величины параметров линий. Собирающий элемент A (i, j) соответствует площади, связанной с координатами пространства параметров (аi, j). Вначале эти элементы считаются равными нулю. Тогда для каждой точки (xk, уk) в плоскости образа мы полагаем параметр а равным каждому из допустимых значений на оси а и вычисляем соответствующее b, используя уравнение = -хk + yk Полученное значение b затем округляется до ближайшего допустимого значения на оси b. Если выбор aр приводит к вычислению bq, мы полагаем А(р, q) ==А(р, q) + 1. После завершения этой процедуры значение М в элементе A (i, j) соответствует М точкам в плоскости xy, лежащим на линии y=aix+b. Точность расположения этих точек на одной прямой зависит от числа разбиений плоскости аb. Отметим, что, если мы разбиваем ось а на К частей, тогда для каждой точки (xk, уk) мы получаем К значений b, соответствующих К возможным значениям а. Поскольку имеется п точек образа, процесс состоит из пК вычислительных операций. Поэтому приведенная выше процедура линейна относительно п и имеет меньшее число вычислительных операций, чем процедура, описанная выше, если К<=п.
Проблема, связанная с представлением прямой линии уравнением у = ах + b, состоит в том, что оба параметра а и стремятся к бесконечности, если линия принимает вертикальное положение. Для устранения этой трудности используется нормальное представление прямой линии в виде
xcos+ysin=.
Это представление для построения таблицы собирающих элементов используется так же, как метод, изложенный выше, но вместо прямых линий мы имеем синусоидальные кривые в плоскости . Как и прежде, М точек, лежащих на прямой xcosi+уsini == i, соответствуют М синусоидальным кривым, которые пересекаются в точке (i,i) пространства параметров. Если используется метод возрастания и нахождения для него соответствующего , процедура дает М точек в собирающий элемент А (i, j), связанный с точкой (i,i).
2.1.3.Глобальный анализ с помощью методов теории графов.
Изложенные выше методы основаны на задании последовательности точек контура, полученных в результате градиентного преобразования. Этот метод редко применяется для предварительной обработки данных в ситуациях, характеризуемых высоким уровнем шума, вследствие того, что градиент является производной и усиливает колебания интенсивности. Рассмотрим глобальный подход, основанный на представлении сегментов контура в виде графа и поиске на графе пути наименьшей стоимости, который соответствует значимым контурам. Этот подход представляет приближенный метод, эффективный при наличии шума. Как и следует ожидать, эта процедура значительно сложнее и требует больше времени обработки, чем методы, изложенные выше.
Сначала дадим несколько простых определений. Граф G = (N, А) представляет собой конечное, непустое множество вершин N вместе с множеством А неупорядоченных пар различных элементов из N. Каждая пара из А называется дугой.
Граф, в котором дуги являются направленными, называется направленным графом. Если дуга выходит из вершины ni, к вершине пj, тогда пj называется преемником вершины ni. В этом случае вершина i называется предшественником вершины пj. Процесс идентификации преемников каждой вершины называется расширением этой вершины. В каждом графе определяются уровни таким образом, чтобы нулевой уровень состоял из единственной вершины, называемой начальной, а последний уровень—из вершин, называемых целевыми. Каждой дуге (niпj) приписывается стоимость c(niпj). Последовательность вершин п1, n2, ..., nk, где каждая вершина ni является преемником вершины ri-1, называется путем от i к пk, а стоимость пути определяется формулой
.
Элемент контура мы определим как границу между двумя пикселами р и q. В данном контексте под контуром понимается последовательность элементов контура.
2.2.Определение порогового уровня
Понятие порогового уровня (порога) тест вида
Т = Т (х, у, р (х, у), f (х, у)),
где f(x, у) —интенсивность в точке (х, у), р(х, у)—некоторое локальное свойство, определяемое в окрестности этой точки. Пороговое изображение дается следующим выражением:
так что пикселы в g(x, у), имеющие значение 1, соответствуют объектам, а пикселы, имеющие значение 0, соответствуют фону. В уравнении предполагается, что интенсивность объектов больше интенсивности фона. Противоположное условие получается путем изменения знаков в неравенствах.
2.2.1.Глобальные и локальные пороги.
Если значение Т в уравнении зависит только от f(x, у), то, порог называется глобальным. Если значение Т зависит как от f(x, у), так и от р(х, у), порог называется локальным. Если, кроме того, Т зависит от пространственных координат х а у, в этом случае он называется динамическим порогом.
Глобальные пороги применяются в ситуациях, когда имеется явное различие между объектами и фоном и где освещенность достаточно однородна. Методы обратной и структурированной освещенности, обычно дают изображения, которые могут быть сегментированы путем применения глобальных порогов. Но, как правило, произвольное освещение рабочего пространства приводит к изображениям, которые, если исходить из определения порогового уровня, требуют локального анализа для компенсации таких эффектов, как неоднородность освещения, тени и отражение.
Ниже мы рассмотрим ряд методов для выбора порогов, используемых при сегментации. Хотя некоторые из них могут применяться для выбора глобального порога, они обычно используются в ситуациях, требующих анализа локального порога.
2.2.2.Выбор оптимального порога.
Часто рассматривают гистограмму, состоящую из суммы значений функции плотности вероятности. В случае бимодальной гистограммы аппроксимирующая ее функция дается уравнением
p(z)=P1p1(z)+P2p2(z),
где интенсивность z—случайная переменная величина, p1(z) и p2(z)—функции плотности вероятности, a P1 и P2 – априорные вероятности. В данном случае априорные вероятности означают появление двух видов уровней интенсивности на образе. Полная гистограмма может быть аппроксимирована суммой двух функций плотности вероятности. Если известно, что объект состоит из светлых пикселов и они занимают 20 % площади образа, то Pi ==0,2. Необходимо, чтобы
Р1+Рг=1.
В данном случае это означает, что на остальную часть образа приходится 80 % пикселов фона. Введем две следующие функции от z:
d1(z)=P1p1(z),
d2(z)=P1p1(z).
Из теории принятия решений известно, что средняя ошибка определения пиксела объекта в качестве фона (и наоборот) минимизируется с помощью следующего правила: рассматривая пиксел со значением интенсивности z, мы подставляем это значение z в уравнения (8.2-13) и (8.2-14). Затем мы определяем пиксел как пиксел объекта, если d1(z) >d2(z), или как пиксел фона, если d2(2) > d1(z). Тогда оптимальный порог определяется величиной z, для которой d1{z)=d2(z). Таким образом, полагая в уравнениях z=T, получаем, что оптимальный порог удовлетворяет уравнению
P1р1(T)=P2p2(T).
рис. Гистограмма интенсивности (а) и ее аппроксимация в виде •суммы двух функций плотности вероятности (б).
Итак, если известны функциональные зависимости p1(z) и р2(г),. это уравнение можно использовать для нахождения оптимального порога, который отделяет объекты от фона. Если этот порог известен, уравнение может быть использовано для сегментации данного образа.
2.2.3.Определение порогового уровня на основе характеристик границы.
Одним из наиболее важных аспектов при выборе порогового уровня является возможность надежно идентифицировать модовые пики для данной гистограммы. Это важно при автоматическом выборе порогового уровня в ситуациях, когда характеристики образа меняются вследствие большого разброса интенсивности. Из изложенного выше очевидно, что возможность выбора «хорошего» порогового уровня может быть существенно увеличена в случае, если пики гистограмм являются высокими, узкими, симметричными и разделены глубокими провалами.
Одним из подходов для улучшения вида гистограмм является рассмотрение только тех пикселов, которые лежат на границе (или около нее) между объектами и фоном. Одно из очевидных улучшений состоит в том, что этот подход позволяет получать гистограммы менее зависимыми от отношения между объектом и фоном. Например, гистограмма интенсивности образа, составленного из маленького объекта на большой площади постоянного фона, определялась бы большим пиком вследствие концентрации пикселов фона. С другой стороны, результирующие гистограммы имели бы пики с более сбалансированными высотами, если бы рассматривались пикселы, лежащие только на (или около) границе между объектом и фоном. Кроме того, вероятность расположения пиксела на границе объекта практически равна вероятности того, что он лежит на границе фона, что улучшает симметрию гистограммных пиков. Окончательно, как показано ниже, использование пикселов, которые удовлетворяют некоторым простым критериям, основанным на операторах градиента и Лапласа, приводит к увеличению провалов между пиками гистограммы.
Выше мы неявно подразумевали, что граница между объектами и фоном известна. Очевидно, что во время проведения сегментации эта информация отсутствует, поскольку нахождение раздела между объектами и фоном является окончательной целью приведенной здесь процедуры. Однако, что, вычислив градиент пиксела, можно определить, лежит ли он или не лежит на контуре. Кроме того, лапласиан может дать информацию о том, лежит ли данный пиксел на темной (т. е. фон) или светлой (объект) стороне контура. С внутренней стороны идеального контура лапласиан равен нулю, поэтому на практике можно ожидать, что провалы гистограмм, образованных пикселами, выбранными по критерию градиент/лапласиан, будут располагаться достаточно редко и иметь желаемую высоту.
Градиент G(f(x,y)) любой точки образа и лапласиан L(f{x, у)). Эти два свойства можно использовать для формирования трехуровнего образа:
(где символы 0, +, - представляют три различных уровня освещенности, а Т—пороговый уровень. Предположим, что темный объект располагается на светлом фоне, тогда применение уравнения дает образ s(x, у), в котором все пикселы, не лежащие на контуре (для них значение G(f (х, у)) меньше Т, помечены 0, все пикселы на темной стороне контура помечены + и все пикселы на светлой стороне контура помечены —. Для светлого объекта на темном фоне символы + и - в уравнении (8.2-24) меняются местами.
Только что изложенная процедура может применяться для создания сегментированного, бинарного образа, в котором 1 соответствует объектам, представляющим интерес, и 0—фону. Отметим, что перемещение (вдоль горизонтальных или вертикальных линий сканирования) от светлого фона к темному объекту должно характеризоваться заменой знака - фона на -1- объекта s(x, у). Внутренняя область объекта состоит из пикселов, помеченных либо 0 либо +. Окончательно перемещение от объекта к фону характеризуется заменой знака + на —. Таким образом, горизонтальные или вертикальные линии сканирования, содержащие части объекта, имеют следующую структуру:
(...)(-, +)(0 или +)(+, -)(•••),
где (...) является произвольной комбинацией +, - или 0. Остальные скобки содержат точки объекта и помечены 1. Все другие пикселы вдоль той же линии сканирования помечаются 0, за исключением всех последовательностей из (0 или +), ограниченных (-, +) и (+, -).
2.2.4.Определение порогового уровня, основанное на нескольких переменных.
Изложенные выше методы связаны с определением порогового уровня для единственного переменного значения интенсивности. В некоторых приложениях можно использовать более одной переменной для характеристики каждого пиксела образа, увеличивая таким образом не только степень различия между объектом и фоном, но и между самими объектами. Одним из наиболее значимых примеров является цветное зрение, где используются красные, зеленые и голубые компоненты (КЗГ) для формирования составного цветного образа. В этом случае каждый пиксел характеризуется тремя переменными и это позволяет строить трехмерную гистограмму. Основная процедура та же, что и для одной переменной. Пусть, например, даны три 16-уровневых изображения, соответствующие КЗГ компонентам датчика цвета. Сформируем кубическую решетку 16х16х16 и поместим в каждый элемент пикселы, КЗГ компоненты которых имеют интенсивности, соответствующие координатам, определяющим положение этого элемента. Число точек в каждом элементе решетки может быть затем разделено на общее число пикселов образа для формирования нормированной гистограммы.
Теперь выбор порога заключается в нахождении групп точек в трехмерном пространстве, где каждая «компактная» группа аналогична основной моде гистограммы одной переменной. Например, предположим, что мы ищем две значимые группы точек данной гистограммы, где одна группа соответствует объекту, а другая—фону. Принимая во внимание, что теперь каждый пиксел имеет три компоненты и может быть рассмотрен как точка трехмерного пространства, можно сегментировать образ с помощью следующей процедуры. Для каждого пиксела образа вычисляется расстояние между этим пикселом и центром каждой группы. Тогда, если пиксел располагается рядом с центром группы точек объекта, мы помечаем его 1; в противном случае мы помечаем его 0. Это понятие легко распространить на большую часть компонентов пиксела и соответственно на большую часть групп. Основная сложность состоит в том, что определение значимых групп, как правило, приводит к довольно сложной задаче, поскольку число переменных возрастает.
2.3.Областно-ориентированная сегментация
2.3.1.Основные определения.
Целью сегментации является разделение образа на области. Рассмотрим методы сегментации, основанные на прямом нахождении областей.
Пусть R — область образа. Рассмотрим сегментацию как процесс разбиения R на подобластей R1, R2, ..., Rn, так что
1.
2. Pi—связная область, i= 1, 2, ..., п,
3. Ri Ri= для всех i и j, i j,
4. P(Ri) есть ИСТИНА для i= 1, 2, ..., n;
5. P(Ri U Ri) есть ЛОЖЬ для i j, где P(Ri)— логический предикат, определенный на точках из множества Ri, и -пустое множество.
Условие 1 означает, что сегментация должна быть полной, т. е. каждый пиксел должен находиться в образе. Второе условие требует, чтобы точки в области были связными. Условие 3 указывает на то, что области не должны пересекаться. Условие 4 определяет свойства, которым должны удовлетворять пикселы в сегментированной области. Простой пример: Р(Ri) = ИСТИНА, если все пикселы в Ri имеют одинаковую интенсивность. Условие 5 означает, что области Ri и Ri различаются по предикату Р.
2.3.2.Расширение области за счет объединения пикселов.
Расширение области сводится к процедуре группирования пикселов или подобластей в большие объединения. Простейшей из них является агрегирование пикселов. Процесс начинается с выбора множества узловых точек, с которых происходит расширение области в результате присоединения к узловым точкам соседних пикселов с похожими характеристиками (интенсивность, текстура или цвет). Пусть цифры внутри ячеек указывают интенсивность. Пусть точки с координатами (3, 2) и (3, 4) используются как узловые. Выбор двух начальных точек приведет к сегментации образа на две области: области R1, связанной с узлом (3, 2), и области R2, связанной с узлом (3, 4). Свойство Р, которое мы будем использовать для того, чтобы отнести пиксел к той или иной области, состоит в том, что модуль разности между интенсивностями пиксела и узловой точки не превышает пороговый уровень Т. Любой пиксел, удовлетворяющий этому свойству одновременно для обоих узлов, произвольно попадает в область Ri. В этом случае сегментация проводится для двух областей, причем точки в R1 обозначаются буквой а, точки в R2 буквой . Необходимо отметить, что независимо от того, в какой из этих двух областей будет взята начальная точка, окончательный результат будет один и тот же. Если, с другой стороны выбрать Т = 8, была бы получена единственная область
Предыдущий пример, несмотря на его простоту, иллюстрирует некоторые важные проблемы расширения области. Двумя очевидными проблемами являются: выбор начальных узлов для правильного представления областей, представляющих интерес, и определение подходящих свойств для включения точек в различные области в процессе расширения. Выбор множества, состоящего из одной или нескольких начальных точек, следует из постановки задачи. Например, в военных приложениях объекты, представляющие интерес, имеют более высокую температуру, чем фон, и поэтому проявляются более ярко. Выбор наиболее ярких пикселов является естественным начальным шагом в алгоритме процесса расширения области. При отсутствии априорной информации можно начать с вычисления для каждого пиксела набора свойств, который наверняка будет использован при установлении соответствия пиксела той или иной области в процессе расширения. Если результатом вычислений являются группы точек (кластеры), тогда в качестве узловых берутся те пикселы, свойства которых близки к свойствам центроидов этих групп. Так, в примере, приведенном выше, гистограмма интенсивностей показала бы, что точки с интенсивностью от одного до семи являются доминирующими. Выбор критерия подобия зависит не только от задачи, но также от вида имеющихся данных об образе. Например, анализ информации, полученной со спутников, существенно зависит от использования цвета. Задача анализа значительно усложнится при использовании только монохроматических образов. К сожалению, в промышленном техническом зрении возможность получения мультиспектральных и других дополнительных данных об образе является скорее исключением, чем правилом. Обычно анализ области должен осуществляться с помощью набора дескрипторов, включающих интенсивность и пространственные характеристики (моменты, текстуру) одного источника изображения. Отметим, что применение только одних дескрипторов может приводить к неправильным результатам, если не используется информация об условиях связи в процессе расширения области. Это легко продемонстрировать при рассмотрении случайного расположения пикселов с тремя различными значениями интенсивности. Объединение пикселов в «область» на основе признака одинаковой интенсивности без учета условий связи приведет к бессмысленному результату при сегментаци.
Другой важной проблемой при расширении области является формулировка условия окончания процесса. Обычно процесс расширения области заканчивается, если больше не существует пикселов, удовлетворяющих критерию принадлежности к той или иной области. Выше упоминались такие критерии, как интенсивность, текстура и цвет, которые являются локальными по своей природе и не учитывают «историю» процесса расширения области. Дополнительный критерий, повышающий мощность алгоритма расширения области, включает понятие размера, схожести между пикселом-кандидатом и только что созданными пикселами (сравнение интенсивности кандидата и средней интенсивности области), а также формы области, подлежащей расширению. Использование этих типов дескрипторов основано на предположении, что имеется неполная информация об ожидаемых результатах.
2.3.2.Разбиение и объединение области.
Изложенная выше процедура расширения области начинает работу с заданного множества узловых точек. Однако можно сначала разбить образ на ряд произвольных непересекающихся областей и затем объединять и/или разбивать эти области с целью удовлетворения условий. Итеративные алгоритмы разбиения и объединения, работа которых направлена на выполнение этих ограничений, могут быть изложены следующим образом.
Пусть R является полной областью образа, на которой определен предикат Р. Один из способов сегментации R состоит в успешном разбиении площади образа на все меньшие квадратные области, так что для каждой области Ri, P(Ri) = ИСТИНА. Процедура начинает работу с рассмотрения всей области R. Если Р(R)= ЛОЖЬ, область разбивается на квадранты. Если для какого-либо квадранта Р принимает значение ЛОЖЬ, этот квадрант разбивается на подквадранты и т. д. Этот метод разбиения обычно представляется в виде так называемого квадродерева (дерева, у которого каждая вершина имеет только четыре потомка). Отметим, что корень дерева соответствует всему образу,а каждая вершина - разбиению. В данном случае только R4 подлежит дальнейшему разбиению. Если применять только операцию разбиения, можно ожидать, что в результате окончательного разбиения всей площади образа на подобласти последние будут иметь одинаковые свойства. Это можно устранить допустимым объединением так же, как и разбиением. Для того чтобы удовлетворить условиям сегментации, введенным выше, необходимо объединять только те соседние области, пикселы которых удовлетворяют предикату Р, таким образом, две соседние области Ri и Rk объединяются только в том случае, если P(Ri U Rk) = ИСТИНА.
Изложенное выше можно представить в виде процедуры, где на каждом шаге выполняются следующие операции:
1. Разбиение области Ri, для которой Р {Ri) = ЛОЖЬ, на четыре непересекающихся квадранта.
2. Объединение соседних областей Ri и Rk, для которых Р (Ri U Rk) = ИСТИНА.
3. Выход на останов, когда дальнейшее объединение или разбиение невозможно.
Возможны варианты этого алгоритма. Например, можно сначала разбить образ на квадратные блоки. Дальнейшее разбиение выполняется по изложенному выше способу, но вначале объединение ограничивается группами из четырех блоков, являющихся в квадродереве потомками и удовлетворяющих предикату Р. Когда дальнейшее объединение этого типа становится невозможным, процедура завершается окончательным объединением областей согласно шагу 2. В этом случае объединяемые области могут иметь различный размер. Основным преимуществом этого подхода является использование одного квадродерева для разбиения и объединения до шага, на котором происходит окончательное объединение.
2.4. Применение движения
Движение представляет собой мощное средство, которое используется человеком и животными для выделения интересующих их объектов из фона. В системах технического зрения роботов движение используется при выполнении различных операций на конвейере, при перемещении руки, оснащенной датчиком, более редко при перемещении всей робототехнической системы.
2.4.1.Основной подход.
Один из наиболее простых подходов для определения изменений между двумя кадрами изображения (образами) f(x, у, ti) и f(x, у, t,), взятыми соответственно в моменты времени ti и tj, основывается на сравнении соответствующих пикселов этих двух образов. Для этого применяется процедура, заключающаяся в формировании так называемой разности образов.
Предположим, что мы имеем эталонный образ, имеющий только стационарные компоненты. Если сравним этот образ с таким же образом, имеющим движущиеся объекты, то разность двух образов получается в результате вычеркивания стационарных компонент (т. е. оставляются только ненулевые записи, которые соответствуют нестационарным компонентам изображения).
Разность между двумя кадрами изображения, взятыми в моменты времени ti и tj, можно определить следующим образом:
dij(x,y) = (*)
где —значение порогового уровня. Отметим, что dij(x, у) принимает значение 1 для пространственных координат (х, у) только в том случае, если два образа в точке с этими координатами существенно различаются по интенсивности, что определяется значением порогового уровня .
При анализе движущегося образа все пикселы изображений разности dij(x, у), имеющие значение 1, рассматриваются как результат движения объекта. Этот подход приметим только в том случае, если два образа зарегистрированы и освещенность имеет относительно постоянную величину в пределах границ, устанавливаемых пороговым уровнем . На практике записи в dij(x, у), имеющие значение 1, часто появляются в результате действия шума. Обычно на разности двух кадров изображения такие значения выглядят как изолированные точки. Для их устранения применяется простой подход, заключающийся в формировании 4- или 8-связных областей из единиц в dij(x, у), и затем пренебрегают любой областью с числом записей, меньшим заранее заданного. При этом можно не распознать малые и/или медленно движущиеся объекты, но это увеличивает вероятность того, что остающиеся записи в разности двух кадров изображения действительно соответствуют движению.
2.4.2.Аккумулятивная разность.
Как говорилось выше, разность кадров благодаря шуму часто содержит изолированные записи. Несмотря на то что число таких записей может быть сокращено или полностью ликвидировано в результате анализа связности пороговых уровней, этот процесс может также привести к потере изображений малых или медленно движущихся объектов. Ниже излагается подход для решения этой проблемы путем рассмотрения изменения в расположении пикселов на нескольких кадрах, т. е. в процесс вводится «память». Основная идея заключается в пренебрежении теми изменениями, которые возникают случайно в последовательности кадров и, таким образом, могут быть отнесены к случайному шуму.
Рассмотрим последовательность кадров изображения f(x,y,t1), f(x, у, t2), ..., f(x, у, tn) и допустим, что f(x, у, t1) является эталонным образом. Изображение аккумулятивной разности формируется в результате сравнения эталонного образа с каждым образом в данной последовательности. В процедуре построения изображения аккумулятивной разности имеется счетчик, предназначенный для учета расположения пикселов. Его значение увеличивается каждый раз, когда возникает различие в расположении соответствующих пикселов эталонного образа и образа из рассматр