WO2019218526A1 - 机器人跟随人物方法、装置及存储介质、机器人 - Google Patents

机器人跟随人物方法、装置及存储介质、机器人 Download PDF

Info

Publication number
WO2019218526A1
WO2019218526A1 PCT/CN2018/102872 CN2018102872W WO2019218526A1 WO 2019218526 A1 WO2019218526 A1 WO 2019218526A1 CN 2018102872 W CN2018102872 W CN 2018102872W WO 2019218526 A1 WO2019218526 A1 WO 2019218526A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
world coordinate
robot
world
coordinate system
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/CN2018/102872
Other languages
English (en)
French (fr)
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Publication of WO2019218526A1 publication Critical patent/WO2019218526A1/zh
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/12Target-seeking control

Definitions

  • the present application relates to the field of robots, and in particular, to a robot following person method, device, storage medium, and robot.
  • Automatic robot tracking includes target tracking and path planning.
  • target tracking uses track tracking or detecting pedestrian proportions to track pedestrians.
  • the method based on object tracking is It is necessary to select the object that needs to be tracked beforehand to track; the method based on the pedestrian ratio is to determine what the pedestrian ratio is to follow.
  • the defect in the realization process is easy to calculate by the proportion of the human body alone.
  • Objects that are not pedestrians are recognized as pedestrians.
  • the current path planning method is a grid method and a polygon fitting method. These methods are not suitable for solving the path planning of the robot in a complex environment, and the robot cannot be quickly and safely traveled to the destination.
  • the present application provides a robot following character method, including: detecting a target person by a body sense detector installed on the robot, and obtaining relative coordinates of the target person relative to the robot in a original coordinate system;
  • the first world coordinates of the robot in the world coordinate system convert the relative coordinates into second world coordinates of the target person in a world coordinate system; select at least one random in the world coordinate system according to a random extended tree algorithm An extension point; respectively selecting a second node on the line segment formed by the first node and the single random extension point, and constructing a path from the first node to the second world coordinate through the second node, the first The node is a current intermediate node on the random extension tree; at the same time, the cost of the path corresponding to each second node is separately calculated according to the A* algorithm-based evaluation function; the second node corresponding to the path with the least cost is used as the next of the random extension tree An intermediate node; when the distance between the intermediate node and the second world coordinate is within a preset
  • the present application provides a robot following character device, including: a person detecting module: for detecting a target person by a body sensor installed on the robot, and acquiring the target person in the original coordinate system relative to the robot a relative coordinate; a conversion module: configured to convert the relative coordinate to a second world coordinate of the target person in a world coordinate system according to the first world coordinate of the robot in a world coordinate system; and a calculation module: for Selecting at least one random extension point in the world coordinate system according to a random extension tree algorithm; respectively selecting a second node on the line segment formed by the first node and a single random extension point, and constructing the first node from the first node Two nodes arrive at the path of the second world coordinate, the first node is a current intermediate node on the random expansion tree; and at the same time, the cost of the path corresponding to each second node is separately calculated according to the A* algorithm-based evaluation function; The second node corresponding to the least cost path serves as the next intermediate node of the random
  • the present application further provides a computer readable non-volatile storage medium on which a computer program is stored, the program being executed by a processor to perform a robot following person method
  • the following steps detecting a target person by a body sensor installed on the robot, and obtaining relative coordinates of the target person relative to the robot in the original coordinate system; according to the first world coordinate of the robot in the world coordinate system Converting the relative coordinates into second world coordinates of the target person in a world coordinate system; selecting at least one random extension point in the world coordinate system according to a random extension tree algorithm; respectively selecting the first node and a single random extension a second node on the line segment formed by the point, and constructing a path from the first node to the second world coordinate through the second node, the first node being a current intermediate node on the random extension tree; Calculating the cost of the path corresponding to each second node according to the valuation function based on the A* algorithm; The second node is the next intermediate node of the random extension tree; when
  • the present application also provides a robot comprising a body sense detector, one or more processors, a memory, one or more applications, wherein the one or more applications are stored in The memory is configured to be executed by the one or more processors, the one or more programs configured to perform the following steps of a robot following person method: by detecting a body sense installed on the robot Detecting a target person, obtaining relative coordinates of the target person relative to the robot in the original coordinate system; converting the relative coordinates to the target person at the world coordinate according to the first world coordinate of the robot in the world coordinate system a second world coordinate; selecting at least one random extension point in the world coordinate system according to a random extension tree algorithm; respectively selecting a second node on the line segment formed by the first node and a single random extension point, and constructing a slave node a path of the first node to the second world coordinate through the second node, where the first node is on a random extension tree The current intermediate node; at the same time, the cost of the path
  • the embodiment provides a method for the robot to automatically follow the character, and can control the path of the robot moving to the target person in the world coordinate system to approach the shortest path, thereby automatically bypassing the obstacle and quickly navigating to the target person to realize the character following.
  • FIG. 1 is a schematic flow chart of an embodiment of a method for following a character of a robot according to the present application
  • FIG. 2 is a schematic diagram of an embodiment of screening an intermediate node according to the present application.
  • FIG. 3 is a schematic diagram of an embodiment of a robot following character device of the present application.
  • FIG. 4 is a schematic structural view of an embodiment of a robot of the present application.
  • An embodiment of the present application provides a method for following a character of a robot. As shown in FIG. 1 , the method includes the following steps:
  • S100 detecting a target person by a body sensor installed on the robot, and obtaining relative coordinates of the target person relative to the robot in the original coordinate system.
  • a body-sensing detector such as Xtion is installed on the robot, and the target person is detected by the body-sensing detector.
  • the camera module of the body-sensing detector is used according to the method of the OsteNI skeleton detection method.
  • the character is detected, and when the target person is detected, the coordinates of the target person in the somatosensory detector coordinate system can be returned and recorded, that is, the relative coordinates of the target person in the original coordinate system relative to the robot in the original coordinate system.
  • the relative coordinates are (x, y, z).
  • S200 Convert the relative coordinate to a second world coordinate of the target person in a world coordinate system according to the first world coordinate of the robot in a world coordinate system.
  • the world coordinate system is also called the real or real world coordinate system, or the global coordinate system, which can represent the object in the objective world. Absolute coordinates. Since the somatosensory detector is mounted on the robot, the world coordinates of the somatosensory detector are equivalent to the world coordinates of the robot. In this embodiment, the coordinates of the robot in the world coordinate system are defined as the first world coordinates, and are recorded as (x 0 , y 0 , z 0 ), in addition, it is also necessary to put the target person into the world coordinate system for consideration.
  • the relative coordinate is converted into the target person in the world according to the first world coordinate of the robot in the world coordinate system.
  • the coordinates in the coordinate system define the coordinates of the target person in the world coordinate system as the second world coordinates, which are recorded as (x 1 , y 1 , z 1 ).
  • the relative coordinates are converted into the second world coordinates of the target person in the world coordinate system by the following formula:
  • S300 Select at least one random extension point in the world coordinate system according to a random extension tree algorithm; respectively select a second node on the line segment formed by the first node and a single random extension point, and construct a path from the first node Determining, by the second node, a path of the second world coordinate, where the first node is a current intermediate node on the random extension tree; and calculating a cost of the path corresponding to each second node according to the A* algorithm-based evaluation function The second node corresponding to the path with the least cost is used as the next intermediate node of the random extension tree.
  • the first world coordinates of the robot in the world coordinate system and the second world coordinates of the target person are known from the above steps.
  • the random expansion tree algorithm the first world coordinate of the robot is used as the starting node of the random expansion tree. Recorded as X init , the target world's second world coordinates as the target node of the random expansion tree, recorded as X goal . Then, the expansion of the random expansion tree is performed by randomly selecting at least one random extension point X rand in the world coordinate system, and then selecting the second node on the line segment composed of the first node and the single random extension point respectively, and constructing the slave node.
  • the first node passes the second node to the path of the second world coordinate, and it must be stated that, when the first random expansion tree is expanded, the first node is the beginning of the random expansion tree.
  • the node X init then connects X init and X rand to form a line segment L, and moves a certain distance along the line segment L from X init to X rand to obtain a new node, which is the new embodiment.
  • the second node, denoted as X new is selected as at least one random extension point X rand .
  • the valuation function based on the A* algorithm calculates the cost of the path corresponding to each second node, and the second node corresponding to the path with the least cost is used as the next intermediate node of the random extended tree.
  • the intermediate node is added to the random tree extension is X init, X new line segment between them constitute a simple extension of the tree; this is the last calculated random tree extension extended tree node according to a random algorithm, and in accordance with The evaluation function based on the A* algorithm selects the second node as the intermediate node to join the random extension tree.
  • the cost of the path corresponding to the two nodes, the second node corresponding to the minimum path cost is used as the next intermediate node of the random extended tree, and the intermediate node is added to the random extended tree, which is used to calculate the random expansion according to the random extended tree algorithm for the subsequent cycle.
  • f(n) can be expressed as: Where k is the gravitational field coefficient, indicating the degree of convergence of the second node to the target node.
  • the A* algorithm-based evaluation function includes the first weight parameter of the current angle of the robot and the second node angle, and the current angle of the robot and the second The product of the first angular difference of the node angle, and the product of the target node angle and the second weight parameter of the second node angle and the second angle difference of the target node angle and the second node angle.
  • X rand is still a random extension point selected in the world coordinate system
  • X parent is the new parent node of the second node to be added to the random extension tree (ie the first node)
  • (Xrand-Xparent) is the node X parent
  • Direction vector to node X rand The unit vector in the direction from the node X parent to the node X rand
  • is the distance weight parameter of the node X parent to the node X rand
  • q is the weight parameter of the difference between the current angle of the robot and the second node
  • e is the target node The weight parameter of the angle and the angle of the second node.
  • ⁇ parent represents the angle between the direction of the robot coming to the node X parent and the x-axis of the world coordinate system
  • ⁇ new represents the direction of the node X parent to the node X new
  • ⁇ goal - ⁇ new represents the newly added second node X new
  • f(X new ) f(X parent )+the evaluation function. Therefore, in each selection of the second node as the intermediate node, the second node with the smallest f(X new ) is selected as the next one of the random expansion tree. The intermediate nodes are added to the random extension tree.
  • the nodes X1, X2, and X3 are intermediate nodes that have been added to the random extension tree, and the order of adding the random extension tree is: X1, X2, and X3.
  • the nodes X rand1 , X rand2 , X rand3 are random extension points generated in order to find a new intermediate node when the intermediate node X3 has joined the random extension tree. These random expansion points are used to find the next random expansion tree.
  • the intermediate node is prepared for analysis.
  • node X3 is the node X parent .
  • the intermediate node X2 closest to the random extension point X rand2 is found on the existing random extension tree.
  • X2 is the X near the intermediate node
  • X near to the connection node X rand2 found X new, the X new, X rand2, X3 and world coordinates into equation each angle difference value, can be calculated
  • the cost of the second node in the case of the robot's direction of rotation the second node with the lowest cost is selected as the intermediate node to join the random extension tree.
  • X new in Figure 3 is X1, X2, and X3 is added after random expansion. The next intermediate node in the tree.
  • S400 when the distance between the intermediate node and the second world coordinate is within a preset range, sequentially connecting each intermediate node to form a target path, and controlling the robot to follow the first world coordinate in a world coordinate system The target path moves to the second world coordinate.
  • each intermediate node is added to the random expansion tree until the distance between the selected intermediate node and the second world coordinate is within a preset range, and the intermediate node is added to the random In the extended tree, the growth of the random extended tree is completed.
  • each intermediate node is sequentially connected to form a target path, and after the target path is obtained, the robot can be controlled from the first path along the target path in the world coordinate system.
  • the world coordinates are moved to the second world coordinates, that is, the control robot moves to the second world coordinates of the target person to realize the character following.
  • the embodiment provides a method for automatically following a character by a robot.
  • the target person is detected by a body sensor installed on the robot, and the target person and the robot are placed in a world coordinate system for consideration, according to the random in the world coordinate system.
  • the extended tree algorithm and the A* algorithm-based evaluation function calculate and filter out the intermediate nodes of the random extension tree, so that the path of the control robot moving to the target person in the world coordinate system is close to the shortest path, and the obstacle is automatically bypassed and quickly navigated to The target character, to achieve the character to follow.
  • the present application provides a robot following person device, including:
  • the character detecting module 100 is configured to detect a target person by using a body sensation detector mounted on the robot, and obtain relative coordinates of the target person relative to the robot in the original coordinate system;
  • the conversion module 200 is configured to convert the relative coordinates into second world coordinates of the target person in a world coordinate system according to the first world coordinates of the robot in a world coordinate system;
  • a calculation module 300 configured to select at least one random extension point in the world coordinate system according to a random extension tree algorithm; respectively select a second node on a line segment formed by the first node and a single random extension point, and construct the second node from the first node a node passes through the second node to reach a path of the second world coordinate, and the first node is a current intermediate node on the random extension tree; and at the same time, each second node is respectively calculated according to an evaluation function based on the A* algorithm.
  • the cost of the path; the second node corresponding to the path with the least cost is the next intermediate node of the random extension tree;
  • a following module 400 when the distance between the intermediate node and the second world coordinate is within a preset range, sequentially connecting each intermediate node to form a target path, and controlling the robot to be from the first in the world coordinate system World coordinates are moved along the target path to the second world coordinates.
  • the formula for calculating the cost of the path corresponding to the second node by the calculation module 300 is as follows:
  • the second world coordinate is (dx, dy)
  • the second node coordinate is (nx, ny)
  • g(n) represents a cost function from the first node to the second node
  • h(n) represents The cost function of the node corresponding to the second node to the second world coordinate
  • k is the gravitational field coefficient, indicating the degree of convergence of the node of the second node to the node corresponding to the second world coordinate.
  • the formula for calculating the cost of the first node to the second node by the calculation module 300 is as follows;
  • X rand is a random extension point
  • X parent is the first node
  • X parent is the parent node of the second node X new
  • q is the first weight parameter of the robot at the current angle of the X parent node and the angle of the second node ( ⁇ parent - ⁇ new ) is a first angular difference between the current angle of the X parent node and the second node angle
  • e is a second weight parameter of the target node angle and the second node angle
  • ( ⁇ goal - ⁇ new ) is the second angle difference between the target node angle and the second node angle.
  • the conversion module 200 converts the relative coordinates into the second world coordinates of the target person in the world coordinate system according to the first world coordinates of the robot in the world coordinate system as follows:
  • the first world coordinate of the robot in the world coordinate system is (x 0 , y 0 , z 0 ), the relative coordinate is (x, y, z), and the target person is second in the world coordinate system.
  • the world coordinates are (x 1 , y 1 , z 1 ).
  • the present application provides a computer readable non-volatile storage medium having a computer program stored thereon, the program being implemented by a processor to implement the above embodiment
  • the robot follows the character method.
  • the computer readable storage medium includes, but is not limited to, any type of disk (including a floppy disk, a hard disk, an optical disk, a CD-ROM, and a magneto-optical disk), a ROM (Read-Only Memory), and a RAM (Random AcceSS Memory, Immediate memory), EPROM (EraSable Programmable Read-Only Memory), EEPROM (Electrically EraSable Programmable Read-Only Memory), flash memory, magnetic card or light card .
  • the storage device includes any medium that stores or transmits information in a readable form by a device (eg, a computer, a mobile phone), and may be a read only memory, a magnetic disk, an optical disk, or the like.
  • a computer-readable non-volatile storage medium can detect a target person through a body-sensing detector installed on the robot, and obtain relative coordinates of the target person relative to the robot in the original coordinate system. Converting the relative coordinates into second world coordinates of the target person in a world coordinate system according to the first world coordinates of the robot in a world coordinate system; selecting in the world coordinate system according to a random expansion tree algorithm At least one random extension point; respectively selecting a second node on the line segment formed by the first node and a single random extension point, and constructing a path from the first node to the second world coordinate through the second node, The first node is a current intermediate node on the random extension tree; at the same time, the cost of the path corresponding to each second node is separately calculated according to the A* algorithm-based evaluation function; and the second node corresponding to the least cost path is used as the random extension tree
  • the next intermediate node when the distance between the intermediate node and the second world coordinate is within
  • the embodiment of the present application provides a method for a robot to automatically follow a character, detecting a target person through a body motion detector installed on the robot, and placing the target person and the robot in a world coordinate system for consideration, in the world coordinate system according to
  • the random extension tree algorithm and the A* algorithm-based evaluation function calculate and filter out the intermediate nodes of the random extension tree, so that the path of the control robot moving to the target person in the world coordinate system is close to the shortest path, realizing automatic bypassing of obstacles and rapid navigation. Go to the target person and realize the character follow.
  • the computer readable storage medium provided by the present application also considers that each time the robot reaches the intermediate node, it is necessary to adjust the direction of the rotating robot itself, and there is time consumption in the process of the rotation direction, and the valuation function based on the A* algorithm is adopted. The calculated cost of the intermediate node is more in line with the reality.
  • the computer-readable storage medium provided by the embodiment of the present application may implement the foregoing method for following the method of the robot following the character.
  • the present application further provides a robot, as shown in FIG. 4, the server processor 403, the memory 405, the input unit 407, the display unit 409, the body sense detector 411, and the like.
  • the structural device illustrated in FIG. 4 does not constitute a limitation to all of the robots, may include more or fewer components than those illustrated, or may be combined with certain components.
  • the memory 405 can be used to store applications 401 and various functional modules, and the processor 403 runs the applications 401 stored in the memory 405 to perform various functional applications and data processing of the devices.
  • Memory 405 can be internal or external, or both internal and external.
  • the memories disclosed herein include, but are not limited to, these types of memories.
  • the memory 405 disclosed herein is by way of example only, and not limitation.
  • the input unit 407 is configured to receive an input of a signal and receive a keyword input by the user.
  • the input unit 407 can include a touch panel as well as other input devices.
  • the touch panel can collect touch operations on or near the user (such as the user using any suitable object or accessory such as a finger or a stylus on the touch panel or near the touch panel), and according to a preset
  • the program drives the corresponding connection device; other input devices may include, but are not limited to, one or more of a physical keyboard, function keys (such as play control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 409 can be used to display information input by the user or information provided to the user as well as various menus of the computer device.
  • the display unit 409 can take the form of a liquid crystal display, an organic light emitting diode, or the like.
  • the processor 403 is a control center of the computer device that connects various parts of the entire computer using various interfaces and lines, executes or executes software programs and/or modules stored in the memory 403, and calls data stored in the memory to execute Various functions and processing data.
  • the one or more processors 403 shown in FIG. 4 are capable of executing, implementing the functions of the person detection module 100, the conversion module 200, the calculation module 300, and the following module 400 shown in FIG.
  • the robot includes one or more motion sense detectors 411, one or more processors 403, and one or more memories 405, one or more applications 401, wherein the one or A plurality of applications 401 are stored in the memory 405 and configured to be executed by the one or more processors 403, the one or more applications 401 configured to perform the robot following person method described in the above embodiments .
  • the robot provided by the embodiment of the present application can implement the following method for following the person provided by the method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Feedback Control In General (AREA)

Abstract

本申请涉及机器人领域,具体涉及一种机器人跟随人物方法、装置及存储介质、机器人,所述方法包括:通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;根据随机扩展树算法和基于A*算法的估价函数计算并筛选随机扩展树的中间节点;当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。

Description

机器人跟随人物方法、装置及存储介质、机器人
本申请要求于2018年5月14日提交中国专利局、申请号为201810457340.5,发明名称为“机器人跟随人物方法、装置及存储介质、机器人”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及机器人领域,具体涉及一种机器人跟随人物方法、装置及存储介质、机器人。
背景技术
随着机器人逐渐推出市场,人们开始关注研究服务机器人如何吸引住顾客,因此,基于机器人如何自动跟随人物的研究在不断发展,路径规划也是智能机器人研究的一个重要方向。机器人自动跟随包括目标追踪跟路径规划,目前目标追踪都是采用基于物体追踪或者检测行人比例的方法来对行人进行跟踪,但是这些方法都有各自缺点,其中,发明人发现基于物体追踪的方法是事先要选定需要追踪的物体是什么才可以进行追踪;基于行人比例进行跟踪的方法是要先确定行人比例是什么才可以进行跟随,实现过程中的缺陷是单凭人体比例的计算容易将其它不是行人的物体识别成行人。另外,发明人还发现目前的路径规划方法由栅格法、多边形拟合法,这些方法都不适合解决机器人在复杂环境中的路径规划,无法让机器人快速、安全地行进到目的地。
发明内容
为克服以上技术问题,特别是现有技术中机器人无法快速、安全地行进到目标人物附近的问题,特提出以下技术方案:
第一方面,本申请提供了一种机器人跟随人物方法,包括:通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;当所述中间节点与所述第二世界坐标的距离在 预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
第二方面,本申请提供一种机器人跟随人物装置,包括:人物侦测模块:用于通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;转换模块:用于根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;计算模块:用于根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;跟随模块:用于当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
第三方面,本申请还提供了一种计算机可读非易失性存储介质,所述计算机可读非易失性存储介质上存储有计算机程序,该程序被处理器执行一种机器人跟随人物方法的下述步骤:通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
第四方面,本申请还提供了一种机器人,所述机器人包括体感侦测器、一个或多个处理器、存储器、一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行一种机器人跟随人物方法的下述步骤:通过安装在机器人上的体感侦测 器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
本实施例提供了一种机器人自动跟随人物的方法,能够控制机器人在世界坐标系下移动至目标人物的路径接近最短路径,实现自动绕开障碍物并快速导航到目标人物,实现人物跟随。
附图说明
图1为本申请机器人跟随人物方法的一实施例流程示意图;
图2为本申请筛选中间节点的一实施例示意图;
图3为本申请机器人跟随人物装置的一实施例示意图;以及
图4为本申请机器人的一实施例结构示意图。
具体实施方式
本申请实施例提供一种机器人跟随人物方法,如图1所示,所述方法包括以下步骤:
S100:通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标。
本申请实施例中,机器人上安装有体感侦测器如Xtion,通过体感侦测器检测目标人物,具体的,本实施例通过体感侦测器的摄像模组并基于OpneNI的骨架检测方法对目标人物进行检测,当检测到目标人物的时候即可返回、记录目标人物在体感侦测器坐标系中的坐标,即本实施例所述的目标人物在原始坐标系下相对于机器人的相对坐标,为了下述计算,本实施例记所述相对坐标为(x,y,z)。
S200:根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标。
为了能够得到目标人物在真实世界的位置,需要将目标人物与机器人放置到世 界坐标系中进行考量,世界坐标系也称真实或现实世界坐标系,或全局坐标系,能够表征物体在客观世界的绝对坐标。由于体感侦测器安装在机器人上,体感侦测器的世界坐标即相当于机器人的世界坐标,本实施例中定义机器人在世界坐标系下的坐标为第一世界坐标,记为(x 0,y 0,z 0),另外,还需要将目标人物也放置到世界坐标系中进行考量,本实施例根据机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为目标人物在世界坐标系下的坐标,定义目标人物在世界坐标系下的坐标为第二世界坐标,记为(x 1,y 1,z 1)。本实施例中,通过下述公式将所述相对坐标转换为目标人物在世界坐标系下的第二世界坐标,具体的:
Figure PCTCN2018102872-appb-000001
其中
Figure PCTCN2018102872-appb-000002
S300:根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点。
从上述步骤已经知道了世界坐标系下的机器人的第一世界坐标及目标人物的第二世界坐标,根据随机扩展树算法,本实施例将机器人的第一世界坐标作为随机扩展树的开始节点,记为X init,将目标人物的第二世界坐标作为随机扩展树的目标节点,记为X goal。接着进行随机扩展树的扩展,扩展方式为:在世界坐标系下随机选取至少一个随机扩展点X rand,然后分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,同时必须说明的是,在第一次随机扩展树的扩展时,所述第一节点即为随机扩展树的开始节点X init,然后连接起X init和X rand构成线段L,并沿着线段L从X init向X rand的方向移动一定的距离,得到一个新的节点,该新的节点即为本实施例所述的第二节点,记为X new,由于每一次选取的是至少一个的随机扩展点X rand,当随机扩展点X rand的数量为多个时,所得到的第二节点X new也为多个,此时基于A*算法的估价函数分别计算各第二节点对应的路径的代价,将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点,将该中间节点加入到随机扩展树中,则X init、X new与它们之间的线段构成了一棵最简单的扩展树;此为一次根据随机扩展树算法计算随机扩展树的第二节点,并根据基于A*算法的估价函数选取第二节点作为加入随机扩展树的中间节点。在此基础上,继续重复在世界坐标系 下选取至少一个随机扩展点X rand,然后在已经构成的随机扩展树上选取一个离随机扩展点X rand最近的点X near,连接X near、X rand构成线段L1,如果线段L1上没有障碍物,则沿着线段L1从X near到X rand移动一定的距离,得到新的第二节点X new,此时基于A*算法的估价函数分别计算各第二节点对应的路径的代价,将路径代价最小对应的第二节点作为随机扩展树的下一中间节点,将该中间节点加入到随机扩展树中,此为后续循环根据随机扩展树算法计算随机扩展树的第二节点,并根据基于A*算法的估价函数选取第二节点作为加入随机扩展树的中间节点的步骤。
具体的,本实施例中,所述基于A*算法的估价函数为f(n)=g(n)+h(n),其中,f(n)表示从第一节点经第二节点n然后到达目标节点的代价函数,g(n)表示从第一节点到第二节点n的代价函数,h(n)表示从第二节点n到目标节点的代价函数,并且h(n)可以直接表示为从第二节点n到目标节点连线的距离,假设目标节点坐标为(dx,dy),第二节点n的坐标为(nx,ny),则f(n)可以表示为:
Figure PCTCN2018102872-appb-000003
其中,k为引力场系数,表示第二节点往目标节点的收敛重视程度。
进一步的,由于从开始节点需要经过多个中间节点才能到达目标节点,所以每次机器人到达中间节点的时候需要调整、转动机器人的方向,在转动方向的过程中有时间的消耗,因此,本实施例考虑到转动方向时的时间消耗,在计算第二节点的代价时,所述基于A*算法的估价函数包括机器人当前角度与第二节点角度的第一权值参数与机器人当前角度与第二节点角度的第一角度差值的乘积、及目标节点角度与第二节点角度的第二权值参数与目标节点角度与第二节点角度的第二角度差值的乘积。
即上述公式g(n)进一步拓展为:
Figure PCTCN2018102872-appb-000004
其中,X rand仍然是在世界坐标系下选取的随机扩展点,X parent为新的即将加入随机扩展树的第二节点的父节点(即第一节点),(Xrand-Xparent)为节点X parent往节点X rand的方向向量,
Figure PCTCN2018102872-appb-000005
为节点X parent到节点X rand的方向上的单位向量,ρ为节点X parent到节点X rand的距离权值参数,q为机器人当前角度与第二节点角度差的权值参数,e为目标节点角度与第二节点角度的权值参数。 θ parent代表机器人来到节点X parent的方向与世界坐标系的x轴的夹角,θ new代表节点X parent到节点X new的方向,θ goalnew为表示新增的第二节点X new方向与目标节点X goal方向的角度差值。因而,可以得到本实施例的第二节点代价计算公式为:
Figure PCTCN2018102872-appb-000006
即f(X new)=f(X parent)+估价函数,因此,在每一次选取第二节点作为中间节点的选择中,选择f(X new)最小的第二节点作为随机扩展树的下一个中间节点加入到随机扩展树中。
如图2所示,节点X1,X2,X3是已经加入随机扩展树的中间节点,加入随机扩展树的顺序为:X1,X2,X3。节点X rand1、X rand2、X rand3是指中间节点X3已经加入随机扩展树的情况下为了找新的中间节点而产生的随机扩展点,这几个随机扩展点是为了找到下一个加入随机扩展树的中间节点做分析准备的,对应上述公式中,节点X3即为节点X parent,以随机扩展点X rand2为例,在已有的随机扩展树上找到离随机扩展点X rand2最近的中间节点X2,中间节点X2即为X near,然后在X near到X rand2的连线上找到第二节点X new,将X new、X rand2、X3的世界坐标以及各角度差值代入公式,即可计算出考虑了机器人方向转动时间情况下的第二节点的代价,然后选取代价最小的第二节点作为中间节点加入随机扩展树中,例如图3中的X new即为X1,X2,X3之后加入随机扩展树中的下一个中间节点。
S400:当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
在每一次确定了一个中间节点后,将该中间节点加入到随机扩展树中,直到所选取的中间节点与所述第二世界坐标的距离在预设范围内时,将该中间节点加入到随机扩展树中,完成随机扩展树的生长,此时便可依次连接各中间节点形成目标路径,在得到目标路径后,便可控制机器人在世界坐标系下沿着所述目标路径从所述第一世界坐标移动至第二世界坐标,即控制机器人移动至目标人物的第二世界坐标处,实现人物跟随。
本实施例提供了一种机器人自动跟随人物的方法,通过安装在机器人上的体感 侦测器检测目标人物,并将目标人物与机器人放置在世界坐标系下进行考量,在世界坐标系下根据随机扩展树算法和基于A*算法的估价函数计算并筛选出随机扩展树的中间节点,使得控制机器人在世界坐标系下移动至目标人物的路径接近最短路径,实现自动绕开障碍物并快速导航到目标人物,实现人物跟随。
如图3所示,在另一种实施例中,本申请提供了一种机器人跟随人物装置,包括:
人物侦测模块100:用于通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;
转换模块200:用于根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;
计算模块300:用于根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;
跟随模块400:用于当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
所述计算模块300计算第二节点对应的路径的代价的公式如下:
Figure PCTCN2018102872-appb-000007
其中,所述第二世界坐标为(dx,dy),所述第二节点坐标为(nx,ny),g(n)表示从第一节点到第二节点的代价函数,h(n)表示从第二节点到第二世界坐标对应的节点的代价函数,k为引力场系数,表示第二节点往第二世界坐标对应的节点的收敛重视程度。
进一步的,所述计算模块300计算第一节点到第二节点的代价的公式如下;
Figure PCTCN2018102872-appb-000008
其中,X rand为随机扩展点,X parent为第一节点,且X parent为第二节点X new的父节点,q为机器人在X parent节点的当前角度与第二节点角度的第一权值参数,(θ parentnew)为机器人在X parent节点的当前角度与第二节点角度的第一角度差 值,e为目标节点角度与第二节点角度的第二权值参数,所述目标节点为第二世界坐标对应的节点,(θ goalnew)为目标节点角度与第二节点角度的第二角度差值。
具体的,所述转换模块200根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标的公式如下:
Figure PCTCN2018102872-appb-000009
其中
Figure PCTCN2018102872-appb-000010
所述机器人在世界坐标系下的第一世界坐标为(x 0,y 0,z 0),所述相对坐标为(x,y,z),所述目标人物在世界坐标系下的第二世界坐标为(x 1,y 1,z 1)。
在另一种实施例中,本申请提供了一种计算机可读非易失性存储介质,计算机可读非易失性存储介质上存储有计算机程序,该程序被处理器执行时实现上述实施例所述的机器人跟随人物方法。其中,计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random AcceSS Memory,随即存储器)、EPROM(EraSable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically EraSable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
本申请实施例提供的一种计算机可读非易失性存储介质,可实现通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。本申请实施例提供了一种机器人自动跟随人物的方法,通过安装在机器人上的体感侦测器检 测目标人物,并将目标人物与机器人放置在世界坐标系下进行考量,在世界坐标系下根据随机扩展树算法和基于A*算法的估价函数计算并筛选出随机扩展树的中间节点,使得控制机器人在世界坐标系下移动至目标人物的路径接近最短路径,实现自动绕开障碍物并快速导航到目标人物,实现人物跟随。此外,本申请提供的计算机可读存储介质还考虑了每次机器人到中间节点的时候需要调整转动机器人自己的方向,在转动方向的过程中有时间的消耗,通过该基于A*算法的估价函数计算出的中间节点的代价更符合现实情况。
本申请实施例提供的计算机可读存储介质可以实现上述机器人跟随人物方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。
此外,在又一种实施例中,本申请还提供一种机器人,如图4所示,所述服务器处理器403、存储器405、输入单元407、显示单元409、体感侦测器411等器件。本领域技术人员可以理解,图4示出的结构器件并不构成对所有机器人的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器405可用于存储应用程序401以及各功能模块,处理器403运行存储在存储器405的应用程序401,从而执行设备的各种功能应用以及数据处理。存储器405可以是内存储器或外存储器,或者包括内存储器和外存储器两者。本申请所公开的存储器包括但不限于这些类型的存储器。本申请所公开的存储器405只作为例子而非作为限定。
输入单元407用于接收信号的输入,以及接收用户输入的关键字。输入单元407可包括触控面板以及其它输入设备。触控面板可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元409可用于显示用户输入的信息或提供给用户的信息以及计算机设备的各种菜单。显示单元409可采用液晶显示器、有机发光二极管等形式。处理器403是计算机设备的控制中心,利用各种接口和线路连接整个电脑的各个部分,通过运行或执行存储在存储器403内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。图4中所示的一个或多个处理器403能够执行、实现图3中所示的人物侦测模块100、转换模块200、计算模块300、跟随模块400的功能。
在一种实施方式中,所述机器人包括一个或多个体感侦测器411,一个或多个处理器403,以及一个或多个存储器405,一个或多个应用程序401,其中所述一个 或多个应用程序401被存储在存储器405中并被配置为由所述一个或多个处理器403执行,所述一个或多个应用程序401配置用于执行以上实施例所述的机器人跟随人物方法。
本申请实施例提供的机器人可以实现上述提供的跟随人物方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。

Claims (16)

  1. 一种机器人跟随人物方法,包括:
    通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;
    根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;
    根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;
    当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
  2. 根据权利要求1所述的方法,所述根据基于A*算法的估价函数计算第二节点对应的路径的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100001
    其中,所述第二世界坐标为(dx,dy),所述第二节点坐标为(nx,ny),g(n)表示从第一节点到第二节点的代价函数,h(n)表示从第二节点到第二世界坐标对应的节点的代价函数,k为引力场系数,表示第二节点往第二世界坐标对应的节点的收敛重视程度。
  3. 根据权利要求2所述的方法,所述第一节点到第二节点的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100002
    其中,Xrand为随机扩展点,Xparent为第一节点,且Xparent为第二节点Xnew的父节点,q为机器人在Xparent节点的当前角度与第二节点角度的第一权值参数,(θ parentnew)为机器人在Xparent节点的当前角度与第二节点角度的第一角度差值,e为目标节点角度与第二节点角度的第二权值参数,所述目标节点为第二世界坐标对应的节点,(θ goalnew)为目标节点角度与第二节点角度的第二角度差值。
  4. 根据权利要求1所述的方法,通过如下公式根据机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为目标人物在世界坐标系下的第二世界坐标:
    Figure PCTCN2018102872-appb-100003
    其中
    Figure PCTCN2018102872-appb-100004
    所述机器人在世界坐标系下的第一世界坐标为(x 0,y 0,z 0),所述相对坐标为(x,y,z),所述目标人物在世界坐标系下的第二世界坐标为(x 1,y 1,z 1)。
  5. 一种机器人跟随人物装置,包括:
    人物侦测模块:用于通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;
    转换模块:用于根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;
    计算模块:用于根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;
    跟随模块:用于当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
  6. 根据权利要求5所述的装置,所述计算模块计算第二节点对应的路径的代价的公式如下:
    Figure PCTCN2018102872-appb-100005
    其中,所述第二世界坐标为(dx,dy),所述第二节点坐标为(nx,ny),g(n)表示从第一节点到第二节点的代价函数,h(n)表示从第二节点到第二世界坐标对应的节点的代价函数,k为引力场系数,表示第二节点往第二世界坐标对应的节点的收敛重视程度。
  7. 根据权利要求6所述的装置,所述计算模块计算第一节点到第二节点的代价的公式如下;
    Figure PCTCN2018102872-appb-100006
    其中,Xrand为随机扩展点,Xparent为第一节点,且Xparent为第二节点Xnew的父节点,q为机器人在Xparent节点的当前角度与第二节点角度的第一权值参数,(θ parentnew)为机器人在Xparent节点的当前角度与第二节点角度的第一角度差值,e为目标节点角度与第二节点角度的第二权值参数,所述目标节点为第二世界坐标对应的节点,(θ goalnew)为目标节点角度与第二节点角度的第二角度差值。
  8. 根据权利要求5所述的装置,所述转换模块根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标的公式如下:
    Figure PCTCN2018102872-appb-100007
    其中
    Figure PCTCN2018102872-appb-100008
    所述机器人在世界坐标系下的第一世界坐标为(x 0,y 0,z 0),所述相对坐标为(x,y,z),所述目标人物在世界坐标系下的第二世界坐标为(x 1,y 1,z 1)。
  9. 一种计算机可读非易失性存储介质,所述计算机可读非易失性存储介质上存储有计算机程序,该程序被处理器执行时实现一种机器人跟随人物方法的下述步骤:
    通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐标系下相对于机器人的相对坐标;
    根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;
    根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;
    当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
  10. 根据权利要求9所述的计算机可读非易失性存储介质,所述根据基于A*算 法的估价函数计算第二节点对应的路径的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100009
    其中,所述第二世界坐标为(dx,dy),所述第二节点坐标为(nx,ny),g(n)表示从第一节点到第二节点的代价函数,h(n)表示从第二节点到第二世界坐标对应的节点的代价函数,k为引力场系数,表示第二节点往第二世界坐标对应的节点的收敛重视程度。
  11. 根据权利要求10所述的计算机可读非易失性存储介质,所述第一节点到第二节点的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100010
    其中,Xrand为随机扩展点,Xparent为第一节点,且Xparent为第二节点Xnew的父节点,q为机器人在Xparent节点的当前角度与第二节点角度的第一权值参数,(θ parentnew)为机器人在Xparent节点的当前角度与第二节点角度的第一角度差值,e为目标节点角度与第二节点角度的第二权值参数,所述目标节点为第二世界坐标对应的节点,(θ goalnew)为目标节点角度与第二节点角度的第二角度差值。
  12. 根据权利要求9所述的计算机可读非易失性存储介质,通过如下公式根据机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为目标人物在世界坐标系下的第二世界坐标:
    Figure PCTCN2018102872-appb-100011
    其中
    Figure PCTCN2018102872-appb-100012
    所述机器人在世界坐标系下的第一世界坐标为(x 0,y 0,z 0),所述相对坐标为(x,y,z),所述目标人物在世界坐标系下的第二世界坐标为(x 1,y 1,z 1)。
  13. 一种机器人,包括:
    体感侦测器;
    一个或多个处理器;
    存储器;
    一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行一种机器人跟随人物方法的下述步骤:
    通过安装在机器人上的体感侦测器检测目标人物,获取所述目标人物在原始坐 标系下相对于机器人的相对坐标;
    根据所述机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为所述目标人物在世界坐标系下的第二世界坐标;
    根据随机扩展树算法在所述世界坐标系下选取至少一个随机扩展点;分别选取第一节点与单个随机扩展点构成的线段上的第二节点,并构建从所述第一节点经过所述第二节点到达所述第二世界坐标的路径,所述第一节点为随机扩展树上的当前中间节点;同时,根据基于A*算法的估价函数分别计算各第二节点对应的路径的代价;将代价最小的路径对应的第二节点作为随机扩展树的下一中间节点;
    当所述中间节点与所述第二世界坐标的距离在预设范围内时,依次连接各中间节点形成目标路径,控制所述机器人在世界坐标系下从所述第一世界坐标沿着所述目标路径移动至所述第二世界坐标。
  14. 根据权利要求13所述的机器人,所述根据基于A*算法的估价函数计算第二节点对应的路径的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100013
    其中,所述第二世界坐标为(dx,dy),所述第二节点坐标为(nx,ny),g(n)表示从第一节点到第二节点的代价函数,h(n)表示从第二节点到第二世界坐标对应的节点的代价函数,k为引力场系数,表示第二节点往第二世界坐标对应的节点的收敛重视程度。
  15. 根据权利要求14所述的机器人,所述第一节点到第二节点的代价通过如下公式计算:
    Figure PCTCN2018102872-appb-100014
    其中,Xrand为随机扩展点,Xparent为第一节点,且Xparent为第二节点Xnew的父节点,q为机器人在Xparent节点的当前角度与第二节点角度的第一权值参数,(θ parentnew)为机器人在Xparent节点的当前角度与第二节点角度的第一角度差值,e为目标节点角度与第二节点角度的第二权值参数,所述目标节点为第二世界坐标对应的节点,(θ goalnew)为目标节点角度与第二节点角度的第二角度差值。
  16. 根据权利要求13所述的机器人,通过如下公式根据机器人在世界坐标系下的第一世界坐标将所述相对坐标转换为目标人物在世界坐标系下的第二世界坐标:
    Figure PCTCN2018102872-appb-100015
    其中
    Figure PCTCN2018102872-appb-100016
    所述机器人在世界坐标系下的第一世界坐标为(x 0,y 0,z 0),所述相对坐标为(x,y,z),所述目标人物在世界坐标系下的第二世界坐标为(x 1,y 1,z 1)。
PCT/CN2018/102872 2018-05-14 2018-08-29 机器人跟随人物方法、装置及存储介质、机器人 Ceased WO2019218526A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810457340.5 2018-05-14
CN201810457340.5A CN108717302B (zh) 2018-05-14 2018-05-14 机器人跟随人物方法、装置及存储介质、机器人

Publications (1)

Publication Number Publication Date
WO2019218526A1 true WO2019218526A1 (zh) 2019-11-21

Family

ID=63899962

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/102872 Ceased WO2019218526A1 (zh) 2018-05-14 2018-08-29 机器人跟随人物方法、装置及存储介质、机器人

Country Status (2)

Country Link
CN (1) CN108717302B (zh)
WO (1) WO2019218526A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117621035A (zh) * 2022-08-17 2024-03-01 北京小米机器人技术有限公司 机器人控制方法、装置、机器人和存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113311422B (zh) * 2020-02-27 2024-09-24 富士通株式会社 坐标转换方法、装置和数据处理设备
CN112809673B (zh) * 2020-12-30 2022-07-19 广东博智林机器人有限公司 机器人的坐标确定方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110035087A1 (en) * 2009-08-10 2011-02-10 Samsung Electronics Co., Ltd. Method and apparatus to plan motion path of robot
CN105652895A (zh) * 2014-11-12 2016-06-08 沈阳新松机器人自动化股份有限公司 基于激光传感器的移动机器人人体跟踪系统及跟踪方法
CN106774314A (zh) * 2016-12-11 2017-05-31 北京联合大学 一种基于行走轨迹的家庭服务机器人路径规划方法
CN107065865A (zh) * 2017-03-21 2017-08-18 北京航空航天大学 一种基于剪枝快速随机搜索树算法的路径规划方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2649193T3 (es) * 2013-07-15 2018-01-10 Bae Systems Plc Planificación de ruta
CN105807760B (zh) * 2014-12-30 2020-01-03 Tcl集团股份有限公司 一种智能机器人及其自建路径的方法和装置
CN105955251A (zh) * 2016-03-11 2016-09-21 北京克路德人工智能科技有限公司 一种机器人的视觉跟随控制方法及机器人
CN105843222B (zh) * 2016-03-18 2019-04-12 北京航空航天大学 一种六轮/腿机器人复合运动路径规划方法
CN106406338B (zh) * 2016-04-14 2023-08-18 中山大学 一种基于激光测距仪的全向移动机器人的自主导航装置及其方法
WO2018014018A1 (en) * 2016-07-15 2018-01-18 University Of Central Florida Research Foundation, Inc. Synthetic data generation of time series data
CN107688342B (zh) * 2017-03-27 2019-05-10 平安科技(深圳)有限公司 机器人的避障控制系统及方法
CN107677285B (zh) * 2017-04-11 2019-05-28 平安科技(深圳)有限公司 机器人的路径规划系统及方法
CN107608392A (zh) * 2017-09-19 2018-01-19 浙江大华技术股份有限公司 一种目标跟随的方法及设备
CN107909603A (zh) * 2017-12-01 2018-04-13 浙江工业大学 一种面向跟随机器人的视觉跟踪方法
CN107943053A (zh) * 2017-12-15 2018-04-20 陕西理工大学 一种移动机器人的路径规划方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110035087A1 (en) * 2009-08-10 2011-02-10 Samsung Electronics Co., Ltd. Method and apparatus to plan motion path of robot
CN105652895A (zh) * 2014-11-12 2016-06-08 沈阳新松机器人自动化股份有限公司 基于激光传感器的移动机器人人体跟踪系统及跟踪方法
CN106774314A (zh) * 2016-12-11 2017-05-31 北京联合大学 一种基于行走轨迹的家庭服务机器人路径规划方法
CN107065865A (zh) * 2017-03-21 2017-08-18 北京航空航天大学 一种基于剪枝快速随机搜索树算法的路径规划方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WANG BIN ET AL.: "Algorithm of Path Planning of RApidity-Exploring random tree based on Heuristics", MACHINERY, vol. 45, no. 520, 31 December 2007 (2007-12-31), pages 1 - 4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117621035A (zh) * 2022-08-17 2024-03-01 北京小米机器人技术有限公司 机器人控制方法、装置、机器人和存储介质

Also Published As

Publication number Publication date
CN108717302A (zh) 2018-10-30
CN108717302B (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
ES3062071T3 (en) Automated determination of image acquisition locations in building interiors using multiple data capture devices
Bai et al. Virtual-blind-road following-based wearable navigation device for blind people
JP6705465B2 (ja) 可観測性グリッドベースの自律的環境探索
Elloumi et al. Indoor pedestrian localization with a smartphone: A comparison of inertial and vision-based methods
CN102622762B (zh) 使用深度图的实时相机跟踪
Endo et al. Indoor positioning and obstacle detection for visually impaired navigation system based on LSD-SLAM
JP2022511359A (ja) ウェイポイントマッチングを用いた自律マップトラバーサル
Shoukat et al. Cognitive robotics: Deep learning approaches for trajectory and motion control in complex environment
CN106796434A (zh) 地图生成方法、自身位置推定方法、机器人系统和机器人
Ye et al. 6-DOF pose estimation of a robotic navigation aid by tracking visual and geometric features
JP2015532077A (ja) 少なくとも1つの画像を撮影する撮影装置に関連する装置の位置及び方向の決定方法
GB2527207A (en) Mobile human interface robot
CN109895100B (zh) 一种导航地图的生成方法、装置及机器人
US11654573B2 (en) Methods and systems for enabling human robot interaction by sharing cognition
CN106708037A (zh) 自主移动式设备定位的方法、装置及自主移动式设备
Liu et al. Xyz indoor navigation through augmented reality: a research in progress
WO2019218526A1 (zh) 机器人跟随人物方法、装置及存储介质、机器人
Löffler et al. Evaluation Criteria for Inside-Out Indoor Positioning Systems Based on Machine Learning.
CN113910224B (zh) 机器人跟随的方法、装置及电子设备
CN109164802A (zh) 一种机器人迷宫行走方法、装置及机器人
JP7114686B2 (ja) 拡張現実装置及び位置決め方法
CN115388876B (zh) 智能可移动设备导航方法、装置、设备和存储介质
Messbah et al. Robot indoor navigation: comparative analysis of LiDAR 2D and visual SLAM
WO2022188333A1 (zh) 一种行走方法、装置和计算机存储介质
Chen et al. Ceb-map: Visual localization error prediction for safe navigation

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: 18918591

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18918591

Country of ref document: EP

Kind code of ref document: A1