УДК 004.932.2
СПОСОБ АВТОМАТИЧЕСКОГО ОБНАРУЖЕНИЯ ОБЪЕКТОВ НА МОРСКОЙ ПОВЕРХНОСТИ В ВИДИМОМ ДИАПАЗОНЕ
В.А.Тупиков, В. А. Павлова, В. А. Бондаренко, В. А. Александров
Предлагаются способ и алгоритм автоматического обнаружения и сопровождения объектов на морской поверхности без использования жёстко запрограммированных эталонных изображений. Алгоритм основывается на пространственно-временном анализе потока полутоновых изображений видимого диапазона с оптико-электронной системы, установленной на борту безэкипажного катера.
Ключевые слова: автоматическое обнаружение, автосопровождение, пространственно-временной анализ, безэкипажный катер.
Введение. Автоматическое обнаружение объектов с помощью систем технического зрения - актуальная задача как для гражданского, так и военного применения. Данная задача не имеет на данный момент чёткого универсального решения и частично разрешается только для определённых условий. Так, автоматическое обнаружение целей хорошо отработано в радиолокационных системах [1, 2], а также в тепловизионных системах обнаружения воздушных целей [3, 4].
Однако объекты интереса могут быть неотличимы от фона в инфракрасном диапазоне, а в некоторых задачах отсутствует возможность использовать активную радиолокацию ввиду зашумлённости радиоканала или необходимости соблюдать скрытность. Вдобавок к этому, во многих случаях невозможно заранее заложить эталонные изображения всех интересующих объектов, что накладывает на систему автоматического обнаружения дополнительные ограничения.
При такой постановке задачи необходимо анализировать информацию, поступающую с пассивного устройства - оптико-электронной системы (ОЭС) наблюдения в видимом диапазоне, при этом ограничившись лишь формальным описанием некоторых характеристик типовых объектов (размеры, параметры формы).
Предложенный способ обнаружения целей основан на построении модели ключевых объектов сцены М0 на основе данных о количестве, положении и характеристиках объектов, получаемых при последовательной обработке каждого кадра видеопоследовательности.
Способ предполагает два этапа анализа, выполняющиеся при обработке каждого изображения - пространственный и временной. На этапе пространственного анализа происходит обработка текущего кадра видеопоследовательности, а его результатом является некоторый вектор подоз-
105
рительных объектов. На этапе временного анализа результаты пространственного анализа сравниваются с текущей моделью ключевых объектов сцены, после чего модель уточняется и обновляется.
Сформулируем модель типовой морской сцены. Будем считать, что водная поверхность и небо представляют собой пересекающиеся неравномерно освещённые поверхности, линия пересечения которых является прямой. Объекты, представляющие интерес для системы автоматического обнаружения, могут находиться на водной поверхности или в небе и приблизительно сохраняют своё положение, габариты, форму и освещённость на двух соседних кадрах, снятых с небольшим промежутком времени. В то же время различные помехи на морской поверхности, такие, как блики и волны, достаточно быстро меняют свою конфигурацию и освещённость.
На основе этих упрощений можно сформулировать представление о модели М0 ключевых объектов сцены:
М.
о
О №)
где О£ - вектор объектов модели сцены (далее - вектор объектов модели), - вектор весов, соответствующих каждому объекту вектора модели О^ .
При обработке первого кадра каждый из векторов пуст. На этапе пространственного анализа формируется вектор подозрительных объектов
кадра О = (01,02,...,оп) (далее - вектор объектов кадра). На этапе временного анализа формируется первое приближение модели М0, в вектор О$ заносятся обнаруженные объекты из О , а соответствующие им веса в векторе устанавливаются равными единице. При обработке последующих кадров видеопоследовательности модель М0 уточняется каждым новым
поступающим вектором О . В процессе уточнения модели веса объектов могут увеличиваться или уменьшаться. В случае, когда вес объекта достигнет некоего максимального значения №тах, будем считать этот объект
достоверно обнаруженным.
Рассмотрим подробно каждый из этапов анализа изображения. 1. Пространственный анализ изображения
Пространственный анализ состоит из следующих этапов:
- предобработка, полутоновая эрозия и дилатация;
- бинаризация изображения;
- определение положения линии горизонта;
- поиск и выделение объектов;
- фильтрация и анализ вектора объектов.
1.1. Предобработка, полутоновая эрозия и дилатация
Представим полутоновое изображение как дискретную функцию яркости в двумерном пространстве:
I = i у), x е [0, M], у е[0, N1
где z(x,у)е [Kmjn, Kmax ] - яркость изображения в точке у), Kmjn - минимальная яркость изображения, Kmax - максимальная яркость изображения, M и N - ширина и высота изображения соответственно.
Рассмотрим простой случай с плоским квадратным структурирующим элементом Ь , определяемым как
' 0, у)е B, -¥, (x, уB,
где Б - двумерная область (скользящее окно) на изображении.
Ширину квадратного окна Б будем называть апертурой морфологической операции. Тогда эрозией I у) - плоским структурирующим элементом Ь в каждой точке I у) - будет минимальное значение яркости изображения в окрестности этой точки (окне) Б, определяемой структурирующим элементом Ь, центрированным относительно точки I у):
[I- Б](^ у) = т1П ^,Ьу )еБ {1 (x + ^, x + ЬУ )}.
Аналогично можно сформулировать понятие дилатации изображения:
[1 + Б](x, у) = тт ^,Ьу)е Б {1 (x - ^, x - Ьу )}.
Комбинирование операций эрозии и дилатации в одинаковой или различной апертуре позволяет снизить уровень помех на изображении и подчеркнуть потенциальные цели. В зависимости от условий наблюдения и задач, поставленных перед системой автоматического обнаружения, могут быть применены и другие способы предобработки [12].
1.2. Бинаризация изображения
Бинаризация изображения выполняется с целью отделения информативных объектов сцены от фона изображения по некоторому критерию. Бинарное изображение 1ып - изображение, элементы которого могут принимать только одно значение из двух возможных. В дальнейшем будем называть пиксели фона тёмными, а пиксели бинарного объекта - светлыми.
Если производительность вычислительной системы достаточно высока, для эффективного обнаружения объектов строятся разные бинарные изображения. Так, удобно использовать контурное бинарное изображение для поиска линии горизонта, а для поиска и выделения объектов на изображении формировать бинарное изображение, используя алгоритмы, основанные на анализе уровня локального контраста [9]. Если вычислитель-
107
Ь и, у)
ная мощность ОЭС безэкипажного катера (БЭК) не позволяет строить сразу два бинарных изображения в реальном времени, можно использовать только контурный метод.
Выделение контуров на предобработанном изображении осуществляется путем свёртки изображения с одной (фильтры Собела, Превитта и д.р.) или двумя матрицами дифференцирования по вертикали и по горизонтали [6, 8, 12]. Свёртка позволяет получить значение градиента в каждой точке изображения по двум направлениям:
= I (х, у) * нx,
Су = I (х, у) * ы
У
Матрицы, с которыми производится свёртка, могут быть различного вида, например:
-1 0 1 -1 -1 -1
Нх = -1 0 1 , НУ = 0 0 0
-1 0 1 1 1 1
1Ып (х У) =
Суммарный градиент в каждой точке будет определяться как
О(х У) = рх(х У^ + \ву(х У) .
Бинарное контурное изображение будет
СО, 0(х, У) < Т, [1, С(х, У) > Т,
где Т - порог, определяемый на основе среднего значения градиента, -
Т = Сavg * Тс ,
где Тс - некоторая константа, вычисляемая эмпирически для данной ОЭС.
Если строятся два бинарных изображения, то первое, основанное на вычислении градиентов, используется для нахождения линии горизонта и устанавливается с достаточно низким порогом бинаризации для достоверного выделения линии горизонта. Второе бинарное изображение, основанное на анализе локальных контрастов, используется для нахождения ограниченных зон равномерной яркости, контрастных пятен, анализ которых даёт больше результатов, чем контуры объектов. Рассмотрим способ построения такого бинарного изображения.
Оригинальный метод был приведён в работе [9]. Рассмотрим полутоновое изображение I (х, у), в котором I (х, у )е [0,255] - яркость пикселя в точке (х, у). Целью локальных методов пороговой классификации является определение порога ? (х, у) для каждого пикселя так, чтобы было
1Ь1п (х> у) =
0, если ¡(х,у) £ ^(х, у), 255, иначе. 108
В работе [3] порог t (x, y) вычисляется с использованием среднего m(x, y) и стандартного s(x, y) отклонений, вычисленных в окне с центром
в точке (x, y) :
t (x, y ) = m( x, y)
1 + k
s(x, y) _ 1Л R
(1)
где к - подстроечный параметр, принимающий положительные значения в диапазоне [0.2...0.5], R - максимальное значение стандартного отклонения (для полутонового изображения R = 128).
Использование значений средней яркости и стандартного отклонения в локальной окрестности позволяет подстраивать значение порога согласно контрасту в локальной окрестности пикселя, что позволяет определять локально контрастные зоны в сценах различной освещённости.
Однако вычисление локальных характеристик в окрестностях каждого пикселя чрезвычайно трудоёмко. Так, при реализации данного способа без модификаций его асимптотическая вычислительная сложность для
квадратного окна размером W х W составит O(W MN) для изображения размерностью M х N . С целью ускорения вычислений локальных характеристик, независимо от [10], был разработан способ, основанный на вычислении интегрального изображения.
Интегральное изображение I¡nt - изображение, в котором яркость
пикселя в точке (x, y) равна сумме яркостей всех пикселей оригинального изображения, предшествующих по строкам и столбцам точке (x, y):
x y
lint (x, y) = X X I(u, v).
u=0v=0
Интегральное изображение любого полутонового изображения может быть эффективно вычислено за один проход [14, 15]. Имея интегральное изображение, можно вычислить локальное среднее значение яркости в окрестности любой величины, используя лишь несколько арифметических операций:
m(x, y) = (lint (x + W¡2, y + W/2)( )+ Imt (x - W¡2, y - W¡2) -
- Iint (x - W¡2, y + W/2) - Iint (x + W¡2, y - W/2))/W 2 .
Стандартное отклонение, в свою очередь, определяется как 1 x+W/ 2 y+W/ 2/ 2 9x
-2 X X (i(u, v)2 - m(x, y)2). W u=x-W/2 v=y-W/2
s(x, y )2 =
Раскрыв скобки, получим r x+W/2
X
vu=x_W/2 v=y_W/2
s(x, y )2 =
1
W
2
y+W/2 2 2 2
X i(u, v)2 _ W m(x, y)2
Для вычисления суммарной квадратичной яркости в окне необходимо построить второе интегральное изображение, в котором яркость пикселя в точке (х, у) равна сумме квадратов яркостей всех пикселей оригинального изображения, предшествующих по строкам и столбцам точке
(х у):
2 х у 2
1п (х,у) = I 11 (и,V).
и=О V=О
Обозначим Тщ сумму всех пикселей квадратичного интегрального изображения в окне Ж х Ж с центром в точке (х, у):
Тщ = 1п (х + Ж/2, у + Ж/2) + 1П (х - Ж/2, у - Ж/2) -
- 1п (х - Ж/2, у + Ж/2) - (х + Ж/2, у - Ж/2), тогда получим
о(х, у)2 (т - Ж2т(х, у)2), Ж 2
Т
о(х, у )2 =-^2 - т( х, у )2.
Ж 2
Таким образом, вычисление порога , (х, у) по формуле (1) сводится к вычислению нормированных сумм по двум интегральным изображениям.
Поскольку интегральные изображения 1п и 1п вычисляются один раз для обработки одного кадра, их использование позволяет значительно снизить вычислительную сложность метода построения бинарного изображения на основе локальных адаптивных порогов. Данный метод бинаризации применительно к обнаружению объектов на практике работает лучше, чем контурный метод на основе бинаризации по градиентам.
1.3. Определение положения линии горизонта
Имея параметры линии горизонта, можно отделить объекты, находящиеся на горизонте, от фона, также можно сделать вывод о типе обнаруженного объекта, в зависимости от его положения относительно линии горизонта.
Существуют хорошо зарекомендовавшие себя алгоритмы поиска линий на изображениях, например, алгоритмы, основанные на преобразовании Хафа [12, 16]. Однако в условиях наблюдения на море количество линий, выделяемых подобными алгоритмами, может быть довольно велико, и не обязательно самая длинная из них будет искомым горизонтом. Так, волны и пена создают довольно обширные области равномерной высокой и низкой яркости, что может приводить к появлению протяжённых светлых областей на бинарных изображениях.
С учетом этих факторов, был разработан новый алгоритм поиска линий, который, сканируя бинарное изображение сверху вниз в заданном диапазоне углов поворота линий относительно горизонтали d е[-а;+а], находит только те линии, над которыми в некоторой окрестности есть пустое пространство (темные пиксели на бинарном изображении).
Для каждой линии Ьу а, определяемой уравнением прямой f (х,у),
смещённой по вертикали относительно начала координат на у и повёрнутой на угол а , определяется её длина как сумма светлых пикселей бинарного изображения на линии:
м
Ьу,а = 11Ып (X у)). х=0
Для всех линий при последовательном обходе изображения по вертикали строится весовая функция следующего вида:
Ьуа тт{Яуа} +1 г ы Л
ЖЬ = к1-^-+ к2--+ к3
'а " '1 тах{а}
±тах{Ьу,а} Яу,а+1
1 - а
где к1, к2 , к3 - коэффициенты, определяемые в зависимости от условий эксплуатации системы (наличие или отсутствие гиростабилизированной платформы, балльность волнения, условия видимости и т.д.), причём к1 + к2 + кз = 1, Яу а - число разрывов на линии, устанавливаемых при
подсчёте её длины.
Таким образом, наибольший вес будут иметь линии с наибольшей длиной, наименьшим числом разрывов и наиболее близкие к горизонтальным. Линия с наибольшим весом принимается как линия горизонта.
Если длина линии с наибольшим весом больше некоторого порога Ьу а > Ьтп, то линия горизонта считается обнаруженной.
1.4. Поиск и выделение объектов
Введём понятие бинарного объекта. Бинарным объектом о( S, Я, р) назовем группу пикселей на бинарном изображении ¡ып, имеющую общее количество светлых пикселей (площадь) £, описывающий прямоугольник Я и вектор характеристик объекта (центр масс, эксцентриситет и др.) р .
В общем случае пиксели бинарного объекта удовлетворяют правилу 8-связности [7, 12]. Условие 8-связности означает, что каждый пиксель объекта имеет хотя бы один пиксель, примыкающий к нему по ребру или углу, то есть в окрестности радиусом в один пиксель.
Все бинарные объекты, обнаруженные на текущем кадре, заносятся
в вектор объектов кадра О = (01,02,...,оп). В начале процедуры анализа кадра данный вектор пуст.
Рассмотрим две ситуации при поиске объектов на бинарном изображении. Если на изображении была обнаружена линия горизонта на предыдущем шаге, то в первую очередь проводится анализ объектов, находящихся на линии горизонта. В противном случае шаг 1.4.1 пропускается, и алгоритм переходит к шагу 1.4.2.
1.4.1. Поиск и выделение объектов на линии горизонта
Как правило, контуры потенциальных объектов сливаются с линией горизонта и на бинарном изображении представляют собой единый бинарный объект большой протяжённости.
Для того чтобы определить, есть ли на линии горизонта объекты, производится сканирование вдоль линии горизонта у = кх + Ь с параметрами к и Ь, определёнными на предыдущем шаге. При сканировании вычисляется средняя толщина линии горизонта Нау^ и строится карта высот
бинарных объектов в некоторой окрестности от линии горизонта.
Карта высот строится следующим способом. Для всех х е [0;М], где М - ширина изображения, производится обход от точки ух + = уо + Ну до
ух_ = уо - Ну, где уо - ордината линии горизонта при данном х, Ну - высота зоны поиска. Во время данного сканирования сверху вниз определяются первая и последняя яркие точки, разница ординат которых и составит высоту бинарного объекта при данном х. Таким образом, если в некоторой окрестности присутствует объект, то результирующая карта высот будет иметь вид, например:
Н = [...3,3,4,6,8,13,13,14,12,8,6,5,5,3,3...],
при этом средняя толщина горизонта будет Н= 3 .
Имея значение средней толщины горизонта и карту высот бинарных объектов на горизонте, можно провести сканирование карты высот и её подробный анализ. Если отклонение высоты при данном х больше некоторого критерия Н > Нгнг, то можно считать, что в этой точке на уровне горизонта начинается некоторый объект. Если данный объект первый, обнаруженный при сканировании, то критерий Н^г = Н+ Нк, где Нк - малая пороговая константа. В противном случае Н^г = Н+ Н_, где Н_ -
высота последнего (правого при сканировании слева направо) столбца предыдущего объекта. Если обнаружено начало объекта, то при дальнейшем сканировании начинается подсчёт средней, минимальной и максимальной высот объекта. Как только высота объекта станет меньше пороговой Нг £ Ннг , фиксируется окончание объекта, а значение порога Нкт = На^ + Н_1 пересчитывается. Если ширина обнаруженного таким
образом объекта больше минимально возможной, а соотношение сторон его описывающего прямоугольника Я попадает в определённые рамки, ус-
112
танавливаемые для обнаруживаемых объектов (т.е. объект не может быть слишком вытянутым по вертикали или по горизонтали), то объект о. заносится в вектор объектов кадра O.
Также на объект могут быть наложены дополнительные ограничения, например, неравномерность его высоты должна быть больше определённого порога, для того чтобы снизить влияние волн, бликов, объектов береговой инфраструктуры на горизонте.
1.4.2. Поиск и выделение самостоятельных объектов
Помимо рассмотрения объектов на линии горизонта, а также в случаях, когда положение линии горизонта определить не удалось, необходимо рассмотреть общий случай поиска и выделения объектов.
Для разметки и выделения связных объектов на бинарном изображении могут быть использованы рекурсивные алгоритмы с заливкой, однопроходные алгоритмы с маской и др. [17]. Скорости работы алгоритмов разметки могут значительно различаться, однако суть их работы примерно одинакова. Выполняется обход изображения по строкам и по столбцам. Если в некоторой точке (x, y) обнаружен неразмеченный пиксель, выполняются разметка данного пикселя (перекрашивание или занесение в таблицу), а также обход и разметка всех достижимых по критерию 4-связности или 8-связности соседних пикселей. В процессе разметки определяются площадь бинарного объекта и описывающий его прямоугольник, которые
затем подвергаются пороговой проверке:
r . < < r
'm.n — п — 'max, RY
S < S < S
^m.n — ° — °max■>
RX ^ Xmin, RY ^ Ymin,
где Rx - ширина описывающего объект прямоугольника, Ry - высота описывающего объект прямоугольника, Xm.n и Ym.n - минимальная ширина и высота объекта соответственно, Sm.n и Smax - минимальная и максимальная площади бинарного объекта, rm.n и rmax - минимальное и максимальное соотношения ширины к высоте описывающего объект прямоугольника.
Данные пороговые значения подбираются в зависимости от параметров ОЭС и ожидаемого размера объекта и позволяют отсеять большую часть мелкоразмерных шумов, волн и т.д. Если бинарный объект o. (S, R) удовлетворяет выбранным критериям, то он заносится в вектор объектов кадра O.
1.5. Фильтрация и анализ вектора объектов
На данном этапе вектор объектов кадра О = (с»1,02,..., оп), полученный в результате выполнения предыдущих этапов, подвергается дополнительному анализу. Так как на бинарных изображениях контуры объектов зачастую могут распадаться на разные контуры подобъектов, это приводит
к избыточности в векторе объектов кадра О.
Для устранения этой избыточности выполняются обход вектора
объектов кадра О и попарное сравнение всех хранящихся в нём объектов. Для каждой пары объектов о^ и о ^ проверяется выполнение условий:
а) описывающий прямоугольник объекта о^ должен содержит хоть одну из угловых точек описывающего прямоугольника объекта о ^ или наоборот;
б) Евклидова дистанция между центрами описывающих объекты о^ и о^ прямоугольников меньше определённого порога В < е. При этом величина е может быть определена, например, на основе длины диагонали наибольшего из прямоугольников.
Если хотя бы одно из условий выполнено, объекты объединяются, их площади и описывающие прямоугольники суммируются и записываются в объект оI, в то время как объект о^ удаляется из вектора О.
После окончания процедуры слияния для каждого объекта результирующего вектора объектов ок е О с описывающим прямоугольником Я вычисляются центральные моменты тр( вплоть до второго порядка, на
основе которых определяются координаты центра масс объекта, его ориентация и эксцентриситет.
Начальные моменты объекта на изображении 1ып (х, у)
Mpq = I I хРу(*1Ып (х, у).
хеЯуеЯ
Центр масс объекта
тс =(х у),
где
х = М10, у = М0!.
М 00 М 00 Центральные моменты объекта на изображении 1ып (х, у)
тР( = I I(х _х)Р(у _у)(1Ып(х,у).
хеЯуеЯ
Эксцентриситет может быть определён по собственным числам матрицы ковариации изображения 1ып (х, у) в области (х, у) е Я :
114
М20 + ^02
л/\ + (М-20 ~ М-02 ) 2
2
, тогда эксцентриситет можно определить как
На этом этапе выполнения алгоритма заканчивается пространствен-
ный анализ и начинается временной.
2. Временной анализ изображения
Целью временного анализа является формирование модели
М0 - на начальных этапах и её уточнение на дальнейших. Уточ-
нение модели проходит в четыре этапа:
1. Выполнение процедуры угасания, если вектор объектов модели
0$ не пуст.
2. Обновление модели М0 на основе полученного на этапе пространственного анализа вектора объектов кадра О.
3. Автосопровождение объектов из вектора 0$ по определённому условию, если их наличие в текущем кадре не удалось достоверно подтвердить.
4. Анализ модели М0 и принятие решения о достоверном обнаружении некоторых или всех объектов из 0$ .
2.1. Процедура угасания
После каждых п кадров вес е каждого из объектов 07- е О^ уменьшается на единицу:
где 2 - размер векторов О5 и .
Если после декрементирования вес объекта 07 стал отрицательным
и>7- < 0, то объект 07 исключается из вектора 0$ 9 соответствующий ему
вес щ исключается из вектора весов Ц7$, размеры векторов 0$ и уменьшаются на единицу. Таким образом, со временем веса всех объектов угасают, и, если вес объекта становится достаточно мал, принимается решение о потере объекта. Выбор величины частоты угасания зависит от кадровой частоты / ОЭС и может быть определён по формуле:
щ = щ -1, / = 0, 2,
п-—-—
где к у - числовая константа прямо пропорциональная кадровой частоте ОЭС.
Так, в данной работе для кадровой частоты ОЭС БЭК / = 15 значение ку было взято равным половине кадровой частоты ОЭС: ку = 7.5, что
даёт п = 13. При таком значении п угасание весов производится каждый
третий кадр, что позволяет адаптировать работу алгоритма к большим интервалам между поступающими кадрами. 2.2. Обновление модели М0
Если вектор объектов модели О$ пуст, то все обнаруженные на текущем кадре объекты из вектора О переносятся в вектор О$, их соответственные веса в векторе устанавливаются равными единице.
Если же вектор О$ уже содержит модели некоторых объектов, то выполняется попытка добавить каждый объект оI е О в вектор О$ . Для "ог- е О находится такой объект Oj из О$ , что Евклидова дистанция между центрами масс объектов о^ и Oj будет наименьшей:
Втт о, о}) = шт{о(ог-, О)}. Если при этом эта дистанция окажется больше определённой максимальной величины Втп >е¿тах, то объект оI добав-
ляется в вектор , в векторе создаётся соответствующий ему вес Wj = 1. Если От1п (ог-, 0j) <е (тах, то производится оценка подобия объектов оI и Oj:
з. /
1 _ Рз < ^ < 1 + Рз, 1 _ Ря < V < 1 + Ря ,
/ о
1 _ ре < V < 1+ре,
/ е]
где Рз, Ря, Ре - критерии подобия, Зг- и Sj■ - площади объектов о^ и Oj соответственно, ц и rj - соотношение сторон описывающих каждый из объектов прямоугольников (отношение ширины к высоте), е^ и ej - эксцентриситеты объектов.
Критерии подобия Рз, Ря и Ре подбираются эмпирически для данной ОЭС в зависимости от предполагаемых условий эксплуатации системы. Количество оцениваемых параметров может быть больше, например, сравнивать можно также полутоновые характеристики объектов и/или масштабно-поворотно инвариантные моменты Ху [12, 13].
116
Если сравниваемые объекты удовлетворили всем критериям подобия, то производится объединение объектов о^ и Oj. Все параметры объекта Oj обновляются (заменяются) параметрами объекта о^, после чего о^ удаляется из вектора О. Вес Wj, соответствующий объекту Оj, инкремен-тируется Wj = Wj +1 в случае, если Wj < Жтах, где Wmax - максимально
допустимый вес объекта, задающий компромисс между скоростью обнаружения целей и частотой ложных срабатываний; Wmax необходимо выбирать прямо пропорционально или равным кадровой частоте ОЭС.
Если вес объекта достигает максимально допустимого, то часть полутонового изображения, ограниченная описывающим объект Oj прямоугольником ЯI, сохраняется как эталон данного объекта и прикрепляется к его модели в векторе Оз, а объект Oj, вес которого достиг максимального значения Wj = Wmax, считается достоверно обнаруженным.
2.3. Автосопровождение
Для всех достоверно обнаруженных объектов Ок е Оз (то есть тех объектов модели сцены, вес которых ранее хоть раз достигал максимально допустимого), веса которых не были обновлены на этапе 2.2, в случае, если Wk = Wmax _ 1, выполняется процедура автосопровождения, использующая полутоновой эталон объекта, прикреплённый к модели данного объекта в векторе Оз .
В данном случае могут быть использованы любые алгоритмы автосопровождения. В предложенном алгоритме для больших эталонов (размером более 128x128 пикселей) используется алгоритм фазовой кросс-корреляции [7, 12] с уточнением, а для малых эталонов (размером менее 128x128 пикселей) - классический алгоритм нормализованной кросс-корреляции полутоновых изображений [7, 11, 12]. Если в процессе бинаризации строилось интегральное изображение , то на данном этапе его удобно использовать для ускорения вычисления кросс-корреляции. Если объект был найден коррелятором, т.е. максимальный коэффициент корреляции в зоне поиска больше определённого порогового значения Сщ^ - Стп, то вес Wk объекта Ок инкрементируется и становится максимальным:
= (Wmax _1) + 1 = Wmax .
2.4. Анализ и принятие решения
Данный этап является финальным в предложенном алгоритме. Из вектора объектов Оз выбираются те объекты , веса которых равны максимальным Wdet = Wmax. Данные объекты заносятся в результирующий
вектор , который и является результатом работы алгоритма.
117
Реализация алгоритма и его экспериментальная проверка
Большинство этапов предложенного алгоритма допускает многопоточную реализацию. Так, алгоритм был реализован с использованием технологий массового параллелизма CUDA, что позволило обрабатывать тестовые изображения разрешением 1920x1080 в реальном времени на скорости более 25 кадров в секунду.
Конфигурация тестовой ЭВМ: Процессор Intel Core i5-4440 3.1 Ghz Видеокарта GeForce GTX 750 Ti (640 Cuda cores) 2 GB
На рис. 1 представлены результаты работы многопоточной реализации алгоритма по тестовой видеопоследовательности. Автоматически обнаружены четыре объекта, а также определено положение линии горизонта на изображении.
Рис. 1. Результат автоматического обнаружения множественных объектов и линии горизонта по тестовой видеопоследовательности
Система автоматического обнаружения в составе оптико-электронной системы на борту безэкипажного катера, сформированная на основе данного алгоритма, по изображениям разрешением 768x576 показала производительность до 100 кадров в секунду.
На рис. 2 и 3 представлены результаты алгоритма автоматического обнаружения объектов по изображениям с оптико-электронной системы бэзэкипажного катера.
Рис. 2. Результат обнаружения одиночного объекта
Рис. 3. Результат обнаружения группового объекта
119
Результаты экспериментальной проверки подтвердили работоспособность предложенного способа и реализующего его алгоритма на борту БЭК.
Список литературы
1. Обнаружение и распознавание объектов радиолокации: монография / под ред. А. В. Соколова. М.: Радиотехника, 2006. 176 с.
2. Семенов А. Н. Обнаружение радиолокационных целей с помощью преобразования Хафа // Наука и образование. МГТУ им. Н.Э. Баумана. Электронный журнал. 2014. №12. С. 619 - 632.
3. Якименко И.В., Жендарев М.В. Способ пространственной фильтрации тепловых объектов на коррелированном атмосферном фоне // Журнал «Наукоемкие технологии». 2009. №3. С. 67 - 72.
4. Дмитриенко А.Н., Суворов C.B. Применение адаптивного байесовского подхода для двухспектрального обнаружения слабоконтрастных объектов в инфракрасном диапазоне // Вестник МГТУ им. Н.Э. Баумана. Приборостроение. 2002. №2(47). С. 37 - 46.
5. Фурман Я.А., Юрьев А.Н., Яншин В.В. Цифровые методы обработки и распознавания бинарных изображений. Красноярск: Изд-во Красноярского университета, 1992. 248 с.
6. Красильников Н.Н. Цифровая обработка 2D- и 3D-изображений: учеб. пособие. СПб.: БХВ-Петербург, 2011. 608 с.
7. Баклицкий В. К. Корреляционно-экстремальные методы навигации и наведения. Тверь: ТО «Книжный клуб», 2009. 360 с.
8. Методы автоматического обнаружения и сопровождения объектов. Обработка изображений и управление / Б.А. Алпатов, П.В. Бабаян, О.Е. Балашов, А.И. Степашкин. М.: Радиотехника, 2008. 176 с.
9. Sauvola J., Pietikainen M. Adaptive document image binarization. Pattern Recognition, 2000. №33. P. 225 - 236.
10. Shafait F., Keysers D., Breuel T.M. Efficient implementation of local adaptive thresholding techniques using integral images // Proc. SPIE. 2008. Vol. 6815. Document Recognition and Retrieval. XV.
11. Briechle K., Hanebeck U.D. Template matching using fast normalized cross correlation // Proc. SPIE. 2001. Vol. 4387. Optical Pattern Recognition. XII. P. 95 - 103.
12. Gonzalez R.C., Woods R.E. Digital Image Processing. 2nd edition, Prentice-Hall, 2002. 793 p.
13. Hu M.K. Visual Pattern Recognition by Moment Invariants // IRE Trans. Info. Theory. 1962. Vol. IT-8, P. 179 - 187.
14. Viola P., Jones M.J. Robust real-time face detection // Int. Journal of Computer Vision 2004. Vol. 57(2). P. 137 - 154.
120
15. Crow F. Summed-area tables for texture mapping // In Proceedings of SIGGRAPH. 1984. Vol. 18(3). P. 207 - 212.
16. Patent № 3,069,654 U.S. Method and means for recognizing complex patterns / Hough, P.V.C. 1962.
17. One Scan Connected Component Labeling Technique / Abubaker A., Qahwaji R., Ipson S., Saleh M. // Signal Processing and Communications. 2007. P.1283 - 1286.
Тупиков Владимир Алексеевич, д-р техн. наук, проф., зам. ген. директора, директор, tupikovanppame.ru, Россия, Санкт-Петербург, АО «Научно-производственное предприятие ««Авиационная и морская электроника»»
Павлова Валерия Анатольевна, канд. техн. наук, зам. директора, pavlovaanppame.ru, Россия, Санкт-Петербург, АО «Научно-производственное предприятие « Авиационная и морская электроника»,
Александров Владимир Александрович, вед. науч. сотрудник, alexvlad3amail. ru, Россия, г. Санкт-Петербург, АО ««Научно-производственное предприятие «Авиационная и морская электроника»,
Бондаренко Владимир Александрович, науч. сотрудник, shockusagmail. com, Россия, Санкт-Петербург, АО ««Научно-производственное предприятие «Авиационная и морская электроника»
AUTOMATIC OBJECT DETECTION METHOD FOR MARINE SCENES
IN VISIBLE RANGE
V.A. Tupikov, V.A. Pavlova, V.A. Bondarenko, V.A. Alexandrov
This work introduces a method and an algorithm for automatic object detection and tracking at sea surfaces. The method is based on the spatio-temporal analysis of a visible range video stream from Electro-Optical System (EOS) on board of Unmanned Surface Vehicle (USV) and does not require preset object template image for detection.
Keywords: automatic object detection, auto tracking, spatio-temporal analysis, Unmanned Surface Vehicle (USV).
Tupikov Vladimir Alekseevich, doctor of technical sciences, professor, Deputy Director General, Director, tupikova nppame.ru, Russia, Saint Petersburg, JSC "Research and Production Enterprise "Air and Marine Electronics",
Pavlova Valeria Anatolyevna, candidate of technical sciences, pavlovaa nppame. ru, Russia, Saint Petersburg, JSC "Research and Production Enterprise "Air and Marine Electronics",
Alexandrov Vladimir Alexandrovich, leading researcher, alexvlad3 a mail.ru, Russia, Saint Petersburg, JSC "Research and Production Enterprise "Air and Marine Electronics",
Bondarenko Vladimir Alexandrovich, researcher, shockusagmail. com, Russia, Saint Petersburg, JSC "Research and Production Enterprise "Air and Marine Electronics"