Область техники, к которой относится изобретение
[01] Настоящая технология относится к компьютерным способам и системам для управления роботизированным транспортным средством, в частности, к способам и системам для управления мобильным роботом.
Уровень техники
[02] Автономные роботизированные транспортные средства представляют собой транспортные средства, способные автономно перемещаться по частной территории и/или по территории общего пользования. С помощью системы датчиков, определяющих местоположение и/или окружение транспортного средства, внутренняя или связанная с транспортным средством логическая система управляет скоростью и направлением движения роботизированного транспортного средства на основе определенного датчиками местоположения и окружения транспортного средства.
[03] В роботизированном транспортном средстве могут использоваться различные системы датчиков, такие как системы камер, радиолокационные системы и лидарные системы, не ограничиваясь ими. Для сбора различной информации о местоположении и окружении транспортного средства и/или информации в другом формате могут использоваться различные системы датчиков. Например, лидарные системы могут использоваться для сбора данных облака точек для построения трехмерных карт окружающего пространства и других потенциальных объектов, расположенных в непосредственной близости от роботизированного транспортного средства.
[04] Такие автономные роботизированные транспортные средства используются для самых разных целей, включая доставку товаров и других предметов. Для решения этих задач может требоваться перемещение роботизированного транспортного средства в динамической среде, например, на заполненном людьми тротуаре, на пешеходном переходе, где может происходить движение людей и транспортных средств, и т.д. При выполнении этой навигационной задачи автономному роботизированному транспортному средству необходимо избегать столкновений с динамическими объектами, такими как люди и движущиеся транспортные средства, и со статическими объектами, такими как припаркованные автомобили, здания, фонарные столбы и другие неподвижные объекты, обычно встречающиеся в городской и пригородной зоне, где предполагается применение роботизированного транспортного средства.
[05] Роботизированные транспортные средства часто имеют сравнительно небольшие размеры, поэтому различные объекты, с которыми они встречаются во время работы, могут закрывать для его датчиков видимость части окружающего пространства. Это может приводить к неблагоприятным последствиям, поскольку важная для навигационных целей информация оказывается в недоступных частях пространства, что препятствует безопасной работе роботизированного транспортного средства.
[06] В патенте US8712624 описаны способы и устройство для управления автономными транспортными средствами с использованием карт, содержащих информацию о видимости.
Раскрытие изобретения
[07] Во время доставки товаров покупателю мобильный робот может следовать по маршруту к месту нахождения покупателя. При движении по маршруту мобильному роботу может потребоваться пересечь дорогу по пешеходному переходу. При приближении к пешеходному переходу мобильный робот должен определить, разрешено (например, горит зеленый свет) или запрещено (например, горит красный свет) светофором движение по переходу.
[08] Один или несколько объектов, таких как пешеходы, также могут ожидать прохождения по пешеходному переходу и, таким образом, они могут перекрывать поле обзора датчика камеры мобильного робота, что затрудняет наблюдение за состоянием светофора. Иными словами, разработчики настоящей технологии установили, что такие объекты могут мешать мобильному роботу отслеживать состояние светофора, закрывая светофор в поле обзора одного или нескольких датчиков камер мобильного робота, когда мобильный робот находится в непосредственной близости от пешеходного перехода. Такая неспособность мобильного робота отслеживать состояние светофора нежелательна для его работы.
[09] Поэтому разработчики настоящей технологии разработали способы решения этой проблемы и мобильных роботов, способных определять одно или несколько целевых положений в заданной области в непосредственной близости от пешеходного перехода, к которому может перемещаться мобильный робот, и положений, из которых мобильный робот может наблюдать за состоянием светофора и не закрыт одним или несколькими объектами, расположенными в этой области.
[010] В некоторых вариантах осуществления настоящей технологии мобильный робот может обнаруживать присутствие объекта в заданной области в непосредственной близости от пешеходного перехода и создавать «ограничивающую рамку» (bounding box) для этого объекта. Положение этой ограничивающей рамки может быть отображено на трехмерной карте окружающего пространства. Мобильный робот способен определять «зону визуального перекрытия» из-за наличия объекта в данной области. В одном варианте осуществления изобретения эта зона визуального перекрытия может быть «теневой проекцией» ограничивающей рамки, если светофор на трехмерной карте считается источником света. Мобильный робот может выбрать целевое положение в данной области за пределами зоны визуального перекрытия и двигаться в эту область, имея возможность наблюдать за состоянием светофора.
[011] В других вариантах осуществления настоящей технологии мобильный робот также может определять, не является ли зона визуального перекрытия, сформированная на основе ограничивающей рамки, слишком большой и/или не является ли остальная часть данной области слишком малой. В таких случаях мобильный робот может выполнять «углубленный» анализ зоны визуального перекрытия из-за наличия объекта. В ходе этого углубленного анализа мобильный робот может формировать «структуру оболочки» объекта, например, по лидарным данным и использовать ее вместо ограничивающей рамки при формировании зоны визуального перекрытия. Структура оболочки более точно представляет форму объекта, чем ограничивающая рамка, при этом она меньше ограничивающей рамки. Следовательно, ее теневая проекция, вероятно, имеет меньшую площадь, чем теневая проекция ограничивающей рамки, что позволяет освободить дополнительную область поверхности, в которую потенциально может двигаться мобильный робот.
[012] В первом широком аспекте настоящей технологии реализован мобильный робот, содержащий датчик лазерной системы обнаружения и измерения дальности (LiDAR, Light Detection and Ranging) - лидарный датчик, а также датчик камеры с некоторым полем обзора, двигательную установку для передвижения мобильного робота в окружающей среде и процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Процессор имеет доступ к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе. Трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Процессор способен обнаруживать объект, находящийся в зоне ожидания, и формировать ограничивающую рамку объекта по данным датчика камеры и/или данным лидарного датчика. Процессор способен сопоставлять положение ограничивающей рамки с трехмерной картой. Процессор способен определять зону визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Процессор способен определять уменьшенную зону ожидания как разность между зоной ожидания и зоной визуального перекрытия. Визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания. Процессор способен управлять двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.
[013] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен сравнивать уменьшенную зону ожидания с заранее заданной пороговой зоной и, если уменьшенная зона ожидания больше заранее определенной пороговой зоны, управлять двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор может по данным лидарного датчика дополнительно определять оболочку объекта, которая является более точной оценкой формы объекта, чем ограничивающая рамка. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор может дополнительно отображать положение оболочки на трехмерной карте, определять другую зону визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, где другая зона визуального перекрытия представляет собой другую рассчитанную часть зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот расположен в этой другой рассчитанной части, и где другая рассчитанная часть меньше упомянутой рассчитанной части. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор дополнительно может определять другую уменьшенную зону ожидания как разность между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор дополнительно способен сравнивать другую уменьшенную зону ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, процессор способен управлять двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания.
[014] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен локально хранить по меньшей мере часть трехмерной карты.
[015] В некоторых вариантах осуществления мобильного робота процессор для выполнения обнаружения дополнительно способен использовать нейронную сеть обнаружения объектов (ODNN, Object Detection Neural Network) для данных камеры и/или лидарных данных.
[016] В некоторых вариантах осуществления мобильного робота процессор для определения зоны визуального перекрытия дополнительно способен проецировать по меньшей мере один угол ограничивающей рамки на зону ожидания путем построения траектории луча на трехмерной карте от визуального индикатора движения к зоне ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки.
[017] В некоторых вариантах осуществления мобильного робота используется несколько лучей, а процессор способен строить несколько лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.
[018] В некоторых вариантах осуществления мобильного робота датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, при этом процессор дополнительно способен использовать заранее заданное расстояние для определения зоны визуального перекрытия, а зона визуального перекрытия расположена на заранее заданном расстоянии над зоной ожидания.
[019] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен управлять двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.
[020] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен наблюдать за состоянием визуального индикатора движения.
[021] В некоторых вариантах осуществления мобильного робота визуальный индикатор движения представляет собой светофор.
[022] В некоторых вариантах осуществления мобильного робота процессор является бортовым процессором мобильного робота.
[023] В некоторых вариантах осуществления мобильного робота процессор является удаленным процессором сервера, связанного с мобильным роботом.
[024] Во втором широком аспекте настоящей технологии реализован способ управления мобильным роботом в окружающем пространстве. Способ предусматривает наличие доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Способ включает в себя обнаружение объекта в зоне ожидания и формирование ограничивающей рамки объекта по данным меньшей мере одного датчика мобильного робота. Способ включает в себя построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, представляющей собой зону визуального перекрытия объекта в зоне ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Способ включает в себя определение уменьшенной зоны ожидания путем вычитания зоны визуального перекрытия из зоны ожидания. Если уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление мобильным роботом, при котором робот останавливается внутри уменьшенной зоны ожидания, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания.
[025] В некоторых вариантах осуществления способа, если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ включает в себя определение оболочки объекта с использованием по меньшей мере одного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка. Способ включает в себя построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону оболочки для определения другой теневой проекции оболочки на зону ожидания, представляющую собой другую зону визуального перекрытия объекта в зоне ожидания, меньшую упомянутой зоны визуального перекрытия. Способ включает в себя определение другой уменьшенной зоны ожидания путем вычитания другой зоны визуального перекрытия из зоны ожидания. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление мобильным роботом, при котором робот останавливается в другой уменьшенной зоне ожидания.
[026] В некоторых вариантах осуществления способа он дополнительно включает в себя непрерывное отслеживание состояния визуального индикатора движения с использованием по меньшей мере одного датчика камеры мобильного робота.
[027] В третьем широком аспекте настоящей технологии реализован способ управления мобильным роботом, содержащим лидарный датчик, датчик камеры с некоторым полем обзора, двигательную установку для передвижения мобильного робота в окружающем пространстве и процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Способ выполняется процессором. Способ предусматривает наличие доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе. Трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Способ включает в себя обнаружение объекта, находящегося в зоне ожидания, и формирование ограничивающей рамки объекта по данным датчика камеры и/или данным лидарного датчика. Способ включает в себя отображение положения ограничивающей рамки на трехмерной карте. Способ включает в себя определение зоны визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Способ включает в себя определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания. Способ включает в себя управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.
[028] В некоторых вариантах осуществления способа он дополнительно включает в себя сравнение уменьшенной зоны ожидания с заранее заданной пороговой зоной и если уменьшенная зона ожидания больше заранее заданной пороговой зоны, управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение оболочки объекта по данным лидарного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя отображение положения оболочки на трехмерной карте. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора движения относительно зоны ожидания. Другая зона визуального перекрытия является другой рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой другой рассчитанной части. Другая рассчитанная часть меньше упомянутой рассчитанной части. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия. Визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя сравнение другой уменьшенной зоны ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания.
[029] В некоторых вариантах осуществления способа по меньшей мере часть трехмерной карты хранится локально.
[030] В некоторых вариантах осуществления способа обнаружение включает в себя использование нейронной сети обнаружения объектов (ODNN) для данных камеры и/или лидарных данных.
[031] В некоторых вариантах осуществления способа определение зоны визуального перекрытия включает в себя проецирование по меньшей мере одного угла ограничивающей рамки на зону ожидания путем проведения луча на трехмерной карте от визуального индикатора движения к зоне ожидания таким образом, что этот луч проходит через по меньшей мере один из углов ограничивающей рамки.
[032] В некоторых вариантах осуществления способа строятся траектории нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.
[033] В некоторых вариантах осуществления способа датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, определение зоны визуального перекрытия включает в себя использование этого заранее заданного расстояния, а зона визуального перекрытия располагается на заранее заданном расстоянии над зоной ожидания.
[034] В некоторых вариантах осуществления способа он дополнительно включает в себя управление двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.
[035] В некоторых вариантах осуществления способа он дополнительно включает в себя наблюдение за состоянием визуального индикатора движения.
[036] В некоторых вариантах осуществления способа визуальный индикатор движения представляет собой светофор.
[037] В некоторых вариантах осуществления способа процессор является бортовым процессором мобильного робота.
[038] В некоторых вариантах осуществления способа процессор является удаленным процессором сервера, связанного с мобильным роботом.
Краткое описание чертежей
[039] Эти и другие признаки, аспекты и преимущества настоящей технологии содержатся в дальнейшем описании, в приложенной формуле изобретения и на следующих чертежах.
[040] На фиг. 1 схематически представлен пример компьютерной системы для использования в некоторых вариантах осуществления систем и/или способов согласно настоящей технологии.
[041] На фиг. 2 представлена сетевая компьютерная среда, содержащая роботизированное транспортное средство, пригодная для использования с некоторыми вариантами осуществления настоящей технологии.
[042] На фиг. 3 представлен общий вид сверху трехмерной карты, к которой имеет доступ компьютерная система согласно фиг. 1 в соответствии с различными вариантами осуществления описанной технологии.
[043] На фиг. 4 представлен вид в перспективе трехмерной карты согласно фиг. 3 с ограничивающей рамкой в соответствии с различными вариантами осуществления описанной технологии.
[044] На фиг. 5 представлен общий вид сверху трехмерной карты согласно фиг. 4 в соответствии с различными вариантами осуществления описанной технологии.
[045] На фиг. 6 представлены ограничивающая рамка и структура оболочки, формируемые компьютерной системой согласно фиг. 1 для одного и того же объекта в соответствии с различными вариантами осуществления описанной технологии.
[046] На фиг. 7 представлена блок-схема способа, выполняемого в соответствии с различными вариантами осуществления описанной технологии.
Осуществление изобретения
[047] Различные иллюстративные варианты осуществления настоящей технологии более полно поясняются в дальнейшем описании и на приложенных чертежах. При этом настоящая технология может быть реализована во многих различных формах и ее не следует рассматривать как ограниченную изложенными здесь иллюстративными вариантами осуществления. Абсолютные размеры и относительные размеры слоев и областей на чертежах могут быть увеличены для ясности изложения. Одинаковые цифровые обозначения везде относятся к одинаковым элементам.
[048] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Должно быть понятно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.
[049] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалистам в данной области должно быть понятно, что другие варианты осуществления настоящей технологии могут быть значительно сложнее.
[050] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим, и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.
[051] Должно быть понятно, что термины «первый», «второй», «третий» и т.д. могут использоваться здесь для описания различных элементов, тем не менее, это не накладывает ограничений на такие элементы. Эти термины используются, чтобы отличать один элемент от другого. Таким образом, обсуждаемый первый элемент может быть назван вторым элементом без отступления от существа настоящего изобретения. Используемый здесь термин «и/или» включает в себя все без исключения сочетания одного или нескольких перечисленных элементов.
[052] Должно быть понятно, что, если указано на «подключение» элемента к другому элементу или его «связь» с другим элементом, он может быть подключен к другому элементу или связан с другим элементом напрямую или через промежуточные элементы. Напротив, когда элемент указан как «непосредственно подключенный» к другому элементу или «непосредственно связанный» с другим элементом, промежуточные элементы отсутствуют. Аналогичным образом следует интерпретировать и другие слова, используемые для описания взаимосвязи между элементами (например, «между» и «непосредственно между», «примыкающий» и «непосредственно примыкающий» и т.д.).
[053] Используемая здесь терминология предназначена лишь для описания конкретных иллюстративных реализаций и не предназначена для установления ограничений настоящей технологии. Использование в документе терминов в единственном числе также подразумевает их использование во множественном числе, если контекст явно не указывает на иное. Кроме того, должно быть понятно, что использование в этом описании терминов «содержит» и/или «содержащий» определяет наличие указанных свойств, структур, шагов, операций, элементов и/или составных частей, но не исключает наличия или добавления одного или нескольких других свойств, структур, шагов, операций, элементов, составных частей и/или их групп.
[054] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор», могут быть реализованы с применением специализированных аппаратных средств, а также аппаратных средств, способных выполнять программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. В некоторых вариантах осуществления настоящей технологии процессор может быть процессором общего назначения, например, центральным процессором (CPU, Central Processing Unit), или процессором, предназначенным для определенной цели, например, цифровым сигнальным процессором (DSP, Digital Signal Processor). Кроме того, явное использование термина «процессор» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и энергонезависимое ЗУ, не ограничиваясь ими. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.
[055] Программные модули или просто модули либо блоки, реализация которых предполагается в виде программных средств, могут быть представлены здесь в виде любого сочетания элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми. Кроме того, должно быть понятно, что модуль может включать в себя, например, логические средства компьютерной программы, команды компьютерной программы, программное обеспечение, стек, микропрограммное обеспечение, аппаратные схемотехнические решения или их сочетание, которые обеспечивает требуемые возможности, но не ограничиваясь ими.
[056] В контексте данного описания термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных или компьютерных аппаратных средств для хранения этих данных, их применения или обеспечения их использования иным способом. База данных может располагаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо база данных может располагаться в отдельных аппаратных средствах, таких как специализированный сервер или множество серверов.
[057] Настоящая технология может быть реализована как система, способ и/или компьютерный программный продукт. Компьютерный программный продукт может включать в себя машиночитаемый носитель (или носители) данных, хранящий машиночитаемые программные команды, при исполнении которых процессором реализуются аспекты описанной технологии. Машиночитаемый носитель данных может быть, например, электронным запоминающим устройством, магнитным запоминающим устройством, оптическим запоминающим устройством, электромагнитным запоминающим устройством, полупроводниковым запоминающим устройством или любой подходящей их комбинацией. Неполный перечень других примеров машиночитаемых носителей данных включает в себя портативный компьютерный диск, жесткий диск, оперативную память (RAM), постоянную память (ROM), флэш-память, оптический диск, USB-память (memory stick), гибкий диск, носитель с механическим или визуальным кодированием (например, перфокарту или штрих-код) и/или любое их сочетание. В данном описании под машиночитаемым носителем данных подразумевается машиночитаемый носитель для долговременного хранения данных. К этой категории не относятся временно существующие сигналы, такие как радиоволны или другие свободно распространяющиеся электромагнитные волны, электромагнитные волны, распространяющиеся в волноводе или другой передающей среде (например, световые импульсы, распространяющиеся в оптоволоконном кабеле), или электрические сигналы, передаваемые по проводам.
[058] Должно быть понятно, что машиночитаемые программные команды могут быть загружены в соответствующие вычислительные или обрабатывающие устройства с машиночитаемого носителя данных либо во внешний компьютер или во внешнее запоминающее устройство по сети, например, по сети Интернет, локальной сети, глобальной сети и/или беспроводной сети. Сетевой интерфейс в вычислительном или обрабатывающем устройстве способен принимать машиночитаемые программные команды по сети и пересылать их для хранения на машиночитаемом носителе данных в соответствующем вычислительном или обрабатывающем устройстве.
[059] Машиночитаемые программные команды для выполнения действий согласно настоящему изобретению могут быть командами ассемблера, машинными командами, командами микропрограммного обеспечения, данными конфигурации для интегральных схем, а также исходным кодом или объектным кодом, написанным на одном или нескольких языках программирования в любом сочетании. Машиночитаемые программные команды могут выполняться полностью на компьютере пользователя, частично на компьютере пользователя, как автономный пакет программного обеспечения, частично на компьютере пользователя и частично на удаленном компьютере или полностью на удаленном компьютере или сервере. В последнем случае удаленный компьютер может быть подключен к компьютеру пользователя по сети любого вида.
[060] Описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть понятно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих принципы настоящей технологии. Также должно быть понятно, что любые функциональные схемы, структурные схемы, диаграммы переходов состояний, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены в машиночитаемых программных командах. Эти машиночитаемые программные команды могут быть направлены процессору или другому программируемому устройству обработки данных для формирования механизма, в котором эти команды исполняются с помощью процессора компьютера или другого программируемого устройства обработки данных и обеспечивают средства для реализации функций или действий, указанных на функциональной схеме и/или в блоке или в нескольких блоках структурной схемы. Эти машиночитаемые программные команды также могут храниться на машиночитаемом носителе данных, который позволяет управлять компьютером, программируемым устройством обработки данных и/или другими устройствами для обеспечения их функционирования таким образом, чтобы машиночитаемый носитель данных с хранящимися на нем командами представлял собой изделие, содержащее команды, реализующие аспекты функций или действий, определенных на функциональных схемах, структурных схемах, схемах переходов состояний, в псевдокоде и т.п.
[061] Машиночитаемые программные команды также могут быть загружены в компьютер, другое программируемое устройство обработки данных или другие устройства, чтобы инициировать выполнение ряда рабочих шагов на компьютере, другом программируемом устройстве или других устройствах для формирования компьютеризированного процесса, в котором команды, выполняемые на компьютере, другом программируемом устройстве или другом устройстве, реализуют функции или действия, определенные на функциональных схемах, структурных схемах, схемах переходов состояний, в псевдокоде и т.п.
[062] В некоторых альтернативных вариантах осуществления изобретения функции, указанные на функциональных схемах, структурных схемах, схемах переходов состояний, псевдокоде и т.п., могут выполняться не в том порядке, в котором они указаны на чертежах. Например, два блока, показанные на функциональной схеме последовательно, в действительности могут выполняться по существу параллельно, а иногда эти блоки могут выполняться в обратном порядке, в зависимости от реализуемых функций. Также следует отметить, что каждая из функций, указанных на чертежах, и комбинации таких функций могут быть реализованы специализированными аппаратными системами, выполняющими указанные функции или действия, либо сочетаниями специализированных аппаратных средств и компьютерных команд.
[063] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящего изобретения.
Компьютерная система
[064] На фиг. 1 представлена компьютерная система 100. Компьютерная система 100 может быть многопользовательским компьютером, однопользовательским компьютером, портативным компьютером, планшетным компьютером, смартфоном, встроенной системой управления или любой другой компьютерной системой, известной в настоящее время или разработанной впоследствии. Кроме того, следует понимать, что некоторые или все элементы компьютерной системы 100 могут быть виртуализированными и/или облачными. Как показано на фиг. 1, компьютерная система 100 содержит один или несколько процессоров 102, память 110, интерфейс 120 хранилища и сетевой интерфейс 140. Эти элементы системы связаны между собой шиной 150, которая может включать в себя одну или несколько внутренних и/или внешних шин (не показаны), например, шину PCI, шину USB, шину IEEE 1394 «Firewire», шину SCSI, шину Serial-ATA и т.д., с которыми электронным образом связаны различные аппаратные элементы.
[065] Память 110, которая может быть памятью с произвольным доступом или памятью любого другого вида, может содержать данные 112, операционную систему 114 и программу 116. Данные 112 могут быть любыми данными, представляющими собой входную или выходную информацию любой программы в компьютерной системе 100. Операционная система 114 представляет собой, например, операционную систему Microsoft Windows или Linux. Программа 116 может быть любой программой или набором программ с программными командами, которые могут выполняться процессором для управления действиями, выполняемыми компьютерной системой 100.
[066] Интерфейс 120 хранилища используется для подключения хранилищ данных, например, хранилища 125, к компьютерной системе 100. Одним типом хранилища 125 является твердотельный накопитель, в котором для долговременного хранения данных может использоваться узел на основе интегральных схем. Другим типом хранилища 125 является жесткий диск, например, электромеханическое устройство, в котором для хранения и извлечения цифровых данных используется магнитное запоминающее устройство. Подобным образом хранилище 125 может представлять собой оптический накопитель, устройство считывания карт памяти, способное считывать информацию со съемной карты памяти, например, с SD-карты, или устройство флэш-памяти, которое может быть подключено к компьютерной системе 100, например, по универсальной последовательной шине (USB, Universal Serial Bus).
[067] В некоторых вариантах осуществления изобретения компьютерная система 100 может использовать хорошо известные методы виртуальной памяти, позволяющие программам компьютерной системы 100 вести себя так, как если бы они имели доступ к большому непрерывному адресному пространству, а не к пространству множества запоминающих устройств меньшего размера, таких как память 110 и хранилище 125. Поэтому, несмотря на то, что данные 112, операционная система 114 и программы 116 показаны как постоянно находящиеся в памяти 110, специалистам в данной области техники должно быть понятно, что эти элементы не обязательно полностью находятся в памяти 110 одновременно.
[068] Процессоры 102 могут содержать один или несколько микропроцессоров и/или других интегральных схем. Процессоры 102 исполняют программные команды, хранящиеся в памяти 110. При запуске компьютерной системы 100 процессоры 102 сначала могут выполнять процедуру загрузки и/или исполнять программные команды, составляющие операционную систему 114.
[069] Сетевой интерфейс 140 используется для подключения компьютерной системы 100 к другим компьютерным системам или сетевым устройствам (не показаны) по сети 160. Сетевой интерфейс 140 может содержать сочетание аппаратного и программного обеспечения, которая позволяет осуществлять информационный обмен в сети 160. В некоторых вариантах осуществления изобретения сетевой интерфейс 140 может быть беспроводным сетевым интерфейсом. Программное обеспечение в сетевом интерфейсе 140 может включать в себя программное обеспечение, использующее один или несколько сетевых протоколов для информационного обмена по сети 160. Например, одним из этих сетевых протоколов может быть протокол управления передачей / Интернет-протокол TCP/IP (Transmission Control Protocol/Internet Protocol).
[070] Должно быть понятно, что компьютерная система 100 является лишь примером и что описанная технология может использоваться с компьютерными системами или другими компьютерными устройствами разной конфигурации.
Сетевая компьютерная среда
[071] На фиг. 2 показана сетевая компьютерная среда 200, пригодная для использования с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии. Сетевая компьютерная среда 200 содержит компьютерное устройство 210, связанное с роботизированным транспортным средством 220. Среда 200 также содержит один или несколько серверов 235, соединенных с компьютерным устройством 210 по сети 240 связи (например, по сети Интернет и т.п.).
[072] В по меньшей мере некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии компьютерное устройство 210 связано с системами управления роботизированного транспортного средства 220. Компьютерное устройство 210 может управлять различными рабочими системами роботизированного транспортного средства 220, в том числе, системой управления двигателем, системой рулевого управления, а также системами сигнализации и освещения, но не ограничиваясь ими.
[073] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сетевая компьютерная среда 200 может содержать спутник системы GPS (не показан), передающий сигнал GPS компьютерному устройству 210 и/или принимающий сигнал от него. Должно быть понятно, что настоящая технология не ограничивается системой GPS и может использовать технологию определения местоположения, отличную от системы GPS. Следует отметить, что спутник GPS может вовсе отсутствовать.
[074] Роботизированное транспортное средство 220, с которым связано компьютерное устройство 210, может представлять собой любое роботизированное транспортное средство для осуществления доставки, применения на складе и т.п. Несмотря на то, что роботизированное транспортное средство 220 изображено как наземное транспортное средство, оно может быть иным в других не имеющих ограничительного характера вариантах осуществления настоящей технологии. Например, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии роботизированное транспортное средство 220 может быть летательным аппаратом, таким как летающий дрон, или водным транспортным средством.
[075] Роботизированное транспортное средство 220 может быть полностью автономным транспортным средством или частично автономным транспортным средством, в котором некоторыми аспектами работы транспортного средства дистанционно управляет человек-оператор, а остальные аспекты автоматизированы. В одном не имеющем ограничительного характера примере роботизированное транспортное средство 220 может работать автономно до тех пор, пока оно не столкнется с неожиданной или необычной ситуацией, с которой оно не в состоянии справиться автономно, и тогда оно может связаться с удаленным оператором-человеком. Следует отметить, что не накладывается каких-либо ограничений на конкретные параметры роботизированного транспортного средства 200, такие как производитель, модель, год выпуска, масса, размеры, распределение массы, площадь поверхности, высота, тип электродвигателя, тип шин (если используются шины), система электропитания и другие характеристики или параметры транспортного средства.
[076] Согласно настоящей технологии, на реализацию компьютерного устройства 210 также не накладывается каких-либо особых ограничений. Например, компьютерное устройство 210 может быть реализовано как блок управления двигателем транспортного средства, центральный процессор транспортного средства, компьютерная система, встроенная в роботизированное транспортное средство 220, подключаемый модуль управления и т.п. Следует отметить, что компьютерное устройство 210 может быть постоянным образом связано или не связано с роботизированным транспортным средством 220.
[077] Компьютерное устройство 210 может содержать некоторые или все элементы компьютерной системы 100, показанной на фиг. 1, в зависимости от конкретной реализации. В некоторых вариантах осуществления изобретения компьютерное устройство 210 представляет собой бортовое компьютерное устройство и содержит процессоры 102, хранилище 125 и память 110. Иными словами, компьютерное устройство 210 содержит аппаратные средства и/или программное обеспечение и/или микропрограммное обеспечение либо их сочетание для обработки данных, как более подробно описано ниже.
[078] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи представляет собой сеть Интернет. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи может быть реализована как любая подходящая локальная сеть (LAN, Local Area Network), глобальная сеть (WAN, Wide Area Network), частная сеть связи и т.п. Должно быть понятно, что варианты осуществления сети 240 связи приведены лишь в иллюстративных целях. Между компьютерным устройством 210 и сетью 240 связи предусмотрена линия связи (отдельно не обозначена), реализация которой зависит, помимо прочего, от реализации компьютерного устройства 210. Лишь в качестве примера, не имеющего ограничительного характера, линия связи может быть реализована в виде беспроводной линии связи. Примеры беспроводных линий связи могут включать в себя канал сети связи 3G, канал сети связи 4G, но не ограничиваются ими. В сети 240 связи также может использоваться беспроводное соединение с серверами 235.
[079] В некоторых вариантах осуществления настоящей технологии серверы 235 реализованы как компьютерные серверы и могут содержать некоторые или все элементы компьютерной системы 100, показанной на фиг. 1. В одном не имеющем ограничительного характера примере серверы 235 реализованы в виде серверов Dell™ PowerEdge™, работающих под управлением операционной системы Microsoft™ Windows Server™, но они также могут быть реализованы с использованием любых других подходящих аппаратных средств, программного обеспечения и/или микропрограммного обеспечения либо их сочетания.
[080] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессоры 102 компьютерного устройства 210 могут быть связаны с серверами 235 для получения одного или нескольких обновлений. Такие обновления могут включать в себя, помимо прочего, обновления программного обеспечения, обновления карт, обновления маршрутов, обновления геозон, обновления погодных данных и т.п. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии компьютерное устройство 210 также может отправлять серверу 235 некоторые рабочие данные, такие как пройденные маршруты, данные о дорожном движении, рабочие характеристики и т.п. Некоторые или все данные, передаваемые между роботизированным транспортным средством 220 и серверами 235, могут быть зашифрованы и/или обезличены.
[081] Следует отметить, что компьютерное устройство 210 может использовать множество датчиков и систем для сбора информации об окружающем пространстве 250 роботизированного транспортного средства 220. Как показано на фиг. 2, роботизированное транспортное средство 220 может быть оборудовано множеством систем 280 датчиков. Следует отметить, что для сбора данных различного вида об окружающем пространстве 250 роботизированного транспортного средства 220 могут использоваться различные системы датчиков из множества систем 280 датчиков.
[082] В одном примере множество систем 280 датчиков может содержать различные оптические системы, в том числе одну или несколько систем датчиков типа «камера», установленных на роботизированном транспортном средстве 220 и подключенных к процессорам 102 компьютерного устройства 210. В целом одна или несколько систем датчиков типа «камера» может собирать данные изображения о различных частях окружающего пространства 250 роботизированного транспортного средства 220. В некоторых случаях данные изображения, предоставленные одной или несколькими системами датчиков типа «камера», могут использоваться компьютерным устройством 210 для выполнения процедур обнаружения объекта. Например, компьютерное устройство 210 может передавать данные изображения, предоставленные одной или несколькими системами датчиков типа «камера», в нейронную сеть обнаружения объектов (ODNN), обученную локализации и классификации потенциальных объектов в окружающем пространстве 250 роботизированного транспортного средства 220.
[083] В по меньшей мере некоторых вариантах осуществления изобретения сеть ODNN может быть обучена способом, известным из аспектов, раскрытых в патентной заявке RU2021108149 «Способы и электронные устройства обнаружения объектов в окружающем пространстве самоуправляемого автомобиля» этого же заявителя, поданной 26.03.2021, содержание которой полностью включено в настоящий документ посредством ссылки.
[084] В другом примере множество систем 280 датчиков может содержать одну или несколько систем датчиков радиолокационного типа, установленных на роботизированном транспортном средстве 220 и подключенных к процессорам 102. В целом, одна или несколько систем датчиков радиолокационного типа может осуществлять сбор данных о различных частях окружающего пространства 250 роботизированного транспортного средства 220 с применением радиоволн. Например, одна или несколько систем датчиков радиолокационного типа может собирать радиолокационные данные о потенциальных объектах в окружающем пространстве 250 роботизированного транспортного средства 220 и эти данные могут относиться к расстоянию от системы датчиков радиолокационного типа до объектов, к ориентации объектов, к скорости объектов и т.п.
[085] В еще одном примере множество систем 280 датчиков может содержать одну или несколько лидарных систем, установленных на роботизированном транспортном средстве 220 и связанных с процессорами 102. В целом лидарная система способна собирать данные об окружающем пространстве 250 роботизированного транспортного средства 220, например, для построения многомерной карты объектов в окружающем пространстве 250 роботизированного транспортного средства 220. Лидарная система может быть установлена на роботизированном транспортном средстве 220 в различных его местах и/или в различных вариантах исполнения для сбора информации об окружающем пространстве 250 роботизированного транспортного средства 220.
[086] В контексте настоящей технологии компьютерное устройство 210 способно обнаруживать один или нескольких объектов в окружающем пространстве 250 роботизированного транспортного средства 220 на основе данных, полученных от одной или нескольких систем камер и от одной или нескольких лидарных систем. Например, компьютерное устройство 210, способное обнаруживать объект в окружающем пространстве 250 роботизированного транспортного средства 220, может идентифицировать лидарные данные и данные камеры, связанные с объектом, формировать «образ», характеризующий особенности объекта, и обнаруживать объект, формируя ограничивающую рамку для объекта.
Работа роботизированного транспортного средства
[087] Варианты осуществления описанной технологии обеспечивают навигацию или планирование движений при работе роботизированного транспортного средства в окружающем пространстве в присутствии как статических, так и динамических (т.е. движущихся) объектов. В контексте настоящего описания рассматривается небольшое наземное роботизированное транспортное средство, предназначенное для доставки товаров, пакетов, ящиков или других посылок в городской или пригородной зоне. Исходя из характера выполняемых задач, такое роботизированное транспортное средство обычно движется по тротуарам и пешеходным дорожкам. Поэтому модуль планирования движений в транспортном средстве должен учитывать поведение пешеходов, движущихся параллельно его пути или пересекающих его.
[088] Кроме того, роботизированное транспортное средство может пересекать дороги. При движении автомобилей и других транспортных средств по дорогам в городских и пригородных зонах малоразмерные роботизированные транспортные средства могут быть незаметными, что может приводить к столкновениям, в результате которых роботизированное транспортное средство и его груз могут быть повреждены или уничтожены. Поэтому модуль планирования движений такого роботизированного транспортного средства должен учитывать наличие объектов на проезжей части, в том числе, движущихся и припаркованных автомобилей и других транспортных средств.
[089] Одним из примеров задачи для средства доставки может быть доставка посылки из пункта отправления в пункт назначения к определенному времени. Поэтому модуль планирования движений должен учитывать скорость роботизированного транспортного средства и определять, обеспечивается ли надлежащее продвижение к пункту назначения. Эти соображения особенно актуальны, когда для задачи доставки критически важным является соблюдение времени доставки или когда пункт назначения находится далеко.
[090] В приведенном в иллюстративных целях примере роботизированного транспортного средства используются лидарные и другие датчики, расположенные с разных сторон транспортного средства. Компьютерное устройство, связанное с роботизированным транспортным средством, получает данные от датчиков и формирует трехмерную карту точек (облако точек). Эта трехмерная карта точек может использоваться роботизированным транспортным средством, например, для определения расстояния до объектов в окружающем пространстве и для определения траектории и скорости.
[091] Предполагается, что роботизированное транспортное средство также может использовать трехмерную карту, предоставляемую ему серверами 235. Например, трехмерная карта окружающего пространства, в соответствии с которой должно работать роботизированное транспортное средство, может быть сформирована на серверах 235, после чего роботизированному транспортному средству может быть предоставлен удаленный доступ к ней. Дополнительно или в качестве альтернативы трехмерная карта окружающего пространства также может быть передана, по меньшей мере частично, роботизированному транспортному средству для локального хранения и локального доступа.
[092] Следует отметить, что серверы 235 могут собирать информацию от одного или нескольких роботизированных транспортных средств (например, парка транспортных средств), на которых возложена задача картографирования окружающего пространства и формирования соответствующих трехмерных карт данной области. Например, одно или несколько роботизированных транспортных средств могут формировать трехмерную карту улицы, городского квартала, городского района, города и т.п. Информация от одного или нескольких роботизированных транспортных средств может собираться серверами 235 и объединяться на трехмерной карте, которая будет использоваться при работе роботизированного транспортного средства.
[093] Во время работы роботизированное транспортное средство может получать доступ к трехмерной карте своего окружающего пространства для выполнения навигационных задач в этом окружающем пространстве. В целом система координат трехмерной карты позволяет определять местоположение таких находящихся в этом пространстве объектов, как столбы, почтовые ящики, бордюры, дороги, здания, пожарные гидранты, дорожные ограждения, светофоры, пешеходные переходы, деревья, заборы, рекламные щиты, ориентиры и т.п.
[094] В частности, трехмерная карта содержит информацию, указывающую на положение объекта в системе координат трехмерной карты, а также может содержать информацию, указывающую на ориентацию этого объекта в системе координат трехмерной карты. Также можно сказать, что трехмерная карта может содержать информацию, указывающую на относительное положение и относительную ориентацию одного из пары объектов по отношению к другому из этой пары объектов.
[095] Следует отметить, что один или несколько объектов на трехмерной карте могут содержать естественные объекты окружающего пространства и искусственные объекты. В целом, к естественным объектам относятся реальные физические объекты, встречающиеся в окружающем пространстве, а к искусственным объектам относятся объекты, которые могут быть добавлены на трехмерную карту для решения навигационных задач роботизированного транспортного средства. Например, к числу искусственных объектов могут быть отнесены пути навигации, доступные области, недоступные области, зоны ожидания и т.п.
[096] Предполагается, что искусственные объекты могут отображаться на трехмерной карте в отдельном «слое» трехмерной карты. Например, для отображения искусственных объектов в слое на трехмерной карте серверы 235 могут использовать систему координат, связанную с этим «слоем», содержащим искусственные объекты, и систему координат, связанную с трехмерной картой. Ниже более подробно описано, как некоторые из искусственных объектов могут использоваться роботизированным транспортным средством для навигации.
[097] На фиг. 3 схематически представлен сценарий, в котором могут использоваться различные варианты осуществления рассматриваемой технологии. Представлен общий вид 300 сверху трехмерной карты, к которой имеет доступ мобильный робот 306.
[098] Трехмерная карта содержит естественные объекты, такие как дорога 301, пешеходный переход 302 и визуальный индикатор 303 движения. Кроме того, трехмерная карта содержит искусственные объекты, такие как зона 305 ожидания. Предполагается, что трехмерная карта содержит информацию, указывающую на положение визуального индикатора 303 движения и его ориентацию относительно зоны 305 ожидания. В частности, положение и ориентация визуального индикатора движения относительно зоны 305 ожидания позволяет определять световую проекцию 304, указывающую на то, как визуальный сигнал от визуального индикатора 303 движения распространяется в зоне 305 ожидания в трехмерном пространстве.
[099] Пусть в данный момент времени мобильный робот 306 перемещается в окружающем пространстве с целью доставки товаров покупателю. На участке маршрута, по которому мобильный робот 306 доставляет товары, он должен пересечь пешеходный переход 302. При приближении к пешеходному переходу 302 мобильный робот 306 может проанализировать визуальный сигнал визуального индикатора 303 движения, чтобы определить, разрешено (например, горит зеленый свет) или запрещено (например, горит красный свет) пересекать пешеходный переход 302.
[0100] Мобильный робот 306 может перемещаться в зону 305 ожидания при разных обстоятельствах. В одном примере мобильный робот 306 может переместиться в зону 305 ожидания для пересечения пешеходного перехода 302, если это разрешает визуальный сигнал от визуального индикатора 303 движения. В другом примере мобильный робот 306 может переместиться в зону 305 ожидания для ожидания возможности пересечения пешеходного перехода 302, если в данный момент времени это запрещено визуальным индикатором 303 движения.
[0101] В некоторых вариантах осуществления настоящей технологии мобильный робот 306 может непрерывно отслеживать визуальный сигнал или «состояние» визуального индикатора 303 движения во время работы, чтобы определять, разрешено или запрещено в данный момент времени пересечение пешеходного перехода 302.
[0102] Следует отметить, что если визуальный индикатор 303 в данный момент времени запрещает переход, мобильный робот 306, также как и другие динамические объекты, может ожидать в зоне 305 ожидания, пока визуальный индикатор 303 движения не разрешит его. К таким динамическим объектам могут относиться пешеходы, ожидающие разрешения на пересечение пешеходного перехода 302. Разработчики настоящей технологии установили, что такие динамические объекты могут мешать мобильному роботу 306 непрерывно наблюдать за состоянием визуального индикатора 303 движения, закрывая визуальный индикатор 303 движения в поле обзора одного или нескольких датчиков камер мобильного робота 306, когда мобильный робот 306 находится в зоне 305 ожидания. Невозможность для мобильного робота 306 отслеживать состояние визуального индикатора 303 может быть нежелательной для работы мобильного робота 306 в окружающем пространстве.
[0103] Поэтому разработчики настоящей технологии разработали способы решения этой проблемы и мобильных роботов, способных определять одно или несколько целевых положений в зоне 305 ожидания, в которую может перемещаться мобильный робот 306, чтобы иметь возможность непрерывно наблюдать за состоянием визуального индикатора 303 движения, не закрытого одним или несколькими динамическими объектами, расположенными в зоне ожидания.
[0104] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что определение одной или нескольких целевых позиций в зоне 305 ожидания также может выполняться с учетом статических объектов в дополнение к динамическим объектам или вместо них. Статические объекты, например почтовые ящики, столбы и/или рекламные щиты, также могут закрывать визуальный индикатор движения в поле обзора одного или нескольких датчиков камер мобильного робота 306, когда мобильный робот находится в зоне 305 ожидания.
[0105] Для этого мобильный робот 306 может определять, находится ли объект (или объекты) в зоне 305 ожидания. Например, мобильный робот 306 может обнаруживать определенный объект в окружающем пространстве мобильного робота 306.
[0106] Следует отметить, что мобильный робот 306 может формировать ограничивающую рамку объекта по данным датчика камеры и/или данным лидарного датчика. В одном примере данные камеры и/или лидарные данные могут вводиться в сеть ODNN, способную формировать ограничивающую рамку объекта.
[0107] Следует отметить, что в некоторых вариантах осуществления настоящей технологии сеть ODNN может обнаруживать присутствие объекта и формировать ограничивающую рамку для этого объекта, указывающую на его положение в окружающем пространстве. В других вариантах осуществления изобретения сеть ODNN также может выполнять классификацию объекта как объекта определенного типа (например, пешеход, велосипед, детская коляска).
[0108] В одном примере мобильный робот 306 может использовать лидарные данные для обнаружения объекта, формируя ограничивающую рамку для этого объекта. В этом примере ограничивающая рамка может формироваться мобильным роботом 306 в системе координат лидарного датчика.
[0109] Положение ограничивающей рамки может выводиться сетью ODNN множеством способов. В одном варианте осуществления изобретения положение ограничивающей рамки может выводиться как комбинация центральной точки, смещения по высоте относительно центральной точки, смещения по длине относительно центральной точки и смещения по ширине относительно центральной точки в системе координат лидарного датчика (и/или облака лидарных точек). В другом варианте осуществления изобретения положение ограничивающей рамки может выводиться как комбинация координат соответствующих углов ограничивающей рамки (например, всего восьми) в системе координат лидарного датчика (и/или облака лидарных точек).
[0110] Независимо от конкретного формата, в котором положение ограничивающей рамки определяется в системе координат лидарного датчика (и/или облака лидарных точек), мобильный робот 306 может отображать положение ограничивающей рамки на трехмерной карте, как указано выше. Иными словами, мобильный робот 306 способен преобразовывать положение ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в ее положение в системе координат трехмерной карты.
[0111] Для этого мобильный робот 306 может реализовывать множество алгоритмов преобразования. В по меньшей мере одном варианте осуществления изобретения мобильный робот 306 может применять матрицу преобразования к положению ограничивающей рамки в системе координат лидарного датчика для определения положения ограничивающей рамки в системе координат трехмерной карты.
[0112] В по меньшей мере некоторых вариантах осуществления настоящей технологии алгоритм преобразования может быть реализован как итеративный алгоритм ближайших точек (ICP, Iterative Closest Point). В целом, целью алгоритма ICP является определение эталонного облака точек и преобразование исходного облака так, чтобы оно наилучшим образом соответствовало эталонному. Алгоритм итеративно пересматривает варианты преобразования (сочетания параллельного переноса и поворота) для минимизации количественного показателя отклонения. Количественным показателем отклонения может быть, например, расстояние между исходным и эталонным облаком точек, например, сумма квадратов разностей координат соответствующих пар. Алгоритм ICP может использоваться для совмещения трехмерных моделей с учетом исходного предположения о преобразовании.
[0113] Предполагается, что когда определяется измененное преобразование между данными лидарного датчика и данными трехмерной карты, это измененное преобразование может использоваться для преобразования данных ограничивающей рамки из системы координат лидарного датчика в систему координат трехмерной карты.
[0114] На фиг. 4 представлен вид 400 в перспективе трехмерной карты вместо общего вида 300 сверху с ограничивающей рамкой 410, нанесенной на трехмерную карту. Видно, что ограничивающая рамка 410 расположена в зоне 305 ожидания.
[0115] Мобильный робот 306 может определять зону 450 визуального перекрытия объекта в зоне 306 ожидания с использованием положения ограничивающей рамки 410 и ориентации визуального индикатора 303 движения относительно зоны 305 ожидания. В по меньшей мере некоторых вариантах осуществления изобретения перед определением зоны визуального перекрытия, сформированной на основе ограничивающей рамки 410, мобильный робот 306 может подтверждать, что ограничивающая рамка 410 находится внутри зоны 305 ожидания и/или в непосредственной близости от зоны 305 ожидания на трехмерной карте.
[0116] В целом, зона 450 визуального перекрытия представляет собой рассчитанную часть зоны 305 ожидания, в которой визуальный индикатор 303 движения закрыт в поле обзора датчика камеры мобильного робота 306 объектом, когда мобильный робот 306 находится в этой рассчитанной части. Иными словами, можно сказать, что когда мобильный робот 306 должен двигаться в этой рассчитанной части зоны 305 ожидания, то из-за наличия объекта датчик камеры мобильного робота 306 не сможет отслеживать или наблюдать за состоянием визуального индикатора 303 движения.
[0117] Для этого мобильный робот 306 способен проецировать по меньшей мере один угол ограничивающей рамки 410 на зону 305 ожидания путем построения траектории по меньшей мере одного луча на трехмерной карте от визуального индикатора 303 движения к зоне 305 ожидания, при котором этот по меньшей мере один луч проходит через соответствующий угол ограничивающей рамки 410. На фиг. 4 показано множество 420 лучей, которые (1) выходят из визуального индикатора 303 движения, (2) проходят через множество углов 430 ограничивающей рамки 410 и (3) проходят через множество точек 440 в зоне 305 ожидания. Мобильный робот 306 может назначить внутреннюю область, определенную множеством точек 440 в зоне 305 ожидания, зоной 450 визуального перекрытия.
[0118] В некоторых вариантах осуществления настоящей технологии предполагается, что мобильный робот 306 способен выполнять построение траекторий множества лучей 420 от визуального индикатора 303 движения в сторону ограничивающей рамки 410 для определения «теневой проекции» ограничивающей рамки 410 на зону 305 ожидания. В какой-то мере можно сказать, что можно построить траектории множества лучей 420, которые проецируют «тень» ограничивающей рамки 410 на зону 305 ожидания подобно тому, как визуальный индикатор 303 движения, если бы он был источником света, и ограничивающая рамка 410, если бы она была непрозрачным объектом, создавали бы тень в зоне 305 ожидания.
[0119] В по меньшей мере некоторых вариантах осуществления настоящей технологии можно сказать, что траектория одного или нескольких лучей строится от визуального индикатора 303 движения к зоне 305 ожидания так, что один или несколько лучей касаются соответствующих углов 430 ограничивающей рамки 410.
[0120] Следует отметить, что датчик камеры мобильного робота 306 находится на заранее заданном расстоянии над земной поверхностью, на которой в данный момент времени работает мобильный робот 306. Поэтому в некоторых вариантах осуществления изобретения предполагается, что мобильный робот 306 может использовать это заранее заданное расстояние при определении зоны 450 визуального перекрытия.
[0121] Действительно, полагая, что зона 305 ожидания расположена на трехмерной карте прямо на уровне земли, мобильный робот 306 может использовать такое заранее заданное расстояние для уточнения области, занимаемой зоной 450 визуального перекрытия. Это может быть полезным для уточнения области, занимаемой зоной 405 визуального перекрытия, с учетом высоты, на которой фактически находится датчик камеры мобильного робота 306. Например, заранее заданное расстояние может использоваться при проецировании для определения множества скорректированных точек (вместо множества точек 440) в плоскости, которая параллельна зоне 305 ожидания и расположена на заранее заданном расстоянии над зоной 305 ожидания на трехмерной карте. В этих вариантах осуществления изобретения скорректированная внутренняя область, определяемая множеством скорректированных точек, может использоваться в качестве уточненной по высоте зоны визуального перекрытия. Иными словами, заранее заданное расстояние может использоваться мобильным роботом 306 для определения зоны визуального перекрытия на уровне камеры мобильного робота 306 с учетом высоты, на которой один или несколько датчиков камер находится над уровнем земной поверхности.
[0122] Мобильный робот 306 также способен определять уменьшенную зону ожидания как разность между зоной 305 ожидания и зоной 450 визуального перекрытия. Следует отметить, что визуальный индикатор 303 движения виден в поле обзора датчика камеры мобильного робота 306, когда мобильный робот 306 находится в уменьшенной зоне 460 ожидания.
[0123] Мобильный робот 306 может использовать уменьшенную зону 460 ожидания для управления движением мобильного робота 306 в зону 305 ожидания и/или через нее таким образом, что датчик камеры мобильного робота 306 способен непрерывно наблюдать за состоянием визуального индикатора 303 движения. Например, можно управлять двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в заданную точку в уменьшенной зоне 460 ожидания.
[0124] На фиг. 5 показаны первая потенциальная точка 501, вторая потенциальная точка 502 и третья потенциальная точка 503 в зоне 460 ожидания. Процессор 102 может управлять двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в выбранную первую потенциальную точку 501, вторую потенциальную точку 502 или третью потенциальную точку 503 в зоне 460 ожидания.
[0125] В некоторых вариантах осуществления изобретения мобильный робот 306 может сравнивать уменьшенную зону 460 ожидания с заранее заданной пороговой зоной. Например, мобильный робот 306 может сравнивать размер поверхности уменьшенной зоны 460 ожидания с заранее заданным пороговым значением размера поверхности. Безотносительно какой-либо конкретной теории, разработчики настоящей технологии установили, что размер поверхности уменьшенной зоны 460 ожидания может быть небольшим в тех случаях, когда (1) объект является сравнительно крупным и образует большую зону визуального перекрытия и (2) в зоне 305 ожидания обнаруживается множество объектов, что приводит к образованию множества зон визуального перекрытия в зоне 305 ожидания, при объединении которых образуется большая общая зона визуального перекрытия.
[0126] В тех вариантах осуществления изобретения, где мобильный робот 306 сравнивает уменьшенную зону 460 ожидания с заранее заданной пороговой зоной, если определено, что уменьшенная зона ожидания 460 больше заранее заданной пороговой зоны, мобильный робот 306 может управлять двигательной установкой для его перемещения в заданное положение в уменьшенной зоне 460 ожидания и/или для перемещения через уменьшенную зону 460 ожидания. Кроме того, если определено, что уменьшенная зона ожидания 460 меньше заранее заданной пороговой зоны, мобильный робот 306 может приступить к своего рода уточненному определению зоны визуального перекрытия в зоне 305 ожидания в связи с присутствием объекта.
[0127] Для этого мобильный робот 306 может определять структуру «оболочки» для объекта на основе данных лидарного датчика мобильного робота 306 и использовать ее вместо ограничивающей рамки 410 для определения другой уточненной зоны визуального перекрытия в зоне 305 ожидания в связи с присутствием этого объекта.
[0128] На фиг. 6 представлено изображение ограничивающей рамки 610, которая может быть сформирована процессором 102 в ходе процедуры обнаружения объекта, и изображение оболочки 630, которую процессор 102 может сформировать для того же объекта на основе лидарных данных. На способ, с помощью которого процессор может формировать оболочку 630, не накладывается особых ограничений.
[0129] Предполагается, что оболочка, сформированная процессором 102 для объекта, может быть выпуклой оболочкой объекта. В некоторых вариантах осуществления изобретения процессор 102 может выполнять расчет выпуклой оболочки, состоящей из конечного набора точек в трехмерном пространстве, реализуя «алгоритм быстрой оболочки». Такой алгоритм можно кратко описать в виде последовательности следующих шагов. Сначала процессор 102 может выполнить поиск точек с минимальными и максимальными координатами x, поскольку они всегда будут частью выпуклой оболочки. Если существует много точек с одинаковым минимальным/максимальным значением x, процессор 102 использует точки с минимальным/максимальным значением y, соответственно. Затем процессор 102 может построить линию по двум таким точкам для разделения множества на два подмножества точек, обрабатываемых рекурсивно. Затем процессор 102 может на одной стороне от этой линии определить наиболее удаленную точку. Эта точка образует треугольник с точками на прямой. Точки, лежащие внутри этого треугольника, не могут быть частью выпуклой оболочки и на следующих шагах могут быть исключены из анализа. Затем процессор 102 может повторить предыдущие два шага для двух линий, образованных треугольником. Процессор 102 может продолжать выполнение вышеуказанных шагов до тех пор, пока не закончатся точки. Это означает, что выполнение рекурсивной процедуры завершилось и выбранные точки образуют выпуклую оболочку.
[0130] Следует отметить, что формирование ограничивающей рамки 610 для объекта может быть менее затратным с точки зрения вычислений и/или может потребовать меньше времени, чем формирование оболочки 620 для того же объекта. Тем не менее, ограничивающая рамка 610 в определенном смысле является более грубой оценкой формы данного объекта, чем оболочка 620, и обычно она больше по размеру, чем оболочка 620.
[0131] Поэтому в тех вариантах осуществления изобретения, где уменьшенная зона 460 ожидания меньше заранее заданной пороговой зоны, мобильный робот 306 может вместо ограничивающей рамки 410 использовать оболочку объекта, являющейся более точной оценкой формы объекта, чем ограничивающая рамка 410. Использование более точной оценки формы объекта позволяет обеспечить более точную оценку зоны визуального перекрытия в зоне 305 ожидания и/или более точную оценку уменьшенной зоны ожидания.
[0132] В связи с этим можно сказать, что в некоторых вариантах осуществления настоящей технологии мобильный робот 306 может выполнять двухшаговый процесс оценки уменьшенной зоны ожидания, где на первом шаге двухшагового процесса оценки мобильный робот 306 использует ограничивающую рамку 410 для определения уменьшенной зоны ожидания 460, а на втором шаге двухшагового процесса оценки мобильный робот 306 использует оболочку этого объекта (вместо ограничивающей рамки 410) для определения другой уточненной уменьшенной зоны ожидания.
[0133] При этом предполагается, что мобильный робот 306 может преобразовывать данные оболочки объекта из системы координат лидарного датчика (и/или облака лидарных точек) в систему координат трехмерной карты. Это может выполняться аналогично преобразованию мобильным роботом 306 положения ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в систему координат трехмерной карты. Кроме того, мобильный робот 306 может определять другую зону визуального перекрытия объекта в зоне 305 ожидания с использованием положения оболочки (вместо ограничивающей рамки 410) и ориентации визуального индикатора 303 движения относительно зоны 305 ожидания аналогично формированию мобильным роботом зоны 450 визуального перекрытия объекта с использованием положения ограничивающей рамки 410 и ориентации визуального индикатора 303 движения. Мобильный робот 306 также может определять другую уменьшенную зону ожидания как разность между зоной 305 ожидания и другой зоной визуального перекрытия оболочки. Следует отметить, что другая уменьшенная зона ожидания, вероятно, будет больше, чем уменьшенная зона 460 ожидания, поскольку другая зона визуального перекрытия, вычисленная на основе оболочки, вероятно, будет меньше, чем зона визуального перекрытия 450, вычисленная на основе ограничивающей рамки 410.
[0134] Сразу после определения мобильным роботом 306 другой уменьшенной зоны ожидания он может сравнить другую уменьшенную зону ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, процессор может активировать систему управления двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в другую уменьшенную зону ожидания. В противном случае мобильный робот 306 может в своем текущем положении ожидать, пока один или несколько объектов не покинут зону 305 ожидания.
[0135] На фиг. 7 представлена блок-схема способа 700 управления мобильным роботом 306 в соответствии с различными вариантами осуществления описанной технологии. Мобильный робот 306 содержит лидарный датчик, датчик камеры и двигательную установку для передвижения мобильного робота в окружающем пространстве. Мобильный робот 306 также содержит процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Способ 700 может выполняться процессором, связанным с мобильным роботом 306.
Шаг 702: получение доступа к трехмерной карте окружающего пространства.
[0136] Реализация способа 700 начинается на шаге 702 с получения процессором 102 доступа к трехмерной карте окружающего пространства, в котором в данный момент времени работает мобильный робот 306. Трехмерная карта содержит данные пешеходного перехода 302, зоны 305 ожидания и визуального индикатора 303 движения (см. фиг. 3). Трехмерная карта показывает положение визуального индикатора движения и его ориентацию относительно зоны ожидания.
[0137] В целом, система координат трехмерной карты позволяет определять местоположение таких находящихся в этом пространстве объектов, как столбы, почтовые ящики, бордюры, дороги, здания, пожарные гидранты, дорожные ограждения, светофоры, пешеходные переходы, деревья, заборы, рекламные щиты, ориентиры и т.п. В частности, трехмерная карта содержит информацию, указывающую на положение объекта в системе координат трехмерной карты, а также на ориентацию этого объекта в системе координат трехмерной карты. Также можно сказать, что трехмерная карта может содержать информацию, указывающую на относительное положение и относительную ориентацию одного из пары объектов по отношению к другому из этой пары объектов. В по меньшей мере некоторых вариантах осуществления изобретения трехмерная карта может содержать естественные объекты и искусственные объекты.
Шаг 704: обнаружение объекта, находящегося в зоне ожидания.
[0138] Реализация способа 700 продолжается на шаге 704 обнаружением процессором 102 объекта, расположенного в зоне 305 ожидания, и формированием ограничивающей рамки 410. Следует отметить, что процессор 102 может формировать ограничивающую рамку 410 объекта по данным датчика камеры и/или данным лидарного датчика.
[0139] Например, процессор 102 может вводить по меньшей мере данные камеры (данные изображения) и/или лидарные данные (данные облака точек) в сеть ODNN, способную обнаруживать присутствие объектов и определять их местоположение путем формирования ограничивающих рамок вокруг присутствующих объектов.
Шаг 706: отображение положения ограничивающей рамки на трехмерной карте.
[0140] Реализация способа 700 продолжается на шаге 706 отображением процессором 102 положения ограничивающей рамки 410 на трехмерной карте. Следует отметить, что в некоторых вариантах осуществления изобретения мобильный робот 306 способен преобразовывать положение ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в ее положение в системе координат трехмерной карты.
[0141] Для этого мобильный робот 306 может применять матрицу преобразования в отношении положения ограничивающей рамки 410 в системе координат лидарного датчика для определения положения ограничивающей рамки 410 в системе координат трехмерной карты.
Шаг 708: определение зоны визуального перекрытия объекта в зоне ожидания.
[0142] Реализация способа 700 продолжается на шаге 708 определением процессором 102 зоны 450 визуального перекрытия в зоне 305 ожидания. Например, процессор 102 может использовать положение ограничивающей рамки 410 и ориентацию визуального индикатора 303 движения относительно зоны 305 ожидания для определения зоны 450 визуального перекрытия.
[0143] В по меньшей мере некоторых вариантах осуществления настоящей технологии процессор 102 может выполнять алгоритм формирования траектории лучей для формирования теневой проекции ограничивающей рамки 410 в зоне 305 ожидания, где формируется или строится траектория одного или нескольких лучей от визуального индикатора движения.
[0144] В по меньшей мере одном варианте осуществления изобретения процессор 102 может проецировать по меньшей мере один угол ограничивающей рамки 410 на зону 305 ожидания путем построения траектории луча на трехмерной карте от визуального индикатора 303 движения к зоне 305 ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки 410.
[0145] В некоторых вариантах осуществления изобретения процессор 102 может выполнять построение траекторий нескольких лучей на трехмерной карте. Например, процессор 102 может выполнять построение траекторий множества лучей от визуального индикатора 303 движения в сторону ограничивающей рамки 410 для определения теневой проекции ограничивающей рамки 410 на зону 305 ожидания.
[0146] В альтернативных вариантах осуществления настоящей технологии при определении зоны 450 визуального перекрытия процессор 102 может также учитывать высоту, на которой датчик камеры мобильного робота 306 находится над поверхностью земли. Как указано выше, в таких вариантах осуществления изобретения процессор 102 может использовать заранее заданное расстояние, на котором датчик камеры находится над поверхностью земли, для определения зоны визуального перекрытия, находящейся на заранее заданном расстоянии над зоной 305 ожидания.
[0147] Предполагается, что зона 450 визуального перекрытия является рассчитанной частью зоны 305 ожидания, в которой визуальный индикатор 303 движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот 306 находится в этой рассчитанной части.
Шаг 710: определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия.
[0148] Реализация способа 700 продолжается на шаге 710 определением процессором 102 уменьшенной зоны 460 ожидания как разности между зоной 305 ожидания и зоной 450 визуального перекрытия.
Шаг 712: управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.
[0149] Реализация способа 700 продолжается на шаге 712 с приведения в действие процессором 102 системы управления двигательной установкой для перемещения мобильного робота 306 в уменьшенную зону 460 ожидания. В некоторых вариантах осуществления изобретения процессор 102 может инициировать движение мобильного робота 306 с целью его остановки в уменьшенной зоне 460 ожидания и наблюдения текущего состояния визуального индикатора 303 движения. В других вариантах осуществления изобретения процессор 102 может инициировать движение мобильного робота 306 для перемещения через уменьшенную зону 460 ожидания при въезде на пешеходный переход 302.
[0150] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. В частности, несмотря на применение прогнозирующей модели при формировании оценок для динамических объектов и аналитической модели при формировании оценок для статических объектов, должно быть понятно, что эти ограничения не обязательны. Например, объект, обычно классифицируемый как динамический, может оставаться неподвижным, когда рядом с ним работает роботизированное транспортное средство. Такими примерами являются припаркованные автомобили или стоящие на месте люди, например, ожидающие автобус. Несмотря на то, что в этом случае такие объекты статичны в том плане, что они не движутся, с ними также можно работать с использованием прогнозирующей модели.
[0151] Предшествующее описание приведено лишь в иллюстративных целях, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.
название | год | авторы | номер документа |
---|---|---|---|
Способ управления роботизированным транспортным средством | 2021 |
|
RU2808469C2 |
ОТКРЫВАЮЩИЙ МЕХАНИЗМ КРЫШКИ РОБОТИЗИРОВАННОГО ТРАНСПОРТНОГО СРЕДСТВА | 2021 |
|
RU2810933C2 |
СПОСОБ МНОГОМОДАЛЬНОГО БЕСКОНТАКТНОГО УПРАВЛЕНИЯ МОБИЛЬНЫМ ИНФОРМАЦИОННЫМ РОБОТОМ | 2020 |
|
RU2737231C1 |
МУЛЬТИСПЕКТРАЛЬНЫЕ ЛИДАРНЫЕ СИСТЕМЫ И СПОСОБЫ | 2020 |
|
RU2792948C2 |
Способ траекторного управления движением мобильного сервисного робота | 2024 |
|
RU2825211C1 |
УЛУЧШЕННАЯ ВИЗУАЛИЗАЦИЯ КРОВЕНОСНЫХ СОСУДОВ С ИСПОЛЬЗОВАНИЕМ УПРАВЛЯЕМОГО РОБОТОМ ЭНДОСКОПА | 2013 |
|
RU2689767C2 |
РОБОТИЗИРОВАННАЯ ТРАНСПОРТНАЯ ПЛАТФОРМА | 2018 |
|
RU2701592C1 |
АВТОНОМНАЯ МОБИЛЬНАЯ РОБОТОТЕХНИЧЕСКАЯ ПЛАТФОРМА ДЛЯ ОЧИСТКИ СНЕГА | 2019 |
|
RU2730666C1 |
СПОСОБ ПЛАНИРОВАНИЯ ДВИЖЕНИЯ РОБОТА И МОБИЛЬНЫЙ РОБОТ | 2020 |
|
RU2749202C1 |
ОБНАРУЖЕНИЕ ПЕШЕХОДОВ, КОГДА ТРАНСПОРТНОЕ СРЕДСТВО ДВИЖЕТСЯ ЗАДНИМ ХОДОМ | 2017 |
|
RU2708469C2 |
Изобретение относится к робототехнике. Мобильный робот содержит двигатель, лидарный датчик, датчик камеры и процессор. Трехмерная карта окружающего пространства робота содержит указание на пешеходный переход, его зону ожидания и визуальный индикатор движения. При обнаружении объекта в зоне ожидания формируют ограничивающую рамку объекта, используя данные датчиков. Положение ограничивающей рамки отображается на трехмерной карте. Определяют зону визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания. Зона перекрытия является рассчитанной частью зоны ожидания, где визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда робот находится в этой рассчитанной части. Определяют уменьшенную зону ожидания как разность между зоной ожидания и зоной визуального перекрытия. Визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания, после чего робот перемещается в уменьшенную зону ожидания. Улучшается управление роботом. 3 н. и 24 з.п. ф-лы, 7 ил.
1. Мобильный робот, содержащий лидарный датчик (LIDAR), датчик камеры с полем обзора, двигательную установку для передвижения мобильного робота в окружающем пространстве, а также процессор, соединенный с возможностью связи с лидарным датчиком, датчиком камеры и двигательной установкой и выполненный с возможностью:
- получения доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;
- обнаружения объекта, находящегося в зоне ожидания, и формирования ограничивающей рамки (bounding box) объекта, используя данные датчика камеры и/или данные лидарного датчика;
- отображения положения ограничивающей рамки на трехмерной карте;
- определения зоны визуального перекрытия (окклюзии) объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части;
- определения уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания; и
- управления двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.
2. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью:
- сравнения уменьшенной зоны ожидания с заранее заданной пороговой зоной;
- если уменьшенная зона ожидания больше заранее заданной пороговой зоны: процессор выполнен с возможностью управления двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания,
- если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор выполнен с возможностью:
- определения оболочки объекта, используя лидарные данные лидарного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка;
- отображения положения оболочки на трехмерном изображении;
- определения другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, при этом другая зона визуального перекрытия представляет собой другую рассчитанную часть зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в другой рассчитанной части, меньшей упомянутой рассчитанной части;
- определения другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания;
- сравнения другой уменьшенной зоны ожидания с заранее заданной пороговой зоной;
- управления двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.
3. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью локального хранения по меньшей мере части трехмерной карты.
4. Мобильный робот по п. 1, в котором для выполнения обнаружения процессор дополнительно выполнен с возможностью использования нейронной сети обнаружения объектов для данных камеры и/или для лидарных данных.
5. Мобильный робот по п. 1, в котором для определения зоны визуального перекрытия процессор дополнительно выполнен с возможностью проецирования по меньшей мере одного угла ограничивающей рамки на зону ожидания путем построения траектории луча на трехмерной карте от визуального индикатора движения к зоне ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки.
6. Мобильный робот по п. 5, в котором используется несколько лучей, а процессор выполнен с возможностью построения траекторий нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.
7. Мобильный робот по п. 1, в котором датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, при этом процессор дополнительно выполнен с возможностью использования заранее заданного расстояния для определения зоны визуального перекрытия, расположенной на заранее заданном расстоянии над зоной ожидания.
8. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью управления двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.
9. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью наблюдения за состоянием визуального индикатора движения.
10. Мобильный робот по п. 1, в котором визуальный индикатор движения представляет собой светофор.
11. Мобильный робот по п. 1, в котором процессор является бортовым процессором мобильного робота.
12. Мобильный робот по п. 1, в котором процессор является удаленным процессором сервера, связанного с мобильным роботом.
13. Способ управления мобильным роботом в окружающем пространстве, включающий в себя:
- получение доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;
- обнаружение объекта в зоне ожидания с использованием по меньшей мере одного датчика мобильного робота и формирование ограничивающей рамки объекта;
- построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, представляющей собой зону визуального перекрытия объекта в зоне ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в рассчитанной части;
- определение уменьшенной зоны ожидания путем вычитания зоны визуального перекрытия из зоны ожидания;
- управление мобильным роботом, при котором робот останавливается внутри уменьшенной зоны ожидания, причем визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания, если уменьшенная зона ожидания больше заранее заданной пороговой зоны.
14. Способ по п. 13, включающий в себя, если уменьшенная зона ожидания меньше заранее заданной пороговой зоны:
- формирование оболочки объекта с использованием по меньшей мере одного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка;
- построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону оболочки для определения другой теневой проекции оболочки на зону ожидания, представляющей собой другую зону визуального перекрытия объекта в зоне ожидания, меньшую упомянутой зоны визуального перекрытия;
- определение другой уменьшенной зоны ожидания путем вычитания другой зоны визуального перекрытия из зоны ожидания;
- управление мобильным роботом, при котором робот останавливается в другой уменьшенной зоне ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.
15. Способ по п. 13, дополнительно включающий в себя непрерывное отслеживание состояния визуального индикатора движения с использованием по меньшей мере одного датчика камеры мобильного робота.
16. Способ управления мобильным роботом, содержащим лидарный датчик (LiDAR), датчик камеры с полем обзора и двигательную установку для передвижения мобильного робота в окружающем пространстве, а также процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой, включающий в себя:
- получение доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;
- обнаружение объекта, находящегося в зоне ожидания, и формирование ограничивающей рамки объекта по данным датчика камеры и/или данным лидарного датчика;
- отображение положения ограничивающей рамки на трехмерной карте;
- определение зоны визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части;
- определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания; и
- управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.
17. Способ по п. 16, дополнительно включающий в себя:
- сравнение уменьшенной зоны ожидания с заранее заданной пороговой зоной;
- управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания, если уменьшенная зона ожидания больше заранее заданной пороговой зоны;
- если уменьшенная зона ожидания меньше заранее заданной пороговой зоны:
- определение по лидарным данным лидарного датчика оболочки объекта, которая является более точной оценкой формы объекта, чем ограничивающая рамка;
- отображение положения оболочки на трехмерном изображении;
- определение другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, при этом другая зона визуального перекрытия является другой рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в другой рассчитанной части, меньшей упомянутой рассчитанной части;
- определение другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания;
- сравнение другой уменьшенной зоны ожидания с заранее заданной пороговой зоной; и
- управление двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.
18. Способ по п. 16, в котором по меньшей мере часть трехмерной карты хранится локально.
19. Способ по п. 16, в котором обнаружение включает в себя использование нейронной сети обнаружения объектов для данных камеры и/или для лидарных данных.
20. Способ по п. 16, в котором определение зоны визуального перекрытия включает в себя проецирование по меньшей мере одного угла ограничивающей рамки на зону ожидания путем построения на трехмерной карте траектории луча от визуального индикатора движения к зоне ожидания, при котором луч проходит через по меньшей мере один из углов ограничивающей рамки.
21. Способ по п. 20, в котором строятся траектории нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.
22. Способ по п. 16, в котором датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, определение зоны визуального перекрытия включает в себя использование заранее заданного расстояния, а зона визуального перекрытия располагается на заранее заданном расстоянии над зоной ожидания.
23. Способ по п. 16, дополнительно включающий в себя управление двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.
24. Способ по п. 16, дополнительно включающий в себя наблюдение за состоянием визуального индикатора движения.
25. Способ по п. 16, в котором визуальный индикатор движения представляет собой светофор.
26. Способ по п. 16, в котором процессор является бортовым процессором мобильного робота.
27. Способ по п. 16, в котором процессор является удаленным процессором сервера, связанного с мобильным роботом.
US 8712624 B1, 29.04.2014 | |||
US 20210380119 A1, 09.12.2021 | |||
US 20210297699 A1, 23.09.2021 | |||
EP 3362865 B1, 21.07.2021 | |||
US 20210302990 A1, 30.09.2021 | |||
WO 2020234041 A1, 26.11.2020 | |||
US 20180239021 A1, 23.08.2018 | |||
УСТРОЙСТВО УПРАВЛЕНИЯ ВЫСОКОАДАПТИВНЫМ АВТОНОМНЫМ МОБИЛЬНЫМ РОБОТОМ | 2019 |
|
RU2705049C1 |
Мобильный робот-опрыскиватель для обработки пестицидами пропашных овощных и низкорастущих ягодных культур | 2019 |
|
RU2731082C1 |
РОБОТИЗИРОВАННАЯ ТРАНСПОРТНАЯ ПЛАТФОРМА | 2018 |
|
RU2701592C1 |
Авторы
Даты
2023-07-24—Публикация
2021-10-18—Подача