Библиотека алгоритмов высокопроизводительной обработки данных от системы технического зрения беспилотного летательного аппарата

Автор: Агроник Алексей Юрьевич, Фраленко Виталий Петрович

Журнал: Программные системы: теория и приложения @programmnye-sistemy

Рубрика: Искусственный интеллект, интеллектуальные системы, нейронные сети

Статья в выпуске: 2 (29) т.7, 2016 года.

Бесплатный доступ

В работе описаны результаты работы, направленной на разработку библиотеки высокопроизводительных реализаций алгоритмов для обработки данных, полученных с беспилотных летательных аппаратов. Приведены результаты экспериментальных исследований. Представлен новый интерфейс визуально-блочного программирования, позволяющий создавать схемы решаемых задач наиболее удобным способом

Бпла, навигация, обработка изображений, параллельный алгоритм

Короткий адрес: https://sciup.org/14336195

IDR: 14336195

Текст научной статьи Библиотека алгоритмов высокопроизводительной обработки данных от системы технического зрения беспилотного летательного аппарата

Мобильные летающие устройства или беспилотные летательные аппараты (БПЛА) на сегодняшний день используются в самых различных областях и сферах человеческой деятельности. Совершенствование их математического и программного обеспечения требует разработки и реализации целого комплекса алгоритмов, отвечающих за обработку изображений, навигацию и управление, поддержку разнородного аппаратного обеспечения. Современные тенденции к увеличению объема бортовых вычислительных ресурсов (в том числе за счет применения графических ядер, интегрированных рядом с ядрами общего назначения) позволяют применять методы искусственного

В рамках проектов Российского фонда фундаментальных исследований № 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: Счет на процессорах общего назначения и с задействованием графического ускорителя

Количество вычислительных потоков Время счета (сек) с использованием: процессора общего    графического назначения        ускорителя 1 2 4 8 1616,68               219,89 829,00               124,87 422,76               117,31 231,76               109,35 на рис. 2(b) использовался алгоритм спектрографической закраски, позволяющий выделить текстуры, схожие с автомобилями, и сверточная нейронная сеть для того, чтобы отсеять случайно обнаруженные похожие текстуры. Для выделения областей с активными пожарами (см. рис. 3), имеющими характерные текстурные особенности, также использовался алгоритм спектрографической закраски.

Был проведен вычислительный эксперимент по обработке полноцветных изображений ДЗЗ, полученных с БПЛА (осуществлялся поиск целевых объектов). Размер отдельных изображений –– 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).
Еще
Статья научная