Библиотека алгоритмов высокопроизводительной обработки данных от системы технического зрения беспилотного летательного аппарата
Автор: Агроник Алексей Юрьевич, Фраленко Виталий Петрович
Журнал: Программные системы: теория и приложения @programmnye-sistemy
Рубрика: Искусственный интеллект, интеллектуальные системы, нейронные сети
Статья в выпуске: 2 (29) т.7, 2016 года.
Бесплатный доступ
В работе описаны результаты работы, направленной на разработку библиотеки высокопроизводительных реализаций алгоритмов для обработки данных, полученных с беспилотных летательных аппаратов. Приведены результаты экспериментальных исследований. Представлен новый интерфейс визуально-блочного программирования, позволяющий создавать схемы решаемых задач наиболее удобным способом
Бпла, навигация, обработка изображений, параллельный алгоритм
Короткий адрес: https://sciup.org/14336195
IDR: 14336195
Library of high-performance algorithms for processing of data from unmanned aerial vehicle vision system
The paper describes the results of work aimed at developing a library of high-performance implementations of algorithms for processing data obtained from unmanned aerial vehicles. The results of experimental studies are presented. A new interface of visual-block programming is presented, allowing to create schemes of solved problems in the most convenient way
Текст научной статьи Библиотека алгоритмов высокопроизводительной обработки данных от системы технического зрения беспилотного летательного аппарата
Мобильные летающие устройства или беспилотные летательные аппараты (БПЛА) на сегодняшний день используются в самых различных областях и сферах человеческой деятельности. Совершенствование их математического и программного обеспечения требует разработки и реализации целого комплекса алгоритмов, отвечающих за обработку изображений, навигацию и управление, поддержку разнородного аппаратного обеспечения. Современные тенденции к увеличению объема бортовых вычислительных ресурсов (в том числе за счет применения графических ядер, интегрированных рядом с ядрами общего назначения) позволяют применять методы искусственного
В рамках проектов Российского фонда фундаментальных исследований № 15–07– 04051–а «Разработка нейросетевых методов и моделей обработки данных дистанционного зондирования Земли для задач поиска, распознавания и мониторинга целевых объектов», № 15–29–06945–офи_м «Развитие моделей, методов и программных средств обработки мультиспектральных снимков, видео-потоков и данных телеметрии для задач космического мониторинга арктической зоны» и № 16–07–00096–а «Методы решения навигационных и траекторных задач в бортовых системах интеллектуального управления автономных летательных аппаратов на основе оптимизации конвейерных, разрядных и параллельных вычислений».
○c Программные системы: теория и приложения, 2016
интеллекта и эффективные текстурные фильтры, причем роль первых не ограничивают поиском целевых объектов, расширяя область использования алгоритмов и на управление полетом. Настоящая статья представляет результаты работ по созданию новой библиотеки таких алгоритмов и графического интерфейса для взаимодействия с ней.
1. Библиотека алгоритмов
Далее перечислены некоторые из наиболее востребованных алгоритмов, реализации которых были созданы в рамках выполняемых в настоящее время проектов РФФИ (некоторые из них являются лишь высокопроизводительными реализациями известных алгоритмов, другие –– реализации новых алгоритмов, разработанных коллективом исследователей):
∙ алгоритмы базовой фильтрации изображений: низкочастотный и высокочастотный, медианный и фильтры управления контрастом; алгоритм суперразрешения, позволяющий построить изображение высокого разрешения по нескольким слабо отличающимся изображениям объекта меньшего разрешения с использованием субпиксельных сдвигов снимаемого объекта [1] ;
∙ алгоритм выбора лучшего снимка из серии на основе вычисления модуляционной передаточной функции (Modulation Transfer Function, MTF) [2] ;
∙ алгоритмы восстановления поврежденных изображений: алгоритм ААLR [3] , являющийся адаптированным вариантом алгоритма Лаки-Ричардсона [4, 5] ;
∙ алгоритм слепой деконволюции [6] ;
∙ алгоритм оценки оптического потока, позволяющий отслеживать обнаруженный объект в последовательности видеокадров [7] ;
∙ алгоритм сопоставления нескольких снимков (на основе дескрипторов особых точек SIFT (Scale-Invariant Feature Transform) и SURF (Speeded Up Robust Features) [8, 9] , с использованием библиотеки FLANN [10] );
∙ алгоритм следования БПЛА по заданному маршруту, включающий адаптивную подстройку коэффициентов ПИД-регулятора на основе генетического алгоритма и нейронной сети [11] ;
∙ алгоритм нейросетевого обнаружения целевых объектов на изображениях, основывающийся на использовании искусственных нейронных сетей, в том числе сверточной нейронной сети глубокого обучения [12 –14] ;
Рис. 1: Схема управления полетом БПЛА
∙ алгоритмы сегментации изображений: волновой и спектрографический подходы [15] , алгоритмы на основе метода Лавса и коэффициентов Харалика [16] ;
∙ алгоритм QuickShift [17] .
Разработана общая схема функционирования перспективного беспилотного летательного аппарата, содержащая ряд программных мо-
(a) самолетов на территории (b) легковых автомобилей заданной модели аэропорта
Рис. 2: Поиск целевых объектов дулей из состава библиотеки. Схема включает в себя следующие основные функциональные части: полет БПЛА и получение снимков с подвижной камеры с оценкой качества снимков и их предобработкой; выделение целевых объектов; определение собственных координат и ориентации; коррекция угла наблюдения; сохранение карты наблюдаемой поверхности; интеллектуальная корректировка полета БПЛА и его параметров (см. рис. 1). Реализация содержит как параллельные, так и конвейерные способы выполнения необходимых вычислений [18, 19], что в сочетании с поддержкой отечественной платформы «Мультикор» [20] позволяет эффективно задействовать все имеющиеся вычислительные ресурсы. Одним из достоинств платформы «Мультикор» является возможность поддержки организации вычислений с использованием CORDIC-арифметики, характеризующейся отсутствием «длинных» операций при вычислении элементарных функций [21].
На рис. 2(a), 2(b) и 3 приведен ряд иллюстраций, демонстрирующих работу некоторых реализованных алгоритмов. Результаты, показанные на рис. 2(a), получены с помощью волнового алгоритма удаления фона, алгоритма маркировки связанных компонент и искусственной нейронной сети Хемминга. Для выделения объектов
Рис. 3: Поиск очагов пожаров
Таблица 1: Счет на процессорах общего назначения и с задействованием графического ускорителя
Был проведен вычислительный эксперимент по обработке полноцветных изображений ДЗЗ, полученных с БПЛА (осуществлялся поиск целевых объектов). Размер отдельных изображений –– 1280x720 пикселей, общее количество –– 300 штук. Сравнение реализаций, использующих процессоры общего назначения (от одного до двух Intel E5410 @ 2.33GHz) и один графический ускоритель Nvidia Tesla C1060, сделано в таблице 1 . Использование именно такого оборудования оправдано ввиду того, что на борту БПЛА невозможно в реальном времени осуществлять столь сложную обработку информации из-за ограниченности ресурсов –– как энергетических, так и вычислительных. Производительность реализации для графического ускорителя
Рис. 4: Визуально-блочное программирование схемы задачи масштабируется при увеличении числа вычислительных потоков из-за того, что пока одни потоки обрабатывают данные, другие в фоне (асинхронно) подгружают новые данные для обработки.
-
2. Графический интерфейс
Для эффективного применения разработанных модулей (всего более ста) разработан специальный графический интерфейс визуальноблочного программирования (см. рис. 4) . Как и все программные модули библиотеки алгоритмов, интерфейс запрограммирован на языке C++.
Интерфейс позволяет соединять отдельные модули каналами передачи данных, устанавливать в диалоговых окнах их настройки и пр.
Составив необходимую схему, можно выбрать число задействуемых процессоров общего назначения и графических ускорителей (ЦПУ и ГПУ соответственно, см. рис. 4) . В частности, схема, часть которой показана на рисунке, с помощью искусственной нейронной сети отслеживает целевые объекты на поверхности Земли.
Заключение
Разработанная библиотека алгоритмов и графический интерфейс служат для организации высокопроизводительной обработки данных от системы технического зрения БПЛА. Библиотека обеспечивает компромисс между точностью и быстродействием, поддержку динамического распределения нагрузкой между имеющимися вычислительными ресурсами. Графический интерфейс удачно ее дополняет.
Включение контура интеллектуального управления и методов высокопроизводительной обработки потоков данных позволило создать новую технологию управления с максимальным уровнем надежности, расширить область применения робототехнических систем. Часть из реализованных алгоритмов используется в задачах обработки данных дистанционного зондирования Земли, в частности, для мониторинга пожаров и слежения за автомобильным транспортом с высоко летящих БПЛА.
Список литературы Библиотека алгоритмов высокопроизводительной обработки данных от системы технического зрения беспилотного летательного аппарата
- А. С. Крылов, А. В. Насонов. Компьютерное повышение разрешения изображений с использованием методов математической физики, МАКС Пресс, М., 2011, 72 с.
- A. Cunningham, A. Fenster. A Method for Modulation Transfer Function Determination from Edge Profiles with Correction for Finite-element Differentiation//Medical Physics, V. 14. No. 4. 1987. С. 533-537 (english).
- Manoj Kumar Singh, Uma Shanker Tiwary, Young-Hoon Kim. An Adaptively Accelerated Lucy-Richardson Method for Image Deblurring//EURASIP Journal on Advances in Signal Processing, 2008, Article ID 365021 (english), 10 с. ↑ 108 Рис. 6. Визуально-блочное программирование схемы задачи
- W. H. Richardson. Bayesian-based Iterative Method of Image Restoration//Journal of the Optical Society of America, V. 62. No. 1. 1972. С. 55-59 (english).
- L. B. Lucy. An Iterative Techniques for the Rectification of Observed Distributions//Astronomical Journal, V. 79. No. 6. 1974. С. 745-754 (english).
- Е. Е. Переславцева, М. В. Филиппов. Метод ускоренного восстановления изображений, смазанных при движении//Наука и образование, 2012, №2. С. 77-90.
- G. L. Barrows, J. S. Chahl, M. V. Srinivasan. Biologically Inspired Visual Sensing and Flight Control//Aeronautical Journal, 107 2003. С. 159-268 (english).
- D. G. Lowe. Distinctive Image Features from Scale-invariant Keypoints//International Journal of Computer Vision, V. 60. No. 2. 2004. С. 91-110 (english).
- H. Bay, T. Tuytelaars, Van Gool L. Surf: Speeded Up Robust Features//Computer Vision -ECCV 2006, 2006. С. 404-417 (english).
- "FLANN -Fast Library for Approximate Nearest Neighbors" (english), URL: http://www.cs.ubc.ca/mariusm/index.php/FLANN/FLANN.
- Н. С. Абрамов, Д. А. Макаров, М. В. Хачумов. Управление пространственным движением летательного аппарата по заданному маршруту//Автоматика и телемеханика, 2015, №6. С. 153-166.
- C. Szegedy, A. Toshev, D. Erhan. Deep Neural Networks for Object Detection//2013 (english), URL: http://papers.nips.cc/paper/5207deep-neural-networks-for-object-detection.pdf.
- В. М. Хачумов, В. П. Фраленко, Chen Guo Xian, Zhang Guo Liang. Перспективы построения высокопроизводительной системы обработки данных дистанционного зондирования Земли//Программные системы: теория и приложения, 2015, №1. С. 121-133.
- А. С. Лебедев, В. П. Фраленко, Г. С. Чэн, Г. Л. Чжан. Экспериментальное исследование задачи поиска сложных ригидных объектов в системе обработки космических снимков "ПС НСКиД"//Современные проблемы науки и образования, 2015, №1, URL: http://www.science-education.ru/pdf/2015/1/1194.pdf.
- В. П. Фраленко. Анализ спектрографических текстур данных дистанционного зондирования Земли//Искусственный интеллект и принятие решений, 2010, №2. С. 11-15.
- В. П. Фраленко. Методы текстурного анализа изображений, обработка данных дистанционного зондирования Земли//Программные системы: теория и приложения, 2014, №4. С. 19-39.
- B. Fulkerson. "Really Quick Shift: Image Segmentation on a GPU (GPU Implementation of the QuickShift Algorithm)" (english), URL: http://vision.ucla.edu/brian/gpuquickshift.html.
- А. А. Талалаев. Модели, алгоритмы и программно-инструментальные средства для организации конвейерно-параллельных вычислений на мультипроцессорных системах, Диссертация на соискание ученой степени кандидата технических наук/Институт программных систем им. А.К. Айламазяна Российской академии наук, ПереславльЗалесский, 2012, 112 с.
- В. П. Фраленко, А. Ю. Агроник. Средства, методы и алгоритмы эффективного распараллеливания вычислительной нагрузки в гетерогенных средах//Программные системы: теория и приложения, 2015, №3. С. 73-92.
- "Мультикор"-технология проектирования "СнК", URL: http://multicore.ru/in
- V. M. Khachumov. Bit-parallel Algorithms and Devices//11-th International Conference on Computer Graphics & Vision GRAPHICON'2001, 2001. С. 224-226 (english).