RU2800529C1 - Mobile robot and method for mobile robot control - Google Patents

Mobile robot and method for mobile robot control Download PDF

Info

Publication number
RU2800529C1
RU2800529C1 RU2021130273A RU2021130273A RU2800529C1 RU 2800529 C1 RU2800529 C1 RU 2800529C1 RU 2021130273 A RU2021130273 A RU 2021130273A RU 2021130273 A RU2021130273 A RU 2021130273A RU 2800529 C1 RU2800529 C1 RU 2800529C1
Authority
RU
Russia
Prior art keywords
waiting area
mobile robot
area
visual
bounding box
Prior art date
Application number
RU2021130273A
Other languages
Russian (ru)
Inventor
Всеволод Николаевич Орлов
Алексей Викторович Лавренюк
Original Assignee
Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии"
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии" filed Critical Общество с ограниченной ответственностью "Яндекс Беспилотные Технологии"
Priority to US17/966,999 priority Critical patent/US20230122066A1/en
Priority to EP22202133.9A priority patent/EP4174611A1/en
Application granted granted Critical
Publication of RU2800529C1 publication Critical patent/RU2800529C1/en

Links

Abstract

FIELD: robotics.
SUBSTANCE: mobile robot contains a motor, a lidar sensor, a camera sensor, and a processor. A three-dimensional map of the robot's surroundings contains an indication of a pedestrian crossing, its waiting area, and a visual indicator of movement. When an object is detected in the waiting area, a bounding box of the object is formed using the sensor data. The position of the bounding box is displayed on the 3D map. The zone of visual overlap of the object in the waiting area is determined using the position of the bounding box and the orientation of the visual indicator of movement relative to the waiting area. The overlap zone is the calculated part of the waiting area where the visual motion indicator is covered by an object in the field of view of the camera sensor when the robot is in this calculated part. The reduced waiting area is determined as the difference between the waiting area and the visual overlap area. A visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area, after which the robot moves to the reduced waiting area.
EFFECT: improved robot control.
27 cl, 7 dwg

Description

Область техники, к которой относится изобретениеThe field of technology to which the invention belongs

[01] Настоящая технология относится к компьютерным способам и системам для управления роботизированным транспортным средством, в частности, к способам и системам для управления мобильным роботом.[01] The present technology relates to computer methods and systems for controlling a robotic vehicle, in particular, to methods and systems for controlling a mobile robot.

Уровень техникиState of the art

[02] Автономные роботизированные транспортные средства представляют собой транспортные средства, способные автономно перемещаться по частной территории и/или по территории общего пользования. С помощью системы датчиков, определяющих местоположение и/или окружение транспортного средства, внутренняя или связанная с транспортным средством логическая система управляет скоростью и направлением движения роботизированного транспортного средства на основе определенного датчиками местоположения и окружения транспортного средства.[02] Autonomous robotic vehicles are vehicles capable of autonomously moving around private and/or public areas. With the vehicle location and/or environment sensor system, an internal or vehicle-related logic system controls the speed and direction of the robotic vehicle based on the location and environment of the vehicle determined by the sensors.

[03] В роботизированном транспортном средстве могут использоваться различные системы датчиков, такие как системы камер, радиолокационные системы и лидарные системы, не ограничиваясь ими. Для сбора различной информации о местоположении и окружении транспортного средства и/или информации в другом формате могут использоваться различные системы датчиков. Например, лидарные системы могут использоваться для сбора данных облака точек для построения трехмерных карт окружающего пространства и других потенциальных объектов, расположенных в непосредственной близости от роботизированного транспортного средства.[03] The robotic vehicle may use various sensor systems such as, but not limited to, camera systems, radar systems, and lidar systems. Various sensor systems may be used to collect various information about the location and surroundings of the vehicle and/or information in a different format. For example, lidar systems can be used to collect point cloud data to build 3D maps of the environment and other potential objects located in close proximity to a robotic vehicle.

[04] Такие автономные роботизированные транспортные средства используются для самых разных целей, включая доставку товаров и других предметов. Для решения этих задач может требоваться перемещение роботизированного транспортного средства в динамической среде, например, на заполненном людьми тротуаре, на пешеходном переходе, где может происходить движение людей и транспортных средств, и т.д. При выполнении этой навигационной задачи автономному роботизированному транспортному средству необходимо избегать столкновений с динамическими объектами, такими как люди и движущиеся транспортные средства, и со статическими объектами, такими как припаркованные автомобили, здания, фонарные столбы и другие неподвижные объекты, обычно встречающиеся в городской и пригородной зоне, где предполагается применение роботизированного транспортного средства.[04] Such autonomous robotic vehicles are used for a variety of purposes, including the delivery of goods and other items. These tasks may require moving the robotic vehicle through a dynamic environment, such as a crowded sidewalk, a crosswalk where people and vehicles can move, and so on. In performing this navigational task, the autonomous robotic vehicle needs to avoid collisions with dynamic objects such as people and moving vehicles and static objects such as parked cars, buildings, lampposts, and other stationary objects commonly found in urban and suburban areas. where the use of a robotic vehicle is expected.

[05] Роботизированные транспортные средства часто имеют сравнительно небольшие размеры, поэтому различные объекты, с которыми они встречаются во время работы, могут закрывать для его датчиков видимость части окружающего пространства. Это может приводить к неблагоприятным последствиям, поскольку важная для навигационных целей информация оказывается в недоступных частях пространства, что препятствует безопасной работе роботизированного транспортного средства.[05] Robotic vehicles are often relatively small, so the various objects they encounter during operation can block the visibility of part of the surrounding space for its sensors. This can lead to adverse consequences, since information important for navigation purposes is in inaccessible parts of space, which prevents the safe operation of the robotic vehicle.

[06] В патенте US8712624 описаны способы и устройство для управления автономными транспортными средствами с использованием карт, содержащих информацию о видимости.[06] US8712624 describes methods and apparatus for driving autonomous vehicles using maps containing visibility information.

Раскрытие изобретенияDisclosure of invention

[07] Во время доставки товаров покупателю мобильный робот может следовать по маршруту к месту нахождения покупателя. При движении по маршруту мобильному роботу может потребоваться пересечь дорогу по пешеходному переходу. При приближении к пешеходному переходу мобильный робот должен определить, разрешено (например, горит зеленый свет) или запрещено (например, горит красный свет) светофором движение по переходу.[07] During the delivery of goods to the buyer, the mobile robot can follow the route to the location of the buyer. When moving along a route, the mobile robot may need to cross the road at a pedestrian crossing. When approaching a pedestrian crossing, the mobile robot must determine whether it is allowed (for example, a green light is on) or prohibited (for example, a red light is on) with a traffic light.

[08] Один или несколько объектов, таких как пешеходы, также могут ожидать прохождения по пешеходному переходу и, таким образом, они могут перекрывать поле обзора датчика камеры мобильного робота, что затрудняет наблюдение за состоянием светофора. Иными словами, разработчики настоящей технологии установили, что такие объекты могут мешать мобильному роботу отслеживать состояние светофора, закрывая светофор в поле обзора одного или нескольких датчиков камер мобильного робота, когда мобильный робот находится в непосредственной близости от пешеходного перехода. Такая неспособность мобильного робота отслеживать состояние светофора нежелательна для его работы.[08] One or more objects, such as pedestrians, may also be waiting to pass through the crosswalk and thus may obstruct the mobile robot's camera sensor field of view, making it difficult to observe the traffic light condition. In other words, the developers of the present technology have found that such objects can interfere with the mobile robot monitoring the state of a traffic light by blocking the traffic light in the field of view of one or more mobile robot camera sensors when the mobile robot is in close proximity to a pedestrian crossing. This inability of a mobile robot to track the state of a traffic light is undesirable for its operation.

[09] Поэтому разработчики настоящей технологии разработали способы решения этой проблемы и мобильных роботов, способных определять одно или несколько целевых положений в заданной области в непосредственной близости от пешеходного перехода, к которому может перемещаться мобильный робот, и положений, из которых мобильный робот может наблюдать за состоянием светофора и не закрыт одним или несколькими объектами, расположенными в этой области.[09] Therefore, the developers of the present technology have developed methods to solve this problem and mobile robots capable of determining one or more target positions in a given area in the vicinity of a pedestrian crossing, to which the mobile robot can move, and positions from which the mobile robot can observe the state of the traffic light and is not covered by one or more objects located in this area.

[010] В некоторых вариантах осуществления настоящей технологии мобильный робот может обнаруживать присутствие объекта в заданной области в непосредственной близости от пешеходного перехода и создавать «ограничивающую рамку» (bounding box) для этого объекта. Положение этой ограничивающей рамки может быть отображено на трехмерной карте окружающего пространства. Мобильный робот способен определять «зону визуального перекрытия» из-за наличия объекта в данной области. В одном варианте осуществления изобретения эта зона визуального перекрытия может быть «теневой проекцией» ограничивающей рамки, если светофор на трехмерной карте считается источником света. Мобильный робот может выбрать целевое положение в данной области за пределами зоны визуального перекрытия и двигаться в эту область, имея возможность наблюдать за состоянием светофора.[010] In some embodiments of the present technology, the mobile robot can detect the presence of an object in a given area in the immediate vicinity of a pedestrian crossing and create a "bounding box" for this object. The position of this bounding box can be displayed on a 3D map of the surrounding space. The mobile robot is able to determine the "visual overlap zone" due to the presence of an object in this area. In one embodiment of the invention, this zone of visual overlap can be a "shadow projection" of the bounding box if the traffic light on the 3D map is considered a light source. The mobile robot can select a target position in a given area outside of the visual overlap zone and move to this area while being able to observe the traffic light status.

[011] В других вариантах осуществления настоящей технологии мобильный робот также может определять, не является ли зона визуального перекрытия, сформированная на основе ограничивающей рамки, слишком большой и/или не является ли остальная часть данной области слишком малой. В таких случаях мобильный робот может выполнять «углубленный» анализ зоны визуального перекрытия из-за наличия объекта. В ходе этого углубленного анализа мобильный робот может формировать «структуру оболочки» объекта, например, по лидарным данным и использовать ее вместо ограничивающей рамки при формировании зоны визуального перекрытия. Структура оболочки более точно представляет форму объекта, чем ограничивающая рамка, при этом она меньше ограничивающей рамки. Следовательно, ее теневая проекция, вероятно, имеет меньшую площадь, чем теневая проекция ограничивающей рамки, что позволяет освободить дополнительную область поверхности, в которую потенциально может двигаться мобильный робот.[011] In other embodiments of the present technology, the mobile robot can also determine if the visual overlap area formed based on the bounding box is too large and/or if the rest of the area is too small. In such cases, the mobile robot can perform a "deep" analysis of the area of visual overlap due to the presence of the object. During this in-depth analysis, the mobile robot can generate the "shell structure" of the object, for example, from lidar data, and use it instead of a bounding box when forming a zone of visual overlap. A shell structure more accurately represents the shape of an object than a bounding box, while being smaller than the bounding box. Therefore, its shadow projection is likely to have a smaller area than the bounding box's shadow projection, which frees up additional surface area into which the mobile robot can potentially move.

[012] В первом широком аспекте настоящей технологии реализован мобильный робот, содержащий датчик лазерной системы обнаружения и измерения дальности (LiDAR, Light Detection and Ranging) - лидарный датчик, а также датчик камеры с некоторым полем обзора, двигательную установку для передвижения мобильного робота в окружающей среде и процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Процессор имеет доступ к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе. Трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Процессор способен обнаруживать объект, находящийся в зоне ожидания, и формировать ограничивающую рамку объекта по данным датчика камеры и/или данным лидарного датчика. Процессор способен сопоставлять положение ограничивающей рамки с трехмерной картой. Процессор способен определять зону визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Процессор способен определять уменьшенную зону ожидания как разность между зоной ожидания и зоной визуального перекрытия. Визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания. Процессор способен управлять двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.[012] In the first broad aspect of the present technology, a mobile robot is implemented, containing a laser detection and ranging system (LiDAR, Light Detection and Ranging) sensor - a lidar sensor, as well as a camera sensor with a certain field of view, a propulsion system for moving the mobile robot in the surrounding environment and a processor associated with the lidar sensor, the camera sensor and the propulsion system. The processor has access to a three-dimensional map of the surrounding space, containing the appropriate indication of the pedestrian crossing, the waiting area of the pedestrian crossing and a visual indicator of traffic on the pedestrian crossing. The 3D map indicates the position of the visual motion indicator and its orientation relative to the holding area. The processor is capable of detecting an object in the waiting area and generating a bounding box of the object from the camera sensor data and/or the lidar sensor data. The processor is able to map the position of the bounding box to the 3D map. The processor is capable of determining the area of visual overlap of an object in the holding area using the position of the bounding box and the orientation of the visual motion indicator relative to the holding area. The visual overlap zone is the calculated part of the waiting area in which the visual indicator of movement is covered by an object in the field of view of the camera sensor when the mobile robot is in this calculated part. The processor is able to determine the reduced holdout area as the difference between the holdout area and the visual overlap area. A visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area. The processor is capable of controlling the propulsion system to move the mobile robot into the reduced waiting area.

[013] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен сравнивать уменьшенную зону ожидания с заранее заданной пороговой зоной и, если уменьшенная зона ожидания больше заранее определенной пороговой зоны, управлять двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор может по данным лидарного датчика дополнительно определять оболочку объекта, которая является более точной оценкой формы объекта, чем ограничивающая рамка. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор может дополнительно отображать положение оболочки на трехмерной карте, определять другую зону визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, где другая зона визуального перекрытия представляет собой другую рассчитанную часть зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот расположен в этой другой рассчитанной части, и где другая рассчитанная часть меньше упомянутой рассчитанной части. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор дополнительно может определять другую уменьшенную зону ожидания как разность между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор дополнительно способен сравнивать другую уменьшенную зону ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, процессор способен управлять двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания.[013] In some embodiments of the mobile robot, the processor is further capable of comparing the reduced holding area with a predetermined threshold area and, if the reduced holding area is greater than the predetermined threshold area, controlling the propulsion system to move the mobile robot into the reduced holding area. If the reduced latency zone is less than a predetermined threshold zone, the processor may further determine, from the lidar sensor data, an object shell that is a more accurate estimate of the object's shape than the bounding box. If the reduced holdout area is less than a predetermined threshold area, the processor may further display the position of the shell on the 3D map, determine another visual overlap area of the object in the holdout area using the shell position and orientation of the visual indicator relative to the holdout area, where the other visual overlap area represents another calculated the part of the waiting area in which the visual motion indicator is obscured by an object in the field of view of the camera sensor when the mobile robot is located in this other calculated part, and where the other calculated part is smaller than said calculated part. If the reduced waiting area is less than a predetermined threshold area, the processor may further determine the other reduced waiting area as the difference between the waiting area and the other visual overlap, whereby a visual motion indicator is visible in the camera sensor's field of view when the mobile robot is in the other reduced waiting area. . If the reduced sleep zone is smaller than the predetermined threshold zone, the processor is further able to compare another reduced sleep zone with the predetermined threshold zone. If the other reduced holding area is larger than the predetermined threshold area, the processor is able to control the propulsion system to move the mobile robot to another reduced holding area.

[014] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен локально хранить по меньшей мере часть трехмерной карты.[014] In some embodiments of the mobile robot, the processor is further capable of locally storing at least a portion of the 3D map.

[015] В некоторых вариантах осуществления мобильного робота процессор для выполнения обнаружения дополнительно способен использовать нейронную сеть обнаружения объектов (ODNN, Object Detection Neural Network) для данных камеры и/или лидарных данных.[015] In some embodiments of the mobile robot, the processor is further capable of using an Object Detection Neural Network (ODNN) for camera data and/or lidar data to perform detection.

[016] В некоторых вариантах осуществления мобильного робота процессор для определения зоны визуального перекрытия дополнительно способен проецировать по меньшей мере один угол ограничивающей рамки на зону ожидания путем построения траектории луча на трехмерной карте от визуального индикатора движения к зоне ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки.[016] In some embodiments of the mobile robot, the processor for determining the visual overlap area is further capable of projecting at least one corner of the bounding box onto the holding area by constructing a ray path on a 3D map from the visual indicator of movement to the holding area, the beam passing through at least at least one of the corners of the bounding box.

[017] В некоторых вариантах осуществления мобильного робота используется несколько лучей, а процессор способен строить несколько лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.[017] In some embodiments of the mobile robot, multiple beams are used, and the processor is able to build multiple beams from the visual indicator of movement towards the bounding box to determine the shadow projection of the bounding box on the waiting area, while the shadow projection of the bounding box is the zone of visual overlap.

[018] В некоторых вариантах осуществления мобильного робота датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, при этом процессор дополнительно способен использовать заранее заданное расстояние для определения зоны визуального перекрытия, а зона визуального перекрытия расположена на заранее заданном расстоянии над зоной ожидания.[018] In some embodiments of the mobile robot, the camera sensor is located at a predetermined distance above the ground surface on which the mobile robot is moving, wherein the processor is further able to use the predetermined distance to determine the visual overlap zone, and the visual overlap zone is located at a predetermined distance above the waiting area.

[019] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен управлять двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.[019] In some embodiments of the mobile robot, the processor is further capable of controlling the propulsion system to stop the mobile robot in the reduced waiting area.

[020] В некоторых вариантах осуществления мобильного робота процессор дополнительно способен наблюдать за состоянием визуального индикатора движения.[020] In some embodiments of the mobile robot, the processor is further able to monitor the state of the visual motion indicator.

[021] В некоторых вариантах осуществления мобильного робота визуальный индикатор движения представляет собой светофор.[021] In some embodiments of the mobile robot, the visual indicator of movement is a traffic light.

[022] В некоторых вариантах осуществления мобильного робота процессор является бортовым процессором мобильного робота.[022] In some embodiments of the mobile robot, the processor is an onboard processor of the mobile robot.

[023] В некоторых вариантах осуществления мобильного робота процессор является удаленным процессором сервера, связанного с мобильным роботом.[023] In some embodiments of the mobile robot, the processor is a remote processor of a server associated with the mobile robot.

[024] Во втором широком аспекте настоящей технологии реализован способ управления мобильным роботом в окружающем пространстве. Способ предусматривает наличие доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Способ включает в себя обнаружение объекта в зоне ожидания и формирование ограничивающей рамки объекта по данным меньшей мере одного датчика мобильного робота. Способ включает в себя построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, представляющей собой зону визуального перекрытия объекта в зоне ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Способ включает в себя определение уменьшенной зоны ожидания путем вычитания зоны визуального перекрытия из зоны ожидания. Если уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление мобильным роботом, при котором робот останавливается внутри уменьшенной зоны ожидания, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания.[024] In the second broad aspect of the present technology, a method for controlling a mobile robot in the surrounding space is implemented. The method provides for access to a three-dimensional map of the surrounding space containing a corresponding indication of a pedestrian crossing, a waiting area for a pedestrian crossing and a visual indicator of movement at a pedestrian crossing, while the three-dimensional map indicates the position of the visual indicator of movement and its orientation relative to the waiting area. The method includes detecting an object in a waiting area and forming a bounding box of the object based on data from at least one sensor of the mobile robot. The method includes constructing on a three-dimensional map the trajectories of two rays from a visual indicator of movement towards the bounding box to determine the shadow projection of the bounding box onto the waiting area, which is the zone of visual overlap of the object in the waiting area. The visual overlap zone is the calculated part of the waiting area in which the visual indicator of movement is covered by an object in the field of view of the camera sensor when the mobile robot is in this calculated part. The method includes determining a reduced holding area by subtracting a visual overlap area from the holding area. If the reduced waiting area is greater than a predetermined threshold area, the method includes controlling the mobile robot to stop inside the reduced waiting area, wherein a visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area.

[025] В некоторых вариантах осуществления способа, если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ включает в себя определение оболочки объекта с использованием по меньшей мере одного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка. Способ включает в себя построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону оболочки для определения другой теневой проекции оболочки на зону ожидания, представляющую собой другую зону визуального перекрытия объекта в зоне ожидания, меньшую упомянутой зоны визуального перекрытия. Способ включает в себя определение другой уменьшенной зоны ожидания путем вычитания другой зоны визуального перекрытия из зоны ожидания. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление мобильным роботом, при котором робот останавливается в другой уменьшенной зоне ожидания.[025] In some embodiments of the method, if the reduced waiting area is less than a predetermined threshold area, the method includes determining the shell of the object using at least one sensor, wherein the shell is a more accurate estimate of the shape of the object than the bounding box. The method includes plotting on a three-dimensional map the trajectories of two rays from a visual indicator of movement towards the shell to determine another shadow projection of the shell onto the waiting area, which is another visual overlap zone of the object in the waiting area, smaller than the said visual overlap zone. The method includes determining another reduced holding area by subtracting another visual overlap area from the holding area. If the other reduced waiting area is larger than the predetermined threshold area, the method includes controlling the mobile robot to stop the robot in the other reduced waiting area.

[026] В некоторых вариантах осуществления способа он дополнительно включает в себя непрерывное отслеживание состояния визуального индикатора движения с использованием по меньшей мере одного датчика камеры мобильного робота.[026] In some embodiments of the method, it further includes continuously monitoring the status of the visual motion indicator using at least one mobile robot camera sensor.

[027] В третьем широком аспекте настоящей технологии реализован способ управления мобильным роботом, содержащим лидарный датчик, датчик камеры с некоторым полем обзора, двигательную установку для передвижения мобильного робота в окружающем пространстве и процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Способ выполняется процессором. Способ предусматривает наличие доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе. Трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания. Способ включает в себя обнаружение объекта, находящегося в зоне ожидания, и формирование ограничивающей рамки объекта по данным датчика камеры и/или данным лидарного датчика. Способ включает в себя отображение положения ограничивающей рамки на трехмерной карте. Способ включает в себя определение зоны визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания. Зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части. Способ включает в себя определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания. Способ включает в себя управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.[027] In the third broad aspect of the present technology, a method for controlling a mobile robot is implemented, comprising a lidar sensor, a camera sensor with a certain field of view, a propulsion system for moving the mobile robot in the surrounding space, and a processor associated with the lidar sensor, the camera sensor, and the propulsion system. The method is executed by the processor. The method provides for access to a three-dimensional map of the surrounding space containing a corresponding indication of a pedestrian crossing, a waiting area for a pedestrian crossing, and a visual indicator of movement at the pedestrian crossing. The 3D map indicates the position of the visual motion indicator and its orientation relative to the holding area. The method includes detecting an object in the waiting area and generating a bounding box for the object based on camera sensor data and/or lidar sensor data. The method includes displaying the position of a bounding box on a 3D map. The method includes determining a zone of visual overlap of an object in the waiting area using the position of the bounding box and the orientation of the visual motion indicator relative to the waiting area. The visual overlap zone is the calculated part of the waiting area in which the visual indicator of movement is covered by an object in the field of view of the camera sensor when the mobile robot is in this calculated part. The method includes determining the reduced waiting area as the difference between the waiting area and the visual overlap area, whereby a visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area. The method includes controlling a propulsion system to move the mobile robot to a reduced waiting area.

[028] В некоторых вариантах осуществления способа он дополнительно включает в себя сравнение уменьшенной зоны ожидания с заранее заданной пороговой зоной и если уменьшенная зона ожидания больше заранее заданной пороговой зоны, управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение оболочки объекта по данным лидарного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя отображение положения оболочки на трехмерной карте. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора движения относительно зоны ожидания. Другая зона визуального перекрытия является другой рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой другой рассчитанной части. Другая рассчитанная часть меньше упомянутой рассчитанной части. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя определение другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия. Визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания. Если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, способ дополнительно включает в себя сравнение другой уменьшенной зоны ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, способ включает в себя управление двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания.[028] In some embodiments of the method, it further includes comparing the reduced holding area with a predetermined threshold area and, if the reduced holding area is greater than the predetermined threshold area, controlling the propulsion system to move the mobile robot into the reduced holding area. If the reduced waiting area is less than a predetermined threshold area, the method further includes determining the shell of the object from the lidar sensor data, wherein the shell is a more accurate estimate of the shape of the object than the bounding box. If the reduced holding area is smaller than the predetermined threshold area, the method further includes displaying the position of the shell on a 3D map. If the reduced holding area is less than the predetermined threshold area, the method further includes determining another visual overlap area of the object in the holding area using the shell position and orientation of the visual motion indicator relative to the holding area. The other visual overlap zone is another calculated part of the holding zone in which the visual motion indicator is obscured by an object in the field of view of the camera sensor when the mobile robot is in this other calculated part. The other calculated part is less than the said calculated part. If the reduced holding area is smaller than the predetermined threshold area, the method further includes determining another reduced holding area as the difference between the holding area and the other visual overlap area. A visual indicator of movement is visible in the field of view of the camera sensor when the mobile robot is in another reduced waiting area. If the reduced waiting area is smaller than the predetermined threshold area, the method further includes comparing the other reduced waiting area with the predetermined threshold area. If the other reduced holding area is larger than the predetermined threshold area, the method includes driving the propulsion system to move the mobile robot to the other reduced holding area.

[029] В некоторых вариантах осуществления способа по меньшей мере часть трехмерной карты хранится локально.[029] In some embodiments of the method, at least a portion of the 3D map is stored locally.

[030] В некоторых вариантах осуществления способа обнаружение включает в себя использование нейронной сети обнаружения объектов (ODNN) для данных камеры и/или лидарных данных.[030] In some embodiments of the method, detection includes using an object detection neural network (ODNN) for camera data and/or lidar data.

[031] В некоторых вариантах осуществления способа определение зоны визуального перекрытия включает в себя проецирование по меньшей мере одного угла ограничивающей рамки на зону ожидания путем проведения луча на трехмерной карте от визуального индикатора движения к зоне ожидания таким образом, что этот луч проходит через по меньшей мере один из углов ограничивающей рамки.[031] In some embodiments of the method, determining the visual overlap area includes projecting at least one corner of the bounding box onto the holding area by drawing a ray on the 3D map from the visual motion indicator to the holding area such that the ray passes through at least one of the corners of the bounding box.

[032] В некоторых вариантах осуществления способа строятся траектории нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.[032] In some embodiments of the method, multiple ray trajectories are constructed from a visual indicator of movement towards the bounding box to determine the shadow projection of the bounding box onto the waiting area, with the shadow projection of the bounding box being the area of visual overlap.

[033] В некоторых вариантах осуществления способа датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, определение зоны визуального перекрытия включает в себя использование этого заранее заданного расстояния, а зона визуального перекрытия располагается на заранее заданном расстоянии над зоной ожидания.[033] In some embodiments of the method, the camera sensor is located at a predetermined distance above the ground on which the mobile robot is moving, determining the visual overlap area includes using this predetermined distance, and the visual overlap area is located at a predetermined distance above the waiting area .

[034] В некоторых вариантах осуществления способа он дополнительно включает в себя управление двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.[034] In some embodiments of the method, it further includes controlling the propulsion system to stop the mobile robot in the reduced waiting area.

[035] В некоторых вариантах осуществления способа он дополнительно включает в себя наблюдение за состоянием визуального индикатора движения.[035] In some embodiments of the method, it further includes monitoring the state of the visual motion indicator.

[036] В некоторых вариантах осуществления способа визуальный индикатор движения представляет собой светофор.[036] In some embodiments of the method, the visual indicator of movement is a traffic light.

[037] В некоторых вариантах осуществления способа процессор является бортовым процессором мобильного робота.[037] In some embodiments of the method, the processor is an onboard processor of the mobile robot.

[038] В некоторых вариантах осуществления способа процессор является удаленным процессором сервера, связанного с мобильным роботом.[038] In some embodiments of the method, the processor is a remote processor of a server associated with the mobile robot.

Краткое описание чертежейBrief description of the drawings

[039] Эти и другие признаки, аспекты и преимущества настоящей технологии содержатся в дальнейшем описании, в приложенной формуле изобретения и на следующих чертежах.[039] These and other features, aspects, and advantages of the present technology are contained in the following description, in the appended claims, and in the following drawings.

[040] На фиг. 1 схематически представлен пример компьютерной системы для использования в некоторых вариантах осуществления систем и/или способов согласно настоящей технологии.[040] In FIG. 1 is a schematic representation of an example computer system for use in some embodiments of systems and/or methods in accordance with the present technology.

[041] На фиг. 2 представлена сетевая компьютерная среда, содержащая роботизированное транспортное средство, пригодная для использования с некоторыми вариантами осуществления настоящей технологии.[041] In FIG. 2 depicts a networked computing environment containing a robotic vehicle suitable for use with some embodiments of the present technology.

[042] На фиг. 3 представлен общий вид сверху трехмерной карты, к которой имеет доступ компьютерная система согласно фиг. 1 в соответствии с различными вариантами осуществления описанной технологии.[042] In FIG. 3 is a perspective top view of a 3D map accessed by the computer system of FIG. 1 in accordance with various embodiments of the described technology.

[043] На фиг. 4 представлен вид в перспективе трехмерной карты согласно фиг. 3 с ограничивающей рамкой в соответствии с различными вариантами осуществления описанной технологии.[043] In FIG. 4 is a perspective view of the 3D map of FIG. 3 with a bounding box in accordance with various embodiments of the described technology.

[044] На фиг. 5 представлен общий вид сверху трехмерной карты согласно фиг. 4 в соответствии с различными вариантами осуществления описанной технологии.[044] In FIG. 5 is a top plan view of the 3D map of FIG. 4 in accordance with various embodiments of the described technology.

[045] На фиг. 6 представлены ограничивающая рамка и структура оболочки, формируемые компьютерной системой согласно фиг. 1 для одного и того же объекта в соответствии с различными вариантами осуществления описанной технологии.[045] In FIG. 6 shows the bounding box and shell structure generated by the computer system of FIG. 1 for the same object in accordance with various embodiments of the described technology.

[046] На фиг. 7 представлена блок-схема способа, выполняемого в соответствии с различными вариантами осуществления описанной технологии.[046] In FIG. 7 is a flow diagram of a method performed in accordance with various embodiments of the described technology.

Осуществление изобретенияImplementation of the invention

[047] Различные иллюстративные варианты осуществления настоящей технологии более полно поясняются в дальнейшем описании и на приложенных чертежах. При этом настоящая технология может быть реализована во многих различных формах и ее не следует рассматривать как ограниченную изложенными здесь иллюстративными вариантами осуществления. Абсолютные размеры и относительные размеры слоев и областей на чертежах могут быть увеличены для ясности изложения. Одинаковые цифровые обозначения везде относятся к одинаковым элементам.[047] Various illustrative embodiments of the present technology are more fully explained in the following description and in the accompanying drawings. However, the present technology may be implemented in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. The absolute dimensions and relative dimensions of the layers and regions in the drawings may be enlarged for the sake of clarity. The same numerals refer to the same elements everywhere.

[048] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Должно быть понятно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.[048] The examples and conventions presented herein are intended to provide a better understanding of the principles of the present technology, and not to limit its scope to such specifically given examples and terms. It should be understood that those skilled in the art are capable of developing various methods and devices that are not explicitly described or shown, but that implement the principles of the present technology within its spirit and scope.

[049] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалистам в данной области должно быть понятно, что другие варианты осуществления настоящей технологии могут быть значительно сложнее.[049] In addition, to facilitate a better understanding, the following description may contain simplified implementations of the present technology. Those skilled in the art will appreciate that other embodiments of the present technology may be significantly more complex.

[050] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим, и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.[050] In some cases, useful examples of modifications to the present technology are provided. They contribute to understanding, but also do not define the scope or boundaries of the present technology. The presented list of modifications is not exhaustive, and a person skilled in the art can develop other modifications within the scope of this technology. In addition, if modifications are not described in some cases, this does not mean that they are impossible and / or that the description contains the only possible implementation of one or another element of the present technology.

[051] Должно быть понятно, что термины «первый», «второй», «третий» и т.д. могут использоваться здесь для описания различных элементов, тем не менее, это не накладывает ограничений на такие элементы. Эти термины используются, чтобы отличать один элемент от другого. Таким образом, обсуждаемый первый элемент может быть назван вторым элементом без отступления от существа настоящего изобретения. Используемый здесь термин «и/или» включает в себя все без исключения сочетания одного или нескольких перечисленных элементов.[051] It should be understood that the terms "first", "second", "third", etc. may be used here to describe various elements, however, this does not impose restrictions on such elements. These terms are used to distinguish one element from another. Thus, the discussed first element may be referred to as the second element without departing from the essence of the present invention. As used herein, the term "and/or" includes any and all combinations of one or more of the listed elements.

[052] Должно быть понятно, что, если указано на «подключение» элемента к другому элементу или его «связь» с другим элементом, он может быть подключен к другому элементу или связан с другим элементом напрямую или через промежуточные элементы. Напротив, когда элемент указан как «непосредственно подключенный» к другому элементу или «непосредственно связанный» с другим элементом, промежуточные элементы отсутствуют. Аналогичным образом следует интерпретировать и другие слова, используемые для описания взаимосвязи между элементами (например, «между» и «непосредственно между», «примыкающий» и «непосредственно примыкающий» и т.д.).[052] It should be understood that if an element is "connected" to another element or "associated" with another element, it can be connected to or connected to another element directly or through intermediate elements. In contrast, when an element is listed as "directly connected" to another element or "directly connected" to another element, there are no intermediate elements. Similarly, other words used to describe the relationship between elements (eg, "between" and "immediately between", "adjacent" and "immediately adjoining", etc.) should be interpreted in a similar way.

[053] Используемая здесь терминология предназначена лишь для описания конкретных иллюстративных реализаций и не предназначена для установления ограничений настоящей технологии. Использование в документе терминов в единственном числе также подразумевает их использование во множественном числе, если контекст явно не указывает на иное. Кроме того, должно быть понятно, что использование в этом описании терминов «содержит» и/или «содержащий» определяет наличие указанных свойств, структур, шагов, операций, элементов и/или составных частей, но не исключает наличия или добавления одного или нескольких других свойств, структур, шагов, операций, элементов, составных частей и/или их групп.[053] The terminology used here is only intended to describe specific illustrative implementations and is not intended to limit the present technology. The use of terms in the singular in the document also implies their use in the plural, unless the context clearly indicates otherwise. In addition, it should be understood that the use in this description of the terms "comprises" and/or "comprising" defines the presence of the specified properties, structures, steps, operations, elements and/or components, but does not exclude the presence or addition of one or more others. properties, structures, steps, operations, elements, components and/or their groups.

[054] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор», могут быть реализованы с применением специализированных аппаратных средств, а также аппаратных средств, способных выполнять программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. В некоторых вариантах осуществления настоящей технологии процессор может быть процессором общего назначения, например, центральным процессором (CPU, Central Processing Unit), или процессором, предназначенным для определенной цели, например, цифровым сигнальным процессором (DSP, Digital Signal Processor). Кроме того, явное использование термина «процессор» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и энергонезависимое ЗУ, не ограничиваясь ими. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.[054] The functions of the various elements shown in the drawings, including any functional block designated as "processor", can be implemented using dedicated hardware, as well as hardware capable of executing software. If a processor is used, these functions may be performed by a single dedicated processor, a single shared processor, or multiple individual processors, some of which may be shared. In some embodiments of the present technology, the processor may be a general purpose processor, such as a central processing unit (CPU), or a processor dedicated to a specific purpose, such as a digital signal processor (DSP, Digital Signal Processor). In addition, explicit use of the term "processor" should not be construed as referring solely to hardware capable of executing software, and may refer to an application specific integrated circuit (ASIC), field programmable gate array (FPGA), software ROM, RAM, and non-volatile memory, but not limited to. Other general purpose and/or custom hardware may also be contemplated.

[055] Программные модули или просто модули либо блоки, реализация которых предполагается в виде программных средств, могут быть представлены здесь в виде любого сочетания элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми. Кроме того, должно быть понятно, что модуль может включать в себя, например, логические средства компьютерной программы, команды компьютерной программы, программное обеспечение, стек, микропрограммное обеспечение, аппаратные схемотехнические решения или их сочетание, которые обеспечивает требуемые возможности, но не ограничиваясь ими.[055] Software modules, or simply modules or blocks that are intended to be implemented in software, may be represented here as any combination of flowchart elements or other elements that indicate the steps of a process and/or contain a textual description. Such modules may be implemented in hardware, as shown or implied. In addition, it should be understood that a module may include, for example, computer program logic, computer program instructions, software, stack, firmware, hardware circuitry, or a combination thereof that provides the desired capabilities, but is not limited to them.

[056] В контексте данного описания термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных или компьютерных аппаратных средств для хранения этих данных, их применения или обеспечения их использования иным способом. База данных может располагаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо база данных может располагаться в отдельных аппаратных средствах, таких как специализированный сервер или множество серверов.[056] In the context of this description, the term "database" means any structured set of data, regardless of its specific structure, database management software, or computer hardware for storing this data, using it, or otherwise providing its use. The database may reside on the same hardware as the process for storing or using the information stored in the database, or the database may reside on separate hardware such as a dedicated server or multiple servers.

[057] Настоящая технология может быть реализована как система, способ и/или компьютерный программный продукт. Компьютерный программный продукт может включать в себя машиночитаемый носитель (или носители) данных, хранящий машиночитаемые программные команды, при исполнении которых процессором реализуются аспекты описанной технологии. Машиночитаемый носитель данных может быть, например, электронным запоминающим устройством, магнитным запоминающим устройством, оптическим запоминающим устройством, электромагнитным запоминающим устройством, полупроводниковым запоминающим устройством или любой подходящей их комбинацией. Неполный перечень других примеров машиночитаемых носителей данных включает в себя портативный компьютерный диск, жесткий диск, оперативную память (RAM), постоянную память (ROM), флэш-память, оптический диск, USB-память (memory stick), гибкий диск, носитель с механическим или визуальным кодированием (например, перфокарту или штрих-код) и/или любое их сочетание. В данном описании под машиночитаемым носителем данных подразумевается машиночитаемый носитель для долговременного хранения данных. К этой категории не относятся временно существующие сигналы, такие как радиоволны или другие свободно распространяющиеся электромагнитные волны, электромагнитные волны, распространяющиеся в волноводе или другой передающей среде (например, световые импульсы, распространяющиеся в оптоволоконном кабеле), или электрические сигналы, передаваемые по проводам.[057] The present technology may be implemented as a system, method, and/or computer program product. The computer program product may include a computer-readable storage medium (or storage mediums) storing computer-readable program instructions that, when executed by a processor, implement aspects of the described technology. The computer-readable storage medium may be, for example, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of other examples of computer-readable storage media includes portable computer disk, hard disk drive, random access memory (RAM), read only memory (ROM), flash memory, optical disk, USB memory stick, floppy disk, mechanical storage media. or visual coding (eg punched card or barcode) and/or any combination thereof. In this description, a computer-readable storage medium refers to a computer-readable medium for long-term storage of data. This category does not include transient signals such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating in a waveguide or other transmission medium (for example, light pulses propagating in an optical fiber cable), or electrical signals transmitted over wires.

[058] Должно быть понятно, что машиночитаемые программные команды могут быть загружены в соответствующие вычислительные или обрабатывающие устройства с машиночитаемого носителя данных либо во внешний компьютер или во внешнее запоминающее устройство по сети, например, по сети Интернет, локальной сети, глобальной сети и/или беспроводной сети. Сетевой интерфейс в вычислительном или обрабатывающем устройстве способен принимать машиночитаемые программные команды по сети и пересылать их для хранения на машиночитаемом носителе данных в соответствующем вычислительном или обрабатывающем устройстве.[058] It should be understood that computer-readable program instructions can be downloaded to appropriate computing or processing devices from a computer-readable storage medium or to an external computer or external storage device over a network, for example, over the Internet, a local area network, a wide area network and / or wireless network. A network interface in a computing or processing device is capable of receiving computer-readable program instructions over a network and forwarding them for storage on a computer-readable storage medium in a suitable computing or processing device.

[059] Машиночитаемые программные команды для выполнения действий согласно настоящему изобретению могут быть командами ассемблера, машинными командами, командами микропрограммного обеспечения, данными конфигурации для интегральных схем, а также исходным кодом или объектным кодом, написанным на одном или нескольких языках программирования в любом сочетании. Машиночитаемые программные команды могут выполняться полностью на компьютере пользователя, частично на компьютере пользователя, как автономный пакет программного обеспечения, частично на компьютере пользователя и частично на удаленном компьютере или полностью на удаленном компьютере или сервере. В последнем случае удаленный компьютер может быть подключен к компьютеру пользователя по сети любого вида.[059] Machine-readable program instructions for performing the actions of the present invention may be assembly language instructions, machine instructions, firmware instructions, configuration data for integrated circuits, and source code or object code written in any combination of one or more programming languages. The machine-readable program instructions may be executed entirely on the user's computer, partially on the user's computer as a stand-alone software package, partially on the user's computer, and partially on a remote computer, or entirely on a remote computer or server. In the latter case, the remote computer can be connected to the user's computer over any kind of network.

[060] Описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть понятно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих принципы настоящей технологии. Также должно быть понятно, что любые функциональные схемы, структурные схемы, диаграммы переходов состояний, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены в машиночитаемых программных командах. Эти машиночитаемые программные команды могут быть направлены процессору или другому программируемому устройству обработки данных для формирования механизма, в котором эти команды исполняются с помощью процессора компьютера или другого программируемого устройства обработки данных и обеспечивают средства для реализации функций или действий, указанных на функциональной схеме и/или в блоке или в нескольких блоках структурной схемы. Эти машиночитаемые программные команды также могут храниться на машиночитаемом носителе данных, который позволяет управлять компьютером, программируемым устройством обработки данных и/или другими устройствами для обеспечения их функционирования таким образом, чтобы машиночитаемый носитель данных с хранящимися на нем командами представлял собой изделие, содержащее команды, реализующие аспекты функций или действий, определенных на функциональных схемах, структурных схемах, схемах переходов состояний, в псевдокоде и т.п.[060] The description of principles, aspects, and embodiments of the present technology, as well as their specific examples, are intended to cover their structural and functional equivalents, whether they are currently known or will be developed in the future. For example, those skilled in the art will appreciate that any block diagrams described herein correspond to conceptual representations of illustrative circuit diagrams that implement the principles of the present technology. It should also be understood that any functional diagrams, block diagrams, state transition diagrams, pseudocodes, and the like. correspond to various processes that can be represented in machine-readable program instructions. These machine-readable program instructions may be sent to a processor or other programmable data processing device to form a mechanism in which these instructions are executed by a computer processor or other programmable data processing device and provide a means to implement the functions or actions indicated in the block diagram and / or in block or in several blocks of the block diagram. These computer-readable program instructions may also be stored on a computer-readable storage medium that allows you to control a computer, a programmable data processing device and/or other devices to ensure their operation in such a way that the computer-readable storage medium with the instructions stored thereon is an article containing instructions that implement aspects of functions or actions defined in function diagrams, block diagrams, state transition diagrams, pseudocode, and the like.

[061] Машиночитаемые программные команды также могут быть загружены в компьютер, другое программируемое устройство обработки данных или другие устройства, чтобы инициировать выполнение ряда рабочих шагов на компьютере, другом программируемом устройстве или других устройствах для формирования компьютеризированного процесса, в котором команды, выполняемые на компьютере, другом программируемом устройстве или другом устройстве, реализуют функции или действия, определенные на функциональных схемах, структурных схемах, схемах переходов состояний, в псевдокоде и т.п.[061] Machine-readable program instructions may also be downloaded to a computer, other programmable processing device, or other devices to initiate a series of operating steps on the computer, other programmable device, or other devices to form a computerized process in which instructions executed on the computer other programmable device or other device, implement functions or actions defined in function diagrams, block diagrams, state transition diagrams, pseudocode, and the like.

[062] В некоторых альтернативных вариантах осуществления изобретения функции, указанные на функциональных схемах, структурных схемах, схемах переходов состояний, псевдокоде и т.п., могут выполняться не в том порядке, в котором они указаны на чертежах. Например, два блока, показанные на функциональной схеме последовательно, в действительности могут выполняться по существу параллельно, а иногда эти блоки могут выполняться в обратном порядке, в зависимости от реализуемых функций. Также следует отметить, что каждая из функций, указанных на чертежах, и комбинации таких функций могут быть реализованы специализированными аппаратными системами, выполняющими указанные функции или действия, либо сочетаниями специализированных аппаратных средств и компьютерных команд.[062] In some alternative embodiments of the invention, the functions indicated in the functional diagrams, block diagrams, state transition diagrams, pseudocode, and the like, may not be performed in the order in which they are indicated in the drawings. For example, two blocks shown in a block diagram in series may actually be executed in essentially parallel, and sometimes these blocks may be executed in reverse order, depending on the functions being implemented. It should also be noted that each of the functions indicated in the drawings, and combinations of such functions, may be implemented by specialized hardware systems that perform the indicated functions or actions, or by combinations of specialized hardware and computer instructions.

[063] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящего изобретения.[063] In the following, in view of the foregoing principles, some non-limiting examples illustrating various embodiments of aspects of the present invention are discussed.

Компьютерная системаcomputer system

[064] На фиг. 1 представлена компьютерная система 100. Компьютерная система 100 может быть многопользовательским компьютером, однопользовательским компьютером, портативным компьютером, планшетным компьютером, смартфоном, встроенной системой управления или любой другой компьютерной системой, известной в настоящее время или разработанной впоследствии. Кроме того, следует понимать, что некоторые или все элементы компьютерной системы 100 могут быть виртуализированными и/или облачными. Как показано на фиг. 1, компьютерная система 100 содержит один или несколько процессоров 102, память 110, интерфейс 120 хранилища и сетевой интерфейс 140. Эти элементы системы связаны между собой шиной 150, которая может включать в себя одну или несколько внутренних и/или внешних шин (не показаны), например, шину PCI, шину USB, шину IEEE 1394 «Firewire», шину SCSI, шину Serial-ATA и т.д., с которыми электронным образом связаны различные аппаратные элементы.[064] In FIG. 1 depicts computer system 100. Computer system 100 can be a multi-user computer, single-user computer, laptop computer, tablet computer, smart phone, embedded control system, or any other computer system now known or subsequently developed. In addition, it should be understood that some or all of the elements of computer system 100 may be virtualized and/or cloud-based. As shown in FIG. 1, computer system 100 includes one or more processors 102, memory 110, storage interface 120, and network interface 140. These system elements are interconnected by bus 150, which may include one or more internal and/or external buses (not shown) such as a PCI bus, a USB bus, an IEEE 1394 "Firewire" bus, a SCSI bus, a Serial-ATA bus, etc., to which various hardware elements are electronically coupled.

[065] Память 110, которая может быть памятью с произвольным доступом или памятью любого другого вида, может содержать данные 112, операционную систему 114 и программу 116. Данные 112 могут быть любыми данными, представляющими собой входную или выходную информацию любой программы в компьютерной системе 100. Операционная система 114 представляет собой, например, операционную систему Microsoft Windows или Linux. Программа 116 может быть любой программой или набором программ с программными командами, которые могут выполняться процессором для управления действиями, выполняемыми компьютерной системой 100.[065] Memory 110, which may be random access memory or any other form of memory, may contain data 112, an operating system 114, and program 116. Data 112 may be any data that represents the input or output of any program on computer system 100 The operating system 114 is, for example, a Microsoft Windows or Linux operating system. Program 116 may be any program or set of programs with program instructions that can be executed by a processor to control the actions performed by computer system 100.

[066] Интерфейс 120 хранилища используется для подключения хранилищ данных, например, хранилища 125, к компьютерной системе 100. Одним типом хранилища 125 является твердотельный накопитель, в котором для долговременного хранения данных может использоваться узел на основе интегральных схем. Другим типом хранилища 125 является жесткий диск, например, электромеханическое устройство, в котором для хранения и извлечения цифровых данных используется магнитное запоминающее устройство. Подобным образом хранилище 125 может представлять собой оптический накопитель, устройство считывания карт памяти, способное считывать информацию со съемной карты памяти, например, с SD-карты, или устройство флэш-памяти, которое может быть подключено к компьютерной системе 100, например, по универсальной последовательной шине (USB, Universal Serial Bus).[066] Storage interface 120 is used to connect data stores, such as storage 125, to computer system 100. One type of storage 125 is a solid state drive that can use an integrated circuit node for long-term storage of data. Another type of storage 125 is a hard drive, such as an electromechanical device that uses a magnetic storage device to store and retrieve digital data. Similarly, storage 125 may be an optical drive, a memory card reader capable of reading information from a removable memory card, such as an SD card, or a flash memory device that can be connected to computer system 100, such as via Universal Serial bus (USB, Universal Serial Bus).

[067] В некоторых вариантах осуществления изобретения компьютерная система 100 может использовать хорошо известные методы виртуальной памяти, позволяющие программам компьютерной системы 100 вести себя так, как если бы они имели доступ к большому непрерывному адресному пространству, а не к пространству множества запоминающих устройств меньшего размера, таких как память 110 и хранилище 125. Поэтому, несмотря на то, что данные 112, операционная система 114 и программы 116 показаны как постоянно находящиеся в памяти 110, специалистам в данной области техники должно быть понятно, что эти элементы не обязательно полностью находятся в памяти 110 одновременно.[067] In some embodiments, computer system 100 may use well-known virtual memory techniques to allow programs of computer system 100 to behave as if they were accessing a large, contiguous address space, rather than the space of many smaller storage devices, such as memory 110 and storage 125. Therefore, while data 112, operating system 114, and programs 116 are shown as residing in memory 110, those skilled in the art will appreciate that these elements do not necessarily reside entirely in memory. 110 at the same time.

[068] Процессоры 102 могут содержать один или несколько микропроцессоров и/или других интегральных схем. Процессоры 102 исполняют программные команды, хранящиеся в памяти 110. При запуске компьютерной системы 100 процессоры 102 сначала могут выполнять процедуру загрузки и/или исполнять программные команды, составляющие операционную систему 114.[068] Processors 102 may include one or more microprocessors and/or other integrated circuits. Processors 102 execute software instructions stored in memory 110. Upon startup of computer system 100, processors 102 may first perform a boot procedure and/or execute software instructions that make up operating system 114.

[069] Сетевой интерфейс 140 используется для подключения компьютерной системы 100 к другим компьютерным системам или сетевым устройствам (не показаны) по сети 160. Сетевой интерфейс 140 может содержать сочетание аппаратного и программного обеспечения, которая позволяет осуществлять информационный обмен в сети 160. В некоторых вариантах осуществления изобретения сетевой интерфейс 140 может быть беспроводным сетевым интерфейсом. Программное обеспечение в сетевом интерфейсе 140 может включать в себя программное обеспечение, использующее один или несколько сетевых протоколов для информационного обмена по сети 160. Например, одним из этих сетевых протоколов может быть протокол управления передачей / Интернет-протокол TCP/IP (Transmission Control Protocol/Internet Protocol).[069] Network interface 140 is used to connect computer system 100 to other computer systems or network devices (not shown) over network 160. Network interface 140 may include a combination of hardware and software that allows information to be exchanged on network 160. In some embodiments, embodiment of the invention, the network interface 140 may be a wireless network interface. The software on the network interface 140 may include software that uses one or more network protocols to communicate over the network 160. For example, one of these network protocols may be the Transmission Control Protocol/TCP/IP Internet protocol).

[070] Должно быть понятно, что компьютерная система 100 является лишь примером и что описанная технология может использоваться с компьютерными системами или другими компьютерными устройствами разной конфигурации.[070] It should be understood that computer system 100 is only an example and that the technology described may be used with computer systems or other computer devices of various configurations.

Сетевая компьютерная средаnetworked computing environment

[071] На фиг. 2 показана сетевая компьютерная среда 200, пригодная для использования с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии. Сетевая компьютерная среда 200 содержит компьютерное устройство 210, связанное с роботизированным транспортным средством 220. Среда 200 также содержит один или несколько серверов 235, соединенных с компьютерным устройством 210 по сети 240 связи (например, по сети Интернет и т.п.).[071] In FIG. 2 shows a networked computing environment 200 suitable for use with certain non-limiting embodiments of the present technology. The networked computing environment 200 includes a computing device 210 associated with the robotic vehicle 220. The environment 200 also includes one or more servers 235 connected to the computing device 210 via a communication network 240 (eg, the Internet, etc.).

[072] В по меньшей мере некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии компьютерное устройство 210 связано с системами управления роботизированного транспортного средства 220. Компьютерное устройство 210 может управлять различными рабочими системами роботизированного транспортного средства 220, в том числе, системой управления двигателем, системой рулевого управления, а также системами сигнализации и освещения, но не ограничиваясь ими.[072] In at least some non-limiting embodiments of the present technology, the computer device 210 is associated with the control systems of the robotic vehicle 220. The computer device 210 can control various operating systems of the robotic vehicle 220, including the engine control system, the system steering, as well as signaling and lighting systems, but not limited to them.

[073] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сетевая компьютерная среда 200 может содержать спутник системы GPS (не показан), передающий сигнал GPS компьютерному устройству 210 и/или принимающий сигнал от него. Должно быть понятно, что настоящая технология не ограничивается системой GPS и может использовать технологию определения местоположения, отличную от системы GPS. Следует отметить, что спутник GPS может вовсе отсутствовать.[073] In some non-limiting embodiments of the present technology, the networked computing environment 200 may include a GPS satellite (not shown) transmitting a GPS signal to and/or receiving a signal from the computing device 210. It should be understood that the present technology is not limited to the GPS system and may use a location technology other than the GPS system. It should be noted that the GPS satellite may not be available at all.

[074] Роботизированное транспортное средство 220, с которым связано компьютерное устройство 210, может представлять собой любое роботизированное транспортное средство для осуществления доставки, применения на складе и т.п. Несмотря на то, что роботизированное транспортное средство 220 изображено как наземное транспортное средство, оно может быть иным в других не имеющих ограничительного характера вариантах осуществления настоящей технологии. Например, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии роботизированное транспортное средство 220 может быть летательным аппаратом, таким как летающий дрон, или водным транспортным средством.[074] The robotic vehicle 220 with which the computing device 210 is associated may be any robotic vehicle for delivery, warehouse use, and the like. Although the robotic vehicle 220 is depicted as a ground vehicle, it may be different in other non-limiting embodiments of the present technology. For example, in some non-limiting embodiments of the present technology, the robotic vehicle 220 may be an aircraft, such as a flying drone, or a waterborne vehicle.

[075] Роботизированное транспортное средство 220 может быть полностью автономным транспортным средством или частично автономным транспортным средством, в котором некоторыми аспектами работы транспортного средства дистанционно управляет человек-оператор, а остальные аспекты автоматизированы. В одном не имеющем ограничительного характера примере роботизированное транспортное средство 220 может работать автономно до тех пор, пока оно не столкнется с неожиданной или необычной ситуацией, с которой оно не в состоянии справиться автономно, и тогда оно может связаться с удаленным оператором-человеком. Следует отметить, что не накладывается каких-либо ограничений на конкретные параметры роботизированного транспортного средства 200, такие как производитель, модель, год выпуска, масса, размеры, распределение массы, площадь поверхности, высота, тип электродвигателя, тип шин (если используются шины), система электропитания и другие характеристики или параметры транспортного средства.[075] The robotic vehicle 220 may be a fully autonomous vehicle or a partially autonomous vehicle in which some aspects of the vehicle's operation are remotely controlled by a human operator and other aspects are automated. In one non-limiting example, the robotic vehicle 220 may operate autonomously until it encounters an unexpected or unusual situation that it cannot handle autonomously, at which time it may communicate with a remote human operator. It should be noted that no restrictions are imposed on specific parameters of the robotic vehicle 200, such as manufacturer, model, year of manufacture, weight, dimensions, weight distribution, surface area, height, motor type, tire type (if tires are used), power supply system and other characteristics or parameters of the vehicle.

[076] Согласно настоящей технологии, на реализацию компьютерного устройства 210 также не накладывается каких-либо особых ограничений. Например, компьютерное устройство 210 может быть реализовано как блок управления двигателем транспортного средства, центральный процессор транспортного средства, компьютерная система, встроенная в роботизированное транспортное средство 220, подключаемый модуль управления и т.п. Следует отметить, что компьютерное устройство 210 может быть постоянным образом связано или не связано с роботизированным транспортным средством 220.[076] According to the present technology, the implementation of the computing device 210 is also not subject to any particular restrictions. For example, the computer device 210 may be implemented as a vehicle engine control unit, a vehicle CPU, a computer system embedded in the robotic vehicle 220, a plug-in control module, and the like. It should be noted that the computing device 210 may or may not be permanently associated with the robotic vehicle 220.

[077] Компьютерное устройство 210 может содержать некоторые или все элементы компьютерной системы 100, показанной на фиг. 1, в зависимости от конкретной реализации. В некоторых вариантах осуществления изобретения компьютерное устройство 210 представляет собой бортовое компьютерное устройство и содержит процессоры 102, хранилище 125 и память 110. Иными словами, компьютерное устройство 210 содержит аппаратные средства и/или программное обеспечение и/или микропрограммное обеспечение либо их сочетание для обработки данных, как более подробно описано ниже.[077] Computer device 210 may include some or all of the elements of computer system 100 shown in FIG. 1, depending on the specific implementation. In some embodiments, computing device 210 is an on-board computing device and includes processors 102, storage 125, and memory 110. In other words, computing device 210 includes hardware and/or software and/or firmware, or a combination thereof, for processing data, as described in more detail below.

[078] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи представляет собой сеть Интернет. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи может быть реализована как любая подходящая локальная сеть (LAN, Local Area Network), глобальная сеть (WAN, Wide Area Network), частная сеть связи и т.п. Должно быть понятно, что варианты осуществления сети 240 связи приведены лишь в иллюстративных целях. Между компьютерным устройством 210 и сетью 240 связи предусмотрена линия связи (отдельно не обозначена), реализация которой зависит, помимо прочего, от реализации компьютерного устройства 210. Лишь в качестве примера, не имеющего ограничительного характера, линия связи может быть реализована в виде беспроводной линии связи. Примеры беспроводных линий связи могут включать в себя канал сети связи 3G, канал сети связи 4G, но не ограничиваются ими. В сети 240 связи также может использоваться беспроводное соединение с серверами 235.[078] In some non-limiting embodiments of the present technology, communication network 240 is the Internet. In other non-limiting embodiments of the present technology, communications network 240 may be implemented as any suitable local area network (LAN, Local Area Network), wide area network (WAN, Wide Area Network), private communications network, and the like. It should be understood that the embodiments of the communications network 240 are for illustrative purposes only. Between the computing device 210 and the communication network 240, a communication link (not specifically indicated) is provided, the implementation of which depends, among other things, on the implementation of the computing device 210. By way of a non-limiting example only, the communication link may be implemented as a wireless communication link. . Examples of wireless links may include, but are not limited to, a 3G network link, a 4G network link. Communication network 240 may also use a wireless connection to servers 235.

[079] В некоторых вариантах осуществления настоящей технологии серверы 235 реализованы как компьютерные серверы и могут содержать некоторые или все элементы компьютерной системы 100, показанной на фиг. 1. В одном не имеющем ограничительного характера примере серверы 235 реализованы в виде серверов Dell™ PowerEdge™, работающих под управлением операционной системы Microsoft™ Windows Server™, но они также могут быть реализованы с использованием любых других подходящих аппаратных средств, программного обеспечения и/или микропрограммного обеспечения либо их сочетания.[079] In some embodiments of the present technology, servers 235 are implemented as computer servers and may contain some or all of the elements of the computer system 100 shown in FIG. 1. In one non-limiting example, the servers 235 are implemented as Dell™ PowerEdge™ servers running the Microsoft™ Windows Server™ operating system, but they may also be implemented using any other suitable hardware, software, and/or firmware or a combination thereof.

[080] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессоры 102 компьютерного устройства 210 могут быть связаны с серверами 235 для получения одного или нескольких обновлений. Такие обновления могут включать в себя, помимо прочего, обновления программного обеспечения, обновления карт, обновления маршрутов, обновления геозон, обновления погодных данных и т.п. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии компьютерное устройство 210 также может отправлять серверу 235 некоторые рабочие данные, такие как пройденные маршруты, данные о дорожном движении, рабочие характеристики и т.п. Некоторые или все данные, передаваемые между роботизированным транспортным средством 220 и серверами 235, могут быть зашифрованы и/или обезличены.[080] In some non-limiting embodiments of the present technology, processors 102 of computing device 210 may be linked to servers 235 to receive one or more updates. Such updates may include, but are not limited to, software updates, map updates, route updates, geofencing updates, weather data updates, and the like. In some non-limiting embodiments of the present technology, computing device 210 may also send some operational data, such as routes travelled, traffic data, performance data, and the like, to server 235. Some or all of the data transmitted between robotic vehicle 220 and servers 235 may be encrypted and/or anonymised.

[081] Следует отметить, что компьютерное устройство 210 может использовать множество датчиков и систем для сбора информации об окружающем пространстве 250 роботизированного транспортного средства 220. Как показано на фиг. 2, роботизированное транспортное средство 220 может быть оборудовано множеством систем 280 датчиков. Следует отметить, что для сбора данных различного вида об окружающем пространстве 250 роботизированного транспортного средства 220 могут использоваться различные системы датчиков из множества систем 280 датчиков.[081] It should be noted that the computing device 210 may use a variety of sensors and systems to collect information about the environment 250 of the robotic vehicle 220. As shown in FIG. 2, robotic vehicle 220 may be equipped with multiple sensor systems 280. It should be noted that various sensor systems from a plurality of sensor systems 280 may be used to collect various types of data about the environment 250 of the robotic vehicle 220.

[082] В одном примере множество систем 280 датчиков может содержать различные оптические системы, в том числе одну или несколько систем датчиков типа «камера», установленных на роботизированном транспортном средстве 220 и подключенных к процессорам 102 компьютерного устройства 210. В целом одна или несколько систем датчиков типа «камера» может собирать данные изображения о различных частях окружающего пространства 250 роботизированного транспортного средства 220. В некоторых случаях данные изображения, предоставленные одной или несколькими системами датчиков типа «камера», могут использоваться компьютерным устройством 210 для выполнения процедур обнаружения объекта. Например, компьютерное устройство 210 может передавать данные изображения, предоставленные одной или несколькими системами датчиков типа «камера», в нейронную сеть обнаружения объектов (ODNN), обученную локализации и классификации потенциальных объектов в окружающем пространстве 250 роботизированного транспортного средства 220.[082] In one example, multiple sensor systems 280 may comprise various optical systems, including one or more camera-type sensor systems mounted on robotic vehicle 220 and connected to processors 102 of computing device 210. In general, one or more systems The camera sensors may collect image data about various parts of the environment 250 of the robotic vehicle 220. In some cases, image data provided by one or more camera sensor systems may be used by the computing device 210 to perform object detection procedures. For example, computing device 210 may transmit image data provided by one or more camera-type sensor systems to an object detection neural network (ODNN) trained to locate and classify potential objects in the environment 250 of robotic vehicle 220.

[083] В по меньшей мере некоторых вариантах осуществления изобретения сеть ODNN может быть обучена способом, известным из аспектов, раскрытых в патентной заявке RU2021108149 «Способы и электронные устройства обнаружения объектов в окружающем пространстве самоуправляемого автомобиля» этого же заявителя, поданной 26.03.2021, содержание которой полностью включено в настоящий документ посредством ссылки.[083] In at least some embodiments of the invention, the ODNN network can be trained in a manner known from the aspects disclosed in patent application RU2021108149 "Methods and electronic devices for detecting objects in the surrounding space of a self-driving car" of the same applicant, filed on 03/26/2021, content which is incorporated herein by reference in its entirety.

[084] В другом примере множество систем 280 датчиков может содержать одну или несколько систем датчиков радиолокационного типа, установленных на роботизированном транспортном средстве 220 и подключенных к процессорам 102. В целом, одна или несколько систем датчиков радиолокационного типа может осуществлять сбор данных о различных частях окружающего пространства 250 роботизированного транспортного средства 220 с применением радиоволн. Например, одна или несколько систем датчиков радиолокационного типа может собирать радиолокационные данные о потенциальных объектах в окружающем пространстве 250 роботизированного транспортного средства 220 и эти данные могут относиться к расстоянию от системы датчиков радиолокационного типа до объектов, к ориентации объектов, к скорости объектов и т.п.[084] In another example, the plurality of sensor systems 280 may include one or more radar-type sensor systems mounted on the robotic vehicle 220 and connected to the processors 102. In general, one or more radar-type sensor systems may collect data about various parts of the environment. space 250 of the robotic vehicle 220 using radio waves. For example, one or more radar-type sensor systems may collect radar data about potential objects in the environment 250 of the robotic vehicle 220, and the data may relate to the distance from the radar-type sensor system to objects, the orientation of objects, the speed of objects, and the like. .

[085] В еще одном примере множество систем 280 датчиков может содержать одну или несколько лидарных систем, установленных на роботизированном транспортном средстве 220 и связанных с процессорами 102. В целом лидарная система способна собирать данные об окружающем пространстве 250 роботизированного транспортного средства 220, например, для построения многомерной карты объектов в окружающем пространстве 250 роботизированного транспортного средства 220. Лидарная система может быть установлена на роботизированном транспортном средстве 220 в различных его местах и/или в различных вариантах исполнения для сбора информации об окружающем пространстве 250 роботизированного транспортного средства 220.[085] In yet another example, a plurality of sensor systems 280 may include one or more lidar systems mounted on robotic vehicle 220 and associated with processors 102. In general, the lidar system is capable of collecting data about the environment 250 of robotic vehicle 220, for example, to building a multidimensional map of objects in the environment 250 of the robotic vehicle 220. The lidar system can be installed on the robotic vehicle 220 in various locations and/or in various versions to collect information about the environment 250 of the robotic vehicle 220.

[086] В контексте настоящей технологии компьютерное устройство 210 способно обнаруживать один или нескольких объектов в окружающем пространстве 250 роботизированного транспортного средства 220 на основе данных, полученных от одной или нескольких систем камер и от одной или нескольких лидарных систем. Например, компьютерное устройство 210, способное обнаруживать объект в окружающем пространстве 250 роботизированного транспортного средства 220, может идентифицировать лидарные данные и данные камеры, связанные с объектом, формировать «образ», характеризующий особенности объекта, и обнаруживать объект, формируя ограничивающую рамку для объекта.[086] In the context of the present technology, computing device 210 is capable of detecting one or more objects in the environment 250 of robotic vehicle 220 based on data received from one or more camera systems and one or more lidar systems. For example, a computing device 210 capable of detecting an object in the environment 250 of the robotic vehicle 220 can identify lidar and camera data associated with the object, form a "pattern" characterizing the features of the object, and detect the object by forming a bounding box for the object.

Работа роботизированного транспортного средстваOperation of the robotic vehicle

[087] Варианты осуществления описанной технологии обеспечивают навигацию или планирование движений при работе роботизированного транспортного средства в окружающем пространстве в присутствии как статических, так и динамических (т.е. движущихся) объектов. В контексте настоящего описания рассматривается небольшое наземное роботизированное транспортное средство, предназначенное для доставки товаров, пакетов, ящиков или других посылок в городской или пригородной зоне. Исходя из характера выполняемых задач, такое роботизированное транспортное средство обычно движется по тротуарам и пешеходным дорожкам. Поэтому модуль планирования движений в транспортном средстве должен учитывать поведение пешеходов, движущихся параллельно его пути или пересекающих его.[087] Embodiments of the described technology provide navigation or motion planning when operating a robotic vehicle in the environment in the presence of both static and dynamic (ie, moving) objects. In the context of the present description, a small ground robotic vehicle is considered, designed to deliver goods, packages, boxes or other parcels in an urban or suburban area. Based on the nature of the tasks it performs, such a robotic vehicle typically travels on sidewalks and footpaths. Therefore, the motion planning module in the vehicle must take into account the behavior of pedestrians moving parallel to its path or crossing it.

[088] Кроме того, роботизированное транспортное средство может пересекать дороги. При движении автомобилей и других транспортных средств по дорогам в городских и пригородных зонах малоразмерные роботизированные транспортные средства могут быть незаметными, что может приводить к столкновениям, в результате которых роботизированное транспортное средство и его груз могут быть повреждены или уничтожены. Поэтому модуль планирования движений такого роботизированного транспортного средства должен учитывать наличие объектов на проезжей части, в том числе, движущихся и припаркованных автомобилей и других транспортных средств.[088] In addition, the robotic vehicle can cross roads. When driving cars and other vehicles on roads in urban and suburban areas, small robotic vehicles may be invisible, which can lead to collisions, as a result of which the robotic vehicle and its cargo can be damaged or destroyed. Therefore, the movement planning module of such a robotic vehicle must take into account the presence of objects on the roadway, including moving and parked cars and other vehicles.

[089] Одним из примеров задачи для средства доставки может быть доставка посылки из пункта отправления в пункт назначения к определенному времени. Поэтому модуль планирования движений должен учитывать скорость роботизированного транспортного средства и определять, обеспечивается ли надлежащее продвижение к пункту назначения. Эти соображения особенно актуальны, когда для задачи доставки критически важным является соблюдение времени доставки или когда пункт назначения находится далеко.[089] One example of a task for a delivery vehicle would be to deliver a package from an origin to a destination by a specific time. Therefore, the motion planning module must take into account the speed of the robotic vehicle and determine whether proper progress is being made towards the destination. These considerations are especially relevant when meeting delivery times is critical to the delivery task, or when the destination is far away.

[090] В приведенном в иллюстративных целях примере роботизированного транспортного средства используются лидарные и другие датчики, расположенные с разных сторон транспортного средства. Компьютерное устройство, связанное с роботизированным транспортным средством, получает данные от датчиков и формирует трехмерную карту точек (облако точек). Эта трехмерная карта точек может использоваться роботизированным транспортным средством, например, для определения расстояния до объектов в окружающем пространстве и для определения траектории и скорости.[090] For illustrative purposes, an example of a robotic vehicle uses lidar and other sensors located on different sides of the vehicle. The computer device associated with the robotic vehicle receives data from the sensors and generates a three-dimensional point map (point cloud). This 3D point map can be used by the robotic vehicle, for example, to determine the distance to objects in the environment and to determine the trajectory and speed.

[091] Предполагается, что роботизированное транспортное средство также может использовать трехмерную карту, предоставляемую ему серверами 235. Например, трехмерная карта окружающего пространства, в соответствии с которой должно работать роботизированное транспортное средство, может быть сформирована на серверах 235, после чего роботизированному транспортному средству может быть предоставлен удаленный доступ к ней. Дополнительно или в качестве альтернативы трехмерная карта окружающего пространства также может быть передана, по меньшей мере частично, роботизированному транспортному средству для локального хранения и локального доступа.[091] It is contemplated that the robotic vehicle may also use the 3D map provided to it by the servers 235. be given remote access to it. Additionally or alternatively, the 3D map of the environment can also be transferred, at least in part, to the robotic vehicle for local storage and local access.

[092] Следует отметить, что серверы 235 могут собирать информацию от одного или нескольких роботизированных транспортных средств (например, парка транспортных средств), на которых возложена задача картографирования окружающего пространства и формирования соответствующих трехмерных карт данной области. Например, одно или несколько роботизированных транспортных средств могут формировать трехмерную карту улицы, городского квартала, городского района, города и т.п. Информация от одного или нескольких роботизированных транспортных средств может собираться серверами 235 и объединяться на трехмерной карте, которая будет использоваться при работе роботизированного транспортного средства.[092] It should be noted that the servers 235 may collect information from one or more robotic vehicles (eg, a fleet of vehicles) tasked with mapping the surrounding space and generating corresponding three-dimensional maps of the area. For example, one or more robotic vehicles may generate a three-dimensional map of a street, a city block, an urban area, a city, or the like. Information from one or more robotic vehicles may be collected by servers 235 and combined into a 3D map to be used in operation of the robotic vehicle.

[093] Во время работы роботизированное транспортное средство может получать доступ к трехмерной карте своего окружающего пространства для выполнения навигационных задач в этом окружающем пространстве. В целом система координат трехмерной карты позволяет определять местоположение таких находящихся в этом пространстве объектов, как столбы, почтовые ящики, бордюры, дороги, здания, пожарные гидранты, дорожные ограждения, светофоры, пешеходные переходы, деревья, заборы, рекламные щиты, ориентиры и т.п.[093] During operation, the robotic vehicle can access a three-dimensional map of its surrounding space to perform navigation tasks in this surrounding space. In general, the coordinate system of a three-dimensional map allows you to determine the location of objects located in this space, such as poles, mailboxes, curbs, roads, buildings, fire hydrants, road barriers, traffic lights, pedestrian crossings, trees, fences, billboards, landmarks, etc. P.

[094] В частности, трехмерная карта содержит информацию, указывающую на положение объекта в системе координат трехмерной карты, а также может содержать информацию, указывающую на ориентацию этого объекта в системе координат трехмерной карты. Также можно сказать, что трехмерная карта может содержать информацию, указывающую на относительное положение и относительную ориентацию одного из пары объектов по отношению к другому из этой пары объектов.[094] In particular, the 3D map contains information indicative of the position of an object in the coordinate system of the 3D map, and may also contain information indicative of the orientation of the object in the coordinate system of the 3D map. It can also be said that the 3D map may contain information indicative of the relative position and relative orientation of one of a pair of objects with respect to another of the pair of objects.

[095] Следует отметить, что один или несколько объектов на трехмерной карте могут содержать естественные объекты окружающего пространства и искусственные объекты. В целом, к естественным объектам относятся реальные физические объекты, встречающиеся в окружающем пространстве, а к искусственным объектам относятся объекты, которые могут быть добавлены на трехмерную карту для решения навигационных задач роботизированного транспортного средства. Например, к числу искусственных объектов могут быть отнесены пути навигации, доступные области, недоступные области, зоны ожидания и т.п.[095] It should be noted that one or more objects on a three-dimensional map may contain natural objects of the surrounding space and artificial objects. In general, natural objects include real physical objects found in the surrounding space, and artificial objects include objects that can be added to a three-dimensional map to solve the navigation problems of a robotic vehicle. For example, artificial objects may include navigation paths, accessible areas, inaccessible areas, waiting areas, and the like.

[096] Предполагается, что искусственные объекты могут отображаться на трехмерной карте в отдельном «слое» трехмерной карты. Например, для отображения искусственных объектов в слое на трехмерной карте серверы 235 могут использовать систему координат, связанную с этим «слоем», содержащим искусственные объекты, и систему координат, связанную с трехмерной картой. Ниже более подробно описано, как некоторые из искусственных объектов могут использоваться роботизированным транспортным средством для навигации.[096] It is assumed that artificial objects can be displayed on a three-dimensional map in a separate "layer" of the three-dimensional map. For example, to display man-made objects in a layer on a 3D map, servers 235 may use the coordinate system associated with the man-made "layer" and the coordinate system associated with the 3D map. The following describes in more detail how some of the artificial objects may be used by the robotic vehicle for navigation.

[097] На фиг. 3 схематически представлен сценарий, в котором могут использоваться различные варианты осуществления рассматриваемой технологии. Представлен общий вид 300 сверху трехмерной карты, к которой имеет доступ мобильный робот 306.[097] FIG. 3 is a schematic representation of a scenario in which various embodiments of the technology under consideration may be used. Shows a top view 300 of a 3D map accessed by mobile robot 306.

[098] Трехмерная карта содержит естественные объекты, такие как дорога 301, пешеходный переход 302 и визуальный индикатор 303 движения. Кроме того, трехмерная карта содержит искусственные объекты, такие как зона 305 ожидания. Предполагается, что трехмерная карта содержит информацию, указывающую на положение визуального индикатора 303 движения и его ориентацию относительно зоны 305 ожидания. В частности, положение и ориентация визуального индикатора движения относительно зоны 305 ожидания позволяет определять световую проекцию 304, указывающую на то, как визуальный сигнал от визуального индикатора 303 движения распространяется в зоне 305 ожидания в трехмерном пространстве.[098] The three-dimensional map contains natural objects such as a road 301, a pedestrian crossing 302, and a visual indicator 303 of movement. In addition, the three-dimensional map contains man-made objects such as waiting area 305 . It is assumed that the three-dimensional map contains information indicating the position of the visual indicator of movement 303 and its orientation relative to the waiting area 305. In particular, the position and orientation of the visual motion indicator relative to the waiting area 305 allows a light projection 304 to be determined indicating how the visual signal from the visual motion indicator 303 propagates in the waiting area 305 in three-dimensional space.

[099] Пусть в данный момент времени мобильный робот 306 перемещается в окружающем пространстве с целью доставки товаров покупателю. На участке маршрута, по которому мобильный робот 306 доставляет товары, он должен пересечь пешеходный переход 302. При приближении к пешеходному переходу 302 мобильный робот 306 может проанализировать визуальный сигнал визуального индикатора 303 движения, чтобы определить, разрешено (например, горит зеленый свет) или запрещено (например, горит красный свет) пересекать пешеходный переход 302.[099] Suppose that at a given time, the mobile robot 306 moves in the surrounding space in order to deliver goods to the buyer. On the section of the route along which the mobile robot 306 delivers goods, it must cross the pedestrian crossing 302. When approaching the pedestrian crossing 302, the mobile robot 306 may analyze the visual signal of the visual indicator of movement 303 to determine whether it is allowed (for example, a green light is on) or prohibited (for example, a red light is on) cross the 302 crosswalk.

[0100] Мобильный робот 306 может перемещаться в зону 305 ожидания при разных обстоятельствах. В одном примере мобильный робот 306 может переместиться в зону 305 ожидания для пересечения пешеходного перехода 302, если это разрешает визуальный сигнал от визуального индикатора 303 движения. В другом примере мобильный робот 306 может переместиться в зону 305 ожидания для ожидания возможности пересечения пешеходного перехода 302, если в данный момент времени это запрещено визуальным индикатором 303 движения.[0100] The mobile robot 306 may move to the waiting area 305 under various circumstances. In one example, the mobile robot 306 may move to the waiting area 305 to cross the pedestrian crossing 302 if the visual signal from the visual motion indicator 303 allows it. In another example, the mobile robot 306 may move to the waiting area 305 to wait for the opportunity to cross the pedestrian crossing 302, if this is currently prohibited by the visual indicator 303 movement.

[0101] В некоторых вариантах осуществления настоящей технологии мобильный робот 306 может непрерывно отслеживать визуальный сигнал или «состояние» визуального индикатора 303 движения во время работы, чтобы определять, разрешено или запрещено в данный момент времени пересечение пешеходного перехода 302.[0101] In some embodiments of the present technology, the mobile robot 306 may continuously monitor the visual signal or "state" of the visual motion indicator 303 during operation to determine whether or not crossing the pedestrian crossing 302 is currently allowed or prohibited.

[0102] Следует отметить, что если визуальный индикатор 303 в данный момент времени запрещает переход, мобильный робот 306, также как и другие динамические объекты, может ожидать в зоне 305 ожидания, пока визуальный индикатор 303 движения не разрешит его. К таким динамическим объектам могут относиться пешеходы, ожидающие разрешения на пересечение пешеходного перехода 302. Разработчики настоящей технологии установили, что такие динамические объекты могут мешать мобильному роботу 306 непрерывно наблюдать за состоянием визуального индикатора 303 движения, закрывая визуальный индикатор 303 движения в поле обзора одного или нескольких датчиков камер мобильного робота 306, когда мобильный робот 306 находится в зоне 305 ожидания. Невозможность для мобильного робота 306 отслеживать состояние визуального индикатора 303 может быть нежелательной для работы мобильного робота 306 в окружающем пространстве.[0102] It should be noted that if the visual indicator 303 currently prohibits the transition, the mobile robot 306, as well as other dynamic objects, may wait in the waiting area 305 until the visual indicator 303 movement allows it. Such dynamic objects may include pedestrians waiting for permission to cross a pedestrian crossing 302. The developers of the present technology have found that such dynamic objects can interfere with the mobile robot 306 to continuously monitor the status of the visual motion indicator 303 by covering the visual motion indicator 303 in the field of view of one or more the camera sensors of the mobile robot 306 when the mobile robot 306 is in the waiting area 305 . The inability for the mobile robot 306 to monitor the status of the visual indicator 303 may be undesirable for the operation of the mobile robot 306 in the environment.

[0103] Поэтому разработчики настоящей технологии разработали способы решения этой проблемы и мобильных роботов, способных определять одно или несколько целевых положений в зоне 305 ожидания, в которую может перемещаться мобильный робот 306, чтобы иметь возможность непрерывно наблюдать за состоянием визуального индикатора 303 движения, не закрытого одним или несколькими динамическими объектами, расположенными в зоне ожидания.[0103] Therefore, the developers of the present technology have developed ways to solve this problem and mobile robots capable of determining one or more target positions in the waiting area 305, which the mobile robot 306 can move to be able to continuously monitor the state of the visual indicator of movement 303, not closed one or more dynamic objects located in the waiting area.

[0104] В по меньшей мере некоторых вариантах осуществления настоящей технологии предполагается, что определение одной или нескольких целевых позиций в зоне 305 ожидания также может выполняться с учетом статических объектов в дополнение к динамическим объектам или вместо них. Статические объекты, например почтовые ящики, столбы и/или рекламные щиты, также могут закрывать визуальный индикатор движения в поле обзора одного или нескольких датчиков камер мобильного робота 306, когда мобильный робот находится в зоне 305 ожидания.[0104] In at least some embodiments of the present technology, it is contemplated that the determination of one or more target positions in the holding area 305 may also be performed considering static objects in addition to or instead of dynamic objects. Static objects, such as mailboxes, poles, and/or billboards, may also obscure the visual indicator of movement within the field of view of one or more of the mobile robot 306's camera sensors when the mobile robot is in the waiting area 305.

[0105] Для этого мобильный робот 306 может определять, находится ли объект (или объекты) в зоне 305 ожидания. Например, мобильный робот 306 может обнаруживать определенный объект в окружающем пространстве мобильного робота 306.[0105] To do this, the mobile robot 306 may determine whether an object (or objects) is in the waiting area 305 . For example, mobile robot 306 may detect a specific object in the environment of mobile robot 306.

[0106] Следует отметить, что мобильный робот 306 может формировать ограничивающую рамку объекта по данным датчика камеры и/или данным лидарного датчика. В одном примере данные камеры и/или лидарные данные могут вводиться в сеть ODNN, способную формировать ограничивающую рамку объекта.[0106] It should be noted that the mobile robot 306 may form a bounding box of the object based on camera sensor data and/or lidar sensor data. In one example, camera data and/or lidar data may be input to an ODNN capable of forming a bounding box of an object.

[0107] Следует отметить, что в некоторых вариантах осуществления настоящей технологии сеть ODNN может обнаруживать присутствие объекта и формировать ограничивающую рамку для этого объекта, указывающую на его положение в окружающем пространстве. В других вариантах осуществления изобретения сеть ODNN также может выполнять классификацию объекта как объекта определенного типа (например, пешеход, велосипед, детская коляска).[0107] It should be noted that in some embodiments of the present technology, the ODNN can detect the presence of an object and form a bounding box for this object, indicating its position in the surrounding space. In other embodiments, the ODNN may also classify an object as a certain type of object (eg, pedestrian, bicycle, pram).

[0108] В одном примере мобильный робот 306 может использовать лидарные данные для обнаружения объекта, формируя ограничивающую рамку для этого объекта. В этом примере ограничивающая рамка может формироваться мобильным роботом 306 в системе координат лидарного датчика.[0108] In one example, mobile robot 306 may use lidar data to detect an object by forming a bounding box for that object. In this example, the bounding box may be generated by the mobile robot 306 in the coordinate system of the lidar sensor.

[0109] Положение ограничивающей рамки может выводиться сетью ODNN множеством способов. В одном варианте осуществления изобретения положение ограничивающей рамки может выводиться как комбинация центральной точки, смещения по высоте относительно центральной точки, смещения по длине относительно центральной точки и смещения по ширине относительно центральной точки в системе координат лидарного датчика (и/или облака лидарных точек). В другом варианте осуществления изобретения положение ограничивающей рамки может выводиться как комбинация координат соответствующих углов ограничивающей рамки (например, всего восьми) в системе координат лидарного датчика (и/или облака лидарных точек).[0109] The position of the bounding box may be inferred by the ODNN in a variety of ways. In one embodiment of the invention, the position of the bounding box can be output as a combination of a center point, a height offset from the center point, a length offset from the center point, and a width offset from the center point in the lidar sensor (and/or lidar point cloud) coordinate system. In another embodiment of the invention, the position of the bounding box may be output as a combination of the coordinates of the respective corners of the bounding box (eg, eight in total) in the lidar sensor (and/or lidar point cloud) coordinate system.

[0110] Независимо от конкретного формата, в котором положение ограничивающей рамки определяется в системе координат лидарного датчика (и/или облака лидарных точек), мобильный робот 306 может отображать положение ограничивающей рамки на трехмерной карте, как указано выше. Иными словами, мобильный робот 306 способен преобразовывать положение ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в ее положение в системе координат трехмерной карты.[0110] Regardless of the specific format in which the position of the bounding box is defined in terms of the lidar sensor (and/or lidar point cloud) coordinate system, the mobile robot 306 may display the position of the bounding box on a 3D map as described above. In other words, the mobile robot 306 is capable of converting the position of the bounding box from the lidar sensor coordinate system (and/or lidar point cloud) to its position in the 3D map coordinate system.

[0111] Для этого мобильный робот 306 может реализовывать множество алгоритмов преобразования. В по меньшей мере одном варианте осуществления изобретения мобильный робот 306 может применять матрицу преобразования к положению ограничивающей рамки в системе координат лидарного датчика для определения положения ограничивающей рамки в системе координат трехмерной карты.[0111] To this end, the mobile robot 306 may implement a plurality of transformation algorithms. In at least one embodiment, the mobile robot 306 may apply a transformation matrix to the position of the bounding box in the lidar sensor coordinate system to determine the position of the bounding box in the 3D map coordinate system.

[0112] В по меньшей мере некоторых вариантах осуществления настоящей технологии алгоритм преобразования может быть реализован как итеративный алгоритм ближайших точек (ICP, Iterative Closest Point). В целом, целью алгоритма ICP является определение эталонного облака точек и преобразование исходного облака так, чтобы оно наилучшим образом соответствовало эталонному. Алгоритм итеративно пересматривает варианты преобразования (сочетания параллельного переноса и поворота) для минимизации количественного показателя отклонения. Количественным показателем отклонения может быть, например, расстояние между исходным и эталонным облаком точек, например, сумма квадратов разностей координат соответствующих пар. Алгоритм ICP может использоваться для совмещения трехмерных моделей с учетом исходного предположения о преобразовании.[0112] In at least some embodiments of the present technology, the transformation algorithm may be implemented as an Iterative Closest Point (ICP) algorithm. In general, the goal of the ICP algorithm is to determine the reference point cloud and transform the source cloud so that it best matches the reference one. The algorithm iteratively revisits the transformation options (parallel translation and rotation combinations) to minimize the deviation score. Quantitative indicator of deviation can be, for example, the distance between the source and reference point cloud, for example, the sum of the squared differences in the coordinates of the respective pairs. The ICP algorithm can be used to match 3D models given an initial transformation assumption.

[0113] Предполагается, что когда определяется измененное преобразование между данными лидарного датчика и данными трехмерной карты, это измененное преобразование может использоваться для преобразования данных ограничивающей рамки из системы координат лидарного датчика в систему координат трехмерной карты.[0113] It is contemplated that when a modified transform between lidar sensor data and 3D map data is defined, that modified transform can be used to convert the bounding box data from the lidar sensor coordinate system to the 3D map coordinate system.

[0114] На фиг. 4 представлен вид 400 в перспективе трехмерной карты вместо общего вида 300 сверху с ограничивающей рамкой 410, нанесенной на трехмерную карту. Видно, что ограничивающая рамка 410 расположена в зоне 305 ожидания.[0114] FIG. 4 shows a perspective view 400 of a 3D map instead of a top view 300 with a bounding box 410 applied to the 3D map. It can be seen that the bounding box 410 is located in the waiting area 305.

[0115] Мобильный робот 306 может определять зону 450 визуального перекрытия объекта в зоне 306 ожидания с использованием положения ограничивающей рамки 410 и ориентации визуального индикатора 303 движения относительно зоны 305 ожидания. В по меньшей мере некоторых вариантах осуществления изобретения перед определением зоны визуального перекрытия, сформированной на основе ограничивающей рамки 410, мобильный робот 306 может подтверждать, что ограничивающая рамка 410 находится внутри зоны 305 ожидания и/или в непосредственной близости от зоны 305 ожидания на трехмерной карте.[0115] The mobile robot 306 may determine the visual overlap area 450 of an object in the waiting area 306 using the position of the bounding box 410 and the orientation of the visual motion indicator 303 relative to the waiting area 305 . In at least some embodiments, before determining the visual overlap zone formed based on the bounding box 410, the mobile robot 306 can confirm that the bounding box 410 is within the waiting area 305 and/or in close proximity to the waiting area 305 on a 3D map.

[0116] В целом, зона 450 визуального перекрытия представляет собой рассчитанную часть зоны 305 ожидания, в которой визуальный индикатор 303 движения закрыт в поле обзора датчика камеры мобильного робота 306 объектом, когда мобильный робот 306 находится в этой рассчитанной части. Иными словами, можно сказать, что когда мобильный робот 306 должен двигаться в этой рассчитанной части зоны 305 ожидания, то из-за наличия объекта датчик камеры мобильного робота 306 не сможет отслеживать или наблюдать за состоянием визуального индикатора 303 движения.[0116] In general, the visual overlap area 450 is a calculated portion of the waiting area 305 in which the visual motion indicator 303 is obscured in the camera sensor field of view of the mobile robot 306 by an object when the mobile robot 306 is in that calculated portion. In other words, when the mobile robot 306 is to move in this calculated portion of the waiting area 305, the mobile robot 306's camera sensor will not be able to monitor or observe the state of the motion visual indicator 303 due to the presence of the object.

[0117] Для этого мобильный робот 306 способен проецировать по меньшей мере один угол ограничивающей рамки 410 на зону 305 ожидания путем построения траектории по меньшей мере одного луча на трехмерной карте от визуального индикатора 303 движения к зоне 305 ожидания, при котором этот по меньшей мере один луч проходит через соответствующий угол ограничивающей рамки 410. На фиг. 4 показано множество 420 лучей, которые (1) выходят из визуального индикатора 303 движения, (2) проходят через множество углов 430 ограничивающей рамки 410 и (3) проходят через множество точек 440 в зоне 305 ожидания. Мобильный робот 306 может назначить внутреннюю область, определенную множеством точек 440 в зоне 305 ожидания, зоной 450 визуального перекрытия.[0117] To this end, the mobile robot 306 is capable of projecting at least one corner of the bounding box 410 onto the waiting area 305 by plotting at least one ray path on a 3D map from the visual indicator 303 of the movement to the waiting area 305, in which this at least one the beam passes through the corresponding corner of the bounding box 410. In FIG. 4 shows a plurality of rays 420 that (1) exit from the motion visual indicator 303, (2) pass through a plurality of corners 430 of a bounding box 410, and (3) pass through a plurality of points 440 in the waiting area 305. The mobile robot 306 may designate an interior area defined by a plurality of dots 440 in the waiting area 305 as a visual overlap area 450 .

[0118] В некоторых вариантах осуществления настоящей технологии предполагается, что мобильный робот 306 способен выполнять построение траекторий множества лучей 420 от визуального индикатора 303 движения в сторону ограничивающей рамки 410 для определения «теневой проекции» ограничивающей рамки 410 на зону 305 ожидания. В какой-то мере можно сказать, что можно построить траектории множества лучей 420, которые проецируют «тень» ограничивающей рамки 410 на зону 305 ожидания подобно тому, как визуальный индикатор 303 движения, если бы он был источником света, и ограничивающая рамка 410, если бы она была непрозрачным объектом, создавали бы тень в зоне 305 ожидания.[0118] In some embodiments of the present technology, it is contemplated that the mobile robot 306 is capable of trajectorying a plurality of rays 420 from the visual indicator 303 towards the bounding box 410 to determine a "shadow projection" of the bounding box 410 onto the waiting area 305. To some extent, it can be said that it is possible to construct trajectories of a plurality of rays 420 that project the "shadow" of the bounding box 410 onto the waiting area 305, similar to the visual indicator of movement 303 if it were a light source, and the bounding box 410 if if it were an opaque object, it would create a shadow in the waiting area 305 .

[0119] В по меньшей мере некоторых вариантах осуществления настоящей технологии можно сказать, что траектория одного или нескольких лучей строится от визуального индикатора 303 движения к зоне 305 ожидания так, что один или несколько лучей касаются соответствующих углов 430 ограничивающей рамки 410.[0119] In at least some embodiments of the present technology, the path of one or more beams can be said to be built from the motion visual indicator 303 to the holding area 305 such that one or more beams touch the respective corners 430 of the bounding box 410.

[0120] Следует отметить, что датчик камеры мобильного робота 306 находится на заранее заданном расстоянии над земной поверхностью, на которой в данный момент времени работает мобильный робот 306. Поэтому в некоторых вариантах осуществления изобретения предполагается, что мобильный робот 306 может использовать это заранее заданное расстояние при определении зоны 450 визуального перекрытия.[0120] It should be noted that the camera sensor of the mobile robot 306 is located at a predetermined distance above the earth's surface on which the mobile robot 306 is currently operating. Therefore, in some embodiments of the invention, it is assumed that the mobile robot 306 can use this predetermined distance when determining the zone 450 of visual overlap.

[0121] Действительно, полагая, что зона 305 ожидания расположена на трехмерной карте прямо на уровне земли, мобильный робот 306 может использовать такое заранее заданное расстояние для уточнения области, занимаемой зоной 450 визуального перекрытия. Это может быть полезным для уточнения области, занимаемой зоной 405 визуального перекрытия, с учетом высоты, на которой фактически находится датчик камеры мобильного робота 306. Например, заранее заданное расстояние может использоваться при проецировании для определения множества скорректированных точек (вместо множества точек 440) в плоскости, которая параллельна зоне 305 ожидания и расположена на заранее заданном расстоянии над зоной 305 ожидания на трехмерной карте. В этих вариантах осуществления изобретения скорректированная внутренняя область, определяемая множеством скорректированных точек, может использоваться в качестве уточненной по высоте зоны визуального перекрытия. Иными словами, заранее заданное расстояние может использоваться мобильным роботом 306 для определения зоны визуального перекрытия на уровне камеры мобильного робота 306 с учетом высоты, на которой один или несколько датчиков камер находится над уровнем земной поверхности.[0121] Indeed, assuming that the waiting area 305 is located on the 3D map right at ground level, the mobile robot 306 can use this predetermined distance to refine the area occupied by the visual overlap area 450. This can be useful for refining the area occupied by visual overlap zone 405 based on the height at which the mobile robot's camera sensor 306 is actually located. , which is parallel to the waiting area 305 and located at a predetermined distance above the waiting area 305 on a three-dimensional map. In these embodiments, the corrected interior region defined by the plurality of corrected points may be used as the height-adjusted visual overlap zone. In other words, the predetermined distance may be used by the mobile robot 306 to determine a visual overlap zone at the camera level of the mobile robot 306 based on the height at which one or more camera sensors are above ground level.

[0122] Мобильный робот 306 также способен определять уменьшенную зону ожидания как разность между зоной 305 ожидания и зоной 450 визуального перекрытия. Следует отметить, что визуальный индикатор 303 движения виден в поле обзора датчика камеры мобильного робота 306, когда мобильный робот 306 находится в уменьшенной зоне 460 ожидания.[0122] The mobile robot 306 is also able to determine the reduced waiting area as the difference between the waiting area 305 and the visual overlap area 450. It should be noted that the visual motion indicator 303 is visible in the field of view of the camera sensor of the mobile robot 306 when the mobile robot 306 is in the reduced waiting area 460.

[0123] Мобильный робот 306 может использовать уменьшенную зону 460 ожидания для управления движением мобильного робота 306 в зону 305 ожидания и/или через нее таким образом, что датчик камеры мобильного робота 306 способен непрерывно наблюдать за состоянием визуального индикатора 303 движения. Например, можно управлять двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в заданную точку в уменьшенной зоне 460 ожидания.[0123] The mobile robot 306 may use the reduced waiting area 460 to control the movement of the mobile robot 306 into and/or through the waiting area 305 such that the camera sensor of the mobile robot 306 is able to continuously monitor the state of the motion visual indicator 303. For example, you can control the propulsion system of the mobile robot 306 to move the mobile robot 306 to a predetermined point in the reduced waiting area 460.

[0124] На фиг. 5 показаны первая потенциальная точка 501, вторая потенциальная точка 502 и третья потенциальная точка 503 в зоне 460 ожидания. Процессор 102 может управлять двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в выбранную первую потенциальную точку 501, вторую потенциальную точку 502 или третью потенциальную точку 503 в зоне 460 ожидания.[0124] In FIG. 5 shows the first potential point 501, the second potential point 502 and the third potential point 503 in the waiting area 460. The processor 102 may control the propulsion system of the mobile robot 306 to move the mobile robot 306 to a selected first candidate point 501, second candidate point 502, or third candidate point 503 in the waiting zone 460.

[0125] В некоторых вариантах осуществления изобретения мобильный робот 306 может сравнивать уменьшенную зону 460 ожидания с заранее заданной пороговой зоной. Например, мобильный робот 306 может сравнивать размер поверхности уменьшенной зоны 460 ожидания с заранее заданным пороговым значением размера поверхности. Безотносительно какой-либо конкретной теории, разработчики настоящей технологии установили, что размер поверхности уменьшенной зоны 460 ожидания может быть небольшим в тех случаях, когда (1) объект является сравнительно крупным и образует большую зону визуального перекрытия и (2) в зоне 305 ожидания обнаруживается множество объектов, что приводит к образованию множества зон визуального перекрытия в зоне 305 ожидания, при объединении которых образуется большая общая зона визуального перекрытия.[0125] In some embodiments, the mobile robot 306 may compare the reduced waiting area 460 with a predetermined threshold area. For example, mobile robot 306 may compare the surface size of the reduced waiting area 460 with a predetermined surface size threshold. Without wishing to be bound by any particular theory, the developers of the present technology have found that the surface size of the reduced holding area 460 can be small in cases where (1) the object is relatively large and forms a large visual overlap area and (2) a plurality of objects, resulting in a plurality of visual overlap zones within the holding area 305, which, when combined, form a large overall visual overlap zone.

[0126] В тех вариантах осуществления изобретения, где мобильный робот 306 сравнивает уменьшенную зону 460 ожидания с заранее заданной пороговой зоной, если определено, что уменьшенная зона ожидания 460 больше заранее заданной пороговой зоны, мобильный робот 306 может управлять двигательной установкой для его перемещения в заданное положение в уменьшенной зоне 460 ожидания и/или для перемещения через уменьшенную зону 460 ожидания. Кроме того, если определено, что уменьшенная зона ожидания 460 меньше заранее заданной пороговой зоны, мобильный робот 306 может приступить к своего рода уточненному определению зоны визуального перекрытия в зоне 305 ожидания в связи с присутствием объекта.[0126] In those embodiments where the mobile robot 306 compares the reduced waiting area 460 with a predetermined threshold area, if it is determined that the reduced waiting area 460 is greater than the predetermined threshold area, the mobile robot 306 may control the propulsion system to move it to the predetermined threshold area. position in the reduced waiting area 460 and/or to move through the reduced waiting area 460. In addition, if it is determined that the reduced waiting area 460 is smaller than the predetermined threshold area, the mobile robot 306 may proceed to some sort of refinement of the visual overlap zone determination in the waiting area 305 due to the presence of an object.

[0127] Для этого мобильный робот 306 может определять структуру «оболочки» для объекта на основе данных лидарного датчика мобильного робота 306 и использовать ее вместо ограничивающей рамки 410 для определения другой уточненной зоны визуального перекрытия в зоне 305 ожидания в связи с присутствием этого объекта.[0127] To do this, the mobile robot 306 may determine the "shell" structure for the object based on the lidar sensor data of the mobile robot 306 and use it instead of the bounding box 410 to determine another refined visual overlap zone in the waiting area 305 due to the presence of this object.

[0128] На фиг. 6 представлено изображение ограничивающей рамки 610, которая может быть сформирована процессором 102 в ходе процедуры обнаружения объекта, и изображение оболочки 630, которую процессор 102 может сформировать для того же объекта на основе лидарных данных. На способ, с помощью которого процессор может формировать оболочку 630, не накладывается особых ограничений.[0128] In FIG. 6 shows a picture of a bounding box 610 that may be generated by processor 102 during an object detection procedure, and a picture of a shell 630 that processor 102 may generate for the same object based on lidar data. The manner in which the processor may form the shell 630 is not particularly limited.

[0129] Предполагается, что оболочка, сформированная процессором 102 для объекта, может быть выпуклой оболочкой объекта. В некоторых вариантах осуществления изобретения процессор 102 может выполнять расчет выпуклой оболочки, состоящей из конечного набора точек в трехмерном пространстве, реализуя «алгоритм быстрой оболочки». Такой алгоритм можно кратко описать в виде последовательности следующих шагов. Сначала процессор 102 может выполнить поиск точек с минимальными и максимальными координатами x, поскольку они всегда будут частью выпуклой оболочки. Если существует много точек с одинаковым минимальным/максимальным значением x, процессор 102 использует точки с минимальным/максимальным значением y, соответственно. Затем процессор 102 может построить линию по двум таким точкам для разделения множества на два подмножества точек, обрабатываемых рекурсивно. Затем процессор 102 может на одной стороне от этой линии определить наиболее удаленную точку. Эта точка образует треугольник с точками на прямой. Точки, лежащие внутри этого треугольника, не могут быть частью выпуклой оболочки и на следующих шагах могут быть исключены из анализа. Затем процессор 102 может повторить предыдущие два шага для двух линий, образованных треугольником. Процессор 102 может продолжать выполнение вышеуказанных шагов до тех пор, пока не закончатся точки. Это означает, что выполнение рекурсивной процедуры завершилось и выбранные точки образуют выпуклую оболочку.[0129] It is contemplated that the shell generated by the processor 102 for the object may be the convex shell of the object. In some embodiments, the processor 102 may compute a convex hull consisting of a finite set of points in 3D space by implementing a "fast hull algorithm". Such an algorithm can be briefly described as a sequence of the following steps. First, processor 102 may search for points with minimum and maximum x coordinates, since they will always be part of the convex hull. If there are many points with the same minimum/maximum x value, the processor 102 uses the points with the minimum/maximum y value, respectively. The processor 102 may then draw a line across two of these points to divide the set into two subsets of points processed recursively. The processor 102 can then determine the furthest point on one side of this line. This point forms a triangle with points on the line. The points lying inside this triangle cannot be part of the convex hull and can be excluded from the analysis in the next steps. Processor 102 may then repeat the previous two steps for the two lines formed by the triangle. The processor 102 may continue to perform the above steps until the dots run out. This means that the execution of the recursive procedure has ended and the selected points form a convex hull.

[0130] Следует отметить, что формирование ограничивающей рамки 610 для объекта может быть менее затратным с точки зрения вычислений и/или может потребовать меньше времени, чем формирование оболочки 620 для того же объекта. Тем не менее, ограничивающая рамка 610 в определенном смысле является более грубой оценкой формы данного объекта, чем оболочка 620, и обычно она больше по размеру, чем оболочка 620.[0130] It should be noted that generating a bounding box 610 for an object may be less computationally expensive and/or may take less time than generating a shell 620 for the same object. However, bounding box 610 is, in a certain sense, a rougher estimate of the shape of a given object than shell 620, and is typically larger than shell 620.

[0131] Поэтому в тех вариантах осуществления изобретения, где уменьшенная зона 460 ожидания меньше заранее заданной пороговой зоны, мобильный робот 306 может вместо ограничивающей рамки 410 использовать оболочку объекта, являющейся более точной оценкой формы объекта, чем ограничивающая рамка 410. Использование более точной оценки формы объекта позволяет обеспечить более точную оценку зоны визуального перекрытия в зоне 305 ожидания и/или более точную оценку уменьшенной зоны ожидания.[0131] Therefore, in those embodiments where the reduced waiting area 460 is smaller than the predetermined threshold area, the mobile robot 306 may instead use the bounding box 410 to use an object shell that is a more accurate estimate of the object's shape than the bounding box 410. Using a more accurate shape estimate object allows for a more accurate estimate of the area of visual overlap in the holding area 305 and/or a more accurate estimate of the reduced holding area.

[0132] В связи с этим можно сказать, что в некоторых вариантах осуществления настоящей технологии мобильный робот 306 может выполнять двухшаговый процесс оценки уменьшенной зоны ожидания, где на первом шаге двухшагового процесса оценки мобильный робот 306 использует ограничивающую рамку 410 для определения уменьшенной зоны ожидания 460, а на втором шаге двухшагового процесса оценки мобильный робот 306 использует оболочку этого объекта (вместо ограничивающей рамки 410) для определения другой уточненной уменьшенной зоны ожидания.[0132] In this regard, it can be said that in some embodiments of the present technology, mobile robot 306 can perform a two-step reduced waiting area estimation process, where in the first step of the two-step estimation process, mobile robot 306 uses a bounding box 410 to determine a reduced waiting area 460, and in the second step of the two-step evaluation process, mobile robot 306 uses the shell of this object (instead of bounding box 410) to determine another refined, reduced waiting area.

[0133] При этом предполагается, что мобильный робот 306 может преобразовывать данные оболочки объекта из системы координат лидарного датчика (и/или облака лидарных точек) в систему координат трехмерной карты. Это может выполняться аналогично преобразованию мобильным роботом 306 положения ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в систему координат трехмерной карты. Кроме того, мобильный робот 306 может определять другую зону визуального перекрытия объекта в зоне 305 ожидания с использованием положения оболочки (вместо ограничивающей рамки 410) и ориентации визуального индикатора 303 движения относительно зоны 305 ожидания аналогично формированию мобильным роботом зоны 450 визуального перекрытия объекта с использованием положения ограничивающей рамки 410 и ориентации визуального индикатора 303 движения. Мобильный робот 306 также может определять другую уменьшенную зону ожидания как разность между зоной 305 ожидания и другой зоной визуального перекрытия оболочки. Следует отметить, что другая уменьшенная зона ожидания, вероятно, будет больше, чем уменьшенная зона 460 ожидания, поскольку другая зона визуального перекрытия, вычисленная на основе оболочки, вероятно, будет меньше, чем зона визуального перекрытия 450, вычисленная на основе ограничивающей рамки 410.[0133] It is contemplated that mobile robot 306 can convert object shell data from a lidar sensor coordinate system (and/or lidar point cloud) to a 3D map coordinate system. This can be done similarly to mobile robot 306 converting the position of the bounding box from the coordinate system of the lidar sensor (and/or lidar point cloud) to the coordinate system of a 3D map. In addition, mobile robot 306 can define a different object visual overlap area in waiting area 305 using the shell position (instead of bounding box 410) and orientation of visual motion indicator 303 relative to waiting area 305 in a manner similar to mobile robot generating object visual overlap area 450 using the position of the bounding box. frame 410 and the orientation of the visual indicator 303 movement. The mobile robot 306 may also determine the other reduced waiting area as the difference between the waiting area 305 and the other shell visual overlap area. It should be noted that the other reduced wait area is likely to be larger than the reduced wait area 460 because the other visual overlap area calculated based on the shell is likely to be smaller than the visual overlap area 450 calculated based on the bounding box 410.

[0134] Сразу после определения мобильным роботом 306 другой уменьшенной зоны ожидания он может сравнить другую уменьшенную зону ожидания с заранее заданной пороговой зоной. Если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны, процессор может активировать систему управления двигательной установкой мобильного робота 306 для перемещения мобильного робота 306 в другую уменьшенную зону ожидания. В противном случае мобильный робот 306 может в своем текущем положении ожидать, пока один или несколько объектов не покинут зону 305 ожидания.[0134] Once the mobile robot 306 determines another reduced holding area, it may compare the other reduced holding area with a predetermined threshold area. If the other reduced holding area is larger than the predetermined threshold area, the processor may activate the propulsion control system of the mobile robot 306 to move the mobile robot 306 to another reduced holding area. Otherwise, the mobile robot 306 may, in its current position, wait until one or more objects leave the waiting area 305 .

[0135] На фиг. 7 представлена блок-схема способа 700 управления мобильным роботом 306 в соответствии с различными вариантами осуществления описанной технологии. Мобильный робот 306 содержит лидарный датчик, датчик камеры и двигательную установку для передвижения мобильного робота в окружающем пространстве. Мобильный робот 306 также содержит процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой. Способ 700 может выполняться процессором, связанным с мобильным роботом 306.[0135] In FIG. 7 is a flow diagram of a method 700 for controlling a mobile robot 306 in accordance with various embodiments of the described technology. The mobile robot 306 includes a lidar sensor, a camera sensor, and a propulsion system for moving the mobile robot around. Mobile robot 306 also includes a processor associated with the lidar sensor, camera sensor, and propulsion system. Method 700 may be performed by a processor associated with mobile robot 306.

Шаг 702: получение доступа к трехмерной карте окружающего пространства.Step 702: Accessing a 3D map of the environment.

[0136] Реализация способа 700 начинается на шаге 702 с получения процессором 102 доступа к трехмерной карте окружающего пространства, в котором в данный момент времени работает мобильный робот 306. Трехмерная карта содержит данные пешеходного перехода 302, зоны 305 ожидания и визуального индикатора 303 движения (см. фиг. 3). Трехмерная карта показывает положение визуального индикатора движения и его ориентацию относительно зоны ожидания.[0136] Implementation of method 700 begins at step 702 with processor 102 accessing a 3D map of the environment in which mobile robot 306 is currently operating. Fig. 3). The 3D map shows the position of the visual motion indicator and its orientation relative to the holding area.

[0137] В целом, система координат трехмерной карты позволяет определять местоположение таких находящихся в этом пространстве объектов, как столбы, почтовые ящики, бордюры, дороги, здания, пожарные гидранты, дорожные ограждения, светофоры, пешеходные переходы, деревья, заборы, рекламные щиты, ориентиры и т.п. В частности, трехмерная карта содержит информацию, указывающую на положение объекта в системе координат трехмерной карты, а также на ориентацию этого объекта в системе координат трехмерной карты. Также можно сказать, что трехмерная карта может содержать информацию, указывающую на относительное положение и относительную ориентацию одного из пары объектов по отношению к другому из этой пары объектов. В по меньшей мере некоторых вариантах осуществления изобретения трехмерная карта может содержать естественные объекты и искусственные объекты.[0137] In general, the coordinate system of a three-dimensional map allows you to determine the location of objects located in this space, such as poles, mailboxes, curbs, roads, buildings, fire hydrants, road barriers, traffic lights, pedestrian crossings, trees, fences, billboards, landmarks, etc. In particular, the 3D map contains information indicative of the position of an object in the 3D map coordinate system, as well as the orientation of that object in the 3D map coordinate system. It can also be said that the 3D map may contain information indicative of the relative position and relative orientation of one of a pair of objects with respect to another of the pair of objects. In at least some embodiments of the invention, a three-dimensional map may contain natural objects and artificial objects.

Шаг 704: обнаружение объекта, находящегося в зоне ожидания.Step 704: detecting an object in the waiting area.

[0138] Реализация способа 700 продолжается на шаге 704 обнаружением процессором 102 объекта, расположенного в зоне 305 ожидания, и формированием ограничивающей рамки 410. Следует отметить, что процессор 102 может формировать ограничивающую рамку 410 объекта по данным датчика камеры и/или данным лидарного датчика.[0138] Method 700 continues at step 704 with processor 102 detecting an object located in waiting area 305 and generating bounding box 410. It should be noted that processor 102 may generate object bounding box 410 from camera sensor data and/or lidar sensor data.

[0139] Например, процессор 102 может вводить по меньшей мере данные камеры (данные изображения) и/или лидарные данные (данные облака точек) в сеть ODNN, способную обнаруживать присутствие объектов и определять их местоположение путем формирования ограничивающих рамок вокруг присутствующих объектов.[0139] For example, processor 102 may input at least camera data (image data) and/or lidar data (point cloud data) to an ODNN capable of detecting the presence of objects and determining their location by forming bounding boxes around the objects present.

Шаг 706: отображение положения ограничивающей рамки на трехмерной карте.Step 706: Display the position of the bounding box on the 3D map.

[0140] Реализация способа 700 продолжается на шаге 706 отображением процессором 102 положения ограничивающей рамки 410 на трехмерной карте. Следует отметить, что в некоторых вариантах осуществления изобретения мобильный робот 306 способен преобразовывать положение ограничивающей рамки из системы координат лидарного датчика (и/или облака лидарных точек) в ее положение в системе координат трехмерной карты.[0140] Method 700 continues at step 706 with processor 102 displaying the position of bounding box 410 on a 3D map. It should be noted that in some embodiments, the mobile robot 306 is capable of converting the position of the bounding box from the lidar sensor (and/or lidar point cloud) coordinate system to its position in the 3D map coordinate system.

[0141] Для этого мобильный робот 306 может применять матрицу преобразования в отношении положения ограничивающей рамки 410 в системе координат лидарного датчика для определения положения ограничивающей рамки 410 в системе координат трехмерной карты.[0141] To do this, the mobile robot 306 may apply a transformation matrix on the position of the bounding box 410 in the lidar sensor coordinate system to determine the position of the bounding box 410 in the 3D map coordinate system.

Шаг 708: определение зоны визуального перекрытия объекта в зоне ожидания.Step 708: Determining the area of visual overlap of the object in the waiting area.

[0142] Реализация способа 700 продолжается на шаге 708 определением процессором 102 зоны 450 визуального перекрытия в зоне 305 ожидания. Например, процессор 102 может использовать положение ограничивающей рамки 410 и ориентацию визуального индикатора 303 движения относительно зоны 305 ожидания для определения зоны 450 визуального перекрытия.[0142] Method 700 continues at step 708 with processor 102 determining visual overlap zone 450 within wait zone 305 . For example, the processor 102 may use the position of the bounding box 410 and the orientation of the visual motion indicator 303 relative to the hold zone 305 to determine the zone 450 of visual overlap.

[0143] В по меньшей мере некоторых вариантах осуществления настоящей технологии процессор 102 может выполнять алгоритм формирования траектории лучей для формирования теневой проекции ограничивающей рамки 410 в зоне 305 ожидания, где формируется или строится траектория одного или нескольких лучей от визуального индикатора движения.[0143] In at least some embodiments of the present technology, processor 102 may execute a ray trajectory generation algorithm to generate a shadow projection of bounding box 410 in hold zone 305 where one or more ray trajectories are generated or plotted from a motion visual indicator.

[0144] В по меньшей мере одном варианте осуществления изобретения процессор 102 может проецировать по меньшей мере один угол ограничивающей рамки 410 на зону 305 ожидания путем построения траектории луча на трехмерной карте от визуального индикатора 303 движения к зоне 305 ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки 410.[0144] In at least one embodiment of the invention, the processor 102 can project at least one corner of the bounding box 410 onto the waiting area 305 by plotting a ray path on a three-dimensional map from the visual indicator 303 of the movement to the waiting area 305, while the beam passes through the at least one of the corners of the bounding box 410.

[0145] В некоторых вариантах осуществления изобретения процессор 102 может выполнять построение траекторий нескольких лучей на трехмерной карте. Например, процессор 102 может выполнять построение траекторий множества лучей от визуального индикатора 303 движения в сторону ограничивающей рамки 410 для определения теневой проекции ограничивающей рамки 410 на зону 305 ожидания.[0145] In some embodiments of the invention, the processor 102 may perform the construction of the trajectories of several beams on a three-dimensional map. For example, processor 102 may perform multiple ray trajectories from motion visual indicator 303 toward bounding box 410 to determine a shadow projection of bounding box 410 onto wait area 305 .

[0146] В альтернативных вариантах осуществления настоящей технологии при определении зоны 450 визуального перекрытия процессор 102 может также учитывать высоту, на которой датчик камеры мобильного робота 306 находится над поверхностью земли. Как указано выше, в таких вариантах осуществления изобретения процессор 102 может использовать заранее заданное расстояние, на котором датчик камеры находится над поверхностью земли, для определения зоны визуального перекрытия, находящейся на заранее заданном расстоянии над зоной 305 ожидания.[0146] In alternative embodiments of the present technology, when determining visual overlap zone 450, processor 102 may also take into account the height at which the mobile robot's camera sensor 306 is above the ground. As noted above, in such embodiments, the processor 102 may use a predetermined distance that the camera sensor is above the ground to determine a visual overlap zone that is a predetermined distance above the waiting area 305.

[0147] Предполагается, что зона 450 визуального перекрытия является рассчитанной частью зоны 305 ожидания, в которой визуальный индикатор 303 движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот 306 находится в этой рассчитанной части.[0147] The visual overlap area 450 is assumed to be a calculated portion of the waiting area 305 in which the visual motion indicator 303 is obscured by an object in the camera sensor's field of view when the mobile robot 306 is in that calculated portion.

Шаг 710: определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия.Step 710: Determining the reduced holding area as the difference between the holding area and the visual overlap area.

[0148] Реализация способа 700 продолжается на шаге 710 определением процессором 102 уменьшенной зоны 460 ожидания как разности между зоной 305 ожидания и зоной 450 визуального перекрытия.[0148] The implementation of method 700 continues at step 710 with processor 102 determining the reduced latency zone 460 as the difference between the latency zone 305 and the visual overlap zone 450.

Шаг 712: управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.Step 712: control of the propulsion system to move the mobile robot to the reduced holding area.

[0149] Реализация способа 700 продолжается на шаге 712 с приведения в действие процессором 102 системы управления двигательной установкой для перемещения мобильного робота 306 в уменьшенную зону 460 ожидания. В некоторых вариантах осуществления изобретения процессор 102 может инициировать движение мобильного робота 306 с целью его остановки в уменьшенной зоне 460 ожидания и наблюдения текущего состояния визуального индикатора 303 движения. В других вариантах осуществления изобретения процессор 102 может инициировать движение мобильного робота 306 для перемещения через уменьшенную зону 460 ожидания при въезде на пешеходный переход 302.[0149] Method 700 continues at step 712 with propulsion control system processor 102 activating to move mobile robot 306 into reduced waiting area 460. In some embodiments, the processor 102 may cause the mobile robot 306 to move to stop in the reduced waiting area 460 and observe the current state of the visual motion indicator 303. In other embodiments, the processor 102 may cause the mobile robot 306 to move through the reduced waiting area 460 at the entrance to the pedestrian crossing 302.

[0150] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. В частности, несмотря на применение прогнозирующей модели при формировании оценок для динамических объектов и аналитической модели при формировании оценок для статических объектов, должно быть понятно, что эти ограничения не обязательны. Например, объект, обычно классифицируемый как динамический, может оставаться неподвижным, когда рядом с ним работает роботизированное транспортное средство. Такими примерами являются припаркованные автомобили или стоящие на месте люди, например, ожидающие автобус. Несмотря на то, что в этом случае такие объекты статичны в том плане, что они не движутся, с ними также можно работать с использованием прогнозирующей модели.[0150] For a person skilled in the art, possible changes and improvements in the above-described embodiments of the present technology may be obvious. In particular, despite the use of a predictive model when generating estimates for dynamic objects and an analytical model when generating estimates for static objects, it should be clear that these restrictions are not necessary. For example, an object normally classified as dynamic may remain stationary when a robotic vehicle is operating next to it. Examples are parked cars or people standing still, such as waiting for a bus. Although in this case such objects are static in that they do not move, they can also be manipulated using a predictive model.

[0151] Предшествующее описание приведено лишь в иллюстративных целях, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.[0151] the Foregoing description is for illustrative purposes only, and not to limit the scope of the invention. The scope of protection of this technology is determined solely by the scope of the appended claims.

Claims (66)

1. Мобильный робот, содержащий лидарный датчик (LIDAR), датчик камеры с полем обзора, двигательную установку для передвижения мобильного робота в окружающем пространстве, а также процессор, соединенный с возможностью связи с лидарным датчиком, датчиком камеры и двигательной установкой и выполненный с возможностью:1. A mobile robot containing a lidar sensor (LIDAR), a camera sensor with a field of view, a propulsion system for moving the mobile robot in the surrounding space, as well as a processor connected with the possibility of communication with the lidar sensor, the camera sensor and the propulsion system and configured to: - получения доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;- obtaining access to a three-dimensional map of the surrounding space containing the corresponding indication of a pedestrian crossing, a waiting area for a pedestrian crossing and a visual indicator of traffic on a pedestrian crossing, while the three-dimensional map indicates the position of the visual indicator of movement and its orientation relative to the waiting area; - обнаружения объекта, находящегося в зоне ожидания, и формирования ограничивающей рамки (bounding box) объекта, используя данные датчика камеры и/или данные лидарного датчика;- detection of an object located in the waiting area, and the formation of a bounding box (bounding box) of the object using camera sensor data and/or lidar sensor data; - отображения положения ограничивающей рамки на трехмерной карте;- displaying the position of the bounding box on a three-dimensional map; - определения зоны визуального перекрытия (окклюзии) объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части;- determining the zone of visual overlap (occlusion) of an object in the waiting area using the position of the bounding box and the orientation of the visual indicator of movement relative to the waiting area, while the visual overlap zone is the calculated part of the waiting area in which the visual indicator of movement is covered by the object in the field of view of the camera sensor, when the mobile robot is in this calculated part; - определения уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания; и- defining the reduced waiting area as the difference between the waiting area and the visual overlap area, whereby a visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area; And - управления двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.- control of the propulsion system to move the mobile robot to a reduced waiting area. 2. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью:2. Mobile robot according to claim 1, in which the processor is additionally configured to: - сравнения уменьшенной зоны ожидания с заранее заданной пороговой зоной;- comparing the reduced holding area with a predetermined threshold area; - если уменьшенная зона ожидания больше заранее заданной пороговой зоны: процессор выполнен с возможностью управления двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания,- if the reduced waiting area is greater than a predetermined threshold area: the processor is configured to control the propulsion system to move the mobile robot into the reduced waiting area, - если уменьшенная зона ожидания меньше заранее заданной пороговой зоны, процессор выполнен с возможностью:- if the reduced latency zone is less than a predetermined threshold zone, the processor is configured to: - определения оболочки объекта, используя лидарные данные лидарного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка;- determining the shell of the object using the lidar data of the lidar sensor, while the shell is a more accurate estimate of the shape of the object than the bounding box; - отображения положения оболочки на трехмерном изображении;- displaying the position of the shell on a three-dimensional image; - определения другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, при этом другая зона визуального перекрытия представляет собой другую рассчитанную часть зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в другой рассчитанной части, меньшей упомянутой рассчитанной части;- determining another zone of visual overlap of the object in the waiting area using the position of the shell and the orientation of the visual indicator relative to the waiting area, while the other visual overlap zone is another calculated part of the waiting area in which the visual indicator of movement is covered by the object in the field of view of the camera sensor, when the mobile robot is located in another calculated part, smaller than said calculated part; - определения другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания;- defining another reduced waiting area as the difference between the waiting area and another visual overlap area, wherein a visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the other reduced waiting area; - сравнения другой уменьшенной зоны ожидания с заранее заданной пороговой зоной;- comparing another reduced holding area with a predetermined threshold area; - управления двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.- controlling the propulsion system to move the mobile robot to another reduced waiting area if the other reduced waiting area is larger than a predetermined threshold area. 3. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью локального хранения по меньшей мере части трехмерной карты.3. The mobile robot of claim 1, wherein the processor is further configured to store at least a portion of the 3D map locally. 4. Мобильный робот по п. 1, в котором для выполнения обнаружения процессор дополнительно выполнен с возможностью использования нейронной сети обнаружения объектов для данных камеры и/или для лидарных данных.4. The mobile robot of claim 1, wherein, to perform the detection, the processor is further configured to use an object detection neural network for camera data and/or for lidar data. 5. Мобильный робот по п. 1, в котором для определения зоны визуального перекрытия процессор дополнительно выполнен с возможностью проецирования по меньшей мере одного угла ограничивающей рамки на зону ожидания путем построения траектории луча на трехмерной карте от визуального индикатора движения к зоне ожидания, при этом луч проходит через по меньшей мере один из углов ограничивающей рамки.5. The mobile robot according to claim 1, in which, in order to determine the zone of visual overlap, the processor is additionally configured to project at least one corner of the bounding box onto the waiting area by constructing a ray path on a three-dimensional map from a visual indicator of movement to the waiting area, while the beam passes through at least one of the corners of the bounding box. 6. Мобильный робот по п. 5, в котором используется несколько лучей, а процессор выполнен с возможностью построения траекторий нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.6. The mobile robot of claim. 5, which uses multiple beams, and the processor is configured to build trajectories of multiple beams from a visual indicator of movement towards the bounding box to determine the shadow projection of the bounding box on the waiting area, while the shadow projection of the bounding box is visual overlap zone. 7. Мобильный робот по п. 1, в котором датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, при этом процессор дополнительно выполнен с возможностью использования заранее заданного расстояния для определения зоны визуального перекрытия, расположенной на заранее заданном расстоянии над зоной ожидания.7. Mobile robot according to claim 1, in which the camera sensor is located at a predetermined distance above the earth's surface on which the mobile robot moves, while the processor is additionally configured to use a predetermined distance to determine a zone of visual overlap located at a predetermined distance above the waiting area. 8. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью управления двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.8. The mobile robot of claim 1, wherein the processor is further configured to control the propulsion system to stop the mobile robot in the reduced waiting area. 9. Мобильный робот по п. 1, в котором процессор дополнительно выполнен с возможностью наблюдения за состоянием визуального индикатора движения.9. The mobile robot of claim 1, wherein the processor is further configured to monitor the state of the visual motion indicator. 10. Мобильный робот по п. 1, в котором визуальный индикатор движения представляет собой светофор.10. The mobile robot of claim 1, wherein the visual indicator of movement is a traffic light. 11. Мобильный робот по п. 1, в котором процессор является бортовым процессором мобильного робота.11. The mobile robot of claim 1, wherein the processor is an on-board processor of the mobile robot. 12. Мобильный робот по п. 1, в котором процессор является удаленным процессором сервера, связанного с мобильным роботом. 12. The mobile robot of claim 1, wherein the processor is a remote processor of a server associated with the mobile robot. 13. Способ управления мобильным роботом в окружающем пространстве, включающий в себя:13. A method for controlling a mobile robot in the surrounding space, including: - получение доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;- obtaining access to a three-dimensional map of the surrounding space containing the corresponding indication of a pedestrian crossing, a waiting area for a pedestrian crossing and a visual indicator of traffic on a pedestrian crossing, while the three-dimensional map indicates the position of the visual indicator of movement and its orientation relative to the waiting area; - обнаружение объекта в зоне ожидания с использованием по меньшей мере одного датчика мобильного робота и формирование ограничивающей рамки объекта;- detecting an object in the waiting area using at least one sensor of the mobile robot and forming a bounding box of the object; - построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, представляющей собой зону визуального перекрытия объекта в зоне ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в рассчитанной части;- construction on a three-dimensional map of the trajectories of two rays from a visual indicator of movement towards the bounding box to determine the shadow projection of the bounding box on the waiting area, which is a zone of visual overlap of the object in the waiting area, while the visual overlap zone is the calculated part of the waiting area, in which the visual the motion indicator is covered by an object in the field of view of the camera sensor when the mobile robot is in the calculated part; - определение уменьшенной зоны ожидания путем вычитания зоны визуального перекрытия из зоны ожидания;- determination of the reduced waiting area by subtracting the visual overlap zone from the waiting area; - управление мобильным роботом, при котором робот останавливается внутри уменьшенной зоны ожидания, причем визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания, если уменьшенная зона ожидания больше заранее заданной пороговой зоны.- control of the mobile robot, in which the robot stops inside the reduced waiting area, and a visual indicator of movement is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area, if the reduced waiting area is greater than a predetermined threshold zone. 14. Способ по п. 13, включающий в себя, если уменьшенная зона ожидания меньше заранее заданной пороговой зоны:14. The method of claim. 13, including, if the reduced waiting area is less than a predetermined threshold area: - формирование оболочки объекта с использованием по меньшей мере одного датчика, при этом оболочка является более точной оценкой формы объекта, чем ограничивающая рамка;- forming the shell of the object using at least one sensor, while the shell is a more accurate estimate of the shape of the object than the bounding box; - построение на трехмерной карте траекторий двух лучей от визуального индикатора движения в сторону оболочки для определения другой теневой проекции оболочки на зону ожидания, представляющей собой другую зону визуального перекрытия объекта в зоне ожидания, меньшую упомянутой зоны визуального перекрытия;- construction on a three-dimensional map of the trajectories of two rays from a visual indicator of movement towards the shell to determine another shadow projection of the shell onto the waiting area, which is another zone of visual overlap of the object in the waiting area, smaller than the mentioned visual overlap zone; - определение другой уменьшенной зоны ожидания путем вычитания другой зоны визуального перекрытия из зоны ожидания;- determining another reduced holding area by subtracting another visual overlap area from the holding area; - управление мобильным роботом, при котором робот останавливается в другой уменьшенной зоне ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.- controlling the mobile robot in which the robot stops in another reduced waiting area if the other reduced waiting area is larger than a predetermined threshold area. 15. Способ по п. 13, дополнительно включающий в себя непрерывное отслеживание состояния визуального индикатора движения с использованием по меньшей мере одного датчика камеры мобильного робота.15. The method of claim 13, further comprising continuously monitoring the status of the visual motion indicator using at least one mobile robot camera sensor. 16. Способ управления мобильным роботом, содержащим лидарный датчик (LiDAR), датчик камеры с полем обзора и двигательную установку для передвижения мобильного робота в окружающем пространстве, а также процессор, связанный с лидарным датчиком, датчиком камеры и двигательной установкой, включающий в себя:16. A method for controlling a mobile robot containing a lidar sensor (LiDAR), a camera sensor with a field of view and a propulsion system for moving the mobile robot in the surrounding space, as well as a processor associated with the lidar sensor, the camera sensor and the propulsion system, including: - получение доступа к трехмерной карте окружающего пространства, содержащей соответствующее указание на пешеходный переход, зону ожидания пешеходного перехода и визуальный индикатор движения на пешеходном переходе, при этом трехмерная карта указывает на положение визуального индикатора движения и его ориентацию относительно зоны ожидания;- obtaining access to a three-dimensional map of the surrounding space containing the corresponding indication of a pedestrian crossing, a waiting area for a pedestrian crossing and a visual indicator of traffic on a pedestrian crossing, while the three-dimensional map indicates the position of the visual indicator of movement and its orientation relative to the waiting area; - обнаружение объекта, находящегося в зоне ожидания, и формирование ограничивающей рамки объекта по данным датчика камеры и/или данным лидарного датчика;- detection of an object located in the waiting area, and the formation of a bounding box of the object according to the camera sensor data and/or lidar sensor data; - отображение положения ограничивающей рамки на трехмерной карте;- displaying the position of the bounding box on a three-dimensional map; - определение зоны визуального перекрытия объекта в зоне ожидания с использованием положения ограничивающей рамки и ориентации визуального индикатора движения относительно зоны ожидания, при этом зона визуального перекрытия является рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в этой рассчитанной части;- determining the zone of visual overlap of the object in the waiting area using the position of the bounding box and the orientation of the visual indicator of movement relative to the waiting area, while the visual overlap zone is the calculated part of the waiting area in which the visual indicator of movement is covered by the object in the field of view of the camera sensor when the mobile robot is in this calculated part; - определение уменьшенной зоны ожидания как разности между зоной ожидания и зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в уменьшенной зоне ожидания; и- defining the reduced waiting area as the difference between the waiting area and the visual overlap area, whereby a visual motion indicator is visible in the field of view of the camera sensor when the mobile robot is in the reduced waiting area; And - управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания.- control of the propulsion system to move the mobile robot to a reduced waiting area. 17. Способ по п. 16, дополнительно включающий в себя:17. The method of claim 16, further comprising: - сравнение уменьшенной зоны ожидания с заранее заданной пороговой зоной;- comparison of the reduced waiting area with a predetermined threshold area; - управление двигательной установкой для перемещения мобильного робота в уменьшенную зону ожидания, если уменьшенная зона ожидания больше заранее заданной пороговой зоны;- controlling the propulsion system to move the mobile robot to the reduced waiting area if the reduced waiting area is greater than a predetermined threshold area; - если уменьшенная зона ожидания меньше заранее заданной пороговой зоны:- if the reduced holding area is less than the pre-set threshold area: - определение по лидарным данным лидарного датчика оболочки объекта, которая является более точной оценкой формы объекта, чем ограничивающая рамка;- determination of the object's shell from the lidar data of the lidar sensor, which is a more accurate estimate of the object's shape than the bounding box; - отображение положения оболочки на трехмерном изображении;- displaying the position of the shell on a three-dimensional image; - определение другой зоны визуального перекрытия объекта в зоне ожидания с использованием положения оболочки и ориентации визуального индикатора относительно зоны ожидания, при этом другая зона визуального перекрытия является другой рассчитанной частью зоны ожидания, в которой визуальный индикатор движения закрыт объектом в поле обзора датчика камеры, когда мобильный робот находится в другой рассчитанной части, меньшей упомянутой рассчитанной части;- determination of another zone of visual overlap of the object in the waiting area using the position of the shell and the orientation of the visual indicator relative to the waiting area, while the other visual overlap zone is another calculated part of the waiting area in which the visual indicator of movement is covered by the object in the field of view of the camera sensor when the mobile the robot is located in another calculated part, smaller than the said calculated part; - определение другой уменьшенной зоны ожидания как разности между зоной ожидания и другой зоной визуального перекрытия, при этом визуальный индикатор движения виден в поле обзора датчика камеры, когда мобильный робот находится в другой уменьшенной зоне ожидания;- defining another reduced waiting area as the difference between the waiting area and another visual overlap area, wherein a visual indicator of movement is visible in the field of view of the camera sensor when the mobile robot is in the other reduced waiting area; - сравнение другой уменьшенной зоны ожидания с заранее заданной пороговой зоной; и- comparing another reduced holding area with a predetermined threshold area; And - управление двигательной установкой для перемещения мобильного робота в другую уменьшенную зону ожидания, если другая уменьшенная зона ожидания больше заранее заданной пороговой зоны.- control of the propulsion system to move the mobile robot to another reduced waiting area if the other reduced waiting area is larger than a predetermined threshold area. 18. Способ по п. 16, в котором по меньшей мере часть трехмерной карты хранится локально.18. The method of claim 16, wherein at least a portion of the 3D map is stored locally. 19. Способ по п. 16, в котором обнаружение включает в себя использование нейронной сети обнаружения объектов для данных камеры и/или для лидарных данных.19. The method of claim 16, wherein the detection includes using an object detection neural network for camera data and/or for lidar data. 20. Способ по п. 16, в котором определение зоны визуального перекрытия включает в себя проецирование по меньшей мере одного угла ограничивающей рамки на зону ожидания путем построения на трехмерной карте траектории луча от визуального индикатора движения к зоне ожидания, при котором луч проходит через по меньшей мере один из углов ограничивающей рамки.20. The method of claim 16, wherein determining the visual overlap area includes projecting at least one corner of the bounding box onto the holding area by plotting on a 3D map a ray path from the visual indicator of movement to the holding area in which the beam passes through at least at least one of the corners of the bounding box. 21. Способ по п. 20, в котором строятся траектории нескольких лучей от визуального индикатора движения в сторону ограничивающей рамки для определения теневой проекции ограничивающей рамки на зону ожидания, при этом теневая проекция ограничивающей рамки представляет собой зону визуального перекрытия.21. The method of claim 20, wherein multiple ray paths are plotted from the visual indicator of motion toward the bounding box to determine a shadow projection of the bounding box onto the waiting area, where the shadow projection of the bounding box is the area of visual overlap. 22. Способ по п. 16, в котором датчик камеры расположен на заранее заданном расстоянии над земной поверхностью, по которой движется мобильный робот, определение зоны визуального перекрытия включает в себя использование заранее заданного расстояния, а зона визуального перекрытия располагается на заранее заданном расстоянии над зоной ожидания.22. The method of claim 16, wherein the camera sensor is located at a predetermined distance above the ground on which the mobile robot is moving, determining the visual overlap zone includes using a predetermined distance, and the visual overlap zone is located at a predetermined distance above the zone. expectations. 23. Способ по п. 16, дополнительно включающий в себя управление двигательной установкой для остановки мобильного робота в уменьшенной зоне ожидания.23. The method of claim 16, further comprising controlling the propulsion system to stop the mobile robot in the reduced holding area. 24. Способ по п. 16, дополнительно включающий в себя наблюдение за состоянием визуального индикатора движения.24. The method of claim 16, further comprising monitoring the status of the visual motion indicator. 25. Способ по п. 16, в котором визуальный индикатор движения представляет собой светофор.25. The method of claim 16 wherein the visual traffic indicator is a traffic light. 26. Способ по п. 16, в котором процессор является бортовым процессором мобильного робота.26. The method of claim 16, wherein the processor is an onboard processor of the mobile robot. 27. Способ по п. 16, в котором процессор является удаленным процессором сервера, связанного с мобильным роботом. 27. The method of claim 16 wherein the processor is a remote processor of a server associated with the mobile robot.
RU2021130273A 2021-10-18 2021-10-18 Mobile robot and method for mobile robot control RU2800529C1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/966,999 US20230122066A1 (en) 2021-10-18 2022-10-17 Mobile robot and a method for controlling the mobile robot
EP22202133.9A EP4174611A1 (en) 2021-10-18 2022-10-18 Mobile robot and a method for controlling the mobile robot

Publications (1)

Publication Number Publication Date
RU2800529C1 true RU2800529C1 (en) 2023-07-24

Family

ID=

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8712624B1 (en) * 2012-04-06 2014-04-29 Google Inc. Positioning vehicles to improve quality of observations at intersections
US20180239021A1 (en) * 2017-02-22 2018-08-23 Elwha Llc Lidar scanning system
RU2701592C1 (en) * 2018-10-12 2019-09-30 Владимир Андреевич Коровин Robotic transport platform
RU2705049C1 (en) * 2019-02-05 2019-11-01 Егор Валерьевич Бимаков High-adaptive autonomous mobile robot control device
RU2731082C1 (en) * 2019-09-03 2020-08-28 Федеральное государственное бюджетное научное учреждение "Федеральный научный агроинженерный центр ВИМ" (ФГБНУ ФНАЦ ВИМ) Mobile robot-sprayer for pesticide treatment of intertilled vegetable and low-growing berry crops
WO2020234041A1 (en) * 2019-05-21 2020-11-26 Starship Technologies Oü System and method for robot localisation in reduced light conditions
EP3362865B1 (en) * 2015-10-13 2021-07-21 Starship Technologies OÜ Method and system for autonomous or semi-autonomous delivery
US20210297699A1 (en) * 2018-12-26 2021-09-23 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20210302990A1 (en) * 2015-11-02 2021-09-30 Starship Technologies Oü Mobile robot system and method for autonomous localization using straight lines extracted from visual images
US20210380119A1 (en) * 2018-10-15 2021-12-09 Starship Technologies Oü Method and system for operating a mobile robot

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8712624B1 (en) * 2012-04-06 2014-04-29 Google Inc. Positioning vehicles to improve quality of observations at intersections
EP3362865B1 (en) * 2015-10-13 2021-07-21 Starship Technologies OÜ Method and system for autonomous or semi-autonomous delivery
US20210302990A1 (en) * 2015-11-02 2021-09-30 Starship Technologies Oü Mobile robot system and method for autonomous localization using straight lines extracted from visual images
US20180239021A1 (en) * 2017-02-22 2018-08-23 Elwha Llc Lidar scanning system
RU2701592C1 (en) * 2018-10-12 2019-09-30 Владимир Андреевич Коровин Robotic transport platform
US20210380119A1 (en) * 2018-10-15 2021-12-09 Starship Technologies Oü Method and system for operating a mobile robot
US20210297699A1 (en) * 2018-12-26 2021-09-23 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
RU2705049C1 (en) * 2019-02-05 2019-11-01 Егор Валерьевич Бимаков High-adaptive autonomous mobile robot control device
WO2020234041A1 (en) * 2019-05-21 2020-11-26 Starship Technologies Oü System and method for robot localisation in reduced light conditions
RU2731082C1 (en) * 2019-09-03 2020-08-28 Федеральное государственное бюджетное научное учреждение "Федеральный научный агроинженерный центр ВИМ" (ФГБНУ ФНАЦ ВИМ) Mobile robot-sprayer for pesticide treatment of intertilled vegetable and low-growing berry crops

Similar Documents

Publication Publication Date Title
US11217012B2 (en) System and method for identifying travel way features for autonomous vehicle motion control
US11693409B2 (en) Systems and methods for a scenario tagger for autonomous vehicles
KR102614323B1 (en) Create a 3D map of a scene using passive and active measurements
US11164369B2 (en) Methods and systems for constructing map data using poisson surface reconstruction
US9915951B2 (en) Detection of overhanging objects
US20180349746A1 (en) Top-View Lidar-Based Object Detection
CN111874006B (en) Route planning processing method and device
JP7346707B2 (en) Polyline contour representation of autonomous vehicles
US11340093B2 (en) Submap geographic projections
US10782411B2 (en) Vehicle pose system
US11668573B2 (en) Map selection for vehicle pose system
RU2744012C1 (en) Methods and systems for automated determination of objects presence
US20220137630A1 (en) Motion-Plan Validator for Autonomous Vehicle
CN111402387A (en) Removing short timepoints from a point cloud of a high definition map for navigating an autonomous vehicle
US20220402521A1 (en) Autonomous path generation with path optimization
US20220155082A1 (en) Route comparison for vehicle routing
US20230105871A1 (en) Data structure for storing information relating to an environment of an autonomous vehicle and methods of use thereof
RU2800529C1 (en) Mobile robot and method for mobile robot control
US20230056589A1 (en) Systems and methods for generating multilevel occupancy and occlusion grids for controlling navigation of vehicles
US20220065647A1 (en) Autonomous vehicle planned route prediction
Chipka et al. Estimation and navigation methods with limited information for autonomous urban driving
US20230122066A1 (en) Mobile robot and a method for controlling the mobile robot
RU2808469C2 (en) Method of controlling robotic vehicle
US20230082264A1 (en) Flow-based motion planning blueprint for autonomous vehicles
CN117470258A (en) Map construction method, device, equipment and medium