Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles
The use of the phase correlation algorithm as the basis of unmanned aerial vehicles (UAV) Optical Stabilizer on purpose to determine the displacement of the housing relative to the surface is described. Also, the possibility of application of the phase correlation algorithm extensions to increase ac...
Збережено в:
Дата: | 2018 |
---|---|
Автори: | , |
Формат: | Стаття |
Мова: | Ukrainian |
Опубліковано: |
Інститут програмних систем НАН України
2018
|
Теми: | |
Онлайн доступ: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/226 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Назва журналу: | Problems in programming |
Завантажити файл: |
Репозитарії
Problems in programmingid |
pp_isofts_kiev_ua-article-226 |
---|---|
record_format |
ojs |
resource_txt_mv |
ppisoftskievua/db/8b93aa6cb63d1eb7cf349c88baa222db.pdf |
spelling |
pp_isofts_kiev_ua-article-2262024-04-28T11:56:41Z Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles Применение алгоритма фазовой корреляции и его расширения в оптическом стабилизаторе беспилотных летательных аппаратов Застосування алгоритму фазової кореляції та його розширення в оптичному стабілізаторі безпілотних літальних апаратів Dreval, O.L. Doroshenko, А.Yu. UAV; optical stabilization; image processing; phase correlation; sub-pixel image registration UDC 004.896 + 004.932.2 БПЛА; оптическая стабилизация; обработка изображений; фазовая корреляция; субпиксельная регистрация изображений УДК 004.896 + 004.932.2 БПЛА; оптична стабілізація; обробка зображень; фазова кореляція; субпіксельна реєстрація зображень УДК 004.896 + 004.932.2 The use of the phase correlation algorithm as the basis of unmanned aerial vehicles (UAV) Optical Stabilizer on purpose to determine the displacement of the housing relative to the surface is described. Also, the possibility of application of the phase correlation algorithm extensions to increase accuracy and reduce computing costs is considered. The algorithm implementation in bot MATLAB language and C is provided. The computational complexity of the algorithm implementation in C was experimentally analyzed in the scope of embedded systems. The proposed algorithm gives not only an auxiliary possibility to stabilize the aircraft position but also to calculate absolute position of the aircraft in space.Problems in programming 2017; 1: 111-119 В статье рассматривается применение алгоритма фазовой корреляции как основы математического аппарата оптического стабилизатора беспилотных летательных аппаратов (БПЛА) для определения смещения корпуса относительно поверхности. Также рассмотрена возможность применения расширенных вариантов алгоритма фазовой корреляции для увеличения точности определения смещения и уменьшения вычислительных затрат. Приведен пример реализации алгоритма на языке MATLAB и результаты экспериментального исследования возможности применения реализации алгоритма на языке C в контексте встраиваемых систем.Problems in programming 2017; 1: 111-119 В статті розглядається застосування алгоритму фазової кореляції як основи математичного апарата оптичного стабілізатора безпілотних літальних апаратів (БПЛА) для визначення зміщення корпусу відносно поверхні. Також розглянуто можливість застосування розширених варіантів алгоритму фазової кореляції з метою збільшення точності визначення зміщення та зменшення обчислювальних затрат. Подано код реалізації алгоритму мовою MATLAB та експериментальне дослідження можливості застосування реалізації алгоритму на мові C.Problems in programming 2017; 1: 111-119 Інститут програмних систем НАН України 2018-11-20 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/226 10.15407/pp2017.01.111 PROBLEMS IN PROGRAMMING; No 1 (2017); 111-119 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 1 (2017); 111-119 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 1 (2017); 111-119 1727-4907 10.15407/pp2017.01 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/226/221 Copyright (c) 2018 ПРОБЛЕМИ ПРОГРАМУВАННЯ |
institution |
Problems in programming |
baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
datestamp_date |
2024-04-28T11:56:41Z |
collection |
OJS |
language |
Ukrainian |
topic |
UAV optical stabilization image processing phase correlation sub-pixel image registration UDC 004.896 + 004.932.2 |
spellingShingle |
UAV optical stabilization image processing phase correlation sub-pixel image registration UDC 004.896 + 004.932.2 Dreval, O.L. Doroshenko, А.Yu. Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
topic_facet |
UAV optical stabilization image processing phase correlation sub-pixel image registration UDC 004.896 + 004.932.2 БПЛА оптическая стабилизация обработка изображений фазовая корреляция субпиксельная регистрация изображений УДК 004.896 + 004.932.2 БПЛА оптична стабілізація обробка зображень фазова кореляція субпіксельна реєстрація зображень УДК 004.896 + 004.932.2 |
format |
Article |
author |
Dreval, O.L. Doroshenko, А.Yu. |
author_facet |
Dreval, O.L. Doroshenko, А.Yu. |
author_sort |
Dreval, O.L. |
title |
Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_short |
Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_full |
Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_fullStr |
Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_full_unstemmed |
Appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_sort |
appliсation of the phase correlation algorithm and its extension in the optical stabilizer of unmanned aerial vehicles |
title_alt |
Применение алгоритма фазовой корреляции и его расширения в оптическом стабилизаторе беспилотных летательных аппаратов Застосування алгоритму фазової кореляції та його розширення в оптичному стабілізаторі безпілотних літальних апаратів |
description |
The use of the phase correlation algorithm as the basis of unmanned aerial vehicles (UAV) Optical Stabilizer on purpose to determine the displacement of the housing relative to the surface is described. Also, the possibility of application of the phase correlation algorithm extensions to increase accuracy and reduce computing costs is considered. The algorithm implementation in bot MATLAB language and C is provided. The computational complexity of the algorithm implementation in C was experimentally analyzed in the scope of embedded systems. The proposed algorithm gives not only an auxiliary possibility to stabilize the aircraft position but also to calculate absolute position of the aircraft in space.Problems in programming 2017; 1: 111-119 |
publisher |
Інститут програмних систем НАН України |
publishDate |
2018 |
url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/226 |
work_keys_str_mv |
AT drevalol applisationofthephasecorrelationalgorithmanditsextensionintheopticalstabilizerofunmannedaerialvehicles AT doroshenkoayu applisationofthephasecorrelationalgorithmanditsextensionintheopticalstabilizerofunmannedaerialvehicles AT drevalol primeneniealgoritmafazovojkorrelâciiiegorasšireniâvoptičeskomstabilizatorebespilotnyhletatelʹnyhapparatov AT doroshenkoayu primeneniealgoritmafazovojkorrelâciiiegorasšireniâvoptičeskomstabilizatorebespilotnyhletatelʹnyhapparatov AT drevalol zastosuvannâalgoritmufazovoíkorelâcíítajogorozširennâvoptičnomustabílízatoríbezpílotnihlítalʹnihaparatív AT doroshenkoayu zastosuvannâalgoritmufazovoíkorelâcíítajogorozširennâvoptičnomustabílízatoríbezpílotnihlítalʹnihaparatív |
first_indexed |
2024-09-16T04:08:20Z |
last_indexed |
2024-09-16T04:08:20Z |
_version_ |
1818568409013551104 |
fulltext |
Прикладні засоби програмування та програмне забезпечення
© О.Л. Древаль, А.Ю. Дорошенко, 2017
ISSN 1727-4907. Проблеми програмування. 2017. № 1 111
УДК 004.896 + 004.932.2
О.Л. Древаль, А.Ю. Дорошенко
ЗАСТОСУВАННЯ АЛГОРИТМУ ФАЗОВОЇ КОРЕЛЯЦІЇ ТА
ЙОГО РОЗШИРЕННЯ В ОПТИЧНОМУ СТАБІЛІЗАТОРІ
БЕЗПІЛОТНИХ ЛІТАЛЬНИХ АПАРАТІВ
В статті розглядається застосування алгоритму фазової кореляції як основи математичного апарата
оптичного стабілізатора безпілотних літальних апаратів (БПЛА) для визначення зміщення корпусу
відносно поверхні. Також розглянуто можливість застосування розширених варіантів алгоритму фа-
зової кореляції з метою збільшення точності визначення зміщення та зменшення обчислювальних за-
трат. Подано код реалізації алгоритму мовою MATLAB та експериментальне дослідження можливості
застосування реалізації алгоритму на мові C.
Ключові слова: БПЛА, оптична стабілізація, обробка зображень, фазова кореляція, субпіксельна реєст-
рація зображень
Вступ
З розвитком науково-технічного
прогресу БПЛА набули широкої популяр-
ності у різноманітному класі задач. Засто-
сування БПЛА для задач, що вимагають
підвищеної точності позиціонування кор-
пусу апарата та забезпечення його стабі-
льного положення у просторі-часі вимагає
комбінованого підходу до проблеми стабі-
лізації, що передбачає застосування у
комплексі інерційної навігаційної систе-
ми, магнітометричного обладнання, супу-
тникових навігаційних систем – GPS,
ГЛОНАСС та ін. [1].
Головним недоліком використання
інерційної навігаційної системи (ІНС) як
основної є неможливість компенсації руху
БПЛА з постійною швидкістю, оскільки
складові компоненти інерційної навіга-
ційної — гіроскоп та акселерометр систе-
ми чутливі лише до зміни значення швид-
кості (прискорення). За умов ідеальної
моделі (похибка інтегрування строго дорі-
внює 0, початкова швидкість БПЛА у про-
сторі нульова) ІНС забезпечуватиме ідеа-
льну стабілізацію положення апарата у
просторі в будь-який момент часу. В реа-
льних умовах при перетворенні «приско-
рення → швидкість» з часом збільшува-
тиметься значення усталеної похибки за
швидкістю у просторі [2].
Класична модель керування БПЛА
передбачає наявність оператора, в задачі
якого входить корекція усталеної похибки
інерційної системи, що накладає певні
обмеження як на можливу область засто-
сування БПЛА, так і на автономність сис-
теми в цілому. Задачі, в яких наявні вимо-
ги до такого режиму експлуатації БПЛА,
як автоматичне підтримання заданого по-
ложення/курсу у просторі без участі опе-
ратора протягом тривалого часу (напри-
клад, оператор в цей час керує підвісом
видової телекамери, озброєнням БПЛА,
або іншим обладнанням), ІНС виявляється
недостатньо.
Логічним наслідком постановки за-
дачі автономного керування БПЛА і най-
більш широко розповсюдженим підходом
до вирішення зазначеної проблеми є дода-
ткове використання навігаційних систем –
сигнал позиціювання з відповідного мо-
дуля використовується для компенсації
дрейфу нуля головної інерційної навіга-
ційної системи. Однак, використання гло-
бальних супутникових навігаційних сис-
тем як додаткових систем стабілізації за-
звичай обмежується допоміжною роллю
за причиною їх низької точності. Ство-
рення автономної системи з використан-
ням глобальних супутникових навігацій-
них систем можливе при наявності певних
обмежень, таких як порівняно велика ви-
сота польоту БПЛА та відсутність переш-
код, що дозволить фактично нівелювати
проблему низької точності абсолютного
позиціонування.
Застосування систем глобального
позиціонування може додатково накладати
Прикладні засоби програмування та програмне забезпечення
112
певні обмеження на використання апаратів
у незахищеному оточенні, оскільки існу-
ють засоби для глушіння або підробки си-
гналів GPS/ГЛОНАСС та інших супутни-
кових навігаційних систем, приклади наве-
дено у роботі [3].
Оптичний стабілізатор
Для вирішення описаної у попере-
дньому розділі проблеми забезпечення
стабільного положення БПЛА з високою
точністю відносно поверхні в ситуації, що
унеможливлює точне отримання поточних
координат у глобальній системі відліку,
пропонується використати якісно інший
підхід. Для отримання допоміжного зво-
ротного зв’язку для стабілізації усталено-
го положення БПЛА пропонується засто-
сування системи оптичної стабілізації,
деталі конструкції якої описано у [4].
Спрощену схему показано на рис. 1. На
підставі аналізу низки послідовних знім-
ків відеокамери, цифровий процесор об-
робки сигналів оптичного стабілізатора
вираховує підсумкові показники, що свід-
чать про направлення переміщення БПЛА
у просторі, і передає результати своєї ро-
боти у модуль ІНС, де вони використову-
ються для корекції показників швидкості
та кутової швидкості (у випадку відсутно-
сті модуля магнітометрії).
Рис. 1. Модифікована схема
стабілізаційного апарата БПЛА
Задача, визначення зсуву зобра-
ження у даній системі є технологічно бли-
зькою до задачі визначення переміщення
комп’ютерного оптичного маніпулятора
«миша», де використовується схожий
принцип роботи – після аналізу послідов-
ності знімків поверхні (що представляють
собою квадратну матрицю з пікселів різ-
ної яскравості), вираховуються підсумкові
показники, що свідчать про направлення
переміщення миші уздовж осей Х і Y.
Аналогічний принцип використо-
вується при обробці відео для програмної
стабілізації небажаних рухів зображення,
що виникають при здійсненні відеозапису
з рухомого об’єкта.
Застосування алгоритму
крос-кореляції
Показано, що для роботи оптично-
го стабілізатора необхідним є визначення
зміщення зображення вздовж осей Х та Y
відносно попереднього зображення, необ-
хідне застосування відповідного алгорит-
му. Швидким та широко розповсюдженим
методом, що дозволяє виконати це за-
вдання є фазова кореляція (запропоновано
у [5]), що використовує перехід у частотну
область для визначення взаємного парале-
льного зсуву двох однакових зображень.
Математичний опис алгоритму знахо-
дження фазової кореляції виглядає насту-
пним чином.
Вихідні дані – зображення ag
, bg
,
що отримані у попередній та поточній
ітераціях відповідно, представлені у вигля-
ді квадратних матриць розмірності NN .
На першому кроці до зображень за-
стосовується віконна функція (наприклад,
Вікно Геммінга, вікно Ханна, вікно Гаусса
та ін.) на обох зображеннях, щоб зменшити
вплив крайових ефектів [6].
Вибір віконної функції визначаєть-
ся з характеру вихідного зображення та
обчислювальних можливостей цільового
устаткування.
Для прикладу, коефіцієнти вікна
Ханна обраховуються за наступною фор-
мулою:
1 2
( ) 1 cos
2 1
n
w n
N
, (1)
де N – розмір матриці зображення.
Для застосування віконної функції
до двовимірної матриці необхідно над
Прикладні засоби програмування та програмне забезпечення
113
результатом (1) виконати перетворення [7]:
T
D www 2 . (2)
Застосовуючи результат (2) на вихі-
дні зображення, маємо:
Daa wgg 2
,
Dbb wgg 2
, (3)
де – покомпонентний добуток (добуток
Адамара).
На другому кроці до зображень ag
,
bg
застосовується дискретне двовимірне
перетворення Фур’є:
{ }a aG F g ,
{ }b bG F g . (4)
Беручи спряжені числа з (4), пере-
множуючи перетворення Фур’є один з од-
ним поелементно, і нормалізуючи цей до-
буток поелементно розраховується взаємна
спектральна щільність:
ba
ba
GG
GG
R
. (5)
Нормалізована крос-кореляція
отримана застосовуючи зворотне перетво-
рення Фур’є до (5):
1
{ }r F R
. (6)
Для визначення зміщення вихідного
зображення необхідно знайти положення
піку нормалізованої крос-кореляції:
( , )
( , ) arg max{ }
x y
x y r . (7)
Результатом (7) є значення зміщен-
ня у дискретних елементах зображення
(пікселі) bg відносно ag . Знаючи висоту
та характер місцевості, неважко предста-
вити x , y у вигляді зміщення на іншу
величину (наприклад, метри). У загально-
му випадку в цьому перетворенні немає
потреби, оскільки для здійснення корекції
ІНС БПЛА непотрібні точні абсолютні
значення зміщення – необхідно звести рух
об’єкта до нуля, що свідчитиме про на-
буття ним сталого положення.
Вищеописаний математичний алго-
ритм описується наступним кодом на мові
MATLAB:
wf = 'hann';
g_aw = wfn(g_a, wf);
g_bw = wfn(g_b, wf);
[x1, y1] = size(g_aw);
[x2, y2] = size(g_bw);
G_a = fft2(g_aw);
G_b = fft2(g_bw);
G_b_ = conj(G_b);
R=(G_a .* G_b_) ./ abs(G_a .* G_b_);
r=abs(ifft2(R)).
До отриманого результату r застосо-
вується алгоритм пошуку пікового значен-
ня, що може бути описаний, наприклад, за
допомогою наступного коду:
[~, I] = max(r(:));
[dx, dy] = ind2sub(size(r), I).
Отримаємо значення зміщення у пі-
кселях зображення bg відносно ag .
На рис. 2 показано вихідні зобра-
ження та результат роботи алгоритму
крос-кореляції – зверху вниз: зображення
g_aw, g_bw (після застосування віконної
функції, для даного прикладу — вікно
Ханна), результат роботи алгоритму r.
Після пошуку пікового значення визначе-
но його положення:
dx = 14; dy=13.
Прикладні засоби програмування та програмне забезпечення
114
Рис. 2. Результат роботи алгоритму
Розширення алгоритму
крос-кореляції для субпіксельної
реєстрації зсуву
У роботі [8] показано можливість
застосування алгоритму фазової кореляції
для знаходження зсуву цифрових зобра-
жень з точністю кілька сотих пікселя.
Авторами пропонується наступна
послідовність кроків, що заміщує кінець
алгоритму, описаний у попередньому роз-
ділі.
Після обрахування зворотного дис-
кретного перетворення Фур’є до результа-
ту r застосовуються дві маски – вилуча-
ються спектральні компоненти, які лежать
поза радіусом R від центрального піку,
вилучаються спектральні компоненти, для
яких нормована величина aG або bG мен-
ша за заданий поріг . Оптимальне зна-
чення R , запропоноване у [8] знаходять з
виразу:
2
6,0 N
R
,
де N – мінімальна кількість семплів вихі-
дного цифрового зображення ag .
Поріг визначається з огляду на
необхідність вилучення частотних компо-
нент, величини яких менші за RMSp , де
RMSp – середнє квадратичне спектраль-
них величин, що лежать у області 55
пікселів від центрального піку крос-
кореляції R .
Вибір розширеного алгоритму до-
зволяє збільшити точність знаходження
зміщення до субпіксельної, проте при ви-
борі має прийматися до уваги баланс між
роздільною здатністю оптичного сенсора,
швидкодією обладнання та частотою обро-
бки кадрів.
Автори роботи [8] пропонують за-
стосовувати до вихідних зображень вікон-
ну функцію Блекмана – Харріса з метою
мінімізації бічних пелюсток спектра.
Дослідження алгоритму на
однокристальному
мікроконтролері
Для дослідження можливості за-
стосування алгоритму фазової кореляції у
польотному комп’ютері БПЛА, проведено
дослідження швидкодії роботи запропо-
нованого алгоритму на мікросхемі
STM32F407. До складу STM32F407 вхо-
дить апаратна підсистема обчислень з пла-
ваючою комою одинарної точності (single-
precision FPU), що дозволяє збільшити
швидкість проведення обчислень та вико-
ристовувати представлення із плаваючою
комою, не обмежуючись арифметикою з
фіксованою позицією коми.
При розробці програмного коду ви-
користана CMSIS DSP бібліотека, що міс-
тить оптимізовані засоби роботи з матри-
цями комплексних та дійсних значень.
Початкове та зміщене зображення
задані статично, у комплексному представ-
ленні. Для вимірювання швидкодії викори-
стано апаратний лічильник циклів проце-
сора, що входить до блоку Data Watchpoint
Прикладні засоби програмування та програмне забезпечення
115
and Trace Unit (DWT).
Вихідний код та виміри швидкодії
його роботи приведені у таблиці.
Тактова частота роботи процесора
144МГц, компілятор IAR7.80.3, рівень оп-
тимізації -O3 –oSize.
З результатів, приведених у таблиці
видно, що найбільш ресурсомісткими опе-
раціями є перетворення Фур’є та зворотне
перетворення Фур’є, що займають 77 %
загального часу виконання алгоритму. Дру-
гим за часом виконання є алгоритм ділен-
ня, що займає 6.5 % часу виконання – че-
рез особливості використаного FPU опера-
ція ділення займає у 14 разів більше часу
за операцію множення. Застосування ві-
конної функції не потребує великих затрат
часу, оскільки віконна функція описана у
вигляді матричної константи спільного
розміру з зображенням, при такому способі
подання застосування віконної функції
зводиться до поелементного множення
двох матриць. Функція-генератор для поді-
бних віконних функцій може бути описана
за допомогою MATLAB:
w = blackmanharris(l);
w2 = w*w.';
де l – розмір зображення (висота або ши-
рина), w2 – матриця, що містить згенеро-
вану віконну функцію для відповідного
розміру зображення.
Загальний час виконання алгоритму
становить близько 5мкс для зображення
32х32пікс. та 21мкс для зображення
64х64пікс., що експериментально підтвер-
джує лінійну складність алгоритму.
Таблиця
Результат роботи алгоритму
Операція Код С
Час виконання, цикли
32х32 64х64
/* a = wnd(a)
*/
arm_cmplx_mult_real_f32(a->vec, (float*)window, a->vec,
IMG_SZ*IMG_SZ);
13 088 52 250
/* b = wnd(b)
*/
arm_cmplx_mult_real_f32(b->vec, (float*)window, b->vec,
IMG_SZ*IMG_SZ);
13 069 52 241
/* a = F(a) */ fft2_32(&cfft_instance, a->cplx32, 0); 187 172 752 283
/* b = F(b) */ fft2_32(&cfft_instance, b->cplx32, 0); 187 292 752 245
/* b = conj(b) */ arm_cmplx_conj_f32(b->vec, b->vec, IMG_SZ*IMG_SZ); 7 966 31 782
/* a = a.*b */
arm_cmplx_mult_cmplx_f32(a->vec, b->vec, a->vec,
IMG_SZ*IMG_SZ);
18 460 73 751
/* b = abs(a) */ arm_cmplx_mag_f32(a->vec, b->vec, IMG_SZ*IMG_SZ); 32 327 129 100
/* a = a./b */
for(uint32_t i=0; i<IMG_SZ*IMG_SZ; i++){
a->vec[2*i] = a->vec[2*i]/b->vec[i];
a->vec[2*i+1] = a->vec[2*i+1]/b->vec[i];
}
51 217 204 887
/* a = ~F(a) */ fft2_32(&cfft_instance, a->cplx32, 1); 228 124 913 070
/* a = conj(a) */ arm_cmplx_mag_f32(a->vec, a->vec, IMG_SZ*IMG_SZ); 32 285 129 096
/* find peak */
arm_max_f32(a->vec, IMG_SZ*IMG_SZ, &m, &i);
uint32_t dx = i % IMG_SZ; uint32_t dy = i / IMG_SZ;
8 498 33 842
Загалом 779 511 3 124 566
Прикладні засоби програмування та програмне забезпечення
116
Особливості та обмеження
застосування алгоритму
крос-кореляції
Запропонований алгоритм, що до-
зволяє визначити зміщення зображення, у
контексті БПЛА може бути використаний
не тільки в основі допоміжної стабілізую-
чої системи, але і як розширення навіга-
ційної системи. Для цього необхідно до-
дати інтегруючу ланку, яка буде сумувати
моментальні значення зміщення за весь
час роботи апарата, що дозволить отрима-
ти абсолютні значення координат. Знайде-
ні результати можуть слугувати для отри-
мання абсолютного зміщення апарата,
проте увага має приділятися випадкам
зміни висоти БПЛА над поверхнею рель-
єфу – при цьому коефіцієнти перетво-
рення зміщення зображення (пікс.) у аб-
солютне переміщення (м/см/мм і т. п.)
мають бути змінені або скинуто лічильник
інтегратора.
На рис. 3 показано модель запро-
понованої системи визначення абсолют-
них координат. Модуль висотоміра (ВМ)
керує коефіцієнтами перетворення вели-
чин (k), що перетворюють зсув зображен-
ня у дискретних елементах у фізичну ве-
личину. Інтегрована величина надходить
до модуля ІНС, де використовується для
розрахунків.
Також модуль висотоміра може
здійснювати скидання (встановлення в по-
чаткове положення) інтеграторів за коор-
динатами у випадку істотної зміни висоти
(в залежності від специфіки польоту БП-
ЛА).
Існує можливість використання
описаного алгоритму як основу слідкуючої
системи на базі БПЛА. Однак має прийма-
тися до уваги те, що при такому застосу-
ванні розміри цільового об’єкта мають бу-
ти істотними (у контексті кута охоплення
оптичного сенсора), а також контрастність
зображення об’єкта має забезпечувати його
чітке виділення серед елементів рельєфу.
Основними недоліками запропоно-
ваного підходу є чутливість до змін спос-
тережуваної поверхні (якщо поверхня не є
стійкою, наприклад, потік води, то мож-
ливості оптичної стабілізації значно ско-
рочуються, оскільки в такому випадку на
результат обчислень буде впливати влас-
ний рух поверхні), відсутність стабілізації
по вертикальній осі, чутливість до змін
кута нахилу апарата (при значних кутах
нахилу БПЛА зображення істотно спотво-
рюється і зміщення визначається непра-
вильно).
Рис. 3. Використання оптичного стабілізатора разом з висотоміром
для отримання абсолютних координат
Прикладні засоби програмування та програмне забезпечення
117
У разі відсутності достатньої кіль-
кості розрізнюваних елементів рельєфу,
недостатнього освітлення або виходу з ла-
ду відеоапаратури, результат алгоритму
крос-кореляції не є інформативним. Для
прикладу, на рис. 4 показано результат ро-
боти алгоритму у випадку однорідної по-
верхні зі слабким рівнем освітлення.
Зміна кута нахилу створює спотво-
рення, що розцінюється алгоритмом фазо-
вої кореляції як зміна координат об’єкта.
Рис. 4. Результат роботи алгоритму для
поверхні з слабко вираженим рельєфом
На рис. 5 показано ідеальний випа-
док, при якому кут відхилення апарата від
нормалі становить 0°.
Рис. 5. Ідеальний випадок положення
При цьому кут нахилу апарата (ви-
значається бортовим акселерометром) ну-
льовий, нижня поверхня БПЛА розташо-
вана паралельно до поверхні рельєфу. Зо-
браження ag у цьому випадку поступає до
DSP без спотворень, що відповідає випад-
ку розрахунків, показаному на рис. 2.
Одним з підходів до вирішення да-
ної проблеми є застосування акселеромет-
ра, як допоміжного пристрою, що блокує
обробку спотворених зображень ag про-
цесором, якщо кут нахилу апарату
до нормалі перевищує певну величину
(рис. 6).
Рис. 6. Перевищення допустимого нахилу
При цьому втрачається певна кіль-
кість кадрів, що були зроблені при кутах
нахилу апарата, що визначені бортовим
обладнанням як недопустимі, що у свою
чергу призводить до зменшення реакції
положення апарата у просторі.
Допустимі значення кута нахилу
визначаються експериментально в залеж-
ності від відстані апарата до поверхні ре-
льєфу (за збільшенням відстані, спричине-
ні зміною кута нахилу камери також збі-
льшуються), характеру рельєфу та необ-
хідної точності стабілізації.
Вказану особливість роботи алгори-
тму можна застосувати також для визна-
чення кута нахилу БПЛА, однак ця можли-
вість потребує додаткового дослідження та
Прикладні засоби програмування та програмне забезпечення
118
модифікацій програми DSP та алгоритму
стабілізації.
З урахуванням вищевказаних особ-
ливостей, найбільш ефективним є застосу-
вання оптичного стабілізатора для стабілі-
зації положення БПЛА на невисокій висо-
ті польоту, що співрозмірна з лінійними
розмірами корпусу апарата.
Висновки
Запропонований алгоритм та його
розширення, що, згідно результатів описа-
ного експериментального дослідження,
має невеликі вимоги до обчислювальної
системи, може бути використано для збі-
льшення точності встановлення стійкого
положення мультироторних БПЛА здатних
утримувати позицію у просторі (напри-
клад, три-, квадро-, мультикоптери) на ни-
зькій висоті польоту як за участі оператора
так і без неї.
Можливе використання модифікації
алгоритму для визначення абсолютних
координат БПЛА. Перспективною областю
застосування оптичної стабілізації є повні-
стю автономні системи, що керуються
штучним інтелектом для автономного ви-
конання точних робіт на малій висоті по-
льоту [9].
1. Глотов B., Гуніна А. Аналіз можливостей
застосування безпілотних літальних апара-
тів для аерознімальних процесів. Сучасні
досягнення геодезичної науки та виробни-
цтва. 2014. № 28. С. 65–70.
2. Пельпор Д.С. Гироскопические системы
ориентации и навигации. Москва: Маши-
ностроение, 1982. 165 с.
3. Seo S.H., Lee B.H., Im S.H., Jee G.I. Effect of
Spoofing on Unmanned Aerial Vehicle using
Counterfeited GPS Signal. Journal of
Positioning, Navigation, and Timing. 2015.
N 4. С. 57–65.
4. Древаль О.Л., Дорошенко А.Ю. Викорис-
тання алгоритму фазової кореляції для до-
поміжної системи оптичної стабілізації лі-
тальних апаратів. Вісник НТУ України
"КПІ": Інформатика, управління та обчис-
лювальна техніка. – 2017. (у друку).
5. Kuglin C.D., Hines D.C. The phase correla-
tion image alignment method. Proc. Int. Conf.
Cybernetics Society. 1975. С. 163–165.
6. Попов В.С. Исследование влияния боковых
лепестков спектра окон на погрешности
обработки и передачи сигнала [Електрон-
ний ресурс]. Информационные системы и
телекоммуникации. – 2010. – Режим досту-
пу до ресурсу: windowing-matlab.narod.ru.
7. Harris F.J. On the use of windows for har-
monic analysis with the discrete Fourier trans-
form. Proceedings of the IEEE. 1978. N 66.
С. 51–83.
8. Harold S.S. A Fast Direct Fourier-Based Algo-
rithm for Subpixel Registration of Images.
IEEE Transactions on Geoscience and Remote
Sensing. 2001. N 39. С. 10.
9. Ростопчин В.В., Дмитриев М.Л. Примене-
ние цифровых оптических систем для бес-
пилотных летательных аппаратов [Елект-
ронний ресурс]. Режим доступу до ресур-
су: www.uav.ru/articles/opteq_uav.pdf.
References
1. Glotov V., Gunina A. Analysis of the litera-
ture. Possibilities of for UAVsfor aerophoto-
graphic processes. Modern achievements of
geodetic science and industry. 2014. N 28.
P. 65–70.
2. Pelpor D.S. Gyroscopic orientation and navi-
gation system. Moscow: Mashinostroenie,
1982. 165 p.
3. Seo S.H., Lee B.H., Im S.H., Jee G.I. Effect of
Spoofing on Unmanned Aerial Vehicle using
Counterfeited GPS Signal. Journal of
Positioning, Navigation, and Timing. 2015.
N 4. С. 57–65.
4. Dreval O.L., Doroshenko A.Yu. Application
of the phase correlation algorithm for use in
the UAV stabilization. Visnyk NTUU “KPI”
Informatics, operation and computer science.
2017. (not yet released)
5. Kuglin C.D., Hines D.C.. The phase
correlation image alignment method. Proc.
Int. Conf. Cybernetics Society. – 1975. –
P. 163–165.
6. Popov V. S. Investigation of the effect of the
side windows of the spectrum petals on the
error signal processing and transmission
[Electronic resource]. Information systems
and telecommunications. 2010. Access: win-
dowing-matlab.narod.ru.
7. Harris F.J. On the use of windows for
harmonic analysis with the discrete Fourier
Прикладні засоби програмування та програмне забезпечення
119
transform. Proceedings of the IEEE. 1978.
N 66. P. 51–83.
8. Harold S.S. A Fast Direct Fourier-Based
Algorithm for Subpixel Registration of
Images. IEEE Transactions on Geoscience
and Remote Sensing. 2001. N 39. P. 10.
9. Rostopchin V.V., Dmitriev M.L. The use of
digital optical systems for unmanned aerial
vehicles [Electronic resource]. Access:
www.uav.ru/articles/opteq_uav.pdf.
Одержано 30.01.2017
Про авторів:
Древаль Олег Леонідович,
бакалавр системної інженерії,
студент кафедри Автоматики
і управління в технічних системах
факультету Інформатики та
обчислювальної техніки
НТУ України «КПІ».
Кількість наукових публікації
в українських виданнях – 5.
http://orcid.org/0000-0002-8944-9837.
Дорошенко Анатолій Юхимович,
доктор фізико-математичних наук,
профессор, завідувач відділу
Теорії комп’ютерних обчислень
Інституту програмних систем
НАН України,
професор кафедри Автоматики та
управління в технічних системах
НТУ України "КПІ".
Кількість наукових публікацій в
українських виданнях – понад 200.
Кількість наукових публікацій у
зарубіжних виданнях – понад 50.
Індекс Хірша – 5.
http://orcid.org/0000-0002-8435-1451.
Місце роботи авторів:
ТОВ «Сі Пі Ай – Київ»,
проспект Перемоги, 68/1, оф. 68,
м. Київ, 03113.
Тел.: (044) 207 3392, вн.: 4457.
E-mail: swinemaker@gmail.com
Інститут програмних систем
НАН України.
03187, Київ,
проспект Академіка Глушкова, 40.
Тел.: (044) 526 3559.
E-mail: doroshenkoanatoliy2@gmail.com,
oayat@ukr.net
mailto:doroshenkoanatoliy2@gmail.com
|