Перейти к:
Алгоритм распознавания летающих объектов в оптическом видеопотоке в условиях динамически изменяющегося фона
https://doi.org/10.38013/2542-0542-2022-3-92-106
Аннотация
Работа посвящена вопросам разработки алгоритма обнаружения и отслеживания летающих объектов в оптическом потоке для применения в бортовой системе технического зрения беспилотного летательного аппарата. Предложенный алгоритм позволяет обнаруживать объекты в условиях динамически изменяющегося фона в масштабе реального времени. Показан подход для оценки ограничений алгоритмов технического зрения по применимости в условиях динамически изменяющегося оптического потока.
Для цитирования:
Гришин Н.А., Баззаев А.Ф., Кудров М.А., Бухаров К.Д., Коновальчик А.П. Алгоритм распознавания летающих объектов в оптическом видеопотоке в условиях динамически изменяющегося фона. Вестник Концерна ВКО «Алмаз – Антей». 2022;(3):92-106. https://doi.org/10.38013/2542-0542-2022-3-92-106
For citation:
Grishin N.А., Bazzaev А.F., Kudrov М.А., Bukharov K.D., Konovalchik А.P. An algorithm for recognition of flying objects in the optical flow under dynamically variable background conditions. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2022;(3):92-106. https://doi.org/10.38013/2542-0542-2022-3-92-106
ВВЕДЕНИЕ
Успехи последних лет в разработке малогабаритных беспилотных летательных аппаратов (БПЛА) привели к повышению их доступности и, как следствие, широкому использованию в индустрии и коммерции. Актуальной задачей для разработки БПЛА является обеспечение безопасности во время полета. Эта проблема была успешно решена для управляемых автомобилей, и в настоящее время существуют коммерческие продукты, предназначенные для обнаружения и предотвращения движения как пешеходов, так и других автомобилей [1–5].
Разработка алгоритмов идентификации объектов для БПЛА отличается рядом проблем:
- окружающая среда трехмерна, что усложняет траекторию движения;
- летающие объекты имеют разные формы, и их можно увидеть на земле или на небе, что создает изменяющуюся обстановку;
- потенциально опасные объекты должны идентифицироваться на далеком расстоянии, что приводит к необходимости поиска мелких объектов без явно выделяющейся формы.
Решение задачи обнаружения объектов значительно малых размеров относительно всего исследуемого изображения приведено в ряде работ [6][7], в которых показана точная настройка глубоких сетей с расширенными сверточными слоями. Однако в данном случае их применимость ограничена за счет ограничений на вычислительные мощности и низкого качества изображений, связанного с размытием. Отсутствие резкости и четкости визуального образа объекта на изображении ограничивает применимость уже таких классических подходов к распознаванию образов, как Convolutional Neural Networks (сверточные нейронные сети, CNN) [8], Aggregate Channel Features (ACF) [9], Deformable Part Models (DPM) [10] и Random Forests (случайный лес) [11].
Сложная траектория и полная свобода движения летающих объектов в трехмерном пространстве не позволяют полагаться целиком на вычислительно эффективные методы, основанные на распознавании движения в видеопотоке, такие как Background Subtraction (вычитание фона) [12][24][25] или Optical Flow (оптический поток) [13][24][25], так как они могут увеличить ложные негативные результаты. Метод вычитания фона полагается на компенсацию движения самого фона, что проблематично из-за потенциально высокой скорости движения носителя. Вдобавок метод оптического потока в значительной степени зависит от качества восстановления вектора движения, что является проблемой из-за эффекта размытия и низкого качества получаемого изображения.
Так, в работе [24][25] авторы показали высокие результаты распознавания объектов в условиях дневной и ночной видеосъемки для различных погодных условий для статичного фона и движущихся объектов.
В последние годы становятся популярны гибридные методы [14–16], основанные на признаках внешнего образа и движении объекта. Данный подход хорошо показал себя в задаче по обнаружению и отслеживанию пешеходов в работе [16], где использовался оптический поток совместно с признаками внешнего вида, обрабатываемые ядром пересечения гистограмм (Histogram Intersection Kernel, HIK) совместно с методом опорных векторов (Support Vector Machine, SVM).
Таким образом, сигналы о движении объектов не являются критически важными для обнаружения. Однако их применение ограничено в условиях, когда изображение получено с помощью движущейся камеры и имеют динамически изменяющийся фон с движущимися объектами. Расширение гибридных методов в части оценки вектора движения объекта и объединения этих характеристик с внешним видом объекта, как это показано в работах [14–16][24][25], позволит существенно улучшить результаты в условиях динамически изменяющегося фона.
Данная работа посвящена разработке алгоритма распознавания летающих объектов в условиях динамически изменяющегося фона в режиме реального времени с летательного аппарата. Ключевая особенность работы заключается в разработке трехстадийного алгоритма «C-FO» обнаружения и сопровождения в реальном времени и оценке границ применимости разработанного алгоритма.
В работе приведено описание алгоритма «C-FO», стратегии подготовки данных для обучения и метода обучения алгоритмов. Разработан подход для оценки границ применимости алгоритма и приведены результаты численного моделирования.
ПОСТАНОВКА ЗАДАЧИ
Постановка задачи обнаружения и отслеживания может быть определена следующим образом. Для этого введем стохастический процесс Y(t):
(1)
где набор параметров Yt описывает позицию отслеживаемого объекта, в данном случае ограничивающий прямоугольник в измерении изображения с вложенным в него участком этого изображения, в комбинированном пространстве M признаков движения, и пространства A признаков внешнего вида c дискретным временным шагом t. Несмотря на то, что точное математическое описание движения и изображения объекта возможно, в большинстве случаев оно является вычислительно трудноразрешимым, потому процесс является стохастическим.
«Отслеживающая функция» τ осуществляет отображение признаков объекта в пространство его положений Y:
(2)
В рассматриваемой нами задаче τ формируется как сложная функция:
(3)
где X(t) – последовательность изображений из пространства Lc:
(4)
обрабатываемая функцией:
(5)
С учетом предыдущих измерений, учитываемых «отслеживающей функцией», уравнение (3) представим в следующем виде:
(6)
Использование уравнения (6) предполагает значительное использование ресурсов вычислений, поэтому на практике вводится ограничивающий параметр n:
(7)
Суть данной работы заключается в поиске оператора δ, который является алгоритмом обнаружения и отслеживания объектов.
АЛГОРИТМ ОБНАРУЖЕНИЯ И ОТСЛЕЖИВАНИЯ
Структурная схема алгоритма приведена на рисунке 1. Алгоритм состоит из трех основных частей: оценка параметров движения, гибридный классификатор и сопровождение объекта. На первом этапе кандидаты объектов генерируются путем выделения параметров движения на двух последовательных видеокадрах. На следующем этапе предлагаемые объекты классифицируются как истинные или ложные путем применения гибридного алгоритма классификации. Сопровождение истинных объектов реализовано на основе фильтра Калмана, предназначенного для стабилизации процесса сопровождения объекта. Предложенный алгоритм обладает значительно меньшей вычислительной сложностью по сравнению с существующими нейросетевыми решениями за счет применения гибридных классификаторов к предварительно выделенным областям кадра.
Рис. 1. Структурная схема алгоритма «C-FO»
Оценка параметров движения
Задача первого этапа заключается в том, чтобы сформировать перечень потенциальных объектов, которые имеют перемещение во времени на заднем плане. Для этого производится двухэтапная оценка на соответствие фона в текущем и предыдущем кадрах из видеопотока: расчет глобальной модели движения на каждом изображении, а затем выравнивание за счет модели движения. Таким образом, разница моделей движения двух последовательных изображений дает представление о подвижных объектах, имеющих непостоянное и отличающееся от фонового изменение параметров движения, что дает возможность детально изучать полученные области на предмет поиска искомых объектов путем формирования особых точек.
Модель оценки движения реализована в пять этапов: выделение и селекция точек привязки, локальная оценка движения, глобальная оценка движения, вычитание фона, извлечение особых точек.
Выбор точки привязки. На этом этапе происходит выбор набора точек, используемый для оценки глобального движения.
Сначала случайным образом выбирается K точек на исходном изображении. Для каждой точки вычисляем ее значимость по критериям детектора угла Ши-Томаси. Затем отбрасываются точки, для которых есть более важная точка на определенном расстоянии D0. Здесь обозначает Kn выделенные точки в изображении Xn.
Локальная оценка движения. Теперь определяется локальное движение для pn–1,* точек, выделенных в предыдущем шаге от предыдущего кадра Xn–1 до текущего кадра Xn.
Производится расчет векторов движения un,i для каждой точки pn–1,i, используя метод Лукаса – Канаде, предполагая, что локальное движение является оптическим потоком. В методе Лукаса – Канаде локальное движение вычисляется путем решения задачи:
(8)
где N(pn–1,i) – это вокруг точки pn–1,i. Кроме того, используется двунаправленная верификация. Для этого вычисляется обратный ход vn по методу Лукаса – Канаде:
(9)
где – соответствующая точка в текущем кадре, вычисляемая как
Затем проводится селекция точек:
Теперь количество оставшихся точек равно K`n.
Глобальная оценка движения. Следующий шаг – перестроить глобальное фоновое движение под модель преобразования перспективы. Перспективное преобразование y = T(H, x), параметризованное матрицей гомографии H, рассчитывается как:
(10)
где hi,j – это i-я строка, а j-я колонка матрицы H, x(k) – это k-я составляющая x. H – 8-параметрическая матрица с h33 всегда равным 1.
Затем Hn вычисляется с помощью перебора в глобальную перспективную трансформацию. Сначала используется алгоритм RANSAC для вычисления набора плоскостей. Здесь
и
обозначает пары точек K``n в наборе плоскостей. Затем Hn вычисляется путем решения задачи:
(11)
Вычитание фона. На этом этапе происходит вычитание движущегося фона, чтобы выделить области, в которых не произошли изменения. Это необходимо из-за того, что параметры движения движущихся объектов отличаются от модели движения фона.
Для того чтобы вычислить изображение фона, оценивается предыдущий кадр:
(12)
где – оценка предыдущего кадра, s – координаты точки. Затем вычитаемое изображение фона En–1 для Xn–1 вычисляется как:
(13)
Извлечение особых точек. На этом этапе определяются точки фона вычитаемого изображения и извлекаются области на исходном изображении и фоне вычитаемого изображении, расположенного вокруг особых точек. Вычитая расчетный фон, движущиеся объекты остаются заметными на вычитаемом изображении. Таким образом определяется местоположение областей, определяющих выделенную точку на вычитаемом фоне изображения.
Гибридный классификатор
Задача селекции истинных объектов из множества кандидатов, определенных на предыдущем этапе, решается с помощью гибридного классификатора. На рисунке 2 показана структурная схема классификатора, состоящая из трех блоков: классификатор внешнего вида, классификатор движения и AdaBoost (ансамблирование моделей).
Рис. 2. Структурная схема гибридного классификатора
Классификатор внешнего вида. На рисунке 3 приведена структурная схема архитектуры модели сверточной нейронной сети, которая является основой для классификации объектов и селекции ложных объектов.
Рис. 3. Структурная схема архитектуры классификатора внешнего вида
Архитектура нейронной сети состоит из 16 фильтров с размером сверточных ядер 3х3, после которых применяется функция активации ReLU, затем из 32 фильтров с размером ядер 3х3, активацией ReLU и операцией объединения (pooling). Аналогично применяется еще 64 фильтра. В конце сети идет полносвязный слой с функцией активации softmax, где для каждой особой точки qn,i получаем вероятность принадлежности к классу pan,i.
Также после каждой функции активации были использованы исключающие слои (dropout) и пакетная нормализация для регуляризации процесса обучения.
Классификатор движения. Разница в движении dn,i для движущегося объекта при qn–1,i между перспективным и локальным движением определяется следующим образом:
(14)
где – соответствующая точка в текущем кадре, полученная с помощью оценки параметров локального движения особых точек с помощью согласования оптического потока Лукаса – Канаде, vn,i – обратное локальное движение, которое можно вычислить с помощью уравнения (9). Кроме того, были введены следующие характеристики:
Эта разница в движении представляет собой фактическую скорость движущегося объекта по отношению к параметрам движения фона. Таким образом, можно ввести параметры движения, которые описывают характер движения объекта в оптическом потоке. Данные параметры приведены в таблице 1.
Таблица 1
Значения параметров движения объекта
После составления из данных значений вектор-признаков был обучен классификатор селекции ложных объектов, основанный на полносвязной нейронной сети. Структурная схема архитектуры данной нейронной сети представлена на рисунке 4 и состоит из 8, 16 и 32 последовательных полносвязных слоев, после каждого из которых применяется функция активации. В конце сети идет полносвязный слой с функцией активации softmax, где для каждой особой точки qn,i получаем вероятность принадлежности к классу p0n,i.
Рис. 4. Структурная схема архитектуры классификатора признаков движения
Аналогично классификатору внешнего вида после каждой функции активации были использованы исключающие слои (dropout) и пакетная нормализация для регуляризации процесса обучения.
AdaBoost (ансамблирование). На этом этапе используется принцип бустинга моделей, в частности алгоритм AdaBoost [17] для модели классификатора внешнего вида и модели селекции ложных объектов.
В качестве модели бустинга выбрана модель решающего дерева с максимальной глубиной, равной 2. Таким образом, получается вычислительно простое решение бустинга:
(15)
где gm является классификатором дерева решений, pan,i и p0n,i – вероятности, получаемые из соответствующих моделей классификации внешнего вида и селекции ложных объектов,
означает веса для ансамбля моделей.
Таким образом, финальная метка класса определяется, как:
(16)
где 1 означает, что движущийся объект при qn,i является истинным, а 0 – ложным.
Сопровождение объекта
Данный этап используется для формирования связи между обнаруженными объектами на последовательности видеокадров, чтобы установить сопровождение за объектом. Для ускорения работы алгоритма обнаружение происходит только на каждом L0 кадре. Процесс сопровождения между кадрами базируется на вычислении оптического потока и фильтре Калмана для повышения временной согласованности между кадрами видеопотока. Сопровождение объекта реализуется в три этапа: вычисление оптического потока, селекция отслеживаемых особых точек и фильтре Калмана.
Вычисление оптического потока. На этом этапе вычисляется смещение обнаруженного объекта qn,i на кадре En. Параметры контроля качества, отвечающие за поиск особых точек с помощью дескриптора, определяются с помощью d` – минимального расстояния между двумя точками и m` – максимального числа обнаруженных точек. Здесь обозначает J особых точек, извлеченных из qn,i. Затем вычисляется оптическое смещение каждой особой точки
из Xn c точкой
из следующего кадра с помощью оптического потока Лукаса – Канаде.
Селекция отслеживаемых особых точек. На этом этапе осуществляется селекция неправильно совпадающих отслеживаемых объектов (особых точек). Данная процедура позволяет исправить неточности сопоставления особых точек между кадрами с помощью вычисления оптического потока Лукаса – Канаде из предыдущего шага. Для этого используется гибридный классификатор, описанный выше.
Для каждой особой точки извлекается область 40х40 пикселей из Xn и вычисляются те же параметры движения, что описаны в таблице 1. Здесь
обозначают J` селектированных особых точек, извлеченных из qn,i. Таким образом, итоговое обнаружение определяется как среднее между оставшимися особыми точками J`.
Фильтр Калмана. На этом шаге применяется фильтр Калмана [18] для того, чтобы детектируемые объекты соответствовали когерентным временным сигнатурам, а не ложным отметкам. Фильтр Калмана предсказывает текущее состояние bn из ранее оцененных состояний с моделью перехода и обновляет текущую оценку cn с текущим состоянием bn, как показано ниже:
(17)
где An – матрица перехода, wt контролирует ошибку моделирования перехода, M – матрица измерения, и cn представляет ошибку измерения. Оценка выходного значения bn вычисляется с коэффициентом усиления фильтрации Калмана K:
(18)
где Vw и Vϵ – это ковариации по wt и ϵt соответственно.
Оценка параметров движения объекта состоит из двух частей – преобразование перспективы и разности движения по сравнению с моделью движения фона. Поэтому здесь, когда применяется фильтр Калмана, также принимается во внимание перспективное преобразование. Однако оно не является линейным, поэтому аппроксимируется с помощью аффинного преобразования. В частности, обозначается местоположение объекта и скорость как переменная состояния:
(19)
где bx и by по x и y расположены местоположения объекта, bvx и bvy – горизонтальная и вертикальная скорость. Предполагается, что параметры скорости постоянны для матриц A и M.
(20)
(21)
где hi,j – это i-я строка и j-я колонка матрицы Hn (формула 11).
Для инициализации фильтра Калмана необходимо сопоставить соответствующие объекты из оптического потока в L предыдущих кадрах и стартовый кадр, на котором начался процесс сопровождения объекта, если классификационные метки yn–L,i, …, yn–1,i положительные. Затем происходит восстановление пропущенного обнаружения объекта. Если не произошло повторное обнаружение с помощью фильтра Калмана за L, то сопровождение останавливается для выбранного объекта.
ОПИСАНИЕ ПОДХОДА ДЛЯ ОЦЕНКИ ТОЧНОСТИ ОБНАРУЖЕНИЯ И СОПРОВОЖДЕНИЯ
Оценка скорости работы алгоритма задается через среднюю скорость обработки одного кадра изображения в оптическом видеопотоке. Таким образом, среднее количество обрабатываемых кадров за 1 секунду (frames per second – FPS) является мерой скорости работы алгоритма.
В качестве метрики точности обнаружения объекта на всем видеопотоке задается F-Мера c пороговым значением метрики пересечения к объединению (Intersection-OverUnion) в 50 % (F1@0.5). F-Мера – это гармоническое среднее между мерой Precision и мерой Recall.
Определены следующие параметры оптического видеопотока для оценки условий применимости разработанного алгоритма.
1. Скорость объекта в потоке (пиксель/ кадр):
(22)
2. Ускорение объекта в потоке (пиксель/кадр^2):
(23)
3. Размер объекта в потоке (пиксель^2):
(24)
где x2 – позиция правого нижнего пикселя сегмента истинного объекта по оси OX; x1 – позиция левого нижнего пикселя сегмента истинного объекта по оси OX; y2 – позиция правого верхнего пикселя сегмента истинного объекта по оси OY; y1 – позиция левого нижнего пикселя сегмента истинного объекта по оси OY.
4. Скорость носителя (скорость фона): Vb. В данной работе определяется эмпирически для части набора данных, где известен панорамный вид обстановки (пиксель/с).
5. Эффект размытия объекта определяется формулой:
(25)
где VS – скорость затвора камеры. В связи с тем что не все базы данных указывают характеристики камеры и параметры съемки, данный параметр не всегда возможно получить.
6. Эффект размытости фона:
(26)
как и в случае с эффектом размытости объекта, не для каждого видеоряда возможно определить оценку данного параметра.
7. Продолжительность движения оптического потока (кадр) – T.
ФОРМИРОВАНИЕ ОБУЧАЮЩЕЙ И ВАЛИДАЦИОННЫХ ВЫБОРОК
Обучающая и валидационные выборки были составлены из открытых баз данных «UAV123» [19], «EPFL-UAV» [20], «MVDT» [21], «boumanUAV» [22]. Указанные базы данных отличаются типами летающих объектов, условиями наблюдения (время суток, погодные условия, высота и дальность полета носителя) и характеристиками записывающих устройств.
В качестве обучающей выборки была принята «bouman-UAV» из-за высокого качества исходных изображений (1920 на 1080 и 1280 на 960 пикселей), объемом 39 тысяч кадров.
Описание набора данных «UAV123»
Данный набор данных состоит из трех выборок.
Первая выборка содержит 103 видео файла, полученных при помощи предназначенного для профессиональной аэросъемки БПЛА DJSI 1000 с установленной камерой высокого разрешения Panasonic GH4 с Olympus M.Zuiko. Высоты полета варьируются от 5 до 25 метров.
Вторая выборка содержит 12 относительно коротких видеорядов, снятых при помощи бортовой камеры без стабилизации картинки с малого БПЛА, следующего за другим малогабаритным БПЛА. Высота полета в среднем не более 5 метров, за исключением одного полета с высотой около 40 метров. Изображения, полученные из данного поднабора, имеют низкое качество и разрешение. Вдобавок на видео присутствует много шума.
Третья выборка является синтетической. Полет был смоделирован в симуляторе БПЛА и был визуализирован при помощи Unreal Game Engine 4.
Из набора данных «UAV123» для валидации выделено 6 видеофайлов, имеющих высокое значение сигнал/шум. Кадр из указанных видеорядов приведен на рисунке 5а.
Описание набора данных «EPFL UAV»
Данный набор состоит из двух выборок: «квадрокоптеры» и «самолеты».
Первая выборка содержит 20 видео файлов с разрешением 752 на 480 пикселя, полученных при помощи БПЛА.
Вторая выборка содержит видео, содержащие БПЛА самолетного типа. Разрешение видео варьируются от 640 на 480 до 1280 на 720 пикселей. Часть данных получена при помощи стационарных наземных камер.
Из набора данных «EPFL-UAV» для валидации выделены два видеофайла, отражающие «воздушный бой» двух радиоуправляемых малых модельных самолетов. Кадр из указанных видеорядов приведен на рисунке 5б.
Описание набора данных «MVDT»
Данный набор данных состоит из пяти выборок. Видеофайлы получены при помощи стационарных несинхронизированных наземных камер различного типа: смартфоны, компактные камеры и экшен-камеры. Съемка продолжительностью от 2 до 10 минут велась с 4–7 камер.
В первой и второй выборке БПЛА двигается с малой постоянной скоростью по относительно гладкой траектории с плавными поворотами.
В третьей выборке скорость и ускорения БПЛА увеличены относительно первых двух выборок.
Четвертая выборка содержит еще выше относительно третьей выборки значения ускорения и скоростей полета. Вдобавок в данной выборке скорость движения облаков на фоне также выше, что добавляет трудности при применении методик оценки параметров движения фона.
Пятая выборка содержит результаты видеосъемки с шести камер с средней продолжительностью 10 минут в зимнее время. Отличительной особенностью данного поднабора является съемка трех БПЛА. Разрешение составляет 1920 на 1080 пикселей, частота смены кадров составляет 30 кадров в секунду.
Из набора данных «MVDT» для валидации выделен один видеофайл из пятой выборки, так как он содержит изменяющийся неоднородный фон, а также более одного объекта в одном кадре одновременно. Кадр из указанного видеоряда приведен на рисунке 5в.
Описание набора данных «bouman-UAV»
Видеоряд был получен при помощи экшн-камеры GoPro 3. Разрешение картинки в двух вариантах: 1920 на 1080 и 1280 на 960 пикселей. Съемка проводилась на БПЛА типа дельтовидное крыло, снимающий другие БПЛА различных форм (самолетного и вертолетного типа). На видео варьируется освещение и совершаются крутые повороты «оператором», что обеспечивает динамическое изменение обстановки. Количество объектов в кадре варьируется от 0 до 8.
Из-за высокого качества изображений относительно высокой скорости полета носителя камеры, высокой высоты полета и дальних дистанций до отслеживаемых БПЛА, «bouman-UAV» использовался для обучения. Кадр из указанных видеорядов приведен на рисунке 5г.
Рис. 5. Примеры кадров из наборов данных: а) «UAV123»; б) «EPFG UAV»; в) «MVDT»; г) «bouman-UAV»
Выборки для валидации
Выделенные видеофайлы из наборов данных
«UAV123», «EPFG UAV» и «MVDT» были использованы для формирования валидационных выборок согласно описанию динамически изменяющегося фона, заданным по формулам (22–26). Таким образом составлено 6 валидационных выборок: «сlose», «far», «high_sp», «rotation», «mot_b», «сontrol». Описание выборок приведено в таблице 2.
Таблица 2
Описание валидационных выборок
РЕЗУЛЬТАТЫ ЧИСЛЕННОГО МОДЕЛИРОВАНИЯ
Разработанный алгоритм («C-FO») реализован на языке Python и был верифицирован с двумя другими моделями обнаружения летающих объектов, разработанных на основе научных работ, использующих модели пространственно-временной свертки [20] и классических глубоких сверточных нейронных сетях [23]. Далее в работе данные модели будут обозначаться как «TR1» и «TDD» соответственно. Алгоритм «TR1» в данной работе реализован при помощи пакета Matlab, «TDD» выполнен на языке Python с использованием открытого фреймворка Keras. Алгоритм «TR1» не оптимизирован по производительности, в частности не поддерживает многопоточное исполнение.
Полученная точность обнаружения на выборке «control» разработанного решения в сравнении с аналогами, находящимися в открытом доступе, представлена в таблице 3.
Таблица 3
Результирующая точность по выборке «сontrol»
В ходе проведенной работы получены ограничения по применению разработанного алгоритма. Выявлены границы применимости по размеру объекта в оптическом потоке исходя из анализа тестирования на выборках «сlose» и «far»: 50 пикселей вблизи и 5 пикселей на максимальной дистанции. На выборке «mot_b» выявлен максимальный параметр эффекта размытости равный 6, при котором классификатор признаков внешнего вида имеет точность близкую к случайной. Выявлены ограничения по скорости объекта для задачи отслеживания на выборке «high_sp», равной более 20 пикселей в кадр. На выборке «rotation» выявлена максимальная скорость изменения фона в видеопотоке в 8 пикселей на кадр, что соответствует со скорость поворота БПЛА в 0,37 рад/с.
Проверка производительности была проведена путем подсчета количества обрабатываемых кадров в секунду (FPS). Ключевым фактором для проверки производительности является вычислительная мощность процессора. Результаты тестирования производительности приведены в таблице 4. Эксперимент проведен на ряде компоновок электронно-вычислительных машин:
- Intel Core i9-7960X CPU @ 2.80GHz x 32 («i9»);
- Intel® Core™ i5-8600 CPU @ 3.10GHz × 6 («i5+»);
- Intel Core i5-6200U CPU @ 2.30GHz x 4 («i5»);
- Raspberry Pi 4 B @ 1.50GHz × 1 («RP4»).
Таблица 4
Сравнение продолжительности расчетов на выборке «control» для одного кадра
В ходе проведенной работы были получены ограничения по применению разработанного алгоритма от условий изменяющегося фона, зависимости представлены на рисунках 6а–6г.
Были выявлены границы применимости по размеру объекта в оптическом потоке исходя из анализа тестирования на выборках «сlose» и «far». Они составляют 50 пикселей вблизи и 5 пикселей на максимальной дистанции. Зависимость представлена на рисунке 6а.
Максимальный параметр эффекта размытости (Motion Blur) равен 6, при котором классификатор признаков внешнего вида дает результат, приближенный к случайному, зависимость представлена на рисунке 6б.
Зависимость точности классификации алгоритма от скорости отслеживаемого объекта изображена на рисунке 6в. Фильтр Калмана перестает давать полезную нагрузку после скорости в 20 пикселей в кадр.
Максимальная скорость изменения фона в видеопотоке составляет 8 пикселей на кадр, что коррелирует со скоростью поворота носителя в 0,37 рад/с. Зависимость точности обнаружения от скорости фона представлена на рисунке 6г.
Рис. 6. Зависимость точности алгоритма от параметров фона: а) точность обнаружения от размера объекта на выборках «сlose» и «far»; б) точность обнаружения от эффекта размытости на выборке «mot_b»; в) точность обнаружения от скорости объекта в оптическом потоке на выборке «high_sp»; г) точность обнаружения от скорости фона в оптическом потоке на выборке «rotation»
ЗАКЛЮЧЕНИЕ
В работе приведено описание алгоритма распознавания летающих объектов в условиях динамически изменяющегося фона в режиме реального времени для оптического видеопотока с монокулярной камеры, установленной на борту летательного аппарата.
Разработан трехстадийный алгоритм «CFO » обнаружения и отслеживания, состоящий из оценки параметров движения, гибридного классификатора и сопровождения объекта.
Приведено описание подхода оценки точности алгоритма и описаны параметры динамически изменяющегося оптического потока: скорость объекта, ускорение объекта, скорость носителя, размер объекта, эффект размытости фона и эффект размытости объекта.
Показано, что точность разработанного алгоритма «C-FO» составляет 71 % по метрике F1@0.5 для объектов менее 20 пикселей в кадре и скорость обработки видеопотока в 27 кадров в секунду. Выделено шесть валидационных выборок из открытых наборов данных, соответствующих различным значениям параметров динамически изменяющегося оптического потока, условиям наблюдения объектов и погодным условиям, в том числе ясная и пасмурная погода, летнее и зимнее время года. Выявлены ограничения по применимости предложенного алгоритма и последних известных открытых работ. Показано, что предложенный алгоритм превосходит по мере точности F1@0.5 на средних и дальних дистанциях.
В дальнейшем предстоит внедрение в процесс обучения алгоритмов синтетические данные для расширения границ применимости и методик адаптации обучения для применения моделей на экспериментальных данных.
Список литературы
1. Yu X., Zhang Y. Sense and avoid technologies with applications to unmanned aircraft systems: Review and prospects // Progress in Aerospace Sciences. – 2015. – Vol. 74. – P. 152–166.
2. Walk S., [et al.] New features and insights for pedestrian detection // 2010 IEEE Computer society conference on computer vision and pattern recognition. – IEEE, 2010. – P. 1030–1037.
3. Chen X., [et al.] 3D Object proposals for accurate object class detection // Advances in Neural Information Processing Systems. – 2015. – P. 424–432.
4. Xiang Y., [et al.] Subcategory-aware convolutional neural networks for object proposals and detection // 2017 IEEE winter conference on applications of computer vision (WACV). – IEEE, 2017. – P. 924–933.
5. Chen X., [et al.] Monocular 3d object detection for autonomous driving // Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. – 2016. – P. 2147–2156.
6. Zahoor S., [et al.] Breast Cancer Detection and Classification using Traditional Computer Vision Techniques: A Comprehensive Review // Current medical imaging. – 2020.
7. Gao Y. A One-stage Detector for Extremelysmall Objects Based on Feature Pyramid Network. – 2020.
8. Krizhevsky A., Sutskever I., Hinton G. E. Imagenet classification with deep convolutional neural networks // Advances in neural information processing systems. – 2012. – Vol. 25. – P. 1097–1105.
9. Yang B., [et al.] Aggregate channel features for multi-view face detection // IEEE international joint conference on biometrics. – IEEE, 2014. – P. 1–8.
10. Felzenszwalb P. F., Girshick R. B., McAllester D. Cascade object detection with deformable part models // 2010 IEEE Computer society conference on computer vision and pattern recognition. – IEEE, 2010. – P. 2241–2248.
11. González A., [et al.] On-board object detection: Multicue, multimodal, and multiview random forest of local experts // IEEE transactions on cybernetics. – 2016. – Vol. 47. – №. 11. – P. 3980–3990.
12. Brutzer S., Höferlin B., Heidemann G. Evaluation of background subtraction techniques for video surveillance // CVPR 2011. – IEEE, 2011. – P. 1937–1944.
13. Fleet D., Weiss Y. Optical flow estimation // Handbook of mathematical models in computer vision. – Springer, Boston, MA, 2006. – P. 237–257.
14. Danelljan M., [et al.] Deep motion and appearance cues for visual tracking // Pattern Recognition Letters. – 2019. – Vol. 124. – P. 74–81.
15. Bogomolov Y., [et al.] Classification of Moving Targets Based on Motion and Appearance // BMVC. – 2003. – P. 1–10.
16. Park D., Zitnick C.L., Ramanan D., Dollár P. Exploring weak stabilization for motion feature extraction // Proceedings of the IEEE conference on computer vision and pattern recognition. – 2013. – P. 2882–2889.
17. Freund Y., Schapire R.E. A Short Introduction to Boosting // URL: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.5846 (дата обращения: 10.10.21). – 1999.
18. Kalman, R. E. A New Approach to Linear Filtering and Prediction Problems // Journal of Basic Engineering. – 1960 – Vol. 82. – P. 35–45.
19. Mueller M., Smith N., Ghanem B. A benchmark and simulator for uav tracking // European conference on computer vision. – Springer, Cham, 2016. – P. 445–461.
20. Rozantsev A., Lepetit V., Fua P. Flying objects detection from a single moving camera // Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. – 2015. – P. 4128–4136.
21. Li J., [et al.] Reconstruction of 3D flight trajectories from ad-hoc camera networks // URL: https://arxiv.org/abs/2003.04784 (дата обращения: 10.10.21). – 2020.
22. Bouman UAV Dataset //URL: https://engineering.purdue.edu/~bouman/UAV_Dataset (дата обращения: 10.06.21).
23. Giuntini A., Gemelli A. Tiny Drone Detection // URL: https://github.com/andreagemelli/Flying-Objects-Detection-and-Recognition (дата обращения: 10.10.21).
24. Volchkova D.S., Dolgova A.S. An algorithm for detecting low-contrast objects in different target environments. Journal of «Almaz – Antey» Air and Space Defence Corporation. – 2021. – № 2. – С. 76–89. https://doi.org/10.38013/2542-0542-2021-2-76-89
25. Э. Г. Теплицкий, С. М. Захаров, М. А. Митрохин Метод обнаружения движущихся объектов на сложном динамическом фоне в оптическом диапазоне // Известия высших учебных заведений. Поволжский регион. Технические науки. – 2016. – № 4 (40). – С. 16–26. https://doi.org/10.21685/2072-3059–2016-4-2
Об авторах
Н. А. ГришинРоссия
Гришин Никита Александрович – программист лаборатории информационных технологий и прикладной математики.
Область научных интересов: техническое зрение, машинное обучение.
Москва
А. Ф. Баззаев
Россия
Баззаев Александр Федорович – программист лаборатории информационных технологий и прикладной математики.
Область научных интересов: техническое зрение, машинное обучение.
Москва
М. А. Кудров
Россия
Кудров Максим Александрович – кандидат технических наук, директор Института аэромеханики и летательной техники, заведующий лабораторией информационных технологий и прикладной математики МФТИ.
Область научных интересов: разработка комплекса программ для компьютерного моделирования физических процессов.
Москва
К. Д. Бухаров
Россия
Бухаров Кирилл Дмитриевич – кандидат технических наук, ведущий научный сотрудник, директор отдела радиолокационных систем и технологий.
Область научных интересов: математическое моделирование в радиолокации, техническое зрение.
Москва
А. П. Коновальчик
Россия
Коновальчик Артем Павлович – кандидат технических наук, заместитель генерального конструктора.
Область научных интересов: математическое моделирование в радиолокации, аэродинамике и баллистике, суперкомпьютерные технологии, трудоемкие алгоритмы.
Москва
Рецензия
Для цитирования:
Гришин Н.А., Баззаев А.Ф., Кудров М.А., Бухаров К.Д., Коновальчик А.П. Алгоритм распознавания летающих объектов в оптическом видеопотоке в условиях динамически изменяющегося фона. Вестник Концерна ВКО «Алмаз – Антей». 2022;(3):92-106. https://doi.org/10.38013/2542-0542-2022-3-92-106
For citation:
Grishin N.А., Bazzaev А.F., Kudrov М.А., Bukharov K.D., Konovalchik А.P. An algorithm for recognition of flying objects in the optical flow under dynamically variable background conditions. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2022;(3):92-106. https://doi.org/10.38013/2542-0542-2022-3-92-106