[go: up one dir, main page]

WO2023197668A1 - Obstacle avoidance control method and apparatus for robot - Google Patents

Obstacle avoidance control method and apparatus for robot Download PDF

Info

Publication number
WO2023197668A1
WO2023197668A1 PCT/CN2022/140986 CN2022140986W WO2023197668A1 WO 2023197668 A1 WO2023197668 A1 WO 2023197668A1 CN 2022140986 W CN2022140986 W CN 2022140986W WO 2023197668 A1 WO2023197668 A1 WO 2023197668A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
obstacle
position information
coordinate system
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2022/140986
Other languages
French (fr)
Chinese (zh)
Inventor
蔡禹丞
桂晨光
许新玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Qianshi Technology Co Ltd
Original Assignee
Beijing Jingdong Qianshi Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Qianshi Technology Co Ltd filed Critical Beijing Jingdong Qianshi Technology Co Ltd
Publication of WO2023197668A1 publication Critical patent/WO2023197668A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0253Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow

Definitions

  • the present disclosure relates to the field of computer technology, and in particular, to a robot obstacle avoidance control method and device.
  • the robot usually uses a three-dimensional (3D) camera for obstacle sensing and avoidance during movement. Specifically, the 3D camera generates data through calculation and transmits it back to the robot. The robot detects obstacles through a perception algorithm based on the data returned by the 3D camera. position so that obstacle avoidance can be performed based on this position when the robot moves.
  • 3D three-dimensional
  • the data received by the robot is lagging. Coupled with the time-consuming perception algorithm itself, the position of the detected obstacle is lagging behind compared with the real situation, so the robot cannot Avoid obstacles in time, and the obstacle avoidance sensitivity is low.
  • embodiments of the present disclosure provide a robot obstacle avoidance control method and device.
  • a robot obstacle avoidance control method is provided.
  • a robot obstacle avoidance control method includes: using an image acquisition device of the robot to collect image data at the current moment, and obtaining the first attitude information of the robot in the world coordinate system; detecting the image data Obstacle, when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; at the next moment after the current moment, obtain the position of the robot in the world
  • the second pose information in the coordinate system according to the first pose information, the first position information and the second pose information, calculate the second pose information of the obstacle in the robot coordinate system at the next moment. Position information, so that the robot can avoid obstacles according to the second position information.
  • the position of the obstacle in the robot coordinate system at the next moment is calculated based on the first attitude information, the first position information and the second attitude information.
  • the second position information includes: performing coordinate transformation on the first position information according to the first attitude information to obtain the third position information of the obstacle in the world coordinate system; according to the second position information pose information, perform coordinate transformation on the third position information, and obtain the second position information of the obstacle in the robot coordinate system at the next moment.
  • the first position information includes first coordinates of a plurality of points on the obstacle; and according to the first attitude information, the first position information Performing coordinate transformation to obtain the third position information of the obstacle in the world coordinate system includes: performing coordinate transformation on the first coordinates of the plurality of points respectively according to the first attitude information to obtain the plurality of points. the second coordinates of the points in the world coordinate system; the second coordinates corresponding to the multiple points are used as the third position information of the obstacle in the world coordinate system.
  • the next moment is the moment after the first position information is calculated; and the coordinate transformation is performed on the third position information according to the second pose information.
  • obtaining the second position information of the obstacle in the robot coordinate system at the next moment including: performing coordinate transformation on the second coordinates corresponding to the plurality of points according to the second pose information, to obtain the The third coordinates of the multiple points in the robot coordinate system at the next moment; the third coordinates corresponding to the multiple points are used as the second position information of the obstacle in the robot coordinate system at the next moment.
  • calculating the first position information of the obstacle in the robot coordinate system at the current moment includes: traversing points on the obstacle, and calculating the traversed point at the current moment.
  • the first coordinates in the robot coordinate system use the first coordinates corresponding to multiple points on the obstacle as the first position information of the obstacle in the robot coordinate system at the current moment.
  • the first posture information and the second posture information each include position information and posture information of the robot at the corresponding moment, wherein the position information is based on an odometer. It is collected or obtained by positioning the robot based on the positioning algorithm; the attitude information is obtained by reading the IMU unit.
  • the method further includes: if the obstacle is not detected, performing again the step of collecting image data using the image acquisition device of the robot at the current moment.
  • a robot obstacle avoidance control device is provided.
  • a robot obstacle avoidance control device includes: a first acquisition module, configured to collect image data using an image acquisition device of the robot at the current moment, and to acquire the first posture of the robot in a world coordinate system. Information; a position calculation module, used to detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; the second acquisition module , at the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system; the obstacle avoidance control module is used to obtain the second pose information of the robot according to the first pose information, the first position information and the second pose information, and calculate the second position information of the obstacle in the robot coordinate system at the next moment, so that the robot can avoid the obstacle according to the second position information.
  • an electronic device is provided.
  • An electronic device includes: one or more processors; a storage device configured to store one or more programs. When the one or more programs are executed by the one or more processors, The one or more processors are caused to implement a robot obstacle avoidance control method according to an embodiment of the present disclosure.
  • a computer-readable medium is provided.
  • a computer-readable medium has a computer program stored thereon.
  • the program is executed by a processor, a robot obstacle avoidance control method according to an embodiment of the present disclosure is implemented.
  • Figure 1 is a schematic diagram of the main steps of a robot obstacle avoidance control method according to an embodiment of the present disclosure
  • Figure 2 is a main flow diagram of a robot obstacle avoidance control method according to yet another embodiment of the present disclosure
  • Figure 3 is a main flow diagram of a robot obstacle avoidance control method according to another embodiment of the present disclosure.
  • Figure 4 is a schematic diagram of the main modules of a robot obstacle avoidance control device according to an embodiment of the present disclosure
  • Figure 5 is an exemplary system architecture diagram in which embodiments of the present disclosure may be applied.
  • FIG. 6 is a schematic structural diagram of a computer device suitable for implementing an electronic device according to an embodiment of the present disclosure.
  • FIG. 1 is a schematic diagram of the main steps of a robot obstacle avoidance control method according to an embodiment of the present disclosure. As shown in Figure 1, the robot obstacle avoidance control method according to the embodiment of the present disclosure mainly includes the following steps:
  • Step S101 Use the image acquisition device of the robot to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system.
  • the robot calls the image acquisition device at the current moment and triggers the image acquisition device to collect surrounding image data.
  • the pose information of the robot in the world coordinate system at the current moment is recorded. In order to facilitate the distinction, it is later called the first pose information.
  • Step S102 Detect obstacles in the image data. If the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment. Based on the collected image data, the robot detects obstacles in the image data through a perception algorithm. When the obstacle is successfully detected, the current position of the obstacle relative to the robot is further calculated, which is also the first position information of the obstacle in the robot coordinate system at the current moment.
  • Step S103 At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system. Select a moment that lags behind the current moment as the next moment, and record the pose information of the robot in the world coordinate system at the next moment. In order to facilitate the distinction, it is later called the second pose information.
  • Step S104 Calculate the second position information of the obstacle in the robot coordinate system at the next moment according to the first posture information, the first position information and the second posture information, so that the The robot avoids obstacles according to the second position information.
  • the robot's position at the next moment of the obstacle is calculated.
  • This position is also the second position of the obstacle in the robot coordinate system at the next moment. information.
  • the second position information is input into the robot control algorithm for obstacle avoidance, which eliminates the impact of the robot's movement from the current moment to the next moment, improves the robot's response speed for obstacle avoidance, and improves the obstacle avoidance sensitivity.
  • FIG. 2 is a main flow diagram of a robot obstacle avoidance control method according to yet another embodiment of the present disclosure. As shown in Figure 2, the robot obstacle avoidance control method according to the embodiment of the present disclosure is executed by the robot and mainly includes the following steps:
  • Step S201 Call the image acquisition device to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system at the current moment.
  • Image acquisition equipment is used to collect surrounding image information during the movement of the robot, such as industrial cameras, depth cameras, etc.
  • the robot calls the image acquisition device and triggers it to start shooting a frame of image data; at the same time, the first attitude information of the robot in the world coordinate system is recorded at time t 0 , which can be expressed as ( x 0 ,y 0 , ⁇ 0 ).
  • the first attitude information includes the position information (x 0 , y 0 ) and attitude information ⁇ 0 of the robot at time t 0 , where the position information (x 0 , y 0 ) can be collected based on the odometer, Or it can be obtained by positioning the robot based on the positioning algorithm; the attitude information ⁇ 0 is the heading angle of the robot in the world coordinate system at time t 0 , which can be obtained by reading the inertial measurement unit (IMU).
  • IMU inertial measurement unit
  • Step S202 Detect obstacles in the image data through the perception algorithm, and determine whether the obstacle is successfully detected. If the obstacle is successfully detected, step S203 is executed; otherwise, step S201 is executed.
  • the robot After the robot receives the image data returned from the image acquisition device, it is input into the robot's perception algorithm to detect obstacles in the image data. If an obstacle is detected during the execution of this round of robot obstacle avoidance control method, subsequent steps S203 to S206 will be executed; if no obstacle is detected, step S201 will be returned to perform the next round of robot obstacle avoidance control.
  • Step S203 Calculate the first position information of the obstacle in the robot coordinate system at the current moment through the perception algorithm. If an obstacle is detected from the image data, the perception algorithm continues to calculate the first position information of the obstacle in the robot coordinate system at the current moment.
  • the first position information when calculating the first position information, it is necessary to traverse the points on the obstacle and calculate the first coordinate of the traversed point in the robot coordinate system at the current moment; then, the corresponding points on the obstacle are The first coordinate is used as the first position information of the obstacle in the robot coordinate system at the current moment. It can be seen from this that the first position information includes first coordinates of multiple points on the obstacle.
  • Step S204 At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system. Select a moment after the current moment as the next moment (can be recorded as t 1 moment), and record the second pose information of the robot in the world coordinate system at t 1 moment, which can be expressed as (x 1 , y 1 , ⁇ 1 ).
  • the second pose information includes the robot's position information (x 1 , y 1 ) and attitude information ⁇ 1 at time t 1 .
  • the position information (x 1 , y 1 ) can be collected based on the odometer. , or obtained by positioning the robot based on the positioning algorithm;
  • the attitude information ⁇ 1 is the heading angle of the robot in the world coordinate system at time t 1 , which can be obtained by reading the IMU unit.
  • Step S205 Calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first posture information, the first position information and the second posture information. This step is used to offset the obtained position of the obstacle relative to the robot and the robot's own displacement to remove changes in relative posture caused by the movement of the robot between time t 0 and time t 1 .
  • coordinate transformation is performed on the first position information based on the first posture information to obtain the third position information of the obstacle in the world coordinate system; then, coordinate transformation is performed on the third position information based on the second posture information. , obtain the second position information of the obstacle in the robot coordinate system at the next moment.
  • first coordinate transformation is performed on the first coordinates of multiple points on the obstacle based on the first attitude information to obtain the second coordinates of the multiple points in the world coordinate system. ;Then the second coordinates corresponding to the multiple points are used as the third position information of the obstacle in the world coordinate system.
  • this embodiment assumes that the obstacle is stationary, in practical applications, it is not necessary to consider whether the obstacle is moving or stationary. Even if the obstacle is moving, this embodiment can also eliminate the impact caused by the movement of the robot. Lag issues. By converting each point of the obstacle according to the above formula, the new obstacle coordinates can be calculated. At this time, the relative pose change of the robot from time t 0 to time t 1 can be eliminated.
  • Step S206 Input the second position information to the robot control algorithm for obstacle avoidance. After the execution of this step is completed, step S201 can be continued to perform the next round of robot obstacle avoidance control.
  • FIG. 3 is a main flow diagram of a robot obstacle avoidance control method according to another embodiment of the present disclosure.
  • the robot obstacle avoidance control method according to the embodiment of the present disclosure is executed by the robot, and the robot is equipped with an odometer and an IMU unit, and mainly includes the following steps:
  • Step S301 Call the 3D camera to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system at the current moment through the odometer and IMU unit.
  • the robot calls the 3D camera at the current moment, triggering it to start shooting a frame of image data; at the same time, by reading the data of the odometer and IMU unit at the current moment, the first attitude information of the robot in the world coordinate system at the current moment is obtained.
  • Step S302 Detect obstacles in the image data through the perception algorithm, and determine whether the obstacle is successfully detected. If the obstacle is successfully detected, step S303 is executed; otherwise, step S301 is executed. The specific implementation of this step can be found in step S202, which will not be described again here.
  • Step S303 Calculate the first position information of the obstacle in the robot coordinate system at the current moment through the perception algorithm. The specific implementation of this step can be found in step S203, which will not be described again here.
  • Step S304 At the next moment after the first position information is calculated, obtain the second pose information of the robot in the world coordinate system through the odometer and IMU unit.
  • the next time is a time after the first position information is calculated.
  • Step S305 Calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first posture information, the first position information and the second posture information.
  • the specific implementation of this step can be found in step S205, which will not be described again here.
  • Step S306 Input the second position information to the robot control algorithm for obstacle avoidance, and then execute step S301. After this round of obstacle avoidance control is completed, the next round of robot obstacle avoidance control can be carried out.
  • the robot obstacle avoidance control method in the embodiment of the present disclosure uses the moment after the first position information is calculated as the next moment, and then performs compensation calculations on the position information of the obstacle, so that the delay period (that is, the perception of the obstacle avoidance process) can be eliminated. Due to the impact of hardware computing power, data transmission limitations, and the time-consuming perception algorithm (all delays corresponding to the robot movement), the mobile robot uses a 3D camera for obstacle perception during the movement due to the lag in the delay detection results. This leads to problems such as delayed obstacle avoidance and reduced sensitivity.
  • FIG. 4 is a schematic diagram of the main modules of a robot obstacle avoidance control device according to an embodiment of the present disclosure.
  • the robot obstacle avoidance control device 400 according to the embodiment of the present disclosure mainly includes:
  • the first acquisition module 401 is used to collect image data using the image acquisition device of the robot at the current moment, and obtain the first attitude information of the robot in the world coordinate system.
  • the robot calls the image acquisition device at the current moment and triggers the image acquisition device to collect surrounding image data.
  • the current pose information of the robot in the world coordinate system is recorded, that is, the first pose information.
  • the position calculation module 402 is used to detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment. Based on the collected image data, the robot detects obstacles in the image data through a perception algorithm. When the obstacle is successfully detected, the current position of the obstacle relative to the robot is further calculated, which is also the first position information of the obstacle in the robot coordinate system at the current moment.
  • the second acquisition module 403 acquires the second pose information of the robot in the world coordinate system at the next moment after the current moment. Select a moment that lags behind the current moment as the next moment, and record the pose information of the robot in the world coordinate system at the next moment, that is, the second pose information.
  • the obstacle avoidance control module 404 is used to calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first attitude information, the first position information and the second attitude information. , so that the robot can avoid obstacles according to the second position information.
  • this module calculates the position of the robot at the next moment of the obstacle, which is also the second position information of the obstacle in the robot coordinate system at the next moment. Subsequently, the second position information is input into the robot control algorithm for obstacle avoidance, which eliminates the impact of the robot's movement from the current moment to the next moment, improves the robot's obstacle avoidance response speed, and improves obstacle avoidance sensitivity.
  • the robot obstacle avoidance control device 400 in the embodiment of the present disclosure may also include: a repeated execution module (not shown in Figure 4), which is used to execute the above-mentioned step again when the obstacle is not detected. Steps to collect image data using the robot's image acquisition equipment at the current moment.
  • the robot pose at the current moment and the lagged next moment the position of the obstacle relative to the robot at the next moment is calculated, and obstacle avoidance is performed according to this position. This eliminates the impact of the robot's movement in the period from the current moment to the next moment, improves the robot's response speed to obstacle avoidance, and improves its obstacle avoidance sensitivity.
  • FIG. 5 shows an exemplary system architecture 500 to which a robot obstacle avoidance control method or a robot obstacle avoidance control device according to embodiments of the present disclosure can be applied.
  • the system architecture 500 may include an image acquisition device 501, a network 502 and a robot 503.
  • Network 502 is a medium used to provide a communication link between image capture device 501 and robot 503 .
  • the user can interact with the robot 503 through the network 502 using the image capture device 501 to receive or send messages, etc.
  • the image acquisition device 501 may be various electronic devices with image acquisition functions, including but not limited to industrial cameras.
  • the robot 503 can be a terminal product that provides various services. It can call the image acquisition device 501 to collect image data, detect obstacles, calculate the second position information of the obstacles, and perform obstacle avoidance and other processes.
  • the robot obstacle avoidance control method provided in the embodiment of the present application is generally executed by the robot 503.
  • the robot obstacle avoidance control device is generally provided in the robot 503.
  • the present disclosure also provides an electronic device and a computer-readable medium.
  • the electronic device of the present disclosure includes: one or more processors; a storage device for storing one or more programs, when the one or more programs are executed by the one or more processors, such that the one or more programs Multiple processors implement a robot obstacle avoidance control method according to an embodiment of the present disclosure.
  • the computer-readable medium of the present disclosure has a computer program stored thereon.
  • the program is executed by a processor, a robot obstacle avoidance control method according to an embodiment of the present disclosure is implemented.
  • FIG. 6 a schematic structural diagram of a computer system 600 suitable for implementing an electronic device according to an embodiment of the present disclosure is shown.
  • the electronic device shown in FIG. 6 is only an example and should not impose any limitations on the functions and scope of use of the embodiments of the present disclosure.
  • computer system 600 includes a central processing unit (CPU) 601 that can operate according to a program stored in a read-only memory (ROM) 602 or loaded from a storage portion 608 into a random access memory (RAM) 603 And perform various appropriate actions and processing.
  • CPU central processing unit
  • RAM random access memory
  • various programs and data required for the operation of the computer system 600 are also stored.
  • CPU 601, ROM 602 and RAM 603 are connected to each other through bus 604.
  • An input/output (I/O) interface 605 is also connected to bus 604.
  • the following components are connected to the I/O interface 605: an input section 606 including a keyboard, a mouse, etc.; an output section 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., speakers, etc.; and a storage section 608 including a hard disk, etc. ; and a communication section 609 including a network interface card such as a LAN card, a modem, etc.
  • the communication section 609 performs communication processing via a network such as the Internet.
  • Driver 610 is also connected to I/O interface 605 as needed.
  • Removable media 611 such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive 610 as needed, so that a computer program read therefrom is installed into the storage portion 608 as needed.
  • the process described in the above main step diagram may be implemented as a computer software program.
  • embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the method illustrated in the main step diagram.
  • the computer program may be downloaded and installed from the network via communication portion 609, and/or installed from removable media 611.
  • CPU central processing unit
  • the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
  • the computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), removable Programmd read-only memory (EPROM or flash memory), fiber optics, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more logic functions that implement the specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown one after another may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved.
  • each block in the block diagram or flowchart illustration, and combinations of blocks in the block diagram or flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or operations, or may be implemented by special purpose hardware-based systems that perform the specified functions or operations. Achieved by a combination of specialized hardware and computer instructions.
  • the modules involved in the embodiments of the present disclosure can be implemented in software or hardware.
  • the described module can also be provided in a processor.
  • a processor includes a first acquisition module, a position calculation module, a second acquisition module and an obstacle avoidance control module.
  • the names of these modules do not constitute a limitation on the module itself under certain circumstances.
  • the first acquisition module can also be described as “using the image acquisition equipment of the robot to acquire image data at the current moment, and acquire the "Module for the first attitude information of the robot in the world coordinate system”.
  • the present disclosure also provides a computer-readable medium.
  • the computer-readable medium may be included in the device described in the above embodiments; it may also exist separately without being assembled into the device.
  • the above-mentioned computer-readable medium carries one or more programs.
  • the device includes: collecting image data by using the image acquisition device of the robot at the current moment, and obtaining the image data of the robot.
  • the first attitude information in the world coordinate system detecting obstacles in the image data, and when the obstacle is detected, calculating the first position information of the obstacle in the robot coordinate system at the current moment; At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system; according to the first pose information, the first position information and the second pose information , calculate the second position information of the obstacle in the robot coordinate system at the next moment, so that the robot can avoid obstacles according to the second position information.
  • the robot pose at the current moment and the lagged next moment based on the position of the obstacle relative to the robot at the current moment, the robot pose at the current moment and the lagged next moment, the position of the obstacle relative to the robot at the next moment is calculated, and avoidance is performed according to this position.
  • Obstacles eliminate the impact of the robot's movement from the current moment to the next moment, improve the robot's response speed to avoid obstacles, and improve the sensitivity of obstacle avoidance.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

An obstacle avoidance control method and apparatus (400) for a robot (503), which relate to the technical field of computers. A specific implementation of the method comprises: collecting image data at the current moment by using an image collection device (501) of a robot (503), and acquiring first pose information of the robot (503) in a world coordinate system (S101); detecting an obstacle in the image data, and when the obstacle is detected, calculating first position information of the obstacle at the current moment in a coordinate system of the robot (503) (S102); at the moment following the current moment, acquiring second pose information of the robot (503) in the world coordinate system (S103); and according to the first pose information, the first position information and the second pose information, calculating second position information of the obstacle at the next moment in the coordinate system of the robot (503), so that the robot (503) performs obstacle avoidance according to the second position information (S104).

Description

机器人避障控制方法和装置Robot obstacle avoidance control method and device

相关申请的交叉引用Cross-references to related applications

本申请要求享有2022年4月11日提交的发明名称为“一种机器人避障控制方法和装置”的中国专利申请No.202210373750.8的优先权,在此全文引用上述中国专利申请公开的内容以作为本申请的一部分或全部。This application claims the priority of Chinese patent application No. 202210373750.8, which is titled "A robot obstacle avoidance control method and device" and was submitted on April 11, 2022. The content disclosed in the above Chinese patent application is quoted in its entirety as part or all of this application.

技术领域Technical field

本公开涉及计算机技术领域,尤其涉及一种机器人避障控制方法和装置。The present disclosure relates to the field of computer technology, and in particular, to a robot obstacle avoidance control method and device.

背景技术Background technique

机器人在移动过程中通常使用三维(3D)相机进行障碍物感知避障,具体地,3D相机通过计算产生数据并回传至机器人,机器人基于3D相机回传的数据,通过感知算法检测出障碍物的位置,以便在机器人移动时基于该位置进行障碍物躲避。The robot usually uses a three-dimensional (3D) camera for obstacle sensing and avoidance during movement. Specifically, the 3D camera generates data through calculation and transmits it back to the robot. The robot detects obstacles through a perception algorithm based on the data returned by the 3D camera. position so that obstacle avoidance can be performed based on this position when the robot moves.

在实现本公开过程中,现有技术中至少存在如下问题:In the process of implementing the present disclosure, there are at least the following problems in the prior art:

由于硬件计算能力和数据传输的局限性,机器人接收到的数据是滞后的,再加上感知算法自身的耗时,导致检测出的障碍物的位置相比较真实情况是滞后的,因此导致机器人不能及时躲避障碍物,避障灵敏度低。Due to the limitations of hardware computing power and data transmission, the data received by the robot is lagging. Coupled with the time-consuming perception algorithm itself, the position of the detected obstacle is lagging behind compared with the real situation, so the robot cannot Avoid obstacles in time, and the obstacle avoidance sensitivity is low.

发明内容Contents of the invention

有鉴于此,本公开实施例提供一种机器人避障控制方法和装置。In view of this, embodiments of the present disclosure provide a robot obstacle avoidance control method and device.

根据本公开实施例的一个方面,提供了一种机器人避障控制方法。According to an aspect of an embodiment of the present disclosure, a robot obstacle avoidance control method is provided.

本公开实施例的一种机器人避障控制方法,包括:在当前时刻利 用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息;检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息;在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息;根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。A robot obstacle avoidance control method according to an embodiment of the present disclosure includes: using an image acquisition device of the robot to collect image data at the current moment, and obtaining the first attitude information of the robot in the world coordinate system; detecting the image data Obstacle, when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; at the next moment after the current moment, obtain the position of the robot in the world The second pose information in the coordinate system; according to the first pose information, the first position information and the second pose information, calculate the second pose information of the obstacle in the robot coordinate system at the next moment. Position information, so that the robot can avoid obstacles according to the second position information.

根据本公开的一个或多个实施例,所述根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,包括:根据所述第一位姿信息,对所述第一位置信息进行坐标变换,得到所述障碍物在世界坐标系下的第三位置信息;根据所述第二位姿信息,对所述第三位置信息进行坐标变换,得到所述障碍物下一时刻在机器人坐标系下的第二位置信息。According to one or more embodiments of the present disclosure, the position of the obstacle in the robot coordinate system at the next moment is calculated based on the first attitude information, the first position information and the second attitude information. The second position information includes: performing coordinate transformation on the first position information according to the first attitude information to obtain the third position information of the obstacle in the world coordinate system; according to the second position information pose information, perform coordinate transformation on the third position information, and obtain the second position information of the obstacle in the robot coordinate system at the next moment.

根据本公开的一个或多个实施例,所述第一位置信息包括所述障碍物上的多个点的第一坐标;所述根据所述第一位姿信息,对所述第一位置信息进行坐标变换,得到所述障碍物在世界坐标系下的第三位置信息,包括:根据所述第一位姿信息,对所述多个点的第一坐标分别进行坐标变换,得到所述多个点在世界坐标系下的第二坐标;将所述多个点对应的第二坐标作为所述障碍物在世界坐标系下的第三位置信息。According to one or more embodiments of the present disclosure, the first position information includes first coordinates of a plurality of points on the obstacle; and according to the first attitude information, the first position information Performing coordinate transformation to obtain the third position information of the obstacle in the world coordinate system includes: performing coordinate transformation on the first coordinates of the plurality of points respectively according to the first attitude information to obtain the plurality of points. the second coordinates of the points in the world coordinate system; the second coordinates corresponding to the multiple points are used as the third position information of the obstacle in the world coordinate system.

根据本公开的一个或多个实施例,所述下一时刻为计算出所述第一位置信息之后的时刻;所述根据所述第二位姿信息,对所述第三位置信息进行坐标变换,得到所述障碍物下一时刻在机器人坐标系下的第二位置信息,包括:根据所述第二位姿信息,对所述多个点对应的第二坐标分别进行坐标变换,得到所述多个点下一时刻在机器人坐标系下的第三坐标;将所述多个点对应的第三坐标作为所述障碍物下一时刻在机器人坐标系下的第二位置信息。According to one or more embodiments of the present disclosure, the next moment is the moment after the first position information is calculated; and the coordinate transformation is performed on the third position information according to the second pose information. , obtaining the second position information of the obstacle in the robot coordinate system at the next moment, including: performing coordinate transformation on the second coordinates corresponding to the plurality of points according to the second pose information, to obtain the The third coordinates of the multiple points in the robot coordinate system at the next moment; the third coordinates corresponding to the multiple points are used as the second position information of the obstacle in the robot coordinate system at the next moment.

根据本公开的一个或多个实施例,所述计算所述障碍物当前时刻在机器人坐标系下的第一位置信息,包括:遍历所述障碍物上的点,计算遍历到的点当前时刻在机器人坐标系下的第一坐标;将所述障碍物上的多个点对应的第一坐标作为所述障碍物当前时刻在机器人坐标系下的第一位置信息。According to one or more embodiments of the present disclosure, calculating the first position information of the obstacle in the robot coordinate system at the current moment includes: traversing points on the obstacle, and calculating the traversed point at the current moment. The first coordinates in the robot coordinate system; use the first coordinates corresponding to multiple points on the obstacle as the first position information of the obstacle in the robot coordinate system at the current moment.

根据本公开的一个或多个实施例,所述第一位姿信息和所述第二位姿信息均包括所述机器人在相应时刻的位置信息和姿态信息,其中,所述位置信息基于里程计采集得到,或者基于定位算法对所述机器人定位得到;所述姿态信息通过读取IMU单元得到。According to one or more embodiments of the present disclosure, the first posture information and the second posture information each include position information and posture information of the robot at the corresponding moment, wherein the position information is based on an odometer. It is collected or obtained by positioning the robot based on the positioning algorithm; the attitude information is obtained by reading the IMU unit.

根据本公开的一个或多个实施例,所述方法还包括:在未检测到所述障碍物的情况下,再次执行所述在当前时刻利用机器人的图像采集设备采集图像数据的步骤。According to one or more embodiments of the present disclosure, the method further includes: if the obstacle is not detected, performing again the step of collecting image data using the image acquisition device of the robot at the current moment.

根据本公开实施例的另一方面,提供了一种机器人避障控制装置。According to another aspect of embodiments of the present disclosure, a robot obstacle avoidance control device is provided.

本公开实施例的一种机器人避障控制装置,包括:第一获取模块,用于在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息;位置计算模块,用于检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息;第二获取模块,在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息;避障控制模块,用于根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。A robot obstacle avoidance control device according to an embodiment of the present disclosure includes: a first acquisition module, configured to collect image data using an image acquisition device of the robot at the current moment, and to acquire the first posture of the robot in a world coordinate system. Information; a position calculation module, used to detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; the second acquisition module , at the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system; the obstacle avoidance control module is used to obtain the second pose information of the robot according to the first pose information, the first position information and the second pose information, and calculate the second position information of the obstacle in the robot coordinate system at the next moment, so that the robot can avoid the obstacle according to the second position information.

根据本公开实施例的再一方面,提供了一种电子设备。According to yet another aspect of embodiments of the present disclosure, an electronic device is provided.

本公开实施例的一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例的一种机器人避障控制方法。An electronic device according to an embodiment of the present disclosure includes: one or more processors; a storage device configured to store one or more programs. When the one or more programs are executed by the one or more processors, The one or more processors are caused to implement a robot obstacle avoidance control method according to an embodiment of the present disclosure.

根据本公开实施例的再一方面,提供了一种计算机可读介质。According to yet another aspect of embodiments of the present disclosure, a computer-readable medium is provided.

本公开实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开实施例的一种机器人避障控制方法。A computer-readable medium according to an embodiment of the present disclosure has a computer program stored thereon. When the program is executed by a processor, a robot obstacle avoidance control method according to an embodiment of the present disclosure is implemented.

上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。Further effects of the above-mentioned non-conventional optional methods will be described below in conjunction with specific implementations.

附图说明Description of the drawings

附图用于更好地理解本公开,不构成对本公开的不当限定。其中:The accompanying drawings are used for a better understanding of the present disclosure and do not constitute an improper limitation of the present disclosure. in:

图1是根据本公开一实施例的机器人避障控制方法的主要步骤的示意图;Figure 1 is a schematic diagram of the main steps of a robot obstacle avoidance control method according to an embodiment of the present disclosure;

图2是根据本公开再一实施例的机器人避障控制方法的主要流程示意图;Figure 2 is a main flow diagram of a robot obstacle avoidance control method according to yet another embodiment of the present disclosure;

图3是根据本公开又一实施例的机器人避障控制方法的主要流程示意图;Figure 3 is a main flow diagram of a robot obstacle avoidance control method according to another embodiment of the present disclosure;

图4是根据本公开实施例的机器人避障控制装置的主要模块的示意图;Figure 4 is a schematic diagram of the main modules of a robot obstacle avoidance control device according to an embodiment of the present disclosure;

图5是本公开实施例可以应用于其中的示例性系统架构图;Figure 5 is an exemplary system architecture diagram in which embodiments of the present disclosure may be applied;

图6是适用于来实现本公开实施例的电子设备的计算机装置的结构示意图。FIG. 6 is a schematic structural diagram of a computer device suitable for implementing an electronic device according to an embodiment of the present disclosure.

具体实施方式Detailed ways

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the present disclosure are included to facilitate understanding and should be considered to be exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the disclosure. Also, descriptions of well-known functions and constructions are omitted from the following description for clarity and conciseness.

图1是根据本公开一实施例的机器人避障控制方法的主要步骤的示意图。如图1所示,本公开实施例的机器人避障控制方法,主要包括如下步骤:Figure 1 is a schematic diagram of the main steps of a robot obstacle avoidance control method according to an embodiment of the present disclosure. As shown in Figure 1, the robot obstacle avoidance control method according to the embodiment of the present disclosure mainly includes the following steps:

步骤S101:在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息。机器人在当前时刻调用图像采集设备,触发图像采集设备采集周围的图像数据。同时,记录机器人当前时刻在世界坐标系下的位姿信息,为了便于区分,后续称为第一位姿信息。Step S101: Use the image acquisition device of the robot to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system. The robot calls the image acquisition device at the current moment and triggers the image acquisition device to collect surrounding image data. At the same time, the pose information of the robot in the world coordinate system at the current moment is recorded. In order to facilitate the distinction, it is later called the first pose information.

步骤S102:检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息。机器人基于采集的图像数据,通过感知算法检测该图像数据中的障碍物。在成功检测到障碍物的情况下,进一步计算障碍物当前时刻相对机器人的位置,该位置也即障碍物当前时刻在机器人坐标系下的第一位置信息。Step S102: Detect obstacles in the image data. If the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment. Based on the collected image data, the robot detects obstacles in the image data through a perception algorithm. When the obstacle is successfully detected, the current position of the obstacle relative to the robot is further calculated, which is also the first position information of the obstacle in the robot coordinate system at the current moment.

步骤S103:在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息。选取滞后于当前时刻的一个时刻作为下一时刻,记录机器人下一时刻在世界坐标系下的位姿信息,为了便于区分,后续称为第二位姿信息。Step S103: At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system. Select a moment that lags behind the current moment as the next moment, and record the pose information of the robot in the world coordinate system at the next moment. In order to facilitate the distinction, it is later called the second pose information.

步骤S104:根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。Step S104: Calculate the second position information of the obstacle in the robot coordinate system at the next moment according to the first posture information, the first position information and the second posture information, so that the The robot avoids obstacles according to the second position information.

本步骤中,基于障碍物不同时刻在世界坐标系下的坐标不变这一原理,计算障碍物下一时刻机器人的位置,该位置也即障碍物下一时刻在机器人坐标系下的第二位置信息。后续将该第二位置信息输入机 器人控制算法进行避障,消除了当前时刻到下一时刻这一时间段机器人运动所造成的影响,提高了机器人避障的响应速度,提高了避障灵敏度。In this step, based on the principle that the coordinates of the obstacle in the world coordinate system remain unchanged at different times, the robot's position at the next moment of the obstacle is calculated. This position is also the second position of the obstacle in the robot coordinate system at the next moment. information. Subsequently, the second position information is input into the robot control algorithm for obstacle avoidance, which eliminates the impact of the robot's movement from the current moment to the next moment, improves the robot's response speed for obstacle avoidance, and improves the obstacle avoidance sensitivity.

图2是根据本公开再一实施例的机器人避障控制方法的主要流程示意图。如图2所示,本公开实施例的机器人避障控制方法,由机器人执行,主要包括如下步骤:FIG. 2 is a main flow diagram of a robot obstacle avoidance control method according to yet another embodiment of the present disclosure. As shown in Figure 2, the robot obstacle avoidance control method according to the embodiment of the present disclosure is executed by the robot and mainly includes the following steps:

步骤S201:在当前时刻调用图像采集设备采集图像数据,获取机器人当前时刻在世界坐标系下的第一位姿信息。图像采集设备用于在机器人移动过程中采集周围的图像信息,比如可以是工业相机、深度相机等。Step S201: Call the image acquisition device to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system at the current moment. Image acquisition equipment is used to collect surrounding image information during the movement of the robot, such as industrial cameras, depth cameras, etc.

机器人在当前时刻(可记为t 0时刻),调用图像采集设备,触发其开始拍摄一帧图像数据;同时记录在t 0时刻机器人在世界坐标系下的第一位姿信息,可表示为(x 0,y 00)。 At the current moment (can be recorded as time t 0 ), the robot calls the image acquisition device and triggers it to start shooting a frame of image data; at the same time, the first attitude information of the robot in the world coordinate system is recorded at time t 0 , which can be expressed as ( x 0 ,y 00 ).

在实际应用中,第一位姿信息包括机器人在t 0时刻的位置信息(x 0,y 0)和姿态信息θ 0,其中,位置信息(x 0,y 0)可以基于里程计采集得到,或者基于定位算法对机器人定位得到;姿态信息θ 0为t 0时刻机器人在世界坐标系下的航向角,可以通过读取惯性测量单元(Inertial Measurement Unit,IMU)得到。 In practical applications, the first attitude information includes the position information (x 0 , y 0 ) and attitude information θ 0 of the robot at time t 0 , where the position information (x 0 , y 0 ) can be collected based on the odometer, Or it can be obtained by positioning the robot based on the positioning algorithm; the attitude information θ 0 is the heading angle of the robot in the world coordinate system at time t 0 , which can be obtained by reading the inertial measurement unit (IMU).

步骤S202:通过感知算法检测图像数据的障碍物,判断是否成功检测到障碍物,如果成功检测到障碍物,则执行步骤S203;否则,执行步骤S201。Step S202: Detect obstacles in the image data through the perception algorithm, and determine whether the obstacle is successfully detected. If the obstacle is successfully detected, step S203 is executed; otherwise, step S201 is executed.

机器人接收到图像采集设备回传的图像数据后,输入至机器人的感知算法,检测图像数据的障碍物。如果本轮的机器人避障控制方法执行过程中,检测到障碍物,则执行后续步骤S203-步骤S206;如果未检测到障碍物,则回到步骤S201,进行下一轮的机器人避障控制。After the robot receives the image data returned from the image acquisition device, it is input into the robot's perception algorithm to detect obstacles in the image data. If an obstacle is detected during the execution of this round of robot obstacle avoidance control method, subsequent steps S203 to S206 will be executed; if no obstacle is detected, step S201 will be returned to perform the next round of robot obstacle avoidance control.

步骤S203:通过感知算法计算障碍物当前时刻在机器人坐标系下的第一位置信息。如果从图像数据中检测到障碍物,则由感知算法继 续计算障碍物当前时刻在机器人坐标系下的第一位置信息。Step S203: Calculate the first position information of the obstacle in the robot coordinate system at the current moment through the perception algorithm. If an obstacle is detected from the image data, the perception algorithm continues to calculate the first position information of the obstacle in the robot coordinate system at the current moment.

在一实施例中,在计算第一位置信息时,需要遍历障碍物上的点,计算遍历到的点当前时刻在机器人坐标系下的第一坐标;之后将障碍物上的多个点对应的第一坐标作为障碍物当前时刻在机器人坐标系下的第一位置信息。由此可知,第一位置信息包括障碍物上的多个点的第一坐标。In one embodiment, when calculating the first position information, it is necessary to traverse the points on the obstacle and calculate the first coordinate of the traversed point in the robot coordinate system at the current moment; then, the corresponding points on the obstacle are The first coordinate is used as the first position information of the obstacle in the robot coordinate system at the current moment. It can be seen from this that the first position information includes first coordinates of multiple points on the obstacle.

将障碍物的其中一个点记作p,则p点当前时刻在机器人坐标系下的第一坐标可以表示为p(x,y)。Let one of the points of the obstacle be recorded as p, then the first coordinate of point p in the robot coordinate system at the current moment can be expressed as p(x,y).

步骤S204:在当前时刻之后的下一时刻,获取机器人在世界坐标系下的第二位姿信息。选择当前时刻之后的一个时刻作为下一时刻(可记为t 1时刻),并记录在t 1时刻机器人在世界坐标系下的第二位姿信息,可表示为(x 1,y 11)。 Step S204: At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system. Select a moment after the current moment as the next moment (can be recorded as t 1 moment), and record the second pose information of the robot in the world coordinate system at t 1 moment, which can be expressed as (x 1 , y 1 , θ 1 ).

在实际应用中,第二位姿信息包括机器人在t 1时刻的位置信息(x 1,y 1)和姿态信息θ 1,同样地,位置信息(x 1,y 1)可以基于里程计采集得到,或者基于定位算法对机器人定位得到;姿态信息θ 1为t 1时刻机器人在世界坐标系下的航向角,可以通过读取IMU单元得到。 In practical applications, the second pose information includes the robot's position information (x 1 , y 1 ) and attitude information θ 1 at time t 1 . Similarly, the position information (x 1 , y 1 ) can be collected based on the odometer. , or obtained by positioning the robot based on the positioning algorithm; the attitude information θ 1 is the heading angle of the robot in the world coordinate system at time t 1 , which can be obtained by reading the IMU unit.

步骤S205:根据第一位姿信息、第一位置信息和第二位姿信息,计算障碍物下一时刻在机器人坐标系下的第二位置信息。本步骤用于将得到的障碍物相对机器人的位置以及机器人自身位移进行偏移,以去除t 0时刻至t 1时刻期间机器人运动导致的相对位姿的变化。 Step S205: Calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first posture information, the first position information and the second posture information. This step is used to offset the obtained position of the obstacle relative to the robot and the robot's own displacement to remove changes in relative posture caused by the movement of the robot between time t 0 and time t 1 .

具体地,首先根据第一位姿信息,对第一位置信息进行坐标变换,得到障碍物在世界坐标系下的第三位置信息;之后根据第二位姿信息,对第三位置信息进行坐标变换,得到障碍物下一时刻在机器人坐标系下的第二位置信息。Specifically, first, coordinate transformation is performed on the first position information based on the first posture information to obtain the third position information of the obstacle in the world coordinate system; then, coordinate transformation is performed on the third position information based on the second posture information. , obtain the second position information of the obstacle in the robot coordinate system at the next moment.

实施例中,在计算第三位置信息时,先根据第一位姿信息,对障碍物上的多个点的第一坐标分别进行坐标变换,得到多个点在世界坐 标系下的第二坐标;之后将多个点对应的第二坐标作为障碍物在世界坐标系下的第三位置信息。In the embodiment, when calculating the third position information, first coordinate transformation is performed on the first coordinates of multiple points on the obstacle based on the first attitude information to obtain the second coordinates of the multiple points in the world coordinate system. ;Then the second coordinates corresponding to the multiple points are used as the third position information of the obstacle in the world coordinate system.

在计算第二位置信息时,先根据第二位姿信息,对障碍物上的多个点对应的第二坐标分别进行坐标变换,得到多个点下一时刻在机器人坐标系下的第三坐标;之后将多个点对应的第三坐标作为障碍物下一时刻在机器人坐标系下的第二位置信息。When calculating the second position information, first perform coordinate transformation on the second coordinates corresponding to multiple points on the obstacle based on the second pose information, and obtain the third coordinates of the multiple points in the robot coordinate system at the next moment. ;Then use the third coordinates corresponding to the multiple points as the second position information of the obstacle in the robot coordinate system at the next moment.

以计算p点t 1时刻在机器人坐标系下的第三坐标(记为p(x′,y′))为例,假设障碍物在世界坐标系下静止不动,由于p点在世界坐标系下的坐标不变,则可以得到如下公式: Take the calculation of the third coordinate of point p in the robot coordinate system at time t 1 as an example. Assume that the obstacle is stationary in the world coordinate system. Since point p is in the world coordinate system If the coordinates below remain unchanged, the following formula can be obtained:

Figure PCTCN2022140986-appb-000001
Figure PCTCN2022140986-appb-000001

上述公式表示t 0时刻p点在世界坐标系下的坐标与t 1时刻p点在世界坐标系下的坐标相同。由于该公式中(x 0,y 00)、(x 1,y 11)、p(x,y)均为已知量,因此可以计算出p点t 1时刻在机器人坐标系下的第三坐标p(x′,y′)。 The above formula indicates that the coordinates of point p in the world coordinate system at time t 0 are the same as the coordinates of point p in the world coordinate system at time t 1 . Since (x 0 ,y 00 ), (x 1 ,y 11 ) and p(x,y) in this formula are all known quantities, it can be calculated that the robot coordinates of point p at time t 1 The third coordinate p(x′,y′) under the system.

需要说明的是,虽然本实施例假设障碍物静止不动,但是在实际应用中,无需考虑障碍物是运动还是静止,即使障碍物是运动的,本实施例也可以消除机器人运动所带来的滞后问题。按照上述公式对障碍物的每一个点进行转换,即可计算得到新的障碍物坐标,此时即可消除在t 0时刻到t 1时刻机器人的相对位姿变化。 It should be noted that although this embodiment assumes that the obstacle is stationary, in practical applications, it is not necessary to consider whether the obstacle is moving or stationary. Even if the obstacle is moving, this embodiment can also eliminate the impact caused by the movement of the robot. Lag issues. By converting each point of the obstacle according to the above formula, the new obstacle coordinates can be calculated. At this time, the relative pose change of the robot from time t 0 to time t 1 can be eliminated.

步骤S206:将第二位置信息输入至机器人控制算法进行避障。在该步骤执行结束后,可以继续执行步骤S201,进行下一轮的机器人避障控制。Step S206: Input the second position information to the robot control algorithm for obstacle avoidance. After the execution of this step is completed, step S201 can be continued to perform the next round of robot obstacle avoidance control.

图3是根据本公开又一实施例的机器人避障控制方法的主要流程 示意图。如图3所示,本公开实施例的机器人避障控制方法,由机器人执行,且该机器人具备里程计和IMU单元,主要包括如下步骤:Figure 3 is a main flow diagram of a robot obstacle avoidance control method according to another embodiment of the present disclosure. As shown in Figure 3, the robot obstacle avoidance control method according to the embodiment of the present disclosure is executed by the robot, and the robot is equipped with an odometer and an IMU unit, and mainly includes the following steps:

步骤S301:在当前时刻调用3D相机采集图像数据,通过里程计和IMU单元获取机器人当前时刻在世界坐标系下的第一位姿信息。机器人在当前时刻调用3D相机,触发其开始拍摄一帧图像数据;同时通过读取里程计和IMU单元在当前时刻的数据,得到在当前时刻机器人在世界坐标系下的第一位姿信息。Step S301: Call the 3D camera to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system at the current moment through the odometer and IMU unit. The robot calls the 3D camera at the current moment, triggering it to start shooting a frame of image data; at the same time, by reading the data of the odometer and IMU unit at the current moment, the first attitude information of the robot in the world coordinate system at the current moment is obtained.

步骤S302:通过感知算法检测图像数据的障碍物,判断是否成功检测到障碍物,如果成功检测到障碍物,则执行步骤S303;否则,执行步骤S301。该步骤的具体实现见步骤S202,此处不做赘述。Step S302: Detect obstacles in the image data through the perception algorithm, and determine whether the obstacle is successfully detected. If the obstacle is successfully detected, step S303 is executed; otherwise, step S301 is executed. The specific implementation of this step can be found in step S202, which will not be described again here.

步骤S303:通过感知算法计算障碍物当前时刻在机器人坐标系下的第一位置信息。该步骤的具体实现见步骤S203,此处不做赘述。Step S303: Calculate the first position information of the obstacle in the robot coordinate system at the current moment through the perception algorithm. The specific implementation of this step can be found in step S203, which will not be described again here.

步骤S304:在计算出第一位置信息之后的下一时刻,通过里程计和IMU单元获取机器人在世界坐标系下的第二位姿信息。本实施例中,下一时刻为计算出第一位置信息之后的一个时刻。Step S304: At the next moment after the first position information is calculated, obtain the second pose information of the robot in the world coordinate system through the odometer and IMU unit. In this embodiment, the next time is a time after the first position information is calculated.

步骤S305:根据第一位姿信息、第一位置信息和第二位姿信息,计算障碍物下一时刻在机器人坐标系下的第二位置信息。该步骤的具体实现见步骤S205,此处不做赘述。Step S305: Calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first posture information, the first position information and the second posture information. The specific implementation of this step can be found in step S205, which will not be described again here.

步骤S306:将第二位置信息输入至机器人控制算法进行避障,之后执行步骤S301。在本轮避障控制完成后,可以进行下一轮的机器人避障控制。Step S306: Input the second position information to the robot control algorithm for obstacle avoidance, and then execute step S301. After this round of obstacle avoidance control is completed, the next round of robot obstacle avoidance control can be carried out.

本公开实施例的机器人避障控制方法,将计算出第一位置信息之后的时刻作为下一时刻,进而对障碍物的位置信息进行补偿计算,使 得能够消除延时期间(也即感知避障过程由于硬件计算能力、数据传输局限性、以及感知算法耗时对应的全部延时)机器人运动带来的影响,解决了移动机器人在移动过程中使用3D相机进行障碍物感知由于延时检测结果滞后而导致避障不及时、灵敏度下降的问题。The robot obstacle avoidance control method in the embodiment of the present disclosure uses the moment after the first position information is calculated as the next moment, and then performs compensation calculations on the position information of the obstacle, so that the delay period (that is, the perception of the obstacle avoidance process) can be eliminated. Due to the impact of hardware computing power, data transmission limitations, and the time-consuming perception algorithm (all delays corresponding to the robot movement), the mobile robot uses a 3D camera for obstacle perception during the movement due to the lag in the delay detection results. This leads to problems such as delayed obstacle avoidance and reduced sensitivity.

图4是根据本公开实施例的机器人避障控制装置的主要模块的示意图。如图4所示,本公开实施例的机器人避障控制装置400,主要包括:FIG. 4 is a schematic diagram of the main modules of a robot obstacle avoidance control device according to an embodiment of the present disclosure. As shown in Figure 4, the robot obstacle avoidance control device 400 according to the embodiment of the present disclosure mainly includes:

第一获取模块401,用于在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息。机器人在当前时刻调用图像采集设备,触发图像采集设备采集周围的图像数据。同时,记录机器人当前时刻在世界坐标系下的位姿信息,即第一位姿信息。The first acquisition module 401 is used to collect image data using the image acquisition device of the robot at the current moment, and obtain the first attitude information of the robot in the world coordinate system. The robot calls the image acquisition device at the current moment and triggers the image acquisition device to collect surrounding image data. At the same time, the current pose information of the robot in the world coordinate system is recorded, that is, the first pose information.

位置计算模块402,用于检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息。机器人基于采集的图像数据,通过感知算法检测该图像数据中的障碍物。在成功检测到障碍物的情况下,进一步计算障碍物当前时刻相对机器人的位置,该位置也即障碍物当前时刻在机器人坐标系下的第一位置信息。The position calculation module 402 is used to detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment. Based on the collected image data, the robot detects obstacles in the image data through a perception algorithm. When the obstacle is successfully detected, the current position of the obstacle relative to the robot is further calculated, which is also the first position information of the obstacle in the robot coordinate system at the current moment.

第二获取模块403,在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息。选取滞后于当前时刻的一个时刻作为下一时刻,记录机器人下一时刻在世界坐标系下的位姿信息,即第二位姿信息。The second acquisition module 403 acquires the second pose information of the robot in the world coordinate system at the next moment after the current moment. Select a moment that lags behind the current moment as the next moment, and record the pose information of the robot in the world coordinate system at the next moment, that is, the second pose information.

避障控制模块404,用于根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。The obstacle avoidance control module 404 is used to calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first attitude information, the first position information and the second attitude information. , so that the robot can avoid obstacles according to the second position information.

本模块基于障碍物不同时刻在世界坐标系下的坐标不变这一原理,计算障碍物下一时刻机器人的位置,该位置也即障碍物下一时刻在机器人坐标系下的第二位置信息。后续将该第二位置信息输入机器人控制算法进行避障,消除了当前时刻到下一时刻这一时间段机器人运动所造成的影响,提高了机器人避障的响应速度,提高了避障灵敏度。Based on the principle that the coordinates of the obstacle in the world coordinate system remain unchanged at different times, this module calculates the position of the robot at the next moment of the obstacle, which is also the second position information of the obstacle in the robot coordinate system at the next moment. Subsequently, the second position information is input into the robot control algorithm for obstacle avoidance, which eliminates the impact of the robot's movement from the current moment to the next moment, improves the robot's obstacle avoidance response speed, and improves obstacle avoidance sensitivity.

另外,本公开实施例的机器人避障控制装置400还可以包括:重复执行模块(图4中未示出),该模块用于在未检测到所述障碍物的情况下,再次执行所述在当前时刻利用机器人的图像采集设备采集图像数据的步骤。In addition, the robot obstacle avoidance control device 400 in the embodiment of the present disclosure may also include: a repeated execution module (not shown in Figure 4), which is used to execute the above-mentioned step again when the obstacle is not detected. Steps to collect image data using the robot's image acquisition equipment at the current moment.

从以上描述可以看出,基于障碍物在当前时刻相对机器人的位置,当前时刻和滞后的下一时刻的机器人位姿,计算障碍物在下一时刻相对机器人的位置,并按照该位置进行避障,消除了当前时刻到下一时刻这一时间段机器人运动所造成的影响,提高了机器人避障的响应速度,提高了避障灵敏度。As can be seen from the above description, based on the position of the obstacle relative to the robot at the current moment, the robot pose at the current moment and the lagged next moment, the position of the obstacle relative to the robot at the next moment is calculated, and obstacle avoidance is performed according to this position. This eliminates the impact of the robot's movement in the period from the current moment to the next moment, improves the robot's response speed to obstacle avoidance, and improves its obstacle avoidance sensitivity.

图5示出了可以应用本公开实施例的机器人避障控制方法或机器人避障控制装置的示例性系统架构500。FIG. 5 shows an exemplary system architecture 500 to which a robot obstacle avoidance control method or a robot obstacle avoidance control device according to embodiments of the present disclosure can be applied.

如图5所示,系统架构500可以包括图像采集设备501,网络502和机器人503。网络502用以在图像采集设备501和机器人503之间提供通信链路的介质。As shown in Figure 5, the system architecture 500 may include an image acquisition device 501, a network 502 and a robot 503. Network 502 is a medium used to provide a communication link between image capture device 501 and robot 503 .

用户可以使用图像采集设备501通过网络502与机器人503交互,以接收或发送消息等。图像采集设备501可以是具有图像采集功能的各种电子设备,包括但不限于工业相机。The user can interact with the robot 503 through the network 502 using the image capture device 501 to receive or send messages, etc. The image acquisition device 501 may be various electronic devices with image acquisition functions, including but not limited to industrial cameras.

机器人503可以是提供各种服务的终端产品,可以调用图像采集设备501采集图像数据,检测障碍物,计算障碍物的第二位置信息, 进行避障等处理。The robot 503 can be a terminal product that provides various services. It can call the image acquisition device 501 to collect image data, detect obstacles, calculate the second position information of the obstacles, and perform obstacle avoidance and other processes.

需要说明的是,本申请实施例所提供的机器人避障控制方法一般由机器人503执行,相应地,机器人避障控制装置一般设置于机器人503中。It should be noted that the robot obstacle avoidance control method provided in the embodiment of the present application is generally executed by the robot 503. Correspondingly, the robot obstacle avoidance control device is generally provided in the robot 503.

应该理解,图5中的图像采集设备、网络和机器人的数目仅仅是示意性的。根据实现需要,可以具有任意数目的图像采集设备、网络和机器人。It should be understood that the number of image acquisition devices, networks and robots in Figure 5 is only illustrative. Depending on implementation needs, you can have any number of image acquisition devices, networks, and robots.

根据本公开的实施例,本公开还提供了一种电子设备和一种计算机可读介质。According to embodiments of the present disclosure, the present disclosure also provides an electronic device and a computer-readable medium.

本公开的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例的一种机器人避障控制方法。The electronic device of the present disclosure includes: one or more processors; a storage device for storing one or more programs, when the one or more programs are executed by the one or more processors, such that the one or more programs Multiple processors implement a robot obstacle avoidance control method according to an embodiment of the present disclosure.

本公开的计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开实施例的一种机器人避障控制方法。The computer-readable medium of the present disclosure has a computer program stored thereon. When the program is executed by a processor, a robot obstacle avoidance control method according to an embodiment of the present disclosure is implemented.

下面参考图6,其示出了适用于来实现本公开实施例的电子设备的计算机系统600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。Referring now to FIG. 6 , a schematic structural diagram of a computer system 600 suitable for implementing an electronic device according to an embodiment of the present disclosure is shown. The electronic device shown in FIG. 6 is only an example and should not impose any limitations on the functions and scope of use of the embodiments of the present disclosure.

如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有计算机系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。 输入/输出(I/O)接口605也连接至总线604。As shown in FIG. 6 , computer system 600 includes a central processing unit (CPU) 601 that can operate according to a program stored in a read-only memory (ROM) 602 or loaded from a storage portion 608 into a random access memory (RAM) 603 And perform various appropriate actions and processing. In the RAM 603, various programs and data required for the operation of the computer system 600 are also stored. CPU 601, ROM 602 and RAM 603 are connected to each other through bus 604. An input/output (I/O) interface 605 is also connected to bus 604.

以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。The following components are connected to the I/O interface 605: an input section 606 including a keyboard, a mouse, etc.; an output section 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., speakers, etc.; and a storage section 608 including a hard disk, etc. ; and a communication section 609 including a network interface card such as a LAN card, a modem, etc. The communication section 609 performs communication processing via a network such as the Internet. Driver 610 is also connected to I/O interface 605 as needed. Removable media 611, such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive 610 as needed, so that a computer program read therefrom is installed into the storage portion 608 as needed.

特别地,根据本公开的实施例,上文主要步骤图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行主要步骤图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本公开的系统中限定的上述功能。In particular, according to embodiments of the present disclosure, the process described in the above main step diagram may be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the method illustrated in the main step diagram. In such embodiments, the computer program may be downloaded and installed from the network via communication portion 609, and/or installed from removable media 611. When the computer program is executed by the central processing unit (CPU) 601, the above-described functions defined in the system of the present disclosure are performed.

需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机 可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。It should be noted that the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. The computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), removable Programmed read-only memory (EPROM or flash memory), fiber optics, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above. In this disclosure, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device . Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operations of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more logic functions that implement the specified executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown one after another may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved. It will also be noted that each block in the block diagram or flowchart illustration, and combinations of blocks in the block diagram or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or operations, or may be implemented by special purpose hardware-based systems that perform the specified functions or operations. Achieved by a combination of specialized hardware and computer instructions.

描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一获取模块、位置计算模块、第二获取模块和避障控制模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,第一获取模块还可以被描述为“在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息的模块”。The modules involved in the embodiments of the present disclosure can be implemented in software or hardware. The described module can also be provided in a processor. For example, it can be described as: a processor includes a first acquisition module, a position calculation module, a second acquisition module and an obstacle avoidance control module. Among them, the names of these modules do not constitute a limitation on the module itself under certain circumstances. For example, the first acquisition module can also be described as “using the image acquisition equipment of the robot to acquire image data at the current moment, and acquire the "Module for the first attitude information of the robot in the world coordinate system".

作为另一方面,本公开还提供了一种计算机可读介质,该计算机 可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息;检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息;在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息;根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。As another aspect, the present disclosure also provides a computer-readable medium. The computer-readable medium may be included in the device described in the above embodiments; it may also exist separately without being assembled into the device. The above-mentioned computer-readable medium carries one or more programs. When the above-mentioned one or more programs are executed by a device, the device includes: collecting image data by using the image acquisition device of the robot at the current moment, and obtaining the image data of the robot. The first attitude information in the world coordinate system; detecting obstacles in the image data, and when the obstacle is detected, calculating the first position information of the obstacle in the robot coordinate system at the current moment; At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system; according to the first pose information, the first position information and the second pose information , calculate the second position information of the obstacle in the robot coordinate system at the next moment, so that the robot can avoid obstacles according to the second position information.

根据本公开实施例的技术方案,基于障碍物在当前时刻相对机器人的位置,当前时刻和滞后的下一时刻的机器人位姿,计算障碍物在下一时刻相对机器人的位置,并按照该位置进行避障,消除了当前时刻到下一时刻这一时间段机器人运动所造成的影响,提高了机器人避障的响应速度,提高了避障灵敏度。According to the technical solution of the embodiment of the present disclosure, based on the position of the obstacle relative to the robot at the current moment, the robot pose at the current moment and the lagged next moment, the position of the obstacle relative to the robot at the next moment is calculated, and avoidance is performed according to this position. Obstacles eliminate the impact of the robot's movement from the current moment to the next moment, improve the robot's response speed to avoid obstacles, and improve the sensitivity of obstacle avoidance.

上述产品可执行本公开实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本公开实施例所提供的方法。The above-mentioned products can execute the methods provided by the embodiments of the present disclosure, and have corresponding functional modules and beneficial effects for executing the methods. For technical details that are not described in detail in this embodiment, please refer to the methods provided by the embodiments of this disclosure.

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。The above-mentioned specific embodiments do not constitute a limitation on the scope of the present disclosure. It will be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may occur depending on design requirements and other factors. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this disclosure shall be included in the protection scope of this disclosure.

Claims (10)

一种机器人避障控制方法,包括:A robot obstacle avoidance control method, including: 在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息;Use the image acquisition device of the robot to collect image data at the current moment, and obtain the first attitude information of the robot in the world coordinate system; 检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息;Detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; 在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息;At the next moment after the current moment, obtain the second pose information of the robot in the world coordinate system; 根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。According to the first posture information, the first position information and the second posture information, calculate the second position information of the obstacle in the robot coordinate system at the next moment, so that the robot can move according to the required The second position information is used to avoid obstacles. 根据权利要求1所述的方法,其中,所述根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,包括:The method according to claim 1, wherein the position of the obstacle in the robot coordinate system at the next moment is calculated based on the first attitude information, the first position information and the second attitude information. The second location information includes: 根据所述第一位姿信息,对所述第一位置信息进行坐标变换,得到所述障碍物在世界坐标系下的第三位置信息;According to the first attitude information, perform coordinate transformation on the first position information to obtain the third position information of the obstacle in the world coordinate system; 根据所述第二位姿信息,对所述第三位置信息进行坐标变换,得到所述障碍物下一时刻在机器人坐标系下的第二位置信息。According to the second pose information, coordinate transformation is performed on the third position information to obtain the second position information of the obstacle in the robot coordinate system at the next moment. 根据权利要求2所述的方法,其中,所述第一位置信息包括所述障碍物上的多个点的第一坐标;The method of claim 2, wherein the first position information includes first coordinates of a plurality of points on the obstacle; 所述根据所述第一位姿信息,对所述第一位置信息进行坐标变换,得到所述障碍物在世界坐标系下的第三位置信息,包括:The step of performing coordinate transformation on the first position information according to the first attitude information to obtain the third position information of the obstacle in the world coordinate system includes: 根据所述第一位姿信息,对所述多个点的第一坐标分别进行坐标变换,得到所述多个点在世界坐标系下的第二坐标;According to the first posture information, perform coordinate transformation on the first coordinates of the plurality of points respectively to obtain the second coordinates of the plurality of points in the world coordinate system; 将所述多个点对应的第二坐标作为所述障碍物在世界坐标系下的第三位置信息。The second coordinates corresponding to the plurality of points are used as the third position information of the obstacle in the world coordinate system. 根据权利要求3所述的方法,其中,所述下一时刻为计算出所述第一位置信息之后的时刻;The method according to claim 3, wherein the next time is the time after the first position information is calculated; 所述根据所述第二位姿信息,对所述第三位置信息进行坐标变换,得到所述障碍物下一时刻在机器人坐标系下的第二位置信息,包括:Performing coordinate transformation on the third position information according to the second pose information to obtain the second position information of the obstacle in the robot coordinate system at the next moment includes: 根据所述第二位姿信息,对所述多个点对应的第二坐标分别进行坐标变换,得到所述多个点下一时刻在机器人坐标系下的第三坐标;According to the second pose information, perform coordinate transformation on the second coordinates corresponding to the multiple points respectively to obtain the third coordinates of the multiple points in the robot coordinate system at the next moment; 将所述多个点对应的第三坐标作为所述障碍物下一时刻在机器人坐标系下的第二位置信息。The third coordinates corresponding to the plurality of points are used as the second position information of the obstacle in the robot coordinate system at the next moment. 根据权利要求1所述的方法,其中,所述计算所述障碍物当前时刻在机器人坐标系下的第一位置信息,包括:The method according to claim 1, wherein calculating the first position information of the obstacle in the robot coordinate system at the current moment includes: 遍历所述障碍物上的点,计算遍历到的点当前时刻在机器人坐标系下的第一坐标;Traverse the points on the obstacle and calculate the first coordinate of the traversed point in the robot coordinate system at the current moment; 将所述障碍物上的多个点对应的第一坐标作为所述障碍物当前时刻在机器人坐标系下的第一位置信息。The first coordinates corresponding to the multiple points on the obstacle are used as the first position information of the obstacle in the robot coordinate system at the current moment. 根据权利要求1所述的方法,其中,所述第一位姿信息和所述第二位姿信息均包括所述机器人在相应时刻的位置信息和姿态信息,其中,The method according to claim 1, wherein the first posture information and the second posture information each include the position information and posture information of the robot at the corresponding moment, wherein, 所述位置信息基于里程计采集得到,或者基于定位算法对所述机器人定位得到;所述姿态信息通过读取IMU单元得到。The position information is obtained based on the odometer collection, or the robot is positioned based on the positioning algorithm; the attitude information is obtained by reading the IMU unit. 根据权利要求1至6的任一项所述的方法,其中,所述方法还包括:The method according to any one of claims 1 to 6, wherein the method further comprises: 在未检测到所述障碍物的情况下,再次执行所述在当前时刻利用机器人的图像采集设备采集图像数据的步骤。If the obstacle is not detected, the step of collecting image data using the image acquisition device of the robot at the current moment is performed again. 一种机器人避障控制装置,包括:A robot obstacle avoidance control device, including: 第一获取模块,用于在当前时刻利用机器人的图像采集设备采集图像数据,以及获取所述机器人在世界坐标系下的第一位姿信息;The first acquisition module is used to collect image data using the image acquisition device of the robot at the current moment, and obtain the first attitude information of the robot in the world coordinate system; 位置计算模块,用于检测所述图像数据的障碍物,在检测到所述障碍物的情况下,计算所述障碍物当前时刻在机器人坐标系下的第一位置信息;A position calculation module, used to detect obstacles in the image data, and when the obstacle is detected, calculate the first position information of the obstacle in the robot coordinate system at the current moment; 第二获取模块,在所述当前时刻之后的下一时刻,获取所述机器人在世界坐标系下的第二位姿信息;The second acquisition module acquires the second pose information of the robot in the world coordinate system at the next moment after the current moment; 避障控制模块,用于根据所述第一位姿信息、所述第一位置信息和所述第二位姿信息,计算所述障碍物下一时刻在机器人坐标系下的第二位置信息,以使所述机器人按照所述第二位置信息进行避障。An obstacle avoidance control module, configured to calculate the second position information of the obstacle in the robot coordinate system at the next moment based on the first posture information, the first position information and the second posture information, So that the robot can avoid obstacles according to the second position information. 一种电子设备,包括:An electronic device including: 一个或多个处理器;one or more processors; 存储装置,用于存储一个或多个程序,a storage device for storing one or more programs, 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。When the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method as described in any one of claims 1-7. 一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。A computer-readable medium having a computer program stored thereon, which implements the method according to any one of claims 1-7 when executed by a processor.
PCT/CN2022/140986 2022-04-11 2022-12-22 Obstacle avoidance control method and apparatus for robot Ceased WO2023197668A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210373750.8 2022-04-11
CN202210373750.8A CN114740854A (en) 2022-04-11 2022-04-11 A kind of robot obstacle avoidance control method and device

Publications (1)

Publication Number Publication Date
WO2023197668A1 true WO2023197668A1 (en) 2023-10-19

Family

ID=82281283

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/140986 Ceased WO2023197668A1 (en) 2022-04-11 2022-12-22 Obstacle avoidance control method and apparatus for robot

Country Status (2)

Country Link
CN (1) CN114740854A (en)
WO (1) WO2023197668A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119292270A (en) * 2024-09-30 2025-01-10 天津工业大学 A fast finite-time binary formation obstacle avoidance control method for a swarm of mobile robots with time delays
CN120335458A (en) * 2025-06-13 2025-07-18 杭州泛嘉科技有限公司 Robot obstacle avoidance method and device suitable for dynamic obstacles

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114740854A (en) * 2022-04-11 2022-07-12 北京京东乾石科技有限公司 A kind of robot obstacle avoidance control method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105953798A (en) * 2016-04-19 2016-09-21 深圳市神州云海智能科技有限公司 Determination method and apparatus for poses of mobile robot
US20170181383A1 (en) * 2014-05-26 2017-06-29 Institute Of Automation Chinese Academy Of Sciences Pruning Robot System
CN107885209A (en) * 2017-11-13 2018-04-06 浙江工业大学 Obstacle avoidance method based on dynamic window and virtual target point
CN112462769A (en) * 2020-11-25 2021-03-09 深圳市优必选科技股份有限公司 Robot positioning method and device, computer readable storage medium and robot
CN113268055A (en) * 2021-04-07 2021-08-17 北京拓疆者智能科技有限公司 Obstacle avoidance control method and device for engineering vehicle and mechanical equipment
CN113703448A (en) * 2021-08-19 2021-11-26 深圳亿嘉和科技研发有限公司 Ackerman chassis obstacle avoidance control method based on ultrasonic waves
CN114740854A (en) * 2022-04-11 2022-07-12 北京京东乾石科技有限公司 A kind of robot obstacle avoidance control method and device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210036A (en) * 2007-02-23 2008-09-11 Toyota Motor Corp Obstacle detection device and obstacle detection method
JP2011129095A (en) * 2009-12-18 2011-06-30 Korea Electronics Telecommun Map creating method using autonomous traveling robot, optimal travel route computing method using the same, and robot control device carrying out the methods
WO2015024407A1 (en) * 2013-08-19 2015-02-26 国家电网公司 Power robot based binocular vision navigation system and method based on
CN106114095B (en) * 2016-06-27 2018-08-03 中国石油大学(华东) A kind of amphibious sniffing robot
CN109744945B (en) * 2017-11-08 2020-12-04 杭州萤石网络有限公司 Method, device and system for determining regional attributes and electronic equipment
CN111152266B (en) * 2020-01-09 2021-07-30 安徽宇润道路保洁服务有限公司 A kind of control method and system of cleaning robot
CN111751824B (en) * 2020-06-24 2023-08-04 杭州海康汽车软件有限公司 Method, device and equipment for detecting obstacles around vehicle
CN111798489B (en) * 2020-06-29 2024-03-08 北京三快在线科技有限公司 Feature point tracking method, device, medium and unmanned equipment
CN112560769B (en) * 2020-12-25 2023-08-29 阿波罗智联(北京)科技有限公司 Method for detecting obstacle, electronic device, road side device and cloud control platform
CN113885513B (en) * 2021-10-25 2024-01-26 北京歌锐科技有限公司 Position placing method, system and device of medical equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170181383A1 (en) * 2014-05-26 2017-06-29 Institute Of Automation Chinese Academy Of Sciences Pruning Robot System
CN105953798A (en) * 2016-04-19 2016-09-21 深圳市神州云海智能科技有限公司 Determination method and apparatus for poses of mobile robot
CN107885209A (en) * 2017-11-13 2018-04-06 浙江工业大学 Obstacle avoidance method based on dynamic window and virtual target point
CN112462769A (en) * 2020-11-25 2021-03-09 深圳市优必选科技股份有限公司 Robot positioning method and device, computer readable storage medium and robot
CN113268055A (en) * 2021-04-07 2021-08-17 北京拓疆者智能科技有限公司 Obstacle avoidance control method and device for engineering vehicle and mechanical equipment
CN113703448A (en) * 2021-08-19 2021-11-26 深圳亿嘉和科技研发有限公司 Ackerman chassis obstacle avoidance control method based on ultrasonic waves
CN114740854A (en) * 2022-04-11 2022-07-12 北京京东乾石科技有限公司 A kind of robot obstacle avoidance control method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119292270A (en) * 2024-09-30 2025-01-10 天津工业大学 A fast finite-time binary formation obstacle avoidance control method for a swarm of mobile robots with time delays
CN120335458A (en) * 2025-06-13 2025-07-18 杭州泛嘉科技有限公司 Robot obstacle avoidance method and device suitable for dynamic obstacles

Also Published As

Publication number Publication date
CN114740854A (en) 2022-07-12

Similar Documents

Publication Publication Date Title
WO2023197668A1 (en) Obstacle avoidance control method and apparatus for robot
CN111209978B (en) Three-dimensional visual repositioning method and device, computing equipment and storage medium
KR102462799B1 (en) Method and apparatus for estimating pose
CN110866496A (en) Robot localization and mapping method and device based on depth image
JP7351892B2 (en) Obstacle detection method, electronic equipment, roadside equipment, and cloud control platform
CN110471409B (en) Robot inspection method and device, computer readable storage medium and robot
WO2020228643A1 (en) Interactive control method and apparatus, electronic device and storage medium
WO2018205803A1 (en) Pose estimation method and apparatus
CN110866497B (en) Robot positioning and mapping method and device based on dotted line feature fusion
CN112818898B (en) Model training method and device and electronic equipment
EP4241644A1 (en) Method and apparatus for detecting unknown obstacle, and medium and electronic device
CN114299115A (en) Method and device for multi-target tracking, storage medium and electronic device
WO2022147655A1 (en) Positioning method and apparatus, spatial information acquisition method and apparatus, and photographing device
CN113910224B (en) Method, device and electronic equipment for robot following
CN118799719A (en) A visual SLAM method, device, equipment and storage medium for indoor environment
CN113587928B (en) Navigation method, navigation device, electronic equipment, storage medium and computer program product
CN112558036B (en) Method and device for outputting information
CN113642493B (en) Gesture recognition method, device, equipment and medium
CN113781569A (en) Loop detection method and device
WO2024001526A1 (en) Image processing method and apparatus, and electronic device
WO2023025181A1 (en) Image recognition method and apparatus, and electronic device
CN118357932B (en) A mechanical arm positioning method, device, electronic device and storage medium
CN113009884B (en) Operation control method, device, device and storage medium for unmanned equipment
CN117723070B (en) Method and device for determining map matching initial value, electronic equipment and storage medium
WO2024174580A1 (en) Vehicle pose determination method and apparatus, device, and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22937295

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 27.01.2025)

122 Ep: pct application non-entry in european phase

Ref document number: 22937295

Country of ref document: EP

Kind code of ref document: A1