Материал: Системы технического зрения. Литвиненко А.М., Машаров А.В

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

Часто «наведение» осуществляется без фактических перемещений видеосенсора или настройки оптической системы — путем управляемого выбора «окна» съема видеоинформации. При работе

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

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

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

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

51 50

изображения.

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

Формально относящиеся к этапу настройки процедуры калибровки СТЗ и ее «привязки» к системе координат робота имеют особое значение для рассматриваемых приложений и будут подробнее рассмотрены в разделе, посвященном сопряжению СТЗ с системой управления робота.

Аналоговые преобразования. Алгоритмы аналоговых преоб-

разований видеосигнала на стадии формирования изображения

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

Вробототехническом комплексе «i-bot», серийно выпускаемом в США, робот PUMA-560 благодаря сопряжению с СТЗ способен захватывать детали сложной формы, лежащие навалом в таре. Перед вводом видеоинформации в Микропроцессор Intel 8086 специальный аппаратный модуль выполняет расширение диапазона--аналогового видеосигнала. Смысл этой операции состоит

вусилении полезной составляющей сигнала и улучшении контрастности изображения. С помощью двух управляемых ограничителей «срезаются» нежелательные пики сигнала, вызванные слишком сильными бликами. Кроме того, временно

52

0, N y
0, N x ,

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

Рис. 1.2. Определение порога бинаризации по гистограммам яркости

Ввод изображения в ЭВМ. Прежде чем перейти к алгоритмам этого подэтапа, дадим точное определение понятия «изображение».

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

у) выбранной картинной плоскости значение g яркости (освещенности) соответствующей точки сцены. Будем считать рассматриваемый участок картинной плоскости (выбранной плоской проекции рабочей сцены) прямоугольником размером ХхY и поместим начало системы координат Оху в его левый нижний угол. Тогда x [0, X ] y [0,Y]. Обычно вместо исходного изображения

g (х, у) в память ЭВМ вводится массив значений G (i, j), задаваемый на

целочисленной решетке i j покрывающей всю

область XxY или ее некоторую подобласть. Значение G в узловой точке представляет усредненную яркость g элемента изображения в окрестности этой точки. Чаще всего считают, что элементы изображения — пикселы — имеют прямоугольную форму, хотя не исключены и иные виды разбиения картинной плоскости. Максимальный шаг h пространственной решетки при оцифровке — вводе исходного изображения в память ЭВМ в виде функции G (t, /)

— должен выбираться из условия h << l/(2/fm), где fm — максимальная пространственная частота изображения.

Кроме пространственной дискретизации, оцифровка изображения предусматривает квантование уровней яркости. Обычно для этого используются аналого-цифровые преобразователи или компараторы, причем в СТЗ роботов все чаще применяют алгоритмы с оперативным управлением порогами сравнения. После квантования функция G (i, j) принимает целочисленные значения: G (i, j) = k при Tk-1 < G (i, j) < Tk, k [0, kmax ] , где Tk — значение k-то порогового уровня. В случае kшах = 1 оцифрованное изображение называется бинарным (двуградационным), в случае kmax > 1 — полутоновым (многоградационным).

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

53

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

Однако вследствие неидеальной контрастности реальная гистограмма редко бывает бимодальной: наряду с двумя основными пиками она имеет множество дополнительных, отражающих наличие теней и бликов, шумов и неоднородной чувствительности видеосенсора (рис. 2.1). На практике приходится «улучшать» гистограммы путем их предварительного сглаживания либо подсчета вклада различных пикселов в гистограмму с весами, зависящими от амплитуды градиента яркости G (i, j) в каждой точке.

Пикселы с большими значениями | G (i, j) |, по всей вероятности,

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

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

G (i, j)

1, если

G(i, j) T | G(i, j) | ;

 

 

 

0, впротивномслучае

 

 

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

55

54

нахождении основных ее пиков путем сравнения всех локальных максимумов. Этот алгоритм был успешно пример нен в СТЗ робота и состоит в следующем. После нахождения гло-3 бального максимума М0 (см. рис. 1.2) для всех локальных мак

симумов рассчитывается отношение i M i /(ml 1) где M i

значение L-го локального максимума, a mi — значение глобаль ного минимума в диапазоне между глобальным максимумом и рассматриваемым локальным. Тот из локальных максимумов, для

которого значение

L

окажется наибольшим, выбирается в каче-

 

 

стве второго основного пика гистограммы (пик со значением M 3

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

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

Локальный порог обычно вычисляют с помощью некоторых операторов, работающих в сравнительно небольшом окне, которое накладывается на окрестность рассматриваемого пиксела. Можно, например, усреднять яркость по окну размером 4x4 и сравнивать среднюю яркость в данной точке (i, j) со средней яркостью элементов, отстоящих от (i, j) на расстояние четырех пикселов: если средняя яркость в данной точке оказывается больше, чем в двух диаметрально противоположных относительно нее точках (по любому из рассматриваемых направлений), то пиксел (i, j) относят к объекту; в противном случае — к фону. Еще в одном из алгоритмов бинаризации с локальным порогом используется формула

 

 

 

 

 

 

 

G (i, j)

1, если

G(i, j)

G(i, j)

D(i, j);

 

 

 

 

 

 

 

0, впротивномслучае

 

 

где D (i, j) 0,5[G(i, j)

G(i 1, j)

G(i, j)

G(i 1, j)]

G (i, j) - среднее значение яркости на выбранном окне.

Фактически локальный порог используется и в простом алгоритме, широко распространенном в СТЗ роботов, когда диапазоны яркости фона и объектов существенно перекрываются. При этом вводят два глобальных пороговых значения Тн и Тв; пикселы, для которых G (i, j) < Тн, заведомо причисляют к фону, пикселы с G (i, j) > Тв — к объекту, а «сомнительные» точки, где Тн <= G (i, j) <= Тв, классифицируют с помощью логических процедур, например, относят к тому классу, куда попало большинство соседей данной точки, уже прошедших бинаризацию.

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

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

56

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

Фактически мы уже приступили к описанию методов предварительной обработки изображений в ЭВМ. Прежде чем подробнее остановиться на этом важном вопросе, уточним терминологию. Будем говорить, что некоторый блок осуществляет обработку изображения, если как на его входе, так и на его выходе имеют место изображения (двумерные функции яркости), причем изображение на выходе представляет собой в каком-то смысле «улучшенное» преобразование входного. Если же на вход блока поступает изображение, а на его выходе получается определенная совокупность количественных и/или качественных характеристик этого изображения, то имеет место операция описания изображений.

Предварительная обработка изображений. Эта группа опера-

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

Алгоритмы коррекции обнаруженных геометрических искажений, обусловленных, например, отклонением оптической оси объектива от перпендикуляра к рабочей плоскости, аберрациями оптической системы и другими причинами, основаны на двумерных геометрических преобразованиях изображения. Новое изображение, получается, по формулам вида x' (x, y); y' (x, y) , где функции

, выбирают так, чтобы максимально скомпенсировать

587

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

обратное преобразование x (x', y'); y (x', y') , определяющее

положение каждой точки нового изображения на плоскости исходного изображения. Затем по значениям яркости G (i, j) в узлах исходной сетки, применяя любой интерполяционный метод, находят яркость вспомогательных точек плоскости (х, у), которые соответствуют искомым узлам нового изображения (i', j).

Ввиду громоздкости такого метода в СТЗ роботов чаще применяется упрощенная методика коррекции систематических искажений введенного изображения. Предполагается, что воспринимаемая функция G (i, j) представима в виде F (i, j) E (i, j), где F (i, j)—«истинное» изображение, а Е (i, j) определяет искажения в узлах сетки. Функцию Е (i, j) получают экспериментально, вводя калибровочное изображение строго однотонового фона. После этого можно рассчитать F (i, j), поэлементно устраняя вклад искажений Е (i, j) в функцию G (i, j). Аналогичный алгоритм используется в случае не мультипликативных, а аддитивных искажений.

Путем должного подбора Вспомогательного преобразования шкалы яркости вида G' (G) удается добиться повышения

контрастности изображения в желаемом диапазоне значений яркости. Так, если обнаружено, что уровни яркости пикселов рабочей области чаще всего попадают в диапазон А, а за пределами этого диапазона оказываются редко, то можно растянуть А (т. е. сжать остальные диапазоны яркости) и тем самым увеличить контрастность рассматриваемого изображения.

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

Пусть G(i, j) — функция, получаемая путем локального

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

G (i, j) прибавить разность G (i, j) - G(i, j) . Действительно, по-

скольку в функции G(i, j) низкие пространственные частоты исход-

ного изображения G сохраняются с достаточной точностью, а высокочастотные компоненты подавлены, то в разности G (i, j) -

G(i, j) , наоборот, оказываются удалены низкие пространственные

частоты. Поэтому в выражении G + (G (i, j) - G(i, j) )

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

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

Дискретное Фурье-преобразование, реализуемое программным путем, дает спектр Г (L, m) функции яркости G (j, k) в соответствии со следующей формулой:

 

1

nx 1ny 1

 

l

 

m

 

(l, m)

 

G( j, k) exp[ 2 i( j

k

)]

 

 

 

 

 

nx ny l 0 m 0

 

nx

 

ny

Обозначив Фурье-преобразование F, определим обратное преобразование, позволяющее получить функцию

nx 1ny 1

 

l

 

m

 

G( j, k)

(l, m) exp[2 i( j

k

)]

 

 

l 0 m 0

 

nx

 

ny

Введем функцию Н(/, т), задающую линейный пространственный фильтр. Произведение спектра Г (/, т) и этой функции определит Фурье-образ на выходе фильтра Г0 (/, т)= Г (/, т) x Н (/, т), откуда можно получить выходную функцию яркости следующего вида:

59

Источник: https://studfile.net/preview/16568778/