Алгоритмы систем технического зрения для решения задач автономной навигации в городской местности без глобальной спутниковой навигации тема диссертации и автореферата по ВАК РФ 00.00.00, кандидат наук Шахуд Айхам
- Специальность ВАК РФ00.00.00
- Количество страниц 125
Оглавление диссертации кандидат наук Шахуд Айхам
ВВЕДЕНИЕ
1 Характеристики навигационных систем и постановка задачи
1.1 Инерциальные навигационные системы (ИНС)
1.1.1 Системы координат
1.1.2 Математическое моделирование инерциальных датчиков
1.1.3 Алгоритм инерциальной навигации
1.1.4 Преимущества и недостатки ИНС
1.2 Спутниковые системы глобальной навигации
1.3 Визуальные навигационные системы
1.3.1 Навигационные системы на основе сопоставления сцен
1.3.2 Визуальная одометрия
1.3.3 Преимущества навигации на основе компьютерного зрения
1.3.4 Недостатки навигации на основе компьютерного зрения
1.4 Управление траекторией и визуальное отслеживание
1.4.1 Системы управления дроном
1.4.2 Отслеживание пути
1.5 Комплексированные навигационные системы, фильтр Калмана
1.5.1 Фильтр Калмана
1.6 Предыдущие исследования
1.7 Среда моделирования
1.8 Выводы по главе
2 Анализ среды полета на основе сверточных нейронных сетей и избегание виртуальных препятствий с использованием метода потенциального поля для управления траекторией
2.1 Влияние среды полета на систему, основанную на компьютерном зрении
2.2 Анализ среды полета
2.2.1 Анализ среды полета на основе сверточных нейронных сетей
2.2.1.1 Создание набора данных
2.2.1.2 Структура сверточной нейронной сети
2.2.2 Построение мета-карты
2.2.3 Обнаружение сбоев
2.3 Избегание виртуальных препятствий с помощью мета-карты
2.4 Эксперименты и реализация
2.5 Сравнительное исследование
2.5.1 Сравнение анализа на основе сверточной нейронной сети и анализа на основе спектра среды полета
2.5.2 Сравнение со статистическим методом для обнаружения сбоев
2.6 Выводы по главе
3 Автономная система визуальной навигации (СВН) и отслеживание пути с использованием информации о геометрии улиц
3.1 Автономная визуальная навигация на основе одной камеры
3.2 Отслеживание пути на основе местоположения и на основе изображений
3.2.1 Отслеживание пути на основе местоположения
3.2.2 Отслеживание пути на основе изображений
3.2.3 Система управления дроном
3.3 Использование геометрии улиц для выравнивания и отслеживания пути
3.3.1 Создание пути на основе путевых точек
3.3.2 Режим работы далеко от ориентира
3.3.3 Режим работы вблизи ориентира
3.4 Команды управления дроном
3.5 Эксперименты и анализ результатов
3.5.1 Эксперименты и реализация
3.5.2 Анализ результатов
3.6 Выводы по главе
4 Комплексирование между ИНС/СВН и оптимизация сопоставления сцен
4.1 Навигация на основе мультисенсоров
4.1.1 Система на основе комплексирования ИНС/СВН/барометр
4.1.2 Анализ времени обработки и пересчет вектора состояния
4.2 Оптимизация сопоставления сцен
4.3 Алгоритм навигации и фильтр Калмана
4.3.1 Фильтр Калмана и компенсация ошибок
4.3.2 Псевдокод
4.4 Эксперименты и анализ результатов
4.4.1 Эксперименты
4.4.2 Анализ результатов и сравнительное исследование
4.5 Выводы по главе
ЗАКЛЮЧЕНИЕ
СПИСОК СОКРАЩЕНИЙ
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
ПРИЛОЖЕНИЕ А Акт внедрения результатов диссертационной работы
Рекомендованный список диссертаций по специальности «Другие cпециальности», 00.00.00 шифр ВАК
Система визуальной навигации автономного подвижного объекта2023 год, кандидат наук Алхатиб Маджи
Задача навигации наземного объекта на основе данных БИНС и одометра2016 год, кандидат наук Никитин Илья Вячеславович
Модели и алгоритмы интеллектуальной навигации для систем управления автономных подвижных объектов2018 год, кандидат наук Калач Геннадий Геннадиевич
Алгоритмы навигации автотранспорта с использованием МЭМС-датчиков грубого класса точности2021 год, кандидат наук Миков Александр Геннадьевич
Разработка и моделирование системы управления движением автономного необитаемого подводного аппарата в базовой системе координат2013 год, кандидат наук Гурман, Дмитрий Александрович
Введение диссертации (часть автореферата) на тему «Алгоритмы систем технического зрения для решения задач автономной навигации в городской местности без глобальной спутниковой навигации»
ВВЕДЕНИЕ
Актуальность проблемы и степень ее разработанности. Навигационная система является основным компонентом любого летательного аппарата, независимо от того, является ли он пилотируемым или беспилотным летательным аппаратом (БПЛА). Как правило, любой аппарат, движущийся по Земле, вокруг Земли или даже в космическом пространстве, нуждается в информации о своем местоположении с достаточной точностью в зависимости от выполняемой задачи. Качество и эффективность выполнения задач, требующих расчета местоположения БПЛА, таких как отслеживание пути, наблюдение, управление траекторией, картографирование, поиск и спасение, автономная посадка и другие, напрямую зависят от характеристик и производительности навигационной системы. Потеря данных или ненадежные данные навигационной системы могут привести, с одной стороны, к невыполнению поставленной задачи, а в критических ситуациях к падению или повреждению БПЛА и в свою очередь окружающей среды.
Надежная навигационная система - это система, которая обеспечивает непрерывность корректных измерений и предоставление навигационных данных с требуемыми показателями частоты и точности. В настоящее время навигационные данные можно получать с целого комплекса специализированных датчиков, систем и устройств, среди которых широко используются инерциальные датчики и многоосевые инерциальные измерительные модули, т. е. инерциальные навигационные системы (ИНС), система глобального позиционирования (СГП), барометры и магнитометры. Ввиду своей доступности и миниатюрности вышеизложенные системы и устройства используются комплексно при построении навигационных систем, однако у каждого из них есть свои преимущества и недостатки. СГП позволяет определять местоположение объекта в среднем с точностью в диапазоне 5-20 метров, но при этом при использовании появляются проблемы потери связи и данных, проблемы переотражения сигналов в окружающем объект пространстве и др. [80]. ИНС полностью независимы от внешних сигналов, подходят для определения местоположения объекта внутри
помещений и в открытой среде с частотой измерения данных до 1 кГц, но при этом в течение времени измерения они подвержены дрейфу из-за постоянного накопления интегральной ошибки. Более того, чем точнее данные ИНС, тем они дороже и обычно больше по массогабаритным характеристикам [9, 15, 27, 30, 55, 73, 87, 106]. Барометры и магнитометры используются вместе с другими системами для получения дополнительной информации о высоте и ориентации соответственно.
Наиболее перспективным представляется использование навигационных систем на основе алгоритмов и технологий компьютерного зрения [3, 4, 11, 12, 14, 17, 28, 29, 31, 35, 41, 54, 69, 97, 98, 101, 121]. Такие системы могут обеспечивать позиционирование объекта с сантиметровой точностью, в зависимости от алгоритмов обработки цифровых изображений, а также устройств получения этих изображений. Сами изображения несут в себе огромное количество информации об окружающей среде, такой как текстура окружающей среды, размеры объектов, распределение объектов и расстояния между объектами и др., а в комплексе системы компьютерного зрения позволяют понимать окружающую среду и ориентироваться в ней подобно зрительной системе человека. Соответственно благодаря своим свойствам и предлагаемым возможностям навигационные системы на основе алгоритмов и технологий компьютерного зрения могут уже в ближайшем будущем стать почти полной заменой, например, привычным СГП и ИНС [58, 62, 65, 71, 97, 130]. Однако точность и функциональность таких систем зависят от множества факторов окружающей среды, таких как текстура и структура, тени, погода и время года. Кроме того, обработка цифровых изображений и реализация специализированных алгоритмов требует вычислительных и временных затрат, что сказывается на частоте предоставления навигационных данных и формирует проблему использования таких систем в режиме реального времени.
В настоящее время навигационные системы на основе компьютерного зрения используются в комплексированной форме с другими системами навигации, но благодаря их широким преимуществам существует тенденция к их
усовершенствованию и использованию отдельно в качестве автономной навигационной системы. Таким образом, чтобы эффективно использовать преимущества навигационных систем на основе компьютерного зрения, необходимо решить вышеупомянутые проблемы, такие как наличие ошибок, возникающих из-за особенностей текстуры и цвета окружающей среды, большую вычислительную нагрузку при обработке изображений и, как следствие, задержку во времени предоставления навигационных данных и др.
Многие международные исследования посвящены поиску решений по повышению точности и надежности навигационных систем, основанных на компьютерном зрении. Некоторые из них опираются, например, на методы искусственного интеллекта [3, 18, 22, 48, 56, 58, 62, 74, 82, 84, 85, 90, 101, 122, 132], в то время как другие основаны на вероятностной фильтрации и фильтре частиц [99, 120, 124, 125]. Другие же полагаются на интеграцию с дополнительными системами [5, 15, 54, 67, 94, 105, 126] или на высокопроизводительные вычислительные устройства [60, 65, 66, 68, 93, 95, 102]. Вышеупомянутые методы, в свою очередь, могут привести к проблемам с синхронизацией измерений внутри комплексной навигационной системы или увеличению вычислительных затрат и времени обработки данных [57, 63].
Крупные международные школы интересуются предметом навигации, и, хотя до недавнего времени инерциальная навигация оставалась наиболее надежной и независимой от внешних сигналов, появились новые школы, заинтересованные в разработке систем компьютерного зрения и работающие над их применением в области автономной навигации или в качестве альтернативы СГП. Значительный вклад в области развития навигационных систем на основе компьютерного зрения внесли следующие ученые: Анисимов В. И., Бутузов В. В., Веремеенко К. К., Медведев М. В., Рухович Д. Д., Шлеймович М. П., Яковлев К. С., Cremers D., Jain A. K., Kanade T., МаНк J., Zisserman A. и др. Также эти темы интересуют научные школы крупнейших университетов мира, ведущих исследования в области навигации, включая Московский авиационный институт, Московский государственный технический университет им. Н. Э. Баумана,
Оксфордский университет (Англия), Мичиганский государственный университет (США), Технический университет Мюнхена (Германия) и др.
В предлагаемом диссертационном исследовании рассмотрена одна из основных проблем, с которыми сталкиваются навигационные системы на основе компьютерного зрения (системы визуальной навигации, СВН), а именно возникновение отказов в работе таких систем из-за изменчивости и разнородности свойств и характеристик окружающей среды при требуемой непрерывности измерений и предоставлении навигационных данных, что в свою очередь ведет к основным рискам, препятствующим внедрению СВН в качестве отдельной автономной системы навигации. В навигационных системах, основанных на компьютерном зрении, признаки, структура, цвет и другие характеристики окружающей среды играют ту же основную роль, которую радиосигнал играет в СГП, и ту же роль, которую играет сигнал инерциального датчика в ИНС. Помимо этого, в исследовании рассматривается решение проблем синхронизации и времени обработки данных при интеграции СВН с другими типами навигационных систем.
Диссертационное исследование сосредоточено на поиске и создании решений для улучшения СВН с использованием различных стратегий и алгоритмов, таких как анализ окружающей среды с использованием сверточных нейронных сетей (СНС) и корреляционно-экстремальные алгоритмы. Более того, предлагается алгоритм автономной СВН на основе интеграции визуальной одометрии с методом сопоставления сцен. Также предлагается решение проблемы оптимизации метода сопоставления сцен, компенсации временной задержки на обработку изображения и компенсации интегральной ошибки работы ИНС за счет использования компенсированных методов навигации с помощью ИНС и СВН.
Соответствие паспорту специальности. Результаты исследования соответствуют научной специальности 2.3.1. Системный анализ, управление и обработка информации, статистика по направлению исследования «Разработка методов и алгоритмов решения задач системного анализа, оптимизации,
управления, принятия решений, обработки информации и искусственного интеллекта» (пункт 4 паспорта специальности).
Цель работы и задачи исследования. Цель диссертационного исследования - повышение эффективности работы автономных систем визуальной навигации в сравнении с системами глобальной и инерциальной навигации.
Для достижения поставленной цели необходимо решить следующие задачи:
1. Провести анализ основных проблем использования автономных систем визуальной навигации.
2. Предложить подходы к модификации существующих алгоритмов автономной визуальной навигации, которые могут эффективно использоваться без данных глобальной спутниковой навигации.
3. Синтезировать модифицированные алгоритмы визуальной навигации.
4. Оценить корректность работы синтезированных в рамках исследования алгоритмов посредством проведения имитационного моделирования и натурных экспериментов.
Научная новизна. Диссертационное исследование характеризуется следующей научной новизной:
1. Разработан корреляционный алгоритм визуальной навигации, отличающийся использованием дополнительной мета-карты, описывающей уровень структурированности подстилающей поверхности, что позволяет избежать потери навигационных данных.
2. Разработан алгоритм визуальной навигации на основе визуальной одометрии, отличающийся корректированием навигационных данных за счет выделения и использования геометрических признаков наблюдаемой среды, что позволяет снизить среднеквадратичную ошибку вычисления координат местоположения на заданном пути до 1,4 м без комплексирования с дополнительными навигационными данными.
3. Разработан алгоритм навигации на основе комплексирования визуальных и инерциальных данных с помощью расширенного фильтра Калмана, отличающийся пересчетом вектора состояния динамической системы в период
задержки на обработку визуальных данных, что позволяет компенсировать ошибку определения координат местоположения инерциальной навигационной системы без использования глобальных навигационных данных.
Теоретическая и практическая значимость работы, использование результатов исследования. Разработанные с помощью методов обработки изображений, искусственного интеллекта и комплексирования данных алгоритмы открывают перспективу разработки полностью автономных систем визуальной навигации, в том числе без использования глобальных навигационных данных.
Результаты исследования используются в учебном процессе Национального исследовательского Томского государственного университета при чтении курсов «Навигационные системы» и «Встраиваемые системы» для студентов, обучающихся на факультете инновационных технологий по направлению 09.04.02 - Информационные системы и технологии (магистратура).
На защиту выносятся:
1. Корреляционный алгоритм визуальной навигации, отличающийся использованием дополнительной мета-карты, описывающей уровень структурированности подстилающей поверхности, что позволяет избежать потери навигационных данных.
2. Алгоритм визуальной навигации на основе визуальной одометрии, отличающийся корректированием навигационных данных за счет выделения и использования геометрических признаков наблюдаемой среды, что позволяет снизить среднеквадратичную ошибку вычисления координат местоположения на заданном пути до 1,4 м без комплексирования с дополнительными навигационными данными.
3. Алгоритм навигации на основе комплексирования визуальных и инерциальных данных с помощью расширенного фильтра Калмана, отличающийся пересчетом вектора состояния динамической системы в период задержки на обработку визуальных данных, что позволяет компенсировать ошибку определения координат местоположения инерциальной навигационной системы без использования глобальных навигационных данных.
Методология и методы исследования. Для решения поставленных задач использовались инструменты и методы компьютерного зрения, нейронных сетей, теории управления и обработки сигналов. Экспериментальные исследования проводились с использованием методов имитационного моделирования в специализированной среде Robot Operating System.
Степень достоверности полученных результатов. Достоверность результатов, полученных в рамках данной диссертационной работы, подтверждается экспериментами, проведенными при помощи имитационного моделирования и тестирования разработанных алгоритмов на натурных данных.
Апробация результатов исследования Основные результаты работы доложены и обсуждены на международной конференции по информационным технологиям (International Conference on Information Technology, ICIT 2021) (Amman, Jordan, 2021), доклад «Design of a navigation system based on scene matching and software in the loop simulation»; 31-й Международной конференции по компьютерной графике и машинному зрению (Санкт-Петербург, 2021), доклад «Detection of good matching areas using convolutional neural networks in scene matching-based navigation systems»; 25-й Международной конференции «Распределенные компьютерные и телекоммуникационные сети: управление, вычисление, связь, информационные технологии и математическое моделирование» (25rd International Conference on Distributed Computer and Communication Networks, DCCN 2022) (Москва, 2022), доклад «Spectrum and AI-based Analysis for a Flight Environment and Virtual Obstacles Avoidance Using Potential Field Method for Path Control»; 5-й Международной конференции по проблемам кибернетики и информатики (PCI 2023) (Баку, Азербайджан, 2023) доклад «Enhancing the street geometry extraction by fusion of thermal/visible images for visual servoing»; IV Международном форуме «Интеллектуальные системы 4-й промышленной революции» (Томск, 2021), доклад «A Comparative Study Between Extreme Correlation Methods in a Visual Navigation System»; XVII Международной школе-конференции студентов, аспирантов и молодых ученых «Инноватика 2021) (Томск, 2021), доклад «Моделирование системы
навигации с элементами компьютерного зрения и корреляционных алгоритмов»; XVII Международной школе-конференции студентов, аспирантов и молодых ученых «Инноватика 2022» (Томск, 2022), доклады «Комплексирование ИНС и навигационных систем компьютерного зрения», «Обзор навигационных систем на основе вероятностной фильтрации», «Возможности использования систем навигации на основе компьютерного зрения в зонах покрытых снегом», «Аварийная посадка для БПЛА».
Публикации. По теме диссертации опубликовано 12 работ, в том числе 2 статьи в журналах, включенных в Перечень рецензируемых научных изданий, в которых должны быть опубликованы основные научные результаты диссертаций на соискание ученой степени кандидата наук, на соискание ученой степени доктора наук (обе статьи опубликованы в зарубежных научных журналах, входящих в Scopus, с рейтингом Q1), 4 статьи в сборниках материалов конференций, представленных в изданиях, входящих в Scopus, 6 публикаций в сборниках материалов международных школ-конференций и форума.
Объем и структура диссертации. Диссертация изложена на 125 страницах, состоит из введения, четырех глав, заключения, списка сокращений, списка использованной литературы из 132 наименований, в том числе 79 работ на иностранном языке, приложения, содержит 43 рисунка и 3 таблицы.
Благодарности. Автор выражает большую благодарность научному руководителю доценту кафедры информационного обеспечения инновационной деятельности Национального исследовательского Томского государственного университета, кандидату технических наук Шашеву Д. В. за осуществление научного руководства и обсуждение всех вопросов, возникающих в процессе работы над диссертацией.
Автор признателен декану факультета инновационных технологий Национального исследовательского Томского государственного университета, доктору технических наук Шидловскому С. В. за ценные советы, полученные при выполнении данного исследования и при обсуждении его результатов.
Моей родине, Сирии, и дорогой моей семье - Али, Алии, Ларе, Жаберу и Жане - посвящается эта работа.
1 Характеристики навигационных систем и постановка задачи
Навигация - это процесс определения местоположения объекта в любой момент времени относительно эталонной системы координат. Во многих применениях вычисление навигационного решения включает в себя измерение скорости и/или углов объекта относительно его главных осей. Навигационные применения очень распространены и важны, поскольку они включены в области космической авиации, самолетов, ракет, БПЛА, робототехники и современных автомобилей. Существует много типов навигационных систем, таких как инерциальные навигационные системы (ИНС), которые зависят от инерциальных датчиков (акселерометров и гироскопов) и спутниковой системы глобальной навигации (Global Navigation System Satellites - GNSS), таких как СГП. В последнее время интерес к навигационным системам, основанным на компьютерном зрении, значительно возрос для применений БПЛА, особенно после огромного развития компьютерных систем, визуальных датчиков и искусственного интеллекта. Существует множество и других навигационных систем, например, системы, основанные на электромагнитных, ультразвуковых и инфракрасных сигналах, но они выходят за рамки данной работы.
Стоит отметить, что в данной работе речь идет о навигации в случае устройства, выполняющего измерения, установленного на самом БПЛА, а не на внешнем устройстве или внешнем наблюдателе. Таким образом, датчики (камеры, СГП и инерциальные датчики) всегда устанавливаются на БПЛА, поскольку оценка положения датчиков эквивалентна оценке положения БПЛА. Иногда есть возможность, что сдвиг и вращение между БПЛА и датчиками существуют. В таком случае можно предположить, что сдвиг и вращение являются постоянными во времени, поэтому они оцениваются один раз на этапе установки, или же ими можно пренебречь [14, 20, 21, 30, 40, 55, 80, 106].
1.1 Инерциальные навигационные системы (ИНС)
Инерциальные навигационные системы зависят от инерциальных датчиков для расчета положения, скорости и ориентации БПЛА. Обычно инерциальные датчики группируются в блок, называемый инерциальным измерительным модулем (ИИМ), он состоит из трех перпендикулярных акселерометров и трех перпендикулярных гироскопов. ИИМ различаются в зависимости от технологии производства - механические датчики; датчики, основанные на оптоволокне; датчики на основе лазера, а также микроэлектромеханические системы (МЭМС). Инерциальные датчики на основе МЭМС по-прежнему имеют низкую точность по сравнению с их аналогами, механическими и лазерными датчиками. С другой стороны, датчики МЭМС характеризуются низким энергопотреблением, малыми размерами и низкой ценой, что делает их востребованными во многих областях, таких как инерциальная стабилизация и навигация. Для того, чтобы решить проблему низкой точности этих датчиков, их можно объединить с другими навигационными системами, такими как СГП или СВН [15, 40, 106].
1.1.1 Системы координат
Известными системами координатной навигации, используемыми в инерциальной навигации, являются:
Инерциальная система координат (XI, У1, Zi) - это система координат, которая не ускоряется и не вращается. Стоит отметить, что физически добиться такой системы координат в реальном мире сложно. Таким образом, она аппроксимируется инерциальными координатами относительно далеких звезд, т. е. теми координатами, которые остаются неподвижными или движутся в равномерном прямолинейном движении относительно далеких звезд, как показано на рисунке 1.1.
Земно-центрированная система координат, привязанная к Земле ^е, Уе, Ze) - это ортогональная неинерциальная система координат, связанная с Землей, ее центр находится в центре Земли, и она вращается вместе с Землей. Скорость
вращения равна скорости вращения Земли. Одна из ее осей параллельна оси вращения Земли, а две другие оси лежат в плоскости земного экватора, как показано на рисунке 1.1.
А г,
I I
Рисунок 1.1 - Основные системы координат
Локальная система координат - это ортогональная неинерциальная система координат, которая связана с Землей, но ее центр находится в некоторой точке эллипсоида (модель Земли: World Geodetic System 1984, WGS-84), который представляет Землю. Ее вертикальная ось перпендикулярна эллипсоиду, а две другие оси лежат в плоскости, касательной к Земле, как показано (NED) на рисунке 1.1. Кроме того, вертикальная ось может быть направлена вниз, а две другие оси на восток и север, тогда она называется северо-восток-вниз NED (North-East-Down) [106].
1.1.2 Математическое моделирование инерциальных датчиков
Акселерометры. Акселерометр измеряет удельные силы, действующие на датчик в соответствии со своей осью чувствительности относительно
инерциальной системы координат. Общая модель датчика показана в уравнении (1.1).
am = ar + bconst + brandom + (sconst + srandom )ar + s2 (ar ) + M(ar ) + ^(g) + s(ar )' (1.1)
где am - значение, измеренное непосредственно датчиком; ar - реальное значение;
bconst - значение фиксированного смещения на выходе датчика;
brandom - значение случайных смещений;
sconst - фиксированная линейная ошибка масштаба;
srandom - случайная ошибка масштаба;
S2(ar) - нелинейная ошибка масштаба;
M - ошибка неортогональности между датчиками;
8(g) - ошибка, связанная с ускорением гравитационного притяжения Земли; &(ar ) - шум на выходе датчика, который имеет электронные и производственные источники, а также связан с принципом работы датчика.
Гироскопы. Гироскоп измеряет угловую скорость датчика вокруг своей оси чувствительности относительно инерциальной системы координат. Таким образом, при однократной интеграции сигнала на выходе он дает изменение угла относительно начальной ориентации датчика. Гироскоп используется для преобразования ускорений из координат датчика в навигационную систему координат либо механически, либо математически. В механическом ИИМ набор механических рамок и контуров управления используется для удержания датчиков в горизонте для формирования навигационной координаты, его также называют «платформенный». В математическом, или, как его еще называют, «бесплатформенном» ИИМ математические уравнения используются для формирования навигационной системы координат на основе данных датчиков. Эти уравнения называются уравнениями механизации. Общая модель датчика показана в уравнении (1.2).
wm = wr + bconst + brun_to_run + brand + Гsconst + srandom)wr + М(wr ) + s(wr (1.2)
где wm - значение, измеренное непосредственно датчиком;
wr - реальное значение угловой скорости;
bconst - значение фиксированного смещения на выходе датчика;
brun _to _ run - значение случайного изменения смещения между двумя
последовательными запусками;
brand - значение случайных смещений;
sconst - фиксированная линейная ошибка масштаба;
srandom - случайная ошибка масштаба; M - ошибка неортогональности между датчиками;
z(wr ) - шум на выходе датчика, который имеет электронные и производственные источники, а также связан с принципом работы датчика [55].
Математическое моделирование датчиков. Некоторые ошибки инерциальных датчиков являются «систематическими» и могут быть рассчитаны путем однократной калибровки, тогда как другие являются «случайными», требующими случайного моделирования. Калибровка основана на вычислении систематических ошибок путем сравнения выходных данных акселерометров и гироскопов с фиксированными эталонными значениями, такими как ускорение силы тяжести Земли и скорость вращения Земли [9, 27, 43, 44].
Случайные ошибки моделируются с использованием некоторых моделей, которые различаются в зависимости от датчика и применения. Известными моделями являются Гаусса-Маркова (Gauss-Markov) и авторегрессионные модели (Autoregressive model-AR). Одним из самых популярных методов моделирования является дисперсия Аллана, которая зависит от представления случайного сигнала ошибки как функции времени.
Случайные ошибки моделируются в основном либо путем сбора выходных данных датчиков (как дисперсия Аллана) или спецификаций, предоставленных
производителем для построения модели, либо путем включения этих моделей в комплексированную навигационную систему для оценки параметров [55, 87, 127].
1.1.3 Алгоритм инерциальной навигации
Процесс навигации начинается с расчета преобразования между ИИМ и эталонной системой координат в процессе, называемом «начальное выравнивание». После этого происходит компенсация ошибок различных датчиков на основе спецификации датчика, предоставленной производителем, или на основе предыдущей процедуры лабораторной калибровки в нерабочем режиме [80, 106]. Затем происходит компенсация гравитации Земли и скорости Земли перед преобразованием измерения акселерометра в желаемую навигационную систему координат с использованием данных гироскопов. Таким образом, однократное интегрирование сигнала акселерометра дает скорость БПЛА, после чего следует второе интегрирование для получения местоположения, схема ИНС показана на рисунке 1.2. Однако навигационное решение рассчитывается в конкретной базовой системе координат согласно применению. Динамическое уравнение ИНС показано в уравнении (1.3).
Три г V Вычисление
гироскопа г ориентации
г
Три
акселерометра
> Передать в ЫЕО Алгоритм навигации
Похожие диссертационные работы по специальности «Другие cпециальности», 00.00.00 шифр ВАК
Разработка высокоточных алгоритмов коррекции навигационных систем летательных аппаратов2017 год, кандидат наук Шэнь Кай
Автономный контроль приемников спутниковых навигационных систем для повышения информационной надежности системы управления движением наземного робота2022 год, кандидат наук Чан Ван Туан
Алгоритмы комплексирования инерциального блока низкого класса точности и системы спутниковой навигации2001 год, кандидат технических наук Багрова, Мария Сергеевна
Разработка и исследование интегрированной системы ориентации для стабилизации вертикального движения судна на подводных крыльях2014 год, кандидат наук Чан Танг Дык
Автономная система управления полетом квадрокоптера с возможностью облета препятствий и комплексной навигацией2017 год, кандидат наук Гэн Кэ Кэ
Список литературы диссертационного исследования кандидат наук Шахуд Айхам, 2024 год
- -
:::::
-Й0
-40
-20
40
60
X (м)
Рисунок 2.13 - Расчетный путь в плоскости (х, у) с эталонным путем с использованием онлайн-классификации
ч ■ 1 дисперсия порог
к л
/1
-1
10 15 20 25 30 35 40
время {с}
Рисунок 2.14 - Рассчитанная дисперсия с порогом 1,4 для указания ложных
сопоставлений
Таблица 2.3 - Результаты навигации для 10 экспериментов по каждому методу
Метод Среднеквадратичная ошибка положения (м) Время выполнения (мс) Ложные сопоставления (%)
Онлайн СНС 1,25 135,11 98,69
Мета-карта 1,22 40,23 98,59
Статистический показатель 2,6 (есть скачки) 40,8 85,62
Без обнаружения и исключения ложных сопоставлений 5,4 (есть скачки до 20 м) 39,26 -
2.6 Выводы по главе 2
В данной главе показана важная роль, которую среда полета играет в системах визуальной навигации. Также объяснена важность обнаружения сбоев, возникающих из-за слабо структурированных сред полета, и необходимость их предотвращения или наличия альтернативных планов для повышения надежности системы визуальной навигации.
Предложен алгоритм анализа среды полета с использованием сверточных нейронных сетей. Для этого создан набор данных, который состоит из 3920 изображений на основе фотографий, собранных с карт Google для хорошо/слабо структурированных областей. Результаты классификации сохранены в виде мета-карты, которая описывает вероятность того, насколько корреляционная система визуальной навигации в данной позиции беспилотника имеет надежное навигационное решение (местоположение). Мета-карта использовалась для обнаружения ошибок из-за слабо структурированных сред полета. Более того, проведено сравнение между мета-картой и традиционными статистическими методами, где принятый метод, основанный на мета-карте, оказался более эффективным.
Предложено рассматривать слабоструктурированные области как виртуальные препятствия и избегать их в зависимости от методов потенциального
поля для управления траекторией. Стоит отметить, что оснащение БПЛА возможностью избегания виртуальных препятствий повышает автономность выполнения полетного задания. Также проведено сравнение между мета-картой и методами анализа на основе спектра изображения. Несмотря на то, что анализ спектра проще, чем СНС, где анализ СНС является более глубоким и детальным, также он учитывает используемую оптическую систему. Проведено тестирование системы в среде моделирования, состоящей из ROS, Gazebo и Ardupilot.
В данной главе путем сравнения и реализации в среде моделирования было доказано, что анализ среды полета может повысить точность (погрешность определения местоположения составляет менее 1,5 м, а частота работы примерно равна 24 Гц) и надежности навигационной системы без СГП, что повышает независимость навигационной системы.
В дополнение к тому, что мета-карта подходит для работы во встраиваемой системе, такой как ПЛИС, мета-карта может быть изменена таким образом, что включает в себя другую информацию об окружающей среде с учетом, например, времени года. Для этой цели может быть создана дополнительная мета-карта, так что она становится трехмерной. Использование метода на основе мета-карты для избегания сбоев в применениях, таких как доставка, наблюдение и поиск в городской среде, будет эффективным, поскольку мета-карту можно создавать на одном этапе или поэтапно в рабочем режиме, т. е. система продолжает обновляться и накапливать информацию в мета-карте в течение времени выполнения миссии, приспосабливаясь к изменениям в городской среде.
Результаты исследования, представленные в данной главе, отражены в работах автора [46, 49, 111, 112, 113, 115].
3 Автономная система визуальной навигации (СВН) и отслеживание пути с использованием информации о геометрии улиц
В этой главе представлена система визуальной навигации (СВН), основанная на одной камере. Разработанный алгоритм основан на комплексировании сопоставления сцен и визуальной одометрии (ВО). Кроме того, геометрия улиц использовалась для предоставления необходимой информации для сопоставления сцен, планирования пути и компенсации дрейфа ВО. В главе также проведено сравнение и анализ результатов экспериментов по определенному пути в среде моделирования.
3.1 Автономная визуальная навигация на основе одной камеры
Визуальные навигационные системы, использующие только одну камеру, нуждаются в информации из других источников. Такая информация является важной для того, чтобы производить надежные и точные измерения и устранять неоднозначность глубины. Примерами таких источников являются компасы, альтиметры, другие навигационные системы, такие как СГП, или информация от известных объектов на изображении. Предоставление информации, которая является надежной, точной и доступной в окружающей среде для визуальных систем, представляет интерес для поддержания непрерывности измерений. Кроме того, в наружной навигации, которая зависит от эталонных объектов, иногда трудно собрать полностью точное описание или метрическую информацию о геометрии объекта. Безусловно, предыдущее обсуждение не относится к улицам, которые в настоящее время являются одними из наиболее четко определенных структур в городах и даже в небольших деревнях. Примеры полезной информации показаны на рисунке 3.1.
Многие факторы стоят за интенсивными усилиями, которые закончились точными описаниями улиц, такими как поддержка систем автоматического вождения, потребности в них для программных обеспечений в наземных
транспортных и навигационных применениях, и цели городского планирования. Как правило, расположение, ширина и ориентация большинства улиц доступны бесплатно в сети Интернет. С другой стороны, перекрестки улиц менее подвержены влиянию погоды, времени года и деятельности человека, поэтому полагаться на них как на полуестественные ориентиры - перспективная идея для улучшения навигационной системы дронов.
Рисунок 3.1 - Примеры доступной информации о геометрии улиц, такой как местоположение, ширина и угол от географического севера [61]
В дополнение к снижению стоимости и веса, надежная навигационная система на основе одной камеры становится более востребованной и привлекает внимание большинства исследователей, благодаря большим возможностям улучшения, модернизации задач и комплексирования ее с другими задачами.
Основная цель данной работы состоит в том, чтобы получить полезную информацию с улиц и использовать ее в задачах навигации и отслеживании пути для дрона. Следовательно, реализованы два алгоритма (режима работы). Первый алгоритм вычисляет местоположение дрона в географических координатах
(56.1234° 56.1234, 82.5м)
0
с помощью визуальной одометрии (ВО) на основе отслеживания локальных признаков [52]. Второй алгоритм вычисляет местоположение дрона путем сопоставления сцен с шаблоном ориентира с помощью кросс-корреляции. Во втором алгоритме используется информация об изображении, представленная геометрией и размерами улицы, для прогнозирования масштаба захваченного изображения и угла поворота относительно заданных шаблонов ориентиров, которые определяют (создают) траекторию полета. В то время как сопоставление сцен с шаблоном используется для компенсации дрейфа ВО, выравнивание выполняется с использованием вычисляемых масштаба и угла. После этого дрон продолжает процесс следования к центру ориентира. Управление дроном осуществляется на уровне команд наведения, т. е. курсовой угол и скорость для БПЛА контролируются с помощью ROS, а стабилизация дрона сохраняется за счет автопилота модели дрона IRIS. Среда моделирования городского полета в динамическом BD-симуляторе Gazebo показана на рисунке 3.2.
Рисунок 3.2 - Среда полета в Gazebo с дроном IRIS
3.2 Отслеживание пути на основе местоположения и на основе изображений
3.2.1 Отслеживание пути на основе местоположения
В навигации можно выделить два основных метода: абсолютный и инкрементальный. Информация о местоположении, рассчитанная в навигационной координате, подается на контроллер БПЛА для использования в генерации команд управления траекторией.
В этой работе для позиционирования использовались сопоставление сцен и ВО. ВО реализована путем сопоставления последовательно захваченных изображений с использованием локальных признаков в изображениях, обнаруженных Speed Up Robust Features (SURF). Для определения оптимальной модели преобразования и исключения поддельных совпадений применялся консенсус случайных выборок (RANSAC). Таким образом, накопление последовательных преобразований во внешних координатах дает местоположение камеры в ее координатах. В данной работе кросс-корреляция использовалась при позиционировании на основе сопоставления сцен, но только вблизи областей ориентиров. Однако приняты предположения о плоской поверхности (земли) и жестком креплении камеры (направленная вниз) к БПЛА.
3.2.2 Отслеживание пути на основе изображений
Известные объекты на изображениях можно использовать для расчета навигационных параметров. Обычно «известный объект» относится к физическому объекту или форме на изображении, например, к зданиям, деревьям, заборам, воронкам и т. д. Кроме того, «известный объект» может быть комбинацией многих объектов в зависимости от окружающей среды. Основным ограничением для того, чтобы объект был полезен для навигации, является «жесткость», которая сохраняет внутренние расстояния в объекте. С другой стороны, объект может быть реальным или виртуальным. Виртуальные объекты создаются из устойчивых элементов,
таких как углы или другие локальные элементы. Примером таких объектов является жесткий круг или квадрат, построенный из некоторых устойчивых точек с постоянным радиусом. Как правило, любая геометрическая комбинация точек, удовлетворяющая ограничениям жесткости, может быть полезна для получения информации о параметрах навигации. Полезной информацией об изображении для визуального отслеживания могут быть размер, местоположение и ориентация объекта, которые помогают в прогнозировании местоположения и ориентации камеры. При наличии реальных метрических размеров объекта рассчитывается масштаб изображения, что решает проблему оценки глубины в применениях с одной камерой или в применениях, где необходим масштаб, таких как кросс-корреляция. Стоит отметить, что позиция и метрическая информация не всегда важны для визуального отслеживания. Например, иногда достаточно держать объект в центре изображения, тогда достаточно измерений в пространстве пикселей, что противоположно навигации на основе местоположения, которая требует управлять и вычислять местоположение БПЛА на основе этой информации. Обнаружение сопоставление объекта на изображении выполняется многими методами, такими как сопоставление шаблона между объектом и захваченным изображением, сопоставление гистограммы, в зависимости от искусственного интеллекта, такого как нейронная сеть для обнаружения объекта, или оценка некоторых ограничений (уравнений) удовлетворяется набором точек объекта [19, 56, 84, 89, 96, 122].
В данной работе использовались некоторые ограничения: параллельные линии, которые включают в себя два второстепенных условия - «прямая линия» и «параллелизм». Предполагается, что границы улиц представляют собой прямые линии, которые были обнаружены с помощью преобразования Хафа. Следовательно, границы и ширина улицы использовались для оценки необходимой информации для точного сопоставления шаблона ориентира. После извлечения спецификации улицы и сопоставления шаблона пеленг на центр ориентира (отслеживания к центру ориентира) выполнен для направления БПЛА через путевые точки [74, 96, 123].
3.2.3 Система управления дроном
Общая схема системы управления дроном показана на рисунке 3.3.
Рисунок 3.3 - Общая система управления дроном
Задача состоит в том, чтобы спроектировать интеллектуальную систему в зависимости от одной камеры и геометрии улицы. Разработанная система берет визуальную информацию с камеры и генерирует необходимую скорость и угол курса для управления траекторией движения дрона [110, 122].
Расширенные среды моделирования предоставляют хорошие модели для автопилота дронов, такие как IRIS от Ardupilot. Использование этих моделей в трехмерных средах, таких как принятая модель, представленная Gazebo и показанная на рисунке 3.2, дает более реалистичные результаты при нулевой стоимости. В дополнение к нулевой стоимости, они обеспечивают высокую гибкость в настройке и повторении тестов, что упрощает реализацию в реальных условиях. ROS позволяет получить доступ к сигналам датчиков, прикрепленных к дрону, таким как изображение с камеры, СГП, компас, и давать команды дрону, такие как желаемый угол направления и скорость.
3.3 Использование геометрии улиц для выравнивания и отслеживания пути
3.3.1 Создание пути на основе путевых точек
Путь с длиной около 425 м был построен на основе восьми путевых точек. Каждая путевая точка была связана с эталонным шаблоном с размером
100 х 100 пикселей. Путевые точки расположены в центре каждого эталонного шаблона, их местоположения в географических координатах были сохранены. Местоположения шаблонов были выбраны на пересечениях улиц. Обычно размеры улиц являются общедоступной информацией в Интернете, они не нуждаются в реальных проверках и измерениях в реальных местах. Безусловно, в среде моделирования легко выполнить некоторые измерения. Выбор подходящих шаблонов и применение к ним предварительной обработки (обрезка и вращение) для удовлетворения вышеупомянутых требований не были сложными задачами с использованием библиотеки ОрепСУ [83].
Примеры выбранных ориентиров из среды моделирования представлены на рисунке 3.4. Как упоминалось в начале главы, были предложены два рабочих режима или алгоритма, а весь алгоритм проиллюстрирован на рисунке 3.5. Два режима работы подробно описаны в следующих подразделах.
Рисунок 3.4 - Примеры эталонных шаблонов
3.3.2 Режим работы далеко от ориентира
В этом режиме расстояние до следующей путевой точки «^» рассчитывается с помощью навигационной системы визуальной одометрии ВО. Таким образом, если «^» меньше порогового значения, равного «?^г1», то запускается второй режим (где точное совпадение ориентиров состоится). В то время как позиция постоянно рассчитывается с использованием ВО, угол курса обновляется по уравнению (3.1).
Ушу = ^), Х2 Х1
(3.1)
где (ху, уг), (х2, у2) - координаты текущей и следующей путевых точек соответственно в географических координатах.
Рисунок 3.5 - Алгоритм навигации и отслеживания путевых точек
Во время полета дрон испытывает вибрации, а углы крена и тангажа достигают больших величин. Кроме того, предположение о плоской поверхности (земли) не является совершенным, поскольку некоторые признаки расположены на земле, деревьях и зданиях с разной высотой, что немаловажно для дрона, летящего на высоте 100 м. Из предыдущего обсуждения (в дополнение к другим источникам ошибок) следует, что ожидается накопление ошибок с течением времени (дрейф),
следовательно, необходимо компенсировать дрейф ВО. Для решения этой проблемы было предложено применить метод точного сопоставления вблизи ориентиров с использованием нормализованной кросс-корреляции.
3.3.3 Режим работы вблизи ориентира
В этом режиме извлекаются границы улиц, начинается точное сопоставление сцен и пеленг на центр ориентира. Сначала изображение в градациях серого преобразуется в бинарное изображение в зависимости от детектора краев Кэнни, затем для обнаружения линий на изображении применяется вероятностное преобразование Хафа [34, 78, 128]. После этого длинные параллельные линии в шаблоне ориентира, которые представляют края улиц, извлекаются. Обнаружение линий с использованием преобразования Хафа содержит параметры точности в дополнение к двум другим основным параметрам. Первый параметр -это минимальная длина ряда точек, которые следует рассматривать как линию. Второй параметр - максимально допустимое расстояние, по которому судят, принадлежат ли две близкие линии одной и той же линии. Из построения шаблона было известно, что линии краев улиц параллельны и длиннее по сравнению с другими линиями на изображении. Была проведена процедура классификации для голосования по тем линиям, которые с меньшей вероятностью будут искомыми границами улицы. При этом исключались короткие линии и линии, далекие от параллелизма (по их уравнениям). Пересечения улиц выявляются по тому же принципу, учитывая, что они представляют собой две пары пересекающихся параллельных линий. Затем соответствующие им линии улиц выделяются на захваченном изображении, где голосование проводится таким же образом, учитывая в основном длину, параллельность и углы пересечения для уточнения. Таким образом, прямые линии, соответствующие одним и тем же улицам, выявляются на захваченном изображении и в шаблоне.
Основные этапы извлечения границ улиц представлены в псевдокоде в Алгоритме 1. Все используемые пороги определены с учетом рабочей среды,
вышеупомянутых ограничений и известной структуры шаблона. Наконец, ширина улицы доступна в пикселях и уже известна в метрах lm, затем масштаб изображения рассчитывается по уравнению (3.2). После извлечения улицы из ориентира можно найти угол между захваченным изображением и шаблоном и использовать его для выравнивания изображения, что необходимо перед кросс-корреляцией. Знание уравнения каждой линии из преобразования Хафа облегчило задачу.
Алгоритм 1. Псевдокод извлечения границ улицы.
входы: линии, обнаруженные с помощью вероятностного преобразования Хафа. Порог «l » для длины линии с начальным значением, равным 50 пикселям, и порог «а » для разности наклонов линий, которые считаются параллельным, и устанавливается равным а = tan (3).
Выход: Границы улиц.
1. For each line in Lines in the templae If line > l
Longlines. Add (line) End for
2. If Longlines is empty
l = 25
repeat 1
If Longlines is still empty Exit()
3. For each line «i» in Longlines mi = slope of «i»
For each line «n» in Longlines mn = slope of «n»
If (|mi-mn| < а and «i» is not a member of the candidates of «n») i_candidates. Add (n) End for End for
4. For each k_candidates in candidates sets
If (k_candidates.members_count()) < 2 k_candidates.delete() End for
5. If (candidates_sets.members_count()) = ф Exit()
6. For each candidates set
select the longest two lines and drop the others.
In case of ambiguity between two lines, select the line with Min(|mi-mn|). End for
7.Repeat steps from 1 to 6 for lines that intersect with the previous resulted line pairs.
8. Repeat steps from 1 to 7 on the captured image.
9. Use intersection specification on the template to refine the candidates on the captured image.
10. The remaining two pairs of intersections on the captured image and on the template are the output.
Таким образом, как в шаблоне, так и в захваченном изображении наклоны двух линий, образующих границу улицы, теоретически одинаковы, поскольку они параллельны. Чтобы сопоставить два изображения, наклон улицы (граница) на одном изображении должен быть равен наклону соответствующей улицы на другом изображении. Вычисление требуемого угла у было простым, используя некоторые математические функции, как в уравнении (3.2), затем были выполнены поворот и масштабирование. После этого сопоставление захваченного изображения с шаблоном ориентира было выполнено с использованием нормализованной кросс-корреляции.
Если две границы улицы (линии) на захваченном изображении определяются уклоном и константами с1 и с2 соответственно, а на шаблонном изображении уклоном т2 и константами сс1, сс2, тогда:
у^ап 1 (т2 )^ап 1 (т1)
^=7= (3.2)
у1+т}
_ 1т
sest Т~ > 1р
где 1т - ширина улицы в метрах; 1р - ширина улицы в пикселях; у - угол поворота; sext - расчетный масштаб.
Во втором режиме работы дрон начинает сопоставлять центр захваченного изображения с центром шаблона. Это делается путем полета к центру шаблона до тех пор, пока не будет выполнено условие й < йг2. После корректировки центров изображений на расстояние менее йг2 дрон начинает полет вперед к следующей путевой точке (центру следующего ориентира) с курсовым углом, рассчитываемым в зависимости от местоположения текущей и следующей путевых точек. Второй порог Мг2 был выбран равным 1 м, это значение представляет
допустимую ошибку для этой работы, выбор очень низких значений приведет к нестабильности дрона вблизи центра путевой точки. Второй режим работы (когда й < МЛ) требует много времени обработки, поэтому начинать поиск шаблона ориентира необходимо с оптимальной точки. Таким образом, значение МЛ было установлено равным размеру шаблона ориентира (около 20 м).
Когда дрейф ВО становится большим, сопоставление захваченного изображения с ориентиром может оказаться невозможным, но при этих условиях свободная работа ВО, т. е. без компенсации, не превышала 15 м. Кроме того, в случае неудачи при извлечении границ улицы в секторе (й < йг1) дрон продолжит выполнение задачи, но только с ВО без компенсации дрейфа. Более того, сбой при извлечении границы улицы контролируется и обнаруживается с использованием характеристик границы и пересечения улицы. Объяснение поведения дрона вблизи путевой точки показано на рисунке 3.6.
Следующая путевая точка
Рисунок 3.6 - Поведение дрона вблизи центра ориентира
3.4 Команды управления дроном
Дрон летает со средней скоростью уау, равной 10 м/с, а когда он достигает МЛ, он снижает скорость пропорционально расстоянию до следующей путевой точки. Когда дрон улетает от того же центра ориентира (путевой точки), он восстанавливает
среднюю скорость в том же соотношении, чтобы достичь 10 м/с. Когда выполняется условие й < йг2, в программу наведения дрона вводится курс Ушу на следующую путевую точку (новую путевую точку). При этом скорость начинает увеличиваться и восстанавливать свое среднее значение. Окончательная система наведения и навигации показана на рисунке 3.7. Скорость дрона задается в уравнении (3.3).
V=
Vcv если d>thr1,
max(X х Vcvv ,4) если thr2 <d<thr1,
max(XxVclv,4) если d<thr2, с новым углом курса (Yuav )>'
Где:Х-
d thrl
(3.3)
Нижняя граница скорости была установлена на 4 м/с, чтобы избежать деления на ноль, которое могло привести к застреванию в путевой точке. Кроме того, необходимо было избежать увеличения времени выполнения общей задачи.
Рисунок 3.7 - Схема системы навигации и наведения дрона. Подсистема компьютерного зрения заменила интеллектуальную подсистему, показанную
на рисунке 3.3
3.5 Эксперименты и анализ результатов
3.5.1 Эксперименты и реализация
Система была реализована в среде моделирования, состоящей из ROS и Gazebo с моделью дрона IRIS от Ardupilot. Управление скоростью и курсом дрона
осуществлялось с помощью соответствующих команд в ROS. Все программы для обработки изображений и управления дроном были написаны на Python под Linux на процессоре i510300-2,5 ГГц. Модель дрона была оснащена СГП и камерой с разрешением изображения 300^300 пикселей, в качестве эталона использовалась позиция СГП. Кроме того, выбранная среда полета была городской, где доступно множество распределенных перекрестков улиц. Стоит отметить, что планирование полета дрона с учетом таких соображений не снижает общности проблемы по многим причинам. С одной стороны, применение дронов в городских средах развивается. С другой стороны, термины «улица» и «пересечение улиц» означают не только автомагистрали или главные улицы, они могут быть расширены для включения небольших дорог или других геометрических перекрестков, которые распространены в городской среде. Безусловно, все это зависит от применения.
Тестирование проводилось в рабочем режиме без необходимости сохранения данных и без предварительной обработки. Полученные результаты местоположения были сохранены в файле 'csv' и построены с помощью программы Matlab. Расчетное местоположение по каждой оси показано на рисунках 3.8 и 3.9. Горизонтальный путь показан на рисунке 3.10. Высокая точность определения местоположения была получена вблизи путевых точек благодаря точности сопоставления ориентира и точному поведению дрона по направлению к центру ориентира.
Среднеквадратичная ошибка местоположения, равная 1,4 м, была получена вблизи ориентиров при среднем времени выполнения 60 мс. Упомянутое поведение дрона улучшило задачу отслеживания пути. Более того, снижение скорости привело к уменьшению вибрации углов дрона вокруг горизонтальной оси. Максимальная ошибка позиционирования составила 2,8 м по сравнению с 15 м только с системой ВО без компенсации дрейфа, что показано на тех же рисунках. Таким образом, ВО будет накапливать ошибку до следующей компенсации, если получены неприемлемые значения масштаба или угла, то сопоставление с ориентиром не произойдет, и ВО продолжит накапливать ошибку до следующей путевой точки.
О 20 40 60 80 100 120 140 160 180 200 220
время (с)
Рисунок 3.8 - Координаты расчетного местоположения по оси «x» с эталонным местоположением системы глобального позиционирования и рассчитанным местоположением на основе только визуальной одометрии
300 250 200
Ж150 100 50 0
0 20 40 60 80 100 120 140 160
время (с)
Рисунок 3.9 - Координаты расчетного местоположения по оси «у» с эталонным местоположением системы глобального позиционирования и рассчитанным местоположением на основе только визуальной одометрии
ВО с ориентирами
СГП
ВО
250
>• 150
200
100
50
0
-60 -50 -40 -30 -20 -10 0 10 20
х(м)
Рисунок 3.10 - Расчетная траектория в плоскости х-у с эталонной траекторией системы глобального позиционирования и рассчитанной траекторией на основе
Среднеквадратичная ошибка позиционирования в среде моделирования равна 1,4 м с ошибкой пересечения путевой точки менее 1 м, а максимальная ошибка позиционирования равна 2,8 м. Время выполнения алгоритма составило 60 мс, и большая часть времени была потрачена на процесс сопоставления и обнаружения улиц. Частота работы может быть меньше, чем частота работы в некоторых методах, основанных на СГП, но метод, основанный на зрении, более независим и даже более точен. Более того, по сравнению с комплексированием между ВО/СГП, безусловно, компенсация дрейфа недоступна при перебоях в работе СГП, и система становится зависимой от провайдера.
Выбор перекрестков улиц в качестве надежного сопоставления в городских районах и в качестве известных структур доказал свою эффективность, во-первых, благодаря их использованию для оценки масштаба и ориентации изображения,
только визуальной одометрии
3.5.2 Анализ результатов
во-вторых, сопоставления с ними, что дало точную оценку абсолютного местоположения дрона. Таким образом, ошибка местоположения ВО растет со временем и достигает максимального значения перед входом во второй режим точного сопоставления. Затем ошибка начинает уменьшаться вблизи ориентира и падает ниже 1 м. По мере использования большего количества ориентиров максимальная ошибка позиционирования будет уменьшаться, но время выполнения задачи увеличивается из-за профиля управления скорости вблизи ориентиров и требуемого времени обработки изображения.
Предлагаемое поведение дрона вблизи путевой точки позволило снизить вибрацию дрона при изменении направления. Кроме того, использование шаблонов ориентиров для точного сопоставления и отслеживания к центру ориентира оказалось эффективным для уменьшения ошибок пересечения путевых точек. Важно отметить, что получение комплексной ошибки модели для всей системы - непростая задача. Данная задача потребует индивидуального исследования и выходит за рамки данной работы.
В то время как многие исследования обычно зависят от сопоставления с перекрестками улиц в качестве подходящих областей (как обычный шаблон) для сопоставления с помощью кросс-корреляции, данное исследование полагается на характеристики объектов на изображении и их уравнения и, таким образом, получает выгоду от точности сопоставления сцен, основанной на кросс-корреляции, и от информации, извлеченной из уравнений объектов. Работа [122] зависит от метода пороговой обработки для обнаружения желаемого объекта, после чего камера захватывает объект. Отслеживание выполняется путем корректировки центра объекта с центром захваченного изображения без каких-либо допустимых погрешностей, что может привести к вибрации или нестабильности. По сравнению с работой [122], в зависимости от геометрии улицы и с допустимой погрешностью до 1 м, полученные результаты стабильнее и точнее. Кроме того, они соответствуют их аналогичным в литературе, и можно утверждать, что они лучше, чем многие из них, по тем же соображениям [75].
3.6 Выводы по главе 3
В данной главе показаны важность и возможность предоставления точной и бесплатной информации из окружающей среды для расчета местоположения на основе одной камеры. Эта информация необходима для построения пути, выравнивания изображения, решения неоднозначности глубины и компенсации дрейфа в случае ВО.
Предложено использовать доступную, бесплатную и точную информацию о геометрии улиц для предоставления этой информации, не полагаясь на внешние системы, как СГП, что повышает независимость системы. Также стоит использовать перекрестки улиц в качестве ориентиров при планировании пути, поскольку они устойчивы к быстрым изменениям среды и дают точные результаты при сопоставлении с помощью кросс-корреляции. Более того, предложено комплексирование ВО с сопоставлением сцен, что в итоге привело к созданию независимой системы визуальной навигации без СГП, без ИНС.
Разработанный алгоритм был протестирован в среде моделирования, состоящей из ROS, Gazebo и Ardupilot. В результате показано, что использование улиц в качестве точных, доступных и бесплатных определяемых объектов, эффективно для улучшения визуальной навигации (компенсирования дрейфа ВО) в дронах и не ограничивается наземными применениями. Более того, предложенный алгоритм улучшает эффективность системы и возможность ее совершенствования и интеграции с различными задачами, с минимальной необходимостью в аппаратных изменениях. Также это снижает необходимость в дополнительных датчиках, и более выгодно с точки зрения затрат, веса и энергопотребления.
Ожидаемый значительный рост количества активных дронов в небе над городом, с одной стороны, и наличие закрытых для полетов зон частной собственности или специальных зон ограниченного доступа, с другой стороны, повысит потребность не только в системах предотвращения столкновений, но и в имеющихся допустимых для полетов районах. Улицы могут быть
логическими, бесплатными подходящими вариантами, тогда использование их для улучшения системы навигации на основе компьютерного зрения является перспективной идеей.
Полученная погрешность определения местоположения БПЛА не превышает 2,8 м с частотой работы примерно 16 Гц, что делает эти измерения более подходящими для автопилота при управлении траекторией, чем СГП, поскольку погрешность СГП варьирует от 5 м до 20 м с частотой работы обычно менее 10 Гц. Предлагаемый алгоритм может быть использован в широком спектре применений, таких как доставка, точное развертывание полезной нагрузки вблизи путевых точек в районах катастроф и автоматическая посадка.
Результаты диссертационного исследования, представленные в данной главе, отражены в работах автора [45, 49, 111, 114, 117].
4 Комплексирование между ИНС/СВН и оптимизация сопоставления сцен
В данной главе представлена комплексированная система на основе ИНС/СВН/барометр с помощью РФК. СВН зависит от сопоставления сцены на основе локальных признаков SURF. Информация из одной системы используется для исправления ошибок другой системы, т. е. в то время, как ИНС используется для улучшения сопоставления сцен, СВН используется для компенсации дрейфа ИНС. В главе также представлено решение проблемы задержки из-за времени обработки изображения. Представлена система реализации, которая была протестирована по аэрофотоснимкам, собранным в г. Томске с помощью дрона DJI Matrix 600 Pro. В конце главы представлены сравнение и анализ результатов экспериментов по определенному пути.
4.1 Навигация на основе мультисенсоров
Использование всей доступной информации в процессе навигации является одной из основных характеристик любой современной автоматизированной системы как в наземном, так и в воздушном применении. Чем точнее является навигационная система, тем возможно добиться более высокой производительности. Объединение измерений от более чем одного датчика для получения более надежного и оптимального навигационного решения получило широкое распространение [5, 73, 92, 126].
В навигационных применениях использование информации датчиков в их реальном геолокационном контексте является ключевым моментом для обеспечения высокой производительности и надежности. Важность такого использования очевидна в случае необходимости расчета местоположения БПЛА для локализации других существующих объектов в окружающей среде. Такие применения существуют в дистанционном зондировании, картографии, например, одновременная локализация и картирование (SLAM), регистрация изображений, построение цифровых моделей поверхности (DSM), поиск и спасение,
и наблюдение. Навигационные системы на основе компьютерного зрения являются неотъемлемой частью предыдущих применений, поскольку для выполнения таких задач используются в основном оптические датчики, такие как камеры.
Асинхронизация между датчиками и задержки во времени при обработке изображений приводят к ошибкам в определении местоположения БПЛА, а, значит, и в миссии. После захвата изображения оно подвергается затратной по времени процедуре обработки для извлечения из него полезной информации о местоположении. Кроме того, если не компенсируются задержки во времени обработки изображения, то полученная карта будет испорчена ошибками, и автоматизированные поисково-спасательные миссии могут оказаться не полезными. В целом, любая информация, которая будет извлечена из изображения относительно местоположения, будет испорчена ошибками. Более того, управление траекторией движения БПЛА не будет точным.
4.1.1 Система на основе комплексирования ИНС/СВН/барометр
В данном исследовании разработана комплексированная навигационная система, использующая всю доступную информацию от ИИМ, камеры и барометра. Предлагаемая схема системы показана на рисунке 4.1. Целями объединения являются улучшение независимости, компенсация ошибок ИНС, улучшение процесса сопоставления сцен и компенсация ошибок, возникающих из-за задержек во времени обработки изображения. При расчете местоположения используется сопоставление сцен на основе локальных признаков SURF, где обработка изображений занимает большое, не фиксированное время.
Информация из одной системы используется для улучшения или исправления ошибок другой системы. Таким образом, для сокращения времени сопоставления сцен текущее местоположение дрона от ИНС используется для ограничения (или уменьшения) области поиска совпадающих признаков на карте. Местоположение, рассчитанное на основе сопоставления сцен, используется для компенсации дрейфа ИНС. Кроме того, для компенсации ошибок, возникающих из-за задержек во времени обработки изображения, выполняется пересчет вектора
состояния с момента захвата изображения, который представляет собой реальное местоположение беспилотника в момент захвата. Предполагается, что центр координат локального уровня NED, центр масс ИНС и координаты камеры идентичны.
Рисунок 4.1 - Общая схема навигационной системы на основе комплексирования
4.1.2 Анализ времени обработки и пересчет вектора состояния
Датчики, задействованные в комплексированных системах, не следуют одним и тем же часам и часто имеют разные рабочие частоты. Кроме того, каждый датчик нуждается в специальной обработке, фильтрации и масштабировании. В результате возникают проблемы, связанные с временной задержкой и асинхронизацией. Такие ошибки влияют на точность и стабильность системы. Идеального решения для таких проблем может не существовать. Таким образом, иногда можно игнорировать эти ошибки, если они малы, в зависимости от применения, или использовать более производительные процессоры и датчики. Эффективным решением может быть оптимизация алгоритмов или опора на параллельное программирование.
В применениях обработки изображений проблемы, связанные со временной задержкой и асинхронизацией, бывают в наихудшем случае, т. е. большие, и меняются со временем в зависимости от загрузки процессора [57]. В данном исследовании время процедуры обнаружения и описания признаков меняются со временем в зависимости от количества обнаруженных признаков на каждом изображении, и на них приходится большая часть вычислительной нагрузки алгоритма визуальной навигации. Тогда, зная момент захвата изображения «?с», и момент, когда местоположение на основе изображений готово «?п», в данной работе предлагается пересчитать РФК для обновления состояния, используя визуальные измерения в точные моменты времени. Последовательная фильтрация с РФК путем обновления процесса состояния с использованием любого измерения, когда оно готово (доступно), является хорошим выбором ФК формы для реализации предложенного пересчета. Пересчет показан на рисунке 4.2.
пересчет состояния
Рисунок 4.2 - Пересчет состояния с использованием расширенного фильтра
Калмана
РФК продолжает нормально работать между барометром и ИНС до момента, когда местоположение на основе изображений готово. Затем РФК пересчитывается с момента захвата до момента, когда результаты на основе изображений готовы. Момент захвата изображения соответствует местоположению дрона, которое вычислялось по этому же изображению. Время реакции других датчиков и обработки их данных было незначительным по сравнению со временем обработки изображения.
4.2 Оптимизация сопоставления сцен
Алгоритмы сопоставления на основе признаков, в которых используются локальные признаки SURF, устойчивы к изменениям масштаба и ориентации. Стоит отметить, что для расчета трансформации (поворота и перевода, вызванного движением камеры) между двумя изображениями достаточно иметь несколько соответствующих признаков (четыре точки, например, в алгоритме PnP), т. е. требуется только часть изображения, поэтому потеря части изображения или его обрезка не отменяет процесс сопоставления [12, 38, 59].
В данной работе было предпринято несколько шагов для улучшения процесса сопоставления. На первом шаге, поскольку карта полета уже была подготовлена заранее перед полетом, обработка эталонной карты также выполнялась в нерабочем режиме, поэтому признаки были обнаружены, описаны, а затем сохранены в структуре Kd-дерева для ускорения времени сопоставления (обнаружения признаков) без необходимости их пересчета в рабочем режиме [82]. На втором шаге ИНС расчеты использовались для ограничения области поиска признаков с использованием географических координат дрона, рассчитанных ИНС, для ограничения целевых признаков на опорной карте, как показано на рисунке 4.3.
признаки
Рисунок 4.3 - Ограничение областей сопоставления сцен
Эталонная карта обрабатывалась в нерабочем режиме, т. е. улучшение изображения, обнаружение признаков и описание на 64-байтовом векторе выполнялось с помощью SURF. Расчет трансформации между двумя полученными изображениями производился с помощью алгоритма-PnP. PnP требует только четыре точки (соответствующие признаки) для вычисления уникального решения, а все дополнительные точки используются для оптимизации. PnP применяется вместе с консенсусом случайной выборки (RANSAC) чтобы уменьшить эффект нестатического фона и рассчитать оптимальную модель трансформации между двумя изображениями.
Во время экспериментов фактор безопасности имел наивысший приоритет при планировании пути из-за низкой температуры (< 0 °С), ветра и большой нагрузки.
Проекция из трехмерного мира на плоскость изображения показана в уравнении (4.1), где параметры матрицы проекции составляют внутренние и внешние параметры. Внутренние параметры - это параметры, рассчитанные в процедуре калибровки камеры (фокусное расстояние fx,fy, центральная точка
cx,cy и параметр перекоса а). Внешние параметры - матрица поворота камеры
относительно карты R(r11,...,r33) и перевод камеры (tx>ty>tz). Калибровка камеры проводилась с использованием метода шахматной доски [109].
У
v1 у
fx 0
0
а cv
fy
У 0
У 1
r11 r12 r13 tx r21 r22 r23 ty
r31 r32 r33 fz у
Y
v1 у
(4.1)
Отношение соответствующих точек трехмерного мира (Х,У,2) и точек плоскости изображения (х,у) определяется относительно масштаба «5», который можно определить с помощью высотомера. Таким образом, сопоставление происходит только с признаками, расположенными ближе к проецированному местоположению дрона на карте. Процедуры сопоставления показаны и объяснены на рисунке 4.3.
s
4.3 Алгоритм навигации и фильтр Калмана
В комплексировании данных ИНС, СВН и барометра используется расширенный фильтр Калмана РФК.
4.3.1 Фильтр Калмана и компенсация ошибок
Динамика инерциальной навигации. Уравнения динамики инерциальной навигации в NED представлены в (4.2) для координат местоположения, скорости и матрицы вращения.
Ln = FVn,
Vn = -(Кпх] + 2[wl х])Vn + Rlah + gn , (42)
К = Rn[wb h XL
где gn - ускорение свободного падения, выраженное в локальных координатах (gn = [о о g]'), задается в мировой геодезической системе (WGS-84); ah - измеренное ускорение БПЛА;
Vn - скорость БПЛА, выраженная в локальной координате NED (vn = [vn ve vd ]');
L - координаты местоположения БПЛА (Ln = [ф x h]'): географическая широта, долгота и высота соответственно; f - матрица преобразования задается уравнением (4.3);
Rn - матрица поворота 3 х 3 от борта к локальному координату NED;
[ wn х ] - кососимметричная матрица, представляющая скорость вращения Земли относительно инерциальной системы координат;
[ wrnn х ] - кососимметричная матрица, представляющая скорость вращения локальной координаты NED относительно системы координат, привязанной к Земле, выраженная в локальной координате;
[ wnbx ] - кососимметричная матрица, представляющая скорость вращения,
измеренную гироскопами относительно локальной системы координат NED, выраженная в системе координат датчиков [80, 106].
Матрица преобразования между скоростью в географических координатах и скоростью в NED:
ф
Ln = X = FVn =
h
- -
1
M +1 0
0 1
0 0
(N + h) cos( ф ) 0 0 -1
V
Vе
N
V
D
(4.3)
где М и N - радиусы кривизны Земли в меридиональном и прямом вертикальном направлениях, соответственно, задаются согласно мировой геодезической системе (WGS-84).
Скорости вращения W, и Wln задаются уравнением (4.4).
< =
- wen =
we cos(ф) 0
-we sin(ф)
где we - скорость вращения Земли.
Vе
N + h
rN
VN
M + h V tan( ф ) N + h
(4.4)
Измерения. Измерения барометра и СВН показаны в уравнении (4.5) и уравнении (4.6) соответственно. В данной работе ИИМ работает на частоте 100 Гц и представляет процесс для РФК, а измерения состоят из двух частей -барометр, который работает на частоте 50 Гц, и СВН, которая работает примерно на 24 Гц.
гбарометр
92
= к + убаРОМ
где к - высота;
баром
- белый гауссовский шум с нулевым средним.
(4.5)
2свн
фсвн ^свн
+
(4.6)
где ф, X - географическая широта и долгота, соответственно; V1 и V9 - белые гауссовские шумы с нулевым средним значением.
Смещения датчиков. В ИИМ смещения датчиков случайно меняются с течением времени из-за различных факторов, таких как колебания температуры, старение компонентов и др. Смещения акселерометров и гироскопов предполагаются случайным блужданием, представлены в уравнении (4.7).
Ьа
'3x1
Ь8
°3х1
л,а
3x1
(4.7)
где Vй и V8 - белые гауссовские шумы с нулевым средним значением;
Ь3Х1 - смещения акселерометров (ьа = [ь
а Г1а 1а 1а
X ЬУ Ь
У3х1
- смещения гироскопов (ь8 = [ь8 ь8 ь8 ]').
Линеаризация. Проблема нелинейности системы решается в РФК путем разложения вокруг текущего оцененного состояния, где вычисляется матрица Якоби на основе уравнений (4.2), (4.3) и (4.4).
Таким образом, вектор состояния в РФК содержит 12 элементов, которые представляют ошибки состояния: 3 для ошибки местоположения, 3 для ошибки скорости, 3 для смещения акселерометров и 3 для смещения гироскопов. Вектор состояния представлен в уравнении (4.8). Матрица Якоби состояния А показана в уравнении (4.9).
х:
5ф 5Х Ък Ъуе Щ ЬЬау
ЪЪа2 Щ ЪЬ§ ЪЬ§
(4.8)
А =
Ац А12 Озхз Озхз
А21 А22 ; к _ зхз Озхз
Озхз Озхз 1зхз Озхз
Озхз Озхз Озхз 1зхз
Ап =
V
N
е
V (ап( ф )
(М + к )
ГЕ
0 —
Vе
(N + к)св*(ф) (^ + к)2 со&(ф)
0 0 0
А12 =
1
М + к 0
1
0
(N + к)cos( ф )
0 -1
А21 =
-2^Е со8(ф) --
(Vе)2
0 -
VDVN (VE)2tan( ф )
(N + к) со5 (ф)
(М + к/
(N + к/
2м>е (Vм С05(ф) - VD зт(ф)) + -
0-
VDVE + (VNVE )tan(ф)
(N + к) со8 (ф)
2weVE $т(ф)
(Vм)2
(N + к)2 (Vе)2
2 &0
(М + к)2 (N + к)2 г + к
А22 =
V
D
М + к
-2м>е $т(ф) -
IVе tan(ф)
V
N
2м/е $т(ф) -
VЕ tan(ф)
(N + к) VD + VN tan(ф)
М + к
N + к
2V
N
N + к
-2м>е со$( ф ) -
2^е ^^^^ф) -
Vе
N + к
2^
М + к N + к
где /зхз - матрица тождества с размерностью 3 х 3 ; Опхп - нулевая матрица с размерностью п х п ; г - средний радиус Земли.
(4.9)
Дискретное представление пространства состояния, т.е. уравнения состояния и измерений, представлены в уравнении (4.10).
Хк+1 = АкХк + гк> ¿к = Шк +
(4.10)
где Ак - дискретная матрица состояния;
Б - матрица измерений в РФК представлена в уравнении (4.11); vk и wk - белые гауссовские шумы с нулевым средним значением. 1к - вектор измерений; k - дискретный шаг по времени.
Б =
[01х2 1 0}х9 ] для измерения барометра, [^2х2 ^ю ] ^ля измерения СВН.
(4.11)
Реализация. Реализация РФК включает в себя два этапа: предсказание и коррекцию. Схема РФК показана на рисунке 4.4. На первом этапе вычисляется предполагаемое состояние ИНС в следующий момент времени (априорные оценки), которое можно получить путем дискретного интегрирования. На втором этапе априорные оценки подвергаются коррекции с учетом новых измерений.
Матрица ковариации шума датчиков Q при условии независимости возмущений является диагональной. Характеристики случайных составляющих выходных сигналов инерциальных датчиков указаны в спецификации, предоставленной производителем, где стандартное отклонение составляет приблизительно с8 = 2.8х 10-3град/с для шума гироскопов, и оа = о.15х 10-3 м/с2
оа оа оа оg оg оg
для шума акселерометров. Q = Аа8
Также, согласно предоставленной производителем спецификации, стандартное отклонение шума барометра составляет приблизительно ок = 1 м, а для шума измерений СВН составляет приблизительно оф = 1.22 м и ох = 1.22 м.
На этапе корректировки происходит обновление оценки состояния с использованием вектора измерений в РФК, т. е. разницы между измерениями инерциальной навигационной системы с одной стороны и измерениями СВН или барометра с другой стороны. Затем происходит коррекция в местоположении,
скорости и смещении датчиков у£ , Ьй и Ь8 соответственно, как показано в уравнении (4.12).
л _
4 = 4 - bL'
л _
К' = V - w,
л _
ъак = ъак -5Ък,
л _
= -5bg,
(4.12)
где д£, дЬа и дЬ8 - оцененные ошибки определения координат местоположения, скорости и смещения датчиков соответственно;
Л Л Л Л
т" V" Ьа и Ь8
Ч> ук> °к и Ьк - координаты местоположения, скорости и смещении датчиков после коррекции соответственно.
- коэффициент усиления Калмана; Q - ковариационная матрица шума процесса, определяемая спецификацией инерциальных датчиков; Р - ковариационная матрица шума состояния; Я - ковариационная матрица шума измерений
Рисунок 4.4 - Алгоритм расширенного фильтра Калмана
Процесс инерциальной навигации начинается начальным выравниванием для расчета начального преобразования между ИИМ и локальной системой координат NED с помощью компаса. После этого начинается навигация на основе ИНС. Таким образом, при наличии изображения местоположение ИНС проецируется на карту,
и начинается процесс сопоставления сцен. Затем, когда результаты СВН готовы, выполняется пересчет РФК с момента захвата изображения «tc» до текущего момента «tn ». Затем происходит компенсация ошибок местоположения, скорости и смещения датчиков, как показано в уравнении (4.12). Стоить отметить, что первоначальные значения на этапе пересчета - это состояние на момент захвата изображения.
4.3.2 Псевдокод
Ниже представлен псевдокод работы алгоритма комплексированной
навигации (Алгоритм 2).
Алгоритм 2. Комплектированный навигационный алгоритм_
Входы: начальное местоположение от СГП, углы Эйлера от компаса, выходы барометра и инерциальных датчиков, текущее изображение и карта. Выходные данные: местоположение и скорость.
Псевдокод:_
1. Первоначальное выравнивание ИНС
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.