Способ автоматического сопровождения объекта
AUTOMATIC OBJECT TRACKING METHOD

Изобретение относится к области обработки видео, в частности к способам автоматического сопровождения, и предназначено для использования в съемочной аппаратуре беспилотных летательных аппаратов (БПЛА), а также в любых системах видеонаблюдения, требующих высокого быстродействия и умеренной ресурсоемкости.
Современные БПЛА [1], используемые для разведывательных целей, имеют на борту съемочную аппаратуру, формирующую видео высокого разрешения (FullHD). Зачастую данная аппаратура не имеет гиростабилизированной платформы, поэтому объекты на видео склонны к частым рывкам в произврльном направлении. Подобные БПЛА имеют на своем борту реализацию автоматического сопровождения объекта, как правило, используя для этого библиотеку с открытым исходным кодом openCV [2]. Данная библиотека содержит реализацию восьми способов автоматического сопровождения объекта, самым быстрым и подходящим из которых является способ минимумов выходной суммы квадратичной ошибки (Minimum Output Sum of Squared Error, далее MOSSE) [3, 4].
Способ автоматического сопровождения объекта MOSSE основан на инициализации и постоянном (динамическом) обучении корреляционного фильтра в пространстве Фурье. Данный способ существенно превосходит по быстродействию и качеству слежения классические корреляционные алгоритмы сопровождения, широко использующиеся в военной технике.
Способ MOSSE по сущности наиболее близок к предлагаемому изобретению и выбран за прототип.
0
0
0
0
Способ MOSSE (фиг. 1) описан с помощью функциональных модулей и заключается в выполнении следующих операций: на модуль управления автоматическим сопровождением объекта (МУАС) подают кадры цифрового видео, которые сохраняют в динамической памяти, и команду «захвата», содержащую координаты центра объекта (X, Y), размеры окна поиска (w, h) и параметры автоматического слежения (порог обнаружения объекта ODT и коэффициент обучения фильтра μ). В момент прихода команды захвата МУАС присваивает текущему кадру видео номер 0 и производит инициализацию корреляционного фильтра. Для инициализации фильтра МУАС вырезает из 0-го кадра окно W размером (w, h) таким образом, чтобы центра окна совпал с центром объекта, затем генерирует из него N аффинно преобразованных окон  (процесс аугментации), которые последовательно передает на модуль обработки окна поиска (МООП). МООП производит переход в логарифмический масштаб и обработку двумерным окном Ганна, в результате чего окна  преобразуется в окна  В процессе инициализации фильтра на вход модуля динамического обучения фильтра (МДОФ) поступает последовательность из окон  и идеальный отклик G (двумерная гауссиана размером (w, h)) от модуля генерации идеального отклика (МГИО), на основе которых происходит инициализация корреляционного фильтра по следующей формуле:
где  - обозначение комплексного числа, * - оператор комплексного сопряжения, ϕ() - оператор прямого преобразования Фурье.
После инициализации корреляционного фильтра объект считается захваченным и начинается процесс автоматического слежения, который в свою очередь состоит из двух процессов: процесс поиска объекта и процесс дообучения корреляционного фильтра.
k-1
k-1
k
Процесс поиска объекта состоит из следующих операций: МУАС вырезает из текущего кадра с номером k окно  таким образом, чтобы центр окна совпал с координатами центра объекта на предыдущем кадре (Х, Y), затем подают его на МООП, где  преобразуют посредством перехода в логарифмический масштаб и обработки двумерным окном Ганна в . Далее  поступает на модуль расчета отклика фильтра (МРОФ), где происходит расчет отклика G на основе состояния корреляционного фильтра на предыдущем кадре  поступившего из МДОФ, по следующей формуле:
-1
где ϕ() - оператор обратного преобразования Фурье.
k
k
Далее рассчитанный отклик G подается на модуль анализа отклика и расчета смещения (МАРС), где происходит расчет отношений пиковых значений к боковым лепесткам (peak to sidelobe ratio, далее - метрики PSR) и анализ следующего неравенства на ее основе: PSR(G)≥ODT.
k
k
k
В случае истинности этого неравенства на выход передаются координаты максимума в отклике G (Х, Y), которые считаются истинными координатами центра объекта на текущем кадре, иначе на выход подается сигнал о срыве автоматического сопровождения.
k
k
k
k
0
Процесс дообучения корреляционного фильтра состоит из следующих операций: после нахождения текущих координат центра объекта (Х, Y), они по обратной связи поступают с МАРС на МУАС, который вырезает из текущего кадра с номером k окно  таким образом, чтобы центр окна совпал с координатами центра объекта на текущем кадре (Х, Y), затем подают его на МООП, где  преобразуют посредством перехода в логарифмический масштаб и обработки двумерным окном Ганна в  В процессе дообучения корреляционного фильтра на вход модуля динамического обучения фильтра (МДОФ) поступает окно  и идеальный отклик G (двумерная гауссиана размером (w, h)) от модуля генерации идеального отклика (МГИО), на основе которых происходит дообучение корреляционного фильтра по следующей формуле:
где μ ∈ [0; 1].
После дообучения корреляционного фильтра происходит обработка следующих кадров, для которых повторяются описанные выше операции автоматического сопровождения объекта.
Способ MOSSE [3, 4] позволяет осуществлять автоматическое сопровождение объекта со скоростью 1000 FPS для окна поиска размером 128x128 пикселов при сравнительно небольшом потреблении вычислительных ресурсов и памяти.
Недостатками выше описанного способа MOSSE сопровождения объекта являются: малая зона достоверного поиска объекта по отношению к площади окна поиска, контуры которой зависят от характеристик объекта (данное утверждение поясняется на фиг. 2, где а) - начальное окно поиска, б) - окно поиска после обработки МООП, в) - схематично-пропорциональное отображение сужения зоны поиска); склонность к захвату ложных объектов в процессе автоматического сопровождения что приводит к частой потере объекта сопровождения; длительность инициализации корреляционного фильтра; невозможность надежного использования способа в съемочной аппаратуре БПЛА. Все эти недостатки не позволяют достоверно и длительно сопровождать объект без его потерь.
Задачей данного изобретения является увеличение достоверного (надежного) и длительного сопровождения объекта без его потерь при сохранении высокого быстродействия и малой ресурсоемкости.
Для решения поставленной задачи предложен способ автоматического сопровождения объекта.
0
0
0
0
0
0
i
Сущность способа автоматического сопровождения объекта заключается в следующем на модуль управления автоматическим сопровождением при введении команды «захват», содержащей координаты центра объекта (Х, Y), размеры окна поиска (w, h), порог обнаружения объекта ODT и коэффициент обучения фильтра μ, передают из динамической памяти текущий кадр k, которому присваивают номер 0 и начинают инициализацию корреляционного фильтра: вырезают из него окно W размером (w, h) таким образом, чтобы центр окна совпал с центром объекта, окно W подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованного окна F, одновременно генерируют идеальный отклик G, зависящий от (w, h), инициализируют корреляционный фильтр, далее из динамической памяти подают текущей кадр k, где k от 1 до ∞, и выполняют процесс поиска объекта с адаптивным расширением, который состоит из i итераций, где i≥1, и включает в себя следующие действия: из текущего кадра k вырезают окна  где n - индекс окна в диапазоне  N - количество окон в текущей итерации, которые подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованных окон  рассчитывают отклики  на основе состояния корреляционного фильтра на предыдущем кадре  в соответствии с условием:
-1
где ϕ() - оператор обратного преобразования Фурье,
по полученным значениям выполняют расчет метрик PSR и смещения точек отклика относительно центра  выбирают максимальное значение  запоминают их, далее анализируют информацию в соответствии с условием:
где  - операция округления к меньшему,
k
k
в случае истинности условия на основании  вычисляют координаты центра объекта на текущем кадре (Х, Y), передают их на выход модуля управления автоматическим сопровождением и проводят процесс дообучения корреляционного фильтра, иначе переходят к следующей итерации, выполняемой аналогичным образом, после дообучения корреляционного фильтра обрабатывают следующий текущий кадр k, выполняя описанный выше процесс поиска объекта с адаптивным расширением и процесс дообучения корреляционного фильтра.
0
0
Инициализация корреляционного фильтра с вырезанием только одного окна W размером (w, h) таким образом, чтобы центр окна совпал с центром объекта, и дальнейшая его обработка позволили существенно сократить время инициализации корреляционного фильтра и уменьшить затрачиваемые ресурсы на выполнение этого процесса, а фильтрация окна W посредством оператора Собеля, позволила сократить вероятность захвата ложных объектов и снизить чувствительность к параметрам сопровождения, что в свою очередь увеличило достоверность и длительность сопровождения объекта без его потерь при сохранении высокого быстродействия и малой ресурсоемкости.
i
Использование процесса поиска объекта с адаптивным расширением, который состоит из i итераций, где i≥1, и включает в себя следующие действия: из текущего кадра k вырезают окна  где n - индекс окна в диапазоне  N - количество окон в текущей итерации, j от 1 до i;
которые подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованных окон  рассчитывают отклики  на основе состояния корреляционного фильтра на предыдущем кадре  по полученным значениям выполняют расчет метрик PSR и смещения точек отклика относительно центра  выбирают максимальное значение  запоминают их, и далее анализируют информацию в соответствии с условием:
где  - операция округления к меньшему,
к
k
в случае истинности условия на основании  вычисляют координаты центра объекта на текущем кадре (Х, Y) и передают их на выход модуля управления автоматическим сопровождением и проводят процесс дообучения корреляционного фильтра, иначе переходят к следующей итерации, выполняемой аналогичным образом, позволило расширить зону достоверного поиска объекта и сократить зависимость ее контуров от характеристик объекта, а также сократить вероятность захвата ложных объектов и уменьшить чувствительность к настройкам сопровождения, что в свою очередь позволило увеличить достоверность и длительность сопровождения объекта без его потерь при сохранении высокого быстродействия и малой ресурсоемкость.
Изобретение поясняется фигурами. На фиг. 1 представлена блок-схема способа MOSSE (прототип). На фиг. 2 представлен обобщенный результат обработки текущего окна МООП. На фиг. 3 представлена блок-схема предлагаемого способа автоматического сопровождения объекта. На фиг. 4 изображены окна  для трех итераций. На фиг. 5 представлена блок схема алгоритма работы модуля управления автоматическим сопровождением.
0
0
Предложенный способ автоматического сопровождения объекта может быть реализован следующим образом (фиг. 3): на вход модуля управления автоматическим сопровождением (МУАС) 1 при введении команды «захват», содержащей координаты центра объекта (X, Y), размеры окна поиска (w, h), параметры автоматического слежения (порог обнаружения объекта ODT и коэффициент обучения фильтра μ), передают из динамической памяти 2 текущий кадр k.
0
0
0
0
0
В момент прихода команды захвата модуль управления (МУ) 3 присваивает текущему кадру к номер 0 и начинает инициализацию корреляционного фильтра. МУ 3 вырезает из 0-го кадра окно W размером (w, h) таким образом, чтобы центра окна совпал с центром объекта, затем передает его на модуль фильтрации и обработки окна поиска (МФООП) 4. МФООП 4 производит выделение контуров объекта с помощью оператора Собеля, переход в логарифмический масштаб и обработку двумерным окном Ганна, в результате чего окно W трансформируется в преобразованное окно F. В процессе инициализации фильтра на модуль динамического обучения фильтра (МДОФ) 5 поступает F и сгенерированный идеальный отклик G (двумерная гауссиана размером (w, h)) от модуля генерации идеального отклика (МГИО) 6, на основе которых происходит инициализация корреляционного фильтра по следующей формуле:
где  - обозначение комплексного числа, * - оператор комплексного сопряжения, ϕ() - оператор прямого преобразования Фурье.
После инициализации корреляционного фильтра объект считается захваченным и начинается процесс автоматического слежения, который в свою очередь состоит из двух процессов: процесс поиска объекта с адаптивным расширением и процесс дообучения корреляционного фильтра.
Далее из динамической памяти 2 подают на модуль поиска с адаптивным расширением (МПАР) 7 текущей кадр k, где k от 1 до ∞, и выполняют процесс поиска объекта с адаптивным расширением, который состоит из i итераций, где i≥1. Процесс поиска объекта с адаптивным расширением рассмотрим на примере трех итераций (фиг. 4 и 5), это количество оптимально для решения наших практических задач, но может быть использовано и большее количество итераций.
1
1
i
i
k-1
k-1
Для первой итерации поиска объекта с адаптивным расширением i=1, n=0, D=1, N=1, D - размер стороны квадрата расширения в окнах поиска для текущей итерации поиска, N - количество окон в текущей итерации поиска (см. фиг. 4). МПАР 7 вырезает из текущего кадра k, где k от 1 до ∞, одно окно  таким образом, чтобы центр окна совпал с координатами центра объекта на предыдущем кадре (Х, Y), затем подает его на МФООП 4, где  подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованного окна  Далее  возвращается на вход МПАР 7, где происходит расчет отклика  на основе состояния корреляционного фильтра на предыдущем кадре  поступившего из МДОФ 5, по следующей формуле:
-1
где ϕ() - оператор обратного преобразования Фурье.
1
max
Рассчитанный отклик  подается на вход модуля анализа отклика и расчета смещения (МАРС) 8, где происходит расчет метрик PSR и смещения точки отклика относительно его центра  и выбирают максимальное значение  Так как для первой итерации количество окон в текущей итерации поиска N=1, то PSR=PSR,  Полученные значения запоминают в МАРС 8 и возвращают на вход МПАР 7. После этого МПАР 7 производит анализ истинности следующего условия:
где  - операция округления к меньшему.
Считаем, что это условие неистинно и переходим на вторую итерацию.
Для второй итерации поиска объекта с адаптивным расширением МПАР 7 принимает  где j от 1 до i, и вырезает из текущего кадра с номером k восемь окон  (с индексом  таким образом, чтобы эти окна полностью окружили окно  с перекрытием (фиг. 4), затем последовательно подает их на МФООП 4, где  подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованных окон  Далее  возвращают на МПАР 7, где происходит расчет откликов  на основе состояния корреляционного фильтра на предыдущем кадре  поступившего из МДОФ 5, по следующей формуле:
-1
где ϕ() - оператор обратного преобразования Фурье.
max
Рассчитанные отклики  последовательно подают на МАРС 8, где выполняют расчет метрик PSR и смещения точек отклика относительно центра  выбирают максимальное значение PSR среди полученных данных для 8 окон и запомненных значений, полученных посредством первой итерации, и максимальное значение  запоминают их.
Далее МПАР 7 производит анализ истинности следующего условия:
где  - операция округления к меньшему,
k
k
В случае истинности условия на основании  МПАР 7 вычисляет координаты центра объекта на текущем кадре (Х, Y) и передает их на МУАС 1 и далее проводят процесс дообучения корреляционного фильтра, иначе переходят к следующей итерации, выполняемой аналогичным образом.
Считаем, что это условие неистинно и переходим на третью итерацию. Третья итерация поиска объекта с адаптивным расширением производится в МПАР 7, где  где j от 1 до i. МПАР 7 вырезает из текущего кадра с номером k шестнадцать окон  (с индексом ) таким образом, чтобы эти окна полностью окружили восемь окон из предыдущей итерации с перекрытием (фиг. 4), затем последовательно подают их на МФООП 4, где подвергают фильтрации посредствам оператора Собеля, переводят в логарифмический масштаб и обрабатывают двумерным окном Ганна с получением преобразованных окон  Далее  возвращаются на вход МПАР 7, где происходит расчет откликов  на основе состояния корреляционного фильтра на предыдущем кадре  поступившего из МДОФ 5, по следующей формуле:
-1
где ϕ() - оператор обратного преобразования Фурье.
max
max
Рассчитанные отклики  последовательно подают на МАРС 8, где выполняют расчет метрик PSR и смещения точек отклика относительно центра  Выбирают максимальное значение PSR среди полученных данных для 16 окон и запомненного максимального значения PSR, полученного посредством второй итерации, и максимальное значение  запоминают их. Далее МПАР 7 производит анализ истинности следующего условия:
где  - операция округления к меньшему,
k
k
В случае истинности условия на основании  МПАР 7 вычисляет координаты центра объекта на текущем кадре (Х, Y) и передает их на выход МУАС 1 и далее проводят процесс дообучения корреляционного фильтра, иначе могут переходить к следующей итерации, выполняемой аналогичным образом.
k
k
Считаем, что условие истинно, на основании  МПАР 7 вычисляет координаты центра объекта на текущем кадре (X, Y) и передает их на выход МУАС 1 и переходят к процессу дообучения корреляционного фильтра.
k
k
k
k
0
Процесс дообучения корреляционного фильтра (аналогичен прототипу) состоит из следующих операций: после нахождения текущих координат центра объекта (Х, Y), они по обратной связи поступают с МПАР 8 на МУ 3, который вырезает из текущего кадра с номером k окно  таким образом, чтобы центр окна совпал с координатами центра объекта на текущем кадре (Х, Y), затем подают его на МФООП 4, где  преобразуют в  В процессе дообучения корреляционного фильтра на МДОФ 5 поступает окно  и идеальный отклик G (двумерная гауссиана размером (w, h)) от МГИО 6, на основе которых происходит дообучение корреляционного фильтра по следующей формуле:
где μ ∈ [0; 1].
После дообучения корреляционного фильтра переходят к обработке следующих текущих кадров, для которых повторяют описанные выше операции автоматического сопровождения объекта.
На практике можно предусмотреть возможность ограничения максимум 3 итерациями, а можно выполнять большее число итераций. Если, например, после третьей (максимально предусмотренной) итерации вышеуказанное условие не выполняется, на выход МУАС 1 подается сигнал о срыве автоматического сопровождения и далее процесс автоматического сопровождения начинают заново с поступления команды «захват».
Предложенный способ автоматического сопровождения объекта реализован в бортовом оборудовании БПЛА и по сравнению с прототипом позволил: расширить зону достоверного поиска объекта ~ в 25 раза и значительно снизить зависимость ее контуров от характеристик объекта; уменьшить время инициализации корреляционного фильтра как минимум в 10 раз; уменьшить вероятность случаев захвата ложных объектов, снизить чувствительность к настройкам слежения. Использование предложенного способа при обработке в реальном времени видео с БПЛА, который не имеет гиростабилизированной платформы и объекты на видео подвергаются частым рывкам в произвольном направлении, позволило увеличить быстродействие до 10 раз. Все это, в свою очередь, увеличило достоверность и длительность сопровождения объекта без его потерь при сохранении высокого быстродействия и малой ресурсоемкости.
Источники информации
1. https://arsenal-info.ru/b/book/3398882726/17
2. https://intuit.ru/studies/courses/10621/1105/lecture/17985
3. D. Bolme, R. Beveridge, B. Draper, and Y.M. Lui. "Visual Object Tracking using Adaptive Correlation Filters", IEEE Conference on Computer Vision and Pattern Recognition, San Francisco, CA, June, 2010, P. 1-10.
4. US 8520956 B2 (Colorado State University Research Foundation, Fort Collins, CO (US)), 27.08.2013, весь документ - прототип.