Robot motion control method and related device, robot and storage medium

By calculating the boundary confidence in the robot motion control and determining the motion vector based on the pixel value, the problem of insufficient robot adaptability to the environment is solved, and higher environmental adaptability and accuracy are achieved.

CN120791807AActive Publication Date: 2025-10-17IFLYTEK (SUZHOU) TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202511306066.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-12
Publication Date
2025-10-17
Estimated Expiration
2045-09-12

AI Technical Summary

Technical Problem

Existing robot motion control technology has weak adaptability to the environment, resulting in insufficient robustness.

Method used

By acquiring a target point in a map image, a boundary confidence is calculated based on a first pixel value of the target point and a second pixel value representing a boundary feature, and in response to the confidence satisfying a condition, a motion vector of the robot is determined and controlled.

Benefits of technology

It improves the adaptability of robot motion control to the environment, reduces the boundary misjudgment rate, and improves the accuracy and robustness of motion control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120791807A_ABST
    Figure CN120791807A_ABST
Patent Text Reader

Abstract

The invention discloses a robot motion control method, a related device, a robot and a storage medium, and the robot motion control method comprises the steps: obtaining a target point of the robot in a map image; based on the first pixel value of the target point and the second pixel value representing the boundary feature, obtaining a boundary confidence coefficient; wherein the boundary confidence represents the boundary validity at the target point; and determining a motion vector of the robot based on the image coordinate of the target point in response to the condition that the boundary confidence meets a confidence condition, and controlling the robot to move based on the motion vector. According to the scheme, the adaptability of robot motion control to the environment can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robots, in particular to a robot motion control method and related device, robot and storage medium. BACKGROUND

[0002] Thanks to the rapid development of artificial intelligence, electronic information and other technologies, robots have been widely used in hotels, logistics and many other places.

[0003] At present, the existing robot motion control technology usually has weak adaptability to the environment, resulting in insufficient robustness of robot motion control. In view of this, how to improve the environmental adaptability of robot motion control has become a problem to be solved. SUMMARY

[0004] The technical problem solved by the present application is to provide a robot motion control method and related device, robot and storage medium, which can improve the environmental adaptability of robot motion control.

[0005] In order to solve the above technical problem, the first aspect of the present application provides a robot motion control method, comprising: obtaining a target point of a robot in a map image; obtaining a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature; wherein the boundary confidence represents the boundary effectiveness at the target point; in response to the boundary confidence satisfying a confidence condition, determining a motion vector of the robot based on the image coordinates of the target point, and controlling the robot to move based on the motion vector.

[0006] In order to solve the above technical problem, the second aspect of the present application provides a robot motion control device, comprising: a target point acquisition module, a confidence calculation module and a motion control module, the target point acquisition module is used for obtaining a target point of a robot in a map image; the confidence calculation module is used for obtaining a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature; wherein the boundary confidence represents the boundary effectiveness at the target point; the motion control module is used for determining a motion vector of the robot based on the image coordinates of the target point in response to the boundary confidence satisfying a confidence condition, and controlling the robot to move based on the motion vector.

[0007] In order to solve the above technical problem, the third aspect of the present application provides an electronic device, at least comprising a storage and a processor coupled to each other, the storage at least stores program instructions, and the processor is used to execute the program instructions to realize the robot motion control method in the first aspect.

[0008] In order to solve the above technical problem, the fourth aspect of the present application provides a robot, comprising a driving device and an electronic device in the third aspect, the driving device is used to drive the whole robot to move.

[0009] To solve the above technical problems, the fifth aspect of the present application provides a computer readable storage medium, which stores program instructions capable of being run by a processor, and the program instructions are used to implement the robot motion control method of the first aspect.

[0010] The above scheme obtains a target point of the robot in the map image, obtains a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature, and the boundary confidence represents the boundary effectiveness at the target point, so that in response to the boundary confidence satisfying a confidence condition, a motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move based on the motion vector. Since the boundary confidence is determined by the first pixel value and the second pixel value, it is helpful to achieve pixel-level filtering accuracy with the aid of gray gradient information. Compared with traditional methods such as morphological operations, the boundary misjudgment rate can be greatly reduced. In the case where the boundary confidence satisfies the confidence condition, the motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move accordingly, which can improve the environmental adaptability of the robot motion control. BRIEF DESCRIPTION OF DRAWINGS

[0011] Figure 1 is a flowchart of an embodiment of the robot motion control method of the present application; Figure 2 is a framework diagram of an embodiment of the robot motion control device of the present application; Figure 3 is a framework diagram of an embodiment of the electronic device of the present application; Figure 4 is a framework diagram of an embodiment of the robot of the present application; Figure 5 is a framework diagram of an embodiment of the computer readable storage medium of the present application. DETAILED DESCRIPTION

[0012] The schemes of the embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0013] In the following description, specific details are set forth in order to provide a thorough understanding of the present application, but the present application can be practiced without these details. In other instances, well-known methods, structures and techniques have not been described in detail in order to avoid obscuring the present application.

[0014] The terms "system" and "network" are often used interchangeably herein. The term "and / or" herein is merely an association relationship between associated objects, which means that there can be three relationships, for example, A and / or B can represent the three cases of A alone, A and B together, and B alone. In addition, the segment " / " herein generally represents an "or" relationship between the front and rear associated objects. In addition, "multiple" herein means two or more than two.

[0015] Please refer to Figure 1 , Figure 1 is a flowchart of an embodiment of the robot motion control method of the present application. Specifically, it can include the following steps: Step S11: Obtain a target point of the robot in a map image.

[0016] In one implementation scenario, the map image can include, but is not limited to, a grid map, a three-dimensional map, etc., and the specific type of the map image is not limited herein.

[0017] In one implementation scenario, as one possible example, the target point can be generated by a target object triggering a point selection instruction in the map image. For example, taking a hotel robot as an example, the hotel front desk, etc. can control a terminal device displaying a map image, and trigger a point selection instruction on the map image displayed by the terminal device, thereby generating a target point at the position of the point selection instruction on the map image. In addition, if the point selection instruction is triggered again on the map image displayed by the terminal device, a new target point can be generated at the newly triggered point selection instruction.

[0018] In another implementation scenario, as another possible example, the target point can also be pre-set in the map image. For example, still taking the hotel robot as an example, the hotel front desk, etc. can pre-trigger a point selection instruction on the map image displayed by the terminal device, thereby generating a target point at the position of the point selection instruction on the map image, which can remain unchanged thereafter.

[0019] It should be noted that the above examples are only a few possible examples of obtaining a target point in actual applications, and other obtaining methods are not limited herein, nor are they exemplified one by one. In addition, the target point can be considered as a destination or end point of the robot. Of course, the target point can also have other meanings under certain scenarios. For example, still taking the hotel robot as an example, under the welcome scenario, the target point can be a welcome point.

[0020] Step S12: Obtain a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature.

[0021] In the embodiments of the present disclosure, the boundary confidence represents the effectiveness of the boundary at the target point. For example, the greater the boundary confidence, the higher the effectiveness of the boundary at the target point, and vice versa, the smaller the boundary confidence, the lower the effectiveness of the boundary at the target point.

[0022] In one implementation scenario, the second pixel value representing the boundary feature can be set according to actual application. It should be noted that the core role of the second pixel value representing the boundary feature (i.e., the boundary feature value) is to distinguish the edge position of different regions (such as walls, table legs, flat ground, etc.) in the map image and reflect the attribute of the boundary in the form of a value (such as an image gray value). That is, the closer the first pixel value of the target point to the boundary feature value, the more certain it is that the target point is close to or located at the edge position of the relevant region in the map image, and the higher the certainty, the more it can support the robot to move close to the target point according to the image coordinates of the target point; on the contrary, the farther the first pixel value of the target point from the boundary feature value, the less certain it is that the target point is close to or located at the edge position of the relevant region in the map image (for example, the target point can actually be located at the wall), and the higher the uncertainty, the less it can support the robot to move close to the target point according to the image coordinates of the target point. Without loss of generality, in order to be compatible with map images using different standards, the second pixel value can be set to the middle value of the value range of the first pixel value. For example, in the case where the value range of the first pixel value is 0 to 255, the second pixel value can be set to 127. Of course, the above example is only one possible example of the second pixel value in actual application, and the specific value of the second pixel value is not limited here, nor will it be exemplified one by one.

[0023] In one implementation scenario, the difference value between the first pixel value and the second pixel value can be obtained as a pixel difference value, and then the boundary confidence can be obtained based on the pixel difference value. It should be noted that the boundary confidence can be negatively correlated with the absolute value of the pixel difference value. That is, the larger the absolute value of the pixel difference value, the higher the boundary confidence, and vice versa, the smaller the absolute value of the pixel difference value, the lower the boundary confidence. The above-mentioned manner of obtaining the difference value between the first pixel value and the second pixel value as a pixel difference value, and then obtaining the boundary confidence based on the pixel difference value, and the boundary confidence being negatively correlated with the absolute value of the pixel difference value, can eliminate the absolute brightness influence as much as possible, which helps to reduce the sensitivity to overall illumination intensity changes.

[0024] In one specific implementation scenario, after obtaining the pixel difference value, the ratio between the pixel difference value and the second pixel value can be obtained as a pixel ratio value, and then the difference value between 1 and the square of the pixel ratio value can be obtained as the boundary confidence. The above-mentioned manner of obtaining the ratio between the pixel difference value and the second pixel value as a pixel ratio value can map the pixel difference value to the value range of -1 to 1, which can eliminate the absolute brightness influence as much as possible, and then obtaining the difference value between 1 and the square of the pixel ratio value as the boundary confidence, which helps to reduce the sensitivity to overall illumination intensity changes.

[0025] In a specific implementation scenario, for ease of description, taking the case where the second pixel value is set to 127 when the value range of the first pixel value is 0 to 255 as an example, the boundary confidence can be expressed as: edge_confidence = 1 - pow((pixel_value - 127) / 127, 2) In the above formula, edge_confidence represents the boundary confidence, pow represents the power operation, pixel_value represents the first pixel value, (pixel_value - 127) / 127 represents the pixel ratio, that is, the base of the power operation, and 2 is the power of the power operation. Through the above formula, a high confidence greater than 0.9 can be generated when the first pixel value is in the interval [127-25, 127+25]. Of course, the above example is only one possible calculation method of the boundary confidence, and the calculation method of the boundary confidence is not limited herein, and examples are not repeated one by one.

[0026] Step S13: In response to the boundary confidence satisfying the confidence condition, determining the motion vector of the robot based on the image coordinates of the target point, and controlling the robot to move based on the motion vector.

[0027] In one implementation scenario, the confidence condition can include but is not limited to: the boundary confidence is higher than a confidence threshold, the boundary confidence is not lower than the confidence threshold, etc., and the specific content of the confidence condition is not limited herein. It should be noted that the confidence threshold can be set according to actual application, such as can be set to include but is not limited to 0.9, 0.95, etc., and the confidence threshold is not limited herein.

[0028] In one implementation scenario, in response to the boundary confidence not satisfying the confidence condition, a prompt message can be output, and the prompt message is used to remind to re-specify the target point of the robot in the map image. That is, in the case where the boundary confidence does not satisfy the confidence condition, a prompt message can be output, and the prompt message is used to remind to re-specify the target point of the robot in the map image. On this basis, the foregoing step of obtaining the target point of the robot in the map image can be returned for iteration to determine the running vector of the robot.

[0029] In one implementation scenario, the motion vector can be determined based on an obstacle-avoiding vector after the detection vector evades obstacles, a vector module value of the detection vector, and a reference step length, the detection vector representing a direction vector sensed by the robot. To obtain the reference step length, the image coordinates can be mapped based on an environment resolution parameter of the robot to obtain physical coordinates of the target point in a real space. It should be noted that the environment resolution parameter represents the conversion relationship between the image coordinate system of the map image and the space coordinate system of the real space. On this basis, the local data within a first range centered on the physical coordinates can be extracted from the sensing data of the robot on the surrounding environment as target data, and then the reference step length can be obtained based on the environment resolution parameter and a conflict index determined by the target data, and the conflict index represents the distribution density of obstacles. The above-mentioned method extracts the local data within the first range centered on the physical coordinates in the sensing data as the target data, determines the conflict index representing the distribution density of obstacles based on the target data, and obtains the reference step length by combining the environment resolution parameter, i.e., the reference step length is an adaptive elastic step length, which helps to improve the search efficiency compared with the fixed step length, especially in the case of complex terrain. It should be noted that through experiments, the adaptive elastic step length can reduce 60% of the calculation redundancy compared with the fixed step length.

[0030] In one specific implementation scenario, the detection vector can be sensed by a direction sensor or other related sensors of the robot. In addition, it should be noted that the detection vector represents the direction angle relative to the robot.

[0031] In one specific implementation scenario, as mentioned above, the environment resolution parameter represents the conversion relationship between the image coordinate system of the map image and the space coordinate system of the real space, such as the mapping between the physical scale and the image pixel scale. For details, refer to the technical details of the conversion between the image coordinate system and the space coordinate system, which will not be described here. For ease of description, the environment resolution parameter can be denoted as yaml_param.resolution.

[0032] In one specific implementation scenario, the robot can be configured with related sensors for detecting the surrounding environment to obtain sensing data of the surrounding environment from the related sensors. For example, a single-line laser radar can be used to detect the distance of an object from the robot on a straight line at a certain emission angle of a laser beam and a time interval of the laser beam return. In addition, in the case that the detection parameters also include the loss of the laser beam return, the material of the object can also be determined. In this way, the sensing data of the surrounding environment can be obtained by different emission angles. Of course, the above example is only an example of using a single-line laser radar to illustrate the acquisition method of sensing data, and the same can be applied to other sensors, which will not be described one by one here.

[0033] In a specific implementation scenario, the first range can be set according to actual application. Exemplarily, the first range can be set to 1 meter around, 1.5 meters around, 2 meters around, and the like, and the specific value of the first range is not limited herein.

[0034] In a specific implementation scenario, after obtaining the target data, the distribution density of the obstacle can be calculated according to the target data. Still taking the single-line laser radar as an example, as described above, the target data can include whether there is an object at each position within the first range centered on the physical coordinates and the material of the object, and if there is an object at a certain position and the robot cannot normally pass through the object according to the material of the object, the object can be regarded as an obstacle. On this basis, the distribution density of the obstacle (such as, how many obstacles per square meter, or how many obstacles per square meter) can be calculated based on the number of obstacles determined within the first range and the volume (or area) of the first range. Of course, the above example is only one possible example of calculating the distribution density in actual application, and other possible calculation methods are not limited herein, and will not be exemplified one by one.

[0035] In a specific implementation scenario, after calculating the distribution density of the obstacle, the conflict index can be determined accordingly. Exemplarily, the conflict index and the distribution density can be in a positive correlation. That is, the conflict index can be positively correlated with the distribution density. In other words, the greater the distribution density, the higher the conflict index, and vice versa, the smaller the distribution density, the lower the conflict index. Of course, the specific functional relationship between the conflict index and the distribution density can be a linear relationship or a nonlinear relationship, and is not limited herein.

[0036] In a specific implementation scenario, after obtaining the conflict index, the reference step length can be calculated in combination with the environmental resolution parameter. Exemplarily, the reference step length can be negatively correlated with the conflict index. That is, the higher the conflict index, the greater the reference step length, and vice versa, the lower the conflict index, the smaller the reference step length. As one possible example, a preset coefficient (such as 0.5, etc.) can be multiplied by the conflict index, and then 1 minus the product is multiplied by the environmental resolution parameter to obtain the reference step length. For ease of description, the reference step length step_delta can be represented as: step_delta=yaml_param.resolution*(1-0.5*conflict_index) In the formula, yaml_param.resolution represents the environmental resolution parameter, conflict_index represents the conflict index, and 0.5 is a preset coefficient. Of course, the above example is only one possible calculation method of the reference step, and other possible calculation methods are not limited herein, and examples are not repeated one by one. In addition, as another possible implementation example, the reference step can also be dynamically updated based on new sensing data of the surrounding environment of the robot during movement. It should be noted that the robot can dynamically update the reference step at a target time during movement. The target time can be determined according to a preset update frequency. For example, when the preset update frequency is 1 time per second, the reference step can be dynamically updated when one second has elapsed since the last determination of the reference step. Of course, the above example is only one possible example of the target time, and the setting method of the target time is not limited herein, and examples are not repeated one by one. For example, after the obstacle avoidance vector after the detection vector avoids the obstacle, the vector module value of the detection vector, and the reference step determine the movement vector, the robot can be controlled to move based on the movement vector. In this process, new sensing data of the surrounding environment of the robot can be obtained. Then, the local data within the first range centered on the physical coordinates can be extracted again as target data from the new sensing data. A new conflict index is determined based on the newly extracted target data, and a new reference step is obtained by combining the environmental resolution parameter and the new conflict index. Then, a new movement vector can be determined based on the obstacle avoidance vector after the detection vector avoids the obstacle, the vector module value of the detection vector, and the new reference step, and the robot can be controlled to move based on the new movement vector. This cycle is iterated, so that the conflict index can be dynamically updated based on the dynamically updated sensing data, and then the reference step can be dynamically updated.

[0037] In one specific implementation scenario, after obtaining the reference step, the reference step can be decremented on the basis of the preset step of the avoidance search to determine the second range. Exemplarily, in the case of the preset step of the avoidance search and the value of 1 meter, the second range can be determined as 1 - step_delta. On this basis, the avoidance search of the obstacle can be performed in the second range centered on the physical coordinates in combination with the target data to determine the obstacle avoidance vector. Exemplarily, if it can be determined in combination with the target data that the ray emitted from the current point of the robot towards the opposite direction of the detection vector passes through the obstacle, the current point can be taken as the starting point of a new ray, the passing point of the new ray can be searched in the second range centered on the physical coordinates, if it can be determined in combination with the target data that the new ray does not pass through the obstacle, the direction of the detection vector can be adjusted to be on the new ray to obtain the obstacle avoidance vector; otherwise, if it can be determined in combination with the target data that the ray emitted from the current point of the robot towards the opposite direction of the detection vector does not pass through the obstacle, the direction of the detection vector can be directly adjusted as the obstacle avoidance vector. In one word, the detection vector after avoiding the obstacle is the obstacle avoidance vector. In addition, if the current avoidance search fails in the avoidance search process, the attempt can be continued, and the second range in the last avoidance search can be reduced (for example, the second range in the last avoidance search can be reduced by a reduction coefficient of 0.2) when the attempt is continued. In addition, the upper limit number of the avoidance search (for example, 3 times, etc.) can be set until the number of attempts reaches the upper limit number. For ease of description, it can be represented as: Δ n = Δ0• α n In the above formula, Δ0 represents the second range at the beginning, Δ n represents the second range at the n th avoidance search, α n represents the scaling coefficient at the n th avoidance search (for example, the preset coefficient at the first avoidance search can be taken as the base number n as the power to obtain). Of course, the above example is only one possible example of the determination method of the second range in actual application, and other possible determination methods are not limited herein, and will not be exemplified one by one.

[0038] In one implementation scenario, as one possible implementation, the motion vector can be obtained based on the obstacle avoidance vector, the vector norm value of the detection vector and the reference step. For ease of description, the motion vector m can be represented as:

[0039] In the above formula, d represents the detection vector, -sign (d) represents the obstacle avoidance vector, |d| represents the vector norm value of the detection vector, step_delta represents the reference step, and “.” in the above formula represents the Hadamard product.

[0040] In another implementation scenario, as another possible implementation, the detection vector can be searched for obstacle avoidance based on the target data within a search range centered on the physical coordinates of the target point in the real space, to obtain an obstacle-avoiding vector after the detection vector avoids the obstacle. It should be noted that the detection vector represents the direction vector sensed by the robot, the target data is the local data around the physical coordinates in the sensing data of the robot on the surrounding environment, and the search range is determined by decreasing the reference step length based on the preset step length of the avoidance search. In addition, the specific process of obtaining the obstacle-avoiding vector through the avoidance search can be referred to the foregoing related description, which will not be repeated here. On this basis, the map vector with the same actual direction as the detection vector can be searched in the direction dual set based on the detection vector, as the target vector, and the direction dual set can include a plurality of vector pairs, and each vector pair can include a map vector with the same actual direction and a direction vector in the real space, and then the motion vector can be obtained based on the obstacle-avoiding vector, the vector modulus value of the detection vector, the target vector and the reference step length. The above-mentioned method, by searching for the map vector with the same actual direction as the detection vector in the direction dual set as the target vector based on the detection vector, to obtain the motion vector based on the obstacle-avoiding vector, the vector modulus value of the detection vector, the target vector and the reference step length, can realize the closed-loop control of the "detection-motion" vector. Through experiments, the direction matching accuracy can be improved to ±0.5°, compared with the matching accuracy ±2° of the prior art, which is obviously improved.

[0041] In a specific implementation scenario, for ease of understanding, the direction dual set can be exemplarily represented as: vector<pair<Point2f, Point2f>>mapping = { {Point2f(delta,0.0f), Point2f(-1.0f,0.0f)}, {Point2f(0.0f,delta), Point2f(0.0f,-1.0f)} } It should be noted that in the above example, pair<Point2f, Point2f> represents a vector pair, and the vector pairs appear in pairs in the curly braces, so that the mapping relationship between the map vector and the direction vector in the real space can be realized. Of course, the above examples are only a few possible examples of vector pairs in actual applications, and other possible cases are not limited here, and will not be exemplified one by one.

[0042] In one specific implementation scenario, after obtaining the map vector (i.e., the target vector) consistent with the actual direction of the detection vector, the motion vector can be obtained based on the obstacle avoidance vector, the vector norm of the detection vector, the target vector, and the reference step size. Specifically, a unit vector having the same direction as the target vector can be obtained, and the motion vector can be obtained based on the obstacle avoidance vector, the vector norm, the unit vector, and the reference step size. For ease of description, the motion vector m can be represented as:

[0043] In the above formula, d represents the detection vector, -sign(d) represents the obstacle avoidance vector, |d| represents the vector norm of the detection vector, u represents a unit vector having the same direction as the target vector, step_delta represents the reference step size, and “.” in the above formula represents the Hadamard product.

[0044] In one specific implementation scenario, after obtaining the motion vector, the robot can be controlled to move along the vector direction of the motion vector. In addition, as one possible implementation, the robot can be controlled to move a distance equal to the vector norm of the motion vector, and when the robot has moved the vector norm of the motion vector, the aforementioned process of performing obstacle avoidance search on the detection vector within the search range centered on the physical coordinates of the target point in the real space based on the target data to obtain the obstacle avoidance vector after the detection vector avoids the obstacle can be performed again to obtain a new motion vector, and the robot can be controlled to move according to the new motion vector, and the process can be repeated until the robot reaches the target point.

[0045] In one specific implementation scenario, during the movement of the robot, the aforementioned process of performing obstacle avoidance search on the detection vector within the search range centered on the physical coordinates of the target point in the real space based on the target data to obtain the obstacle avoidance vector after the detection vector avoids the obstacle can be performed again in response to the current state of the robot satisfying an iteration condition, and the process can be iterated until the current state does not satisfy the iteration condition. It should be noted that the iteration condition can be set to include but not limited to: the time interval since the last calculation of the motion vector has exceeded a preset time length (e.g., 1 second, 5 seconds, etc.), the robot has not reached the target point, or a combination of the above, and the iteration condition is not limited herein. In this way, the avoidance search can be continuously performed in combination with new sensing data during the movement of the robot to reduce the possibility of collision with obstacles and improve the accuracy of motion control.

[0046] The scheme, the target point of the robot in the map image is acquired, the boundary confidence is obtained based on the first pixel value of the target point and the second pixel value representing the boundary feature, and the boundary confidence represents the boundary effectiveness at the target point, so that in response to the boundary confidence satisfying the confidence condition, the motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move based on the motion vector. Since the boundary confidence is determined by the first pixel value and the second pixel value, it is helpful to realize pixel-level filtering accuracy with the aid of gray gradient information, and compared with traditional methods such as morphological operation, the boundary misjudgment rate can be greatly reduced. In the case where the boundary confidence satisfies the confidence condition, the motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move accordingly, which can improve the environmental adaptability of the robot motion control.

[0047] Please refer to Figure 2 , Figure 2 is a schematic diagram of an embodiment of the robot motion control device of the present application. The robot motion control device 20 comprises a target point acquisition module 21, a confidence calculation module 22, and a motion control module 23. The target point acquisition module 21 is configured to acquire a target point of a robot in a map image. The confidence calculation module 22 is configured to obtain a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature. The boundary confidence represents the boundary effectiveness at the target point. The motion control module 23 is configured to determine a motion vector of the robot based on image coordinates of the target point in response to the boundary confidence satisfying a confidence condition, and control the robot to move based on the motion vector.

[0048] The scheme, the target point of the robot in the map image is acquired, the boundary confidence is obtained based on the first pixel value of the target point and the second pixel value representing the boundary feature, and the boundary confidence represents the boundary effectiveness at the target point, so that in response to the boundary confidence satisfying the confidence condition, the motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move based on the motion vector. Since the boundary confidence is determined by the first pixel value and the second pixel value, it is helpful to realize pixel-level filtering accuracy with the aid of gray gradient information, and compared with traditional methods such as morphological operation, the boundary misjudgment rate can be greatly reduced. In the case where the boundary confidence satisfies the confidence condition, the motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move accordingly, which can improve the environmental adaptability of the robot motion control.

[0049] In some disclosed embodiments, the confidence calculation module 22 comprises a difference calculation sub-module configured to obtain a difference between the first pixel value and the second pixel value as a pixel difference; the confidence calculation module 22 comprises a difference mapping sub-module configured to map based on the pixel difference to obtain the boundary confidence; wherein the boundary confidence is negatively correlated with an absolute value of the pixel difference.

[0050] In some disclosed embodiments, the difference mapping sub-module comprises a ratio calculation unit configured to obtain a ratio between the pixel difference and the second pixel value as a pixel ratio; the difference mapping sub-module comprises a confidence calculation unit configured to obtain a difference between 1 and a square of the pixel ratio as the boundary confidence.

[0051] In some disclosed embodiments, the motion vector is determined based on an obstacle-avoiding vector after the detection vector evades obstacles, a vector modulus value of the detection vector, and a reference step length, the detection vector representing a direction vector of the robot sensing itself, the robot motion control device 20 comprises a coordinate mapping module configured to map the image coordinates based on an environment resolution parameter of the robot to obtain physical coordinates of the target point in a real space; wherein the environment resolution parameter represents a conversion relationship between an image coordinate system of the map image and a space coordinate system of the real space; the robot motion control device 20 comprises a data extraction module configured to extract local data within a first range centered on the physical coordinates from sensing data of the robot on the surrounding environment as target data; the robot motion control device 20 comprises a step length calculation module configured to obtain the reference step length based on the environment resolution parameter and a conflict index determined from the target data; wherein the conflict index represents a distribution density of the obstacles.

[0052] In some disclosed embodiments, the conflict index is positively correlated with the distribution density; and / or, the reference step length is negatively correlated with the conflict index; and / or, the obstacle-avoiding vector is determined by the detection vector within a second range centered on the physical coordinates in combination with the target data for obstacle-avoiding search, and the second range is determined by decreasing the reference step length based on a preset step length of the obstacle-avoiding search; the reference step length can also be dynamically updated based on new sensing data of the robot on the surrounding environment during the movement.

[0053] In some disclosed embodiments, the motion control module 23 comprises an obstacle avoidance search submodule for performing an obstacle avoidance search on the detection vector based on the target data within a search range centered on the physical coordinates of the target point in the real space, to obtain an obstacle avoidance vector of the detection vector after avoiding obstacles; wherein the detection vector represents a direction vector of the robot sensing itself, the target data is local data around the physical coordinates in the sensing data of the robot on the surrounding environment, and the search range is determined by decreasing a reference step length from a preset step length of the avoidance search; the motion control module 23 comprises a dual mapping submodule for searching a map vector with an actual direction consistent with the detection vector as a target vector within a direction dual set based on the detection vector; wherein the direction dual set contains a plurality of vector pairs, and each vector pair contains a map vector with an actual direction consistent with the direction vector in the real space; the motion control module 23 comprises a vector determination submodule for obtaining a motion vector based on the obstacle avoidance vector, a vector norm value of the detection vector, the target vector, and the reference step length.

[0054] In some disclosed embodiments, the vector determination submodule comprises a unit vector acquisition unit for acquiring a unit vector with the same direction as the target vector; and the vector determination submodule comprises a motion vector calculation unit for obtaining the motion vector based on the obstacle avoidance vector, the vector norm value, the unit vector, and the reference step length.

[0055] In some disclosed embodiments, the motion control module 23 comprises a loop iteration submodule for, in response to the current state of the robot satisfying an iteration condition during the motion of the robot, returning to perform the obstacle avoidance search on the detection vector based on the target data within the search range centered on the physical coordinates of the target point in the real space, to obtain the obstacle avoidance vector of the detection vector after avoiding obstacles.

[0056] In some disclosed embodiments, the numerical range of the first pixel value is 0 to 255, and the second pixel value is 127; and / or, in the case that the boundary confidence degree does not satisfy the confidence condition, outputting a prompt message, and the prompt message is used to remind to re-specify the target point of the robot in the map image; and / or, the confidence condition comprises that the boundary confidence degree is higher than a confidence threshold.

[0057] Please refer to Figure 3 , Figure 3 is a framework schematic diagram of an embodiment of the electronic device of the present application. The electronic device 30 at least comprises a memory 31 and a processor 32 coupled with each other, the memory 31 at least stores program instructions, and the processor 32 is configured to execute the program instructions to implement the steps in any of the above robot motion control method embodiments. For details, please refer to the foregoing disclosed embodiments, which will not be repeated here.

[0058] Specifically, the processor 32 is configured to control itself and the memory 31 to implement the steps in any of the above-mentioned robot motion control method embodiments. The processor 32 can also be referred to as a CPU (Central Processing Unit). The processor 32 can be an integrated circuit chip with processing capability. The processor 32 can also be a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor. In addition, the processor 32 can be implemented by an integrated circuit chip together.

[0059] In the above scheme, the electronic device 30 obtains a target point of the robot in the map image, obtains a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature, and the boundary confidence represents a boundary validity at the target point, so as to determine a motion vector of the robot based on an image coordinate of the target point in response to the boundary confidence satisfying a confidence condition, and control the robot to move based on the motion vector. Since the boundary confidence is determined by the first pixel value and the second pixel value, it is helpful to achieve pixel-level filtering accuracy with the aid of gray gradient information, and compared with traditional methods such as morphological operation, the boundary misjudgment rate can be greatly reduced. Then, the motion vector of the robot is determined based on the image coordinate of the target point in the case that the boundary confidence satisfies the confidence condition, and the robot is controlled to move accordingly, which can improve the environmental adaptability of robot motion control.

[0060] Please refer to Figure 4 , Figure 4 is a schematic diagram of the framework of an embodiment of the robot. The robot 40 can include a driving device 41 and the electronic device 30 in the above-mentioned disclosed embodiments, and the driving device 41 is configured to drive the whole robot 40 to move. It should be noted that the driving device 41 can include but is not limited to: a roller type, a track type, a bionic type (such as a mechanical leg of a humanoid robot, etc.), and the working principle of the driving device 41 is not limited here, and will not be exemplified one by one. In addition, as a possible implementation example, the robot 40 can also include other devices, such as related sensors including but not limited to direction sensors, which are not limited here and will not be exemplified one by one.

[0061] The robot 40 includes the driving device 41 and the electronic device 30 in the above disclosed embodiments, the driving device 41 is used to drive the whole robot 40 to move, since the boundary confidence is determined by the first pixel value and the second pixel value, the pixel-level filtering precision is achieved by means of the gray gradient information, compared with the traditional method such as the morphological operation, the boundary misjudgment rate can be greatly reduced, and the motion vector of the robot is determined based on the image coordinates of the target point in the case that the boundary confidence meets the confidence condition, so as to control the motion, and the environmental adaptability of the robot motion control can be improved.

[0062] Please refer to Figure 5 , Figure 5 is a framework schematic diagram of an embodiment of the computer readable storage medium of the present application. The computer readable storage medium 50 stores program instructions 51 capable of being run by a processor, the program instructions 51 are used to implement the steps in any of the above robot motion control method embodiments.

[0063] In the above scheme, the computer readable storage medium 50 obtains the target point of the robot in the map image, obtains the boundary confidence based on the first pixel value of the target point and the second pixel value representing the boundary feature, and the boundary confidence represents the boundary effectiveness at the target point, so as to determine the motion vector of the robot based on the image coordinates of the target point in response to the boundary confidence meeting the confidence condition, and control the robot to move based on the motion vector, since the boundary confidence is determined by the first pixel value and the second pixel value, the pixel-level filtering precision is achieved by means of the gray gradient information, compared with the traditional method such as the morphological operation, the boundary misjudgment rate can be greatly reduced, and the motion vector of the robot is determined based on the image coordinates of the target point in the case that the boundary confidence meets the confidence condition, so as to control the motion, and the environmental adaptability of the robot motion control can be improved.

[0064] In some embodiments, the device provided by the embodiments of the present disclosure has functions or includes modules which can be used to execute the methods described in the above method embodiments, and the specific implementation can refer to the description of the above method embodiments. For the sake of brevity, it will not be described here.

[0065] The above description of each embodiment tends to emphasize the differences between each embodiment, and the same or similar parts can be mutually referred to. For the sake of brevity, it will not be described here.

[0066] In several embodiments provided in the present application, it should be understood that the disclosed methods and apparatuses can be implemented in other manners. For example, the division of the apparatus embodiments described above is merely an example, and the division of the modules or units can be different, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed coupling or direct coupling or communication connection between the units can be indirect coupling or communication connection through some interfaces, and can be electrical, mechanical or other forms.

[0067] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they can be located in one place or distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the present embodiment.

[0068] In addition, the functional units in each embodiment of the present application can be integrated into one processing unit, or each unit can be physically present separately, or two or more units can be integrated into one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0069] If the integrated unit is realized in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the methods of the various embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, and various program codes that can be stored in the medium.

[0070] If the technical solution of the present application involves personal information, the product applying the technical solution of the present application has clearly informed the personal information processing rules before processing the personal information and obtained the personal independent consent. If the technical solution of the present application involves sensitive personal information, the product applying the technical solution of the present application has obtained the personal independent consent before processing the sensitive personal information and at the same time meets the requirement of "explicit consent". For example, at the personal information collection device such as camera, a clear and prominent sign is set to inform that it has entered the personal information collection range and will collect personal information. If the individual voluntarily enters the collection range, it is considered to agree to collect personal information. Or on the device for processing personal information, through the pop-up information or by asking the individual to upload his / her personal information, the individual's authorization is obtained under the condition of using obvious signs / information to inform the personal information processing rules. The personal information processing rules can include personal information processor, personal information processing purpose, processing method and type of processed personal information, etc.

Claims

1. A robot motion control method, characterized in that: include: Get the robot's target point in the map image; Obtaining a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature; wherein the boundary confidence represents the validity of the boundary at the target point; In response to the boundary confidence satisfying a confidence condition, a motion vector of the robot is determined based on the image coordinates of the target point, and the robot is controlled to move based on the motion vector.

2. The method according to claim 1, characterized in that The obtaining of the boundary confidence based on the first pixel value of the target point and the second pixel value representing the boundary feature includes: Obtaining a difference between the first pixel value and the second pixel value as a pixel difference; Mapping is performed based on the pixel difference to obtain the boundary confidence; wherein the boundary confidence is negatively correlated with the absolute value of the pixel difference.

3. The method according to claim 2, characterized in that The mapping based on the pixel difference to obtain the boundary confidence includes: Obtaining a ratio between the pixel difference and the second pixel value as a pixel ratio; The difference between 1 and the square of the pixel ratio is obtained as the boundary confidence.

4. The method according to claim 1, wherein The motion vector is determined based on the obstacle avoidance vector after the detection vector avoids the obstacle, the vector modulus of the detection vector, and the reference step length. The detection vector represents the direction vector of the robot sensing itself. The step of obtaining the reference step length includes: Mapping the image coordinates based on an environmental resolution parameter of the robot to obtain the physical coordinates of the target point in real space; wherein the environmental resolution parameter represents the conversion relationship between the image coordinate system of the map image and the spatial coordinate system of the real space; Extracting, from the robot's sensing data of the surrounding environment, local data within a first range centered on the physical coordinates as target data; The reference step length is obtained based on the environmental resolution parameter and a conflict index determined by the target data; wherein the conflict index represents the distribution density of obstacles.

5. The method according to claim 4, characterized in that The conflict index is positively correlated with the distribution density; And / or, the reference step length is negatively correlated with the conflict index; And / or, the obstacle avoidance vector is determined by performing an obstacle avoidance search within a second range centered on the physical coordinates using the detection vector in combination with the target data, and the second range is determined by decreasing the reference step size from a preset step size of the avoidance search; And / or, the reference step length is dynamically updated based on the progress of new sensing data of the surrounding environment by the robot during movement.

6. The method according to claim 1, characterized in that The determining of the motion vector of the robot based on the image coordinates of the target point includes: Within a search range centered on the physical coordinates of the target point in real space, an obstacle avoidance search is performed on the detection vector based on the target data to obtain an obstacle avoidance vector after the detection vector avoids the obstacle; wherein the detection vector represents a direction vector sensed by the robot itself, the target data is local data around the physical coordinates in the robot's sensed data of the surrounding environment, and the search range is determined by decreasing a reference step size from a preset step size of the avoidance search; Based on the detection vector, searching for a map vector in a direction dual set whose actual direction is consistent with the detection vector as a target vector; wherein the direction dual set includes a plurality of vector pairs, and each vector pair includes a map vector whose actual direction is consistent with the detection vector and a direction vector in real space; The motion vector is obtained based on the obstacle avoidance vector, the vector modulus of the detection vector, the target vector and the reference step size.

7. The method according to claim 6, characterized in that The obtaining the motion vector based on the obstacle avoidance vector, the vector modulus of the detection vector, the target vector, and the reference step size includes: Obtaining a unit vector having the same direction as the target vector; The motion vector is obtained based on the obstacle avoidance vector, the vector modulus, the unit vector and the reference step size.

8. The method according to claim 6, characterized in that During the movement of the robot, the method further includes: In response to the current state of the robot satisfying the iteration condition, returning to execute the obstacle avoidance search for the detection vector based on the target data within the search range centered on the physical coordinates of the target point in real space, and obtaining an obstacle avoidance vector after the detection vector avoids the obstacle.

9. The method according to any one of claims 1 to 8, characterized in that The first pixel value has a numerical range of 0 to 255, and the second pixel value is 127; and / or, when the boundary confidence does not satisfy the confidence condition, outputting a prompt message, wherein the prompt message is used to remind the user to re-designate a target point of the robot in the map image; And / or, the confidence condition includes that the boundary confidence is higher than a confidence threshold.

10. A robot motion control device, characterized in that: include: Target point acquisition module, used to obtain the target point of the robot in the map image; A confidence calculation module, configured to obtain a boundary confidence based on a first pixel value of the target point and a second pixel value representing a boundary feature; wherein the boundary confidence represents the validity of the boundary at the target point; A motion control module is configured to determine a motion vector of the robot based on the image coordinates of the target point in response to the boundary confidence satisfying a confidence condition, and to control the robot to move based on the motion vector.

11. An electronic device, characterized in that: The robot motion control method comprises at least a memory and a processor coupled to each other, wherein the memory stores at least program instructions, and the processor is used to execute the program instructions to implement the robot motion control method according to any one of claims 1 to 9.

12. A robot, characterized in that: It comprises a driving device and the electronic device as claimed in claim 11, wherein the driving device is used to drive the entire robot to move.

13. A computer-readable storage medium, characterized in that Program instructions that can be executed by a processor are stored, and the program instructions are used to implement the robot motion control method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Mobile control method, mobile robot, and computer storage medium

    CN109074083A

  • Boundary fusion method and device for segmented region, and mobile robot

    CN112927256A

  • Unmanned aerial vehicle autonomous inspection method, device and equipment for power distribution network and storage medium

    CN120236216A

  • Method for mowing robot to move along lawn boundary based on local grid map

    CN120445197A

  • Robot apparatus, position detecting device, position detecting program, and position detecting method

    US20120209429A1