В данной статье представлены результаты работ ЗАО Транзас
в области компьютерного зрения применительно к задачам навигации ЛА и обработки информации, получаемой с ЛА.
Искусственный интеллект; компьютерноезрение; распознавание; навигация; восстановление 3D; сшивка карт; целеуказание, БПЛА
Введение. Ряд прикладных задач (автоматическая подготовка полетного задания для высокоточного ЛА, точное целеуказание, навигация / ориентация ЛА и т.д.) могут быть решены с использованием технологий компьютерногозрения. Эти технологии имеют ряд существенных преимуществ:
Транзасбыл разработан ряд технологий компьютерного зрения, имеющих практическое значение.
Распознавание изображений с самообучением. Система предназначена для автоматического поиска и классификации объектов на любых растровых изображениях.
Критерии распознавания определяются системой автоматически, по набору обучающих изображений. Система может работать как с отдельными снимками, так и с
видеопотоком в реальном времени (независимо с каждым кадром). Система выполняет поиск и классификацию объектов. Результат поиска – положение, масштаб
и ориентация объекта. Результат классификации – класс объекта и достоверность отнесения к классу. Система может распознавать как конкретные объекты,
так и типы и классы объектов (например, лицо
, самолет
и т.п.). Положение, размер и ориентация объекта на изображении могут быть произвольными.
Произвольной может быть и окружающая обстановка: фон, освещение, сопутствующие предметы и т.д. Система распознает на изображении все объекты искомого типа.
Система может искать и классифицировать несколько типов объектов одновременно.
Алгоритм поиска. Подсистема поиска включает модуль самообучения и активный модуль.
Модуль самообучения по набору изображений, на которых присутствует объект, автоматически находит множество критериев, отличающих объект от окружения. Области обучающих изображений, содержащие объект и несодержащие объект, раскладываются по базису из нескольких сотен тысяч геометрических примитивов: линии различного наклона и толщины, эллипсы различного радиуса и эксцентриситета, прямоугольники различных размеров и соотношений сторон и др. Обучающая программа находит такие сочетания примитивов, которые встречаются в области объекта чаще, чем в области его окружения (критерии поиска). Программа находит большое количество критериев поиска. Каждый критерий лишь с некоторой вероятностью говорит о наличии объекта, но их совместное применение дает достоверный результат. Обучение выполняется без участия человека. Оператору необходимо только отметить на обучающих изображениях те области, в которых находится искомый объект. Активный модуль работает с поступающими изображениями – фотографиями или кадрами видеопотока. По найденным при самообучении критериям он находит объект и определяет его положение, масштаб и ориентацию.
Алгоритм классификации найденных объектов. Подсистема классификации также включает модуль самообучения и активный модуль. Модуль самообучения по обучающим наборам, на которых присутствуют объекты различных классов, находит критерии, отличающие каждый из классов от остальных. Активный модуль по изображению объекта автоматически относит его к одному из классов и определяет достоверность классификации.
На вход активного модуля по ступают нормированные по размеру и ориентации изображения объектов, найденных при поиске. Производительность поиска для компьютера Core II Duo – 6 кадров 1024 × 768 в секунду при неизвестной ориентации объекта и 30 кадров в секунду в случае известной ориентации. Производительность классификации – 1000 объектов в секунду. При поиске нескольких типов объектов производительность снижается пропорционально количеству типов объектов. Для дополнительного повышения производительности разработана система, позволяющая распределять отдельные процедуры (распаковка изображений, поиск, классификация) между несколькими компьютерами. Модуль обучения требует значительного процессорного времени. Например, на обучение распознаванию по 1500 фотографиям требуется более 300 часов времени компьютера Core II Duo. Для ускорения обучения разработана система параллельных вычислений на нескольких вычислительных узлах, объединенных сетью Ethernet. Сервер системы автоматически распределяет работу по всем компьютерам сети, на которых установлена программа обучения. Сервер передает вычислительным узлам исходные данные для обсчета и принимает от них результаты работы. В процессе работы сервер непрерывно отслеживает состояние всех узлов. При отключении узла на значенная ему задача динамически распределяется между оставшимися узлами. При включении узла ему назначается соответствующая задача. Объемы работы распределяются между узлами пропорционально их производительности, которая определяется автоматически по результатам измерений скорости работы на предыдущем этапе. После каждого вычислительного узла позволяет динамически изменять количество ресурсов данного компьютера, задействованных в процессе обучения систмы. Таким образом, эти компьютеры можно использовать для решения других задач. Клиентская и серверная программы реализованы в виде системных сервисов Windows XP, а в серверной части реализована система непрерывного журналирования. Это позволяет:
откатыватьобучение к любому моменту на протяжении пройденнх этапов.
Распознавание объектов с предварительной селекцией. При анализе больших объемов изобажений любой отдельно взятый метод распознавания дает значительное количество ложных откликов. Для решения проблемы необходимо применять несколько методов распознавания одновременно и совместно анализировать результаты. Этот подход можно рассматривать также как предварительную сеекцию областей интереса перед распознаванием с самообучением.
Фрактальные методы. Объекты искусственного происхождения, как правило, отличаются нехарактерной для природных объектов упорядоченностью. Для их группового обнаружения эффективно использовать фрактальный метод распознавания.
Распознавание 2D форм. Некоторые объекты, например дороги, детали ЛА и пр., эффективнее всего обнаруживать селекцией конкретных геометрических форм.
Метод особых точек. Один из мощных методов распознавания основан на определении особых точек изображения. В этом методе на искомом изображении и на его последовательно уменьшаемых копиях определяются экстремумы яркости, и для каждого экстремума описывается форма его окресности относительно напрваления максимального градиента. Таким образм создается набор характеристики изображения, инвариантных относительно преобразований вращения и масштабирования. Точно так же особые точки выявлятся и на исследуемом изображении. Сопоставляя характеристики искомых и найденных особых точек, можно найти на исследуемом изображении искомый объект. Разработанное ПО позволяет на одном компьютере Core II Duo обрабатывать более 10МПикс в секунду.
Распознавание по текстурным особенностям. Распознавание объектов по текстурным особенностям, например, по цветовой гистограмме, эффективно на можельных изображениях. В реальных условиях, такой подход крайне зависим от фона, освещения, типа камеры и пр. Он применим только в особых случаях.
Распознавание измененрий. Для распознавания изменений, произошедших между двумя сессиями аэрофотосъемки, применяется предварительная обработка изображений:
Данный метод применяется также в задаче поиска оставленных вещей
– стационарных объектов, появившихся в поле зрения камеры.
В видеопотоке выделяется фон, движущиеся объекты и объекты, появившиеся на найденном фоне.
Селекция движущихся целей. Селекция движущихся целей существенно повышает наежность распознавания движущихся объектов. В случае наблюдения с борта ЛА требуется более сложный алгоритм селекции, чем при работе со стационарной камеры, так как все объекты в поле зрения камеры движутся и необходимо различать перемещение в поле зрения поверхности Земли и перемещение объектов по этой поверхности. Для решения задачи применен метод поиска общих точек. Программа находит общие точки на последовательных кадрах, выбирает наибольший самосогласованный набор, опрелеляет параметры проекционного преобразования, переводящие последующий кадр в предыдущий. Применяя это преобразование к каждому кадру виделпотока, программа стабилизирует поверхность Земли. Поиск на этом видео движущихся объектов и их сопровождение уже не представляет затруднений.
Распознавание 3D форм. Метод распознавания 3D форм, полученных в виде DEM (а именно в таком виде выводит результаты программа восстановления 3D), в математическом смысле аналогичен распознаванию 2D объектов: в данном случае высота эквивалентна яркости изображения.
Восстановление 3D. Классическое стереозрение. Форму объекта можно восстановить по двум изображениям объекта, снятым с разных ракурсов. Поскольку при восстановлении выполняется большой объем вычислений, ПО реализовано с применением SSE4 и CUDA. Производительность – 10 пар 384×288 в секунду. Метод применен в задаче автономного движения робота‑автомобиля. Робот восстанавливает трехмерную картину окружающей обстановки, определяет плоскость дороги (пола), положение препятствий, планирует маршрут для объезда препятствий.
Многокадровое стерео. При аэрофотосъемке также можно использовать стереоэффект, вознкающий в области перекрытия кадров. Наилучшую точность обеспечивает метод восстановления 3D не по двум, а по всем кадрам, на котором виден участок поверхности. Этот метод представлен в программе TopoAxis. Программа восстанавливает рельеф и форму отдельных сооружений, текстурирует восстановленную форму по исходным изображениям с выравнивание цветности и яркости, позволяет привязывать восстановленное 3D по опорным точкам. Стереопары программа формирует автоматически. Также автоматически вычисляется и учитывается дисторсия камеры. Таким образом, в полностью автоматическом режиме формируется 3D карта местности. При необходимости она может быть преобразована в ортофотоплан.
Стереозрение с одной камеры. При установке видеокамеры на движущемся объекте, например на летательном аппарате, возникает стереоэффект между последовательными кадрами видео. Его можно использовать для счисления пути и определения ориентации объекта.
Автоматическая сшивка карт. Для автоматической обработки данных эарофотосъемки разработана программа TopoAxis. Ее основные функции:
Программа TopoAxis может быть использована для автоматической подготовки полетного задания для низколетящих ЛА.
Точное целеуказание/позиционирование. Как правило, параметры внешнего ориентирования кадров (фото и видео)
известны с низкой точностью, что приводит к значительным ошибкам целеуказания. Существенно повысить точность
можно путем подшивки кадра к фотооснове (фотокарте). Разработанная для этого программа TopoTarget находит на фотооснове
особые точки и создает упорядоченную базу данных особых точек. При поступлении изображения и телеметрии
программа ищет общие точки между кадром и областью фотокарты в заданном радиусе вокруг цнтра камеры по телеметрии. По найденным общим точкам
кадр подшивается
к карте. Тем самым точность целеуказания становится практически такой же, как и точность самой фотокарты.
Этот же метод может быть использован для точного позиционирования ЛА: зная положение нескольких особых точек в кадре и параметры камеры, можно вычислить положение и ориентацию самой камеры в момент съемки. Поскольку сшивка выполняется с субпиксельной точночтью (СКО порядка 0,6 пикселя), ошибка метода не превосходит 1 м при высоте полета 1 км. Метод также применим и для определения положения/ориентации ЛА по рельефу: в математиском смысле рельеф эквивалентен яркости фотоосновы.
Счисление пути и навигация по видео. Метод аналогичен тому, как ориентируется в пространстве человек. В кадрах видеопотока
система находит характерные точки и далее отслеживает их перемещение с течением времени. По характеру перемещения найденных точек
система определяет их положение в 3‑мерном пространстве и то, как изменяется положение и ориентация самой камеры. Используемый алгоритм обеспечивает
высочайшую точность навигации. Ошибка при движении по незамкнутым траекториям составляет примерно 1/100000 относительно пройденного пути, при движении по замкнутым таректориям
ошибка может быть обнулена при выходе на уже пройденный участок. Совмещение метода счисления пути по видео с описанным выше методом позиционирования путем
узнавания
особых точек фотоосновы или рельефа позволяет достичь практически абсолютной точности навигации, причем в полностью пассивном режиме.
Автопосадка по видео. Метод навигации по видео использован также для автоматической посадки ЛА. Программа, используя стереоэффект, возникающий при движении камеры переднего обзора, восстанавливает трехмерную поверхность Земли, распознает плоский участок поверхности (зону ВПП), определяет вертикальную и горизонтальную скорость движения ЛА, а также крен и тангаж. Оператору достаточно указать ось ВПП, чтобы система смогла посадить ЛА. Ниже представлен результат работы программы: синяя сетка – плоскость ВПП, обнаруженная программой, зеленые точки – вычисленные программой точки касания и остановки БПЛА.