A pose determination method, apparatus, mobile robot, system, and medium
By installing sensors on mobile robots to identify and calculate relative pose parameters, the problem of lack of mutual positioning between mobile robots is solved, and the safety of robots walking in a queue is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HAI ROBOTICS CO LTD
- Filing Date
- 2023-05-29
- Publication Date
- 2026-07-24
AI Technical Summary
In existing technologies, mobile robot path planning relies on self-localization but lacks mutual localization, which makes collisions easy and affects the safety of robots moving in a queue.
By setting up sensing devices on mobile robots, target robots within areas of interest can be identified, historical and current relative pose parameters can be obtained, and relative pose can be calculated by combining actual movement speed and time difference, thus realizing the determination of relative pose between robots.
It improves the safety of mobile robots moving in the queue and reduces the risk of collisions.
Smart Images

Figure CN116698035B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of mobile robot technology, and in particular to a pose determination method, apparatus, mobile robot, system and medium. Background Technology
[0002] With the development of technology, mobile robots are used for goods delivery in many fields, which brings with it the problem of path planning for these robots. Currently, path planning is usually done on an individual robot basis. To avoid conflicts in the planned paths, path reservations need to be made in advance, which wastes path resources and affects the overall scheduling efficiency.
[0003] To address the aforementioned issues, related technologies can group robots with overlapping paths into a team. Taking warehousing as an example, robots can be controlled to move to their destination using a queue-walking method. In this approach, to ensure synchronization among robots in the same queue and avoid collisions, the local location information of each robot in the queue needs to be uploaded to a management device for unified scheduling.
[0004] The above method relies excessively on the self-localization of the mobile robots and lacks mutual localization between them. If an unpredictable deviation occurs due to a robot slipping, collisions are likely to occur. Therefore, if relative pose localization between mobile robots can be achieved, this problem can be solved, improving the safety of mobile robots moving in a queue. Summary of the Invention
[0005] To overcome the problems existing in related technologies, this application provides a pose determination method, device, mobile robot, system and medium to realize relative pose positioning between mobile robots and improve the safety of mobile robots walking in a queue.
[0006] The first aspect of this application provides a pose determination method applied to a mobile robot, wherein the mobile robot is located in a queue, the queue comprising at least two mobile robots, the method comprising:
[0007] Identifies target mobile robots within areas of interest based on their own sensor devices;
[0008] Obtain the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and their corresponding actual relative motion speed;
[0009] The estimated relative pose parameters at the current moment are calculated based on the historical measured relative pose parameters, the actual relative motion velocity, and the time difference; wherein, the time difference is the difference between the current moment and the previous moment;
[0010] Obtain the current relative pose parameters between itself and the target mobile robot as determined by the sensing device at the current moment;
[0011] The actual relative pose parameters between the user and the target mobile robot at the current moment are determined based on the currently measured relative pose parameters and the estimated relative pose parameters.
[0012] As one embodiment of this application, in this embodiment, the identification of a target mobile robot within a region of interest based on its own sensing device includes:
[0013] The system identifies the region of interest based on its own first sensing device, obtains a first identification result, and determines the target mobile robot within the region of interest based on the first identification result.
[0014] Alternatively, the region of interest can be identified using a second sensing device that is set up on its own, a second identification result can be obtained, and the target mobile robot within the region of interest can be determined based on the second identification result;
[0015] Alternatively, the system identifies the region of interest using a first sensor and obtains a first identification result, and identifies the region of interest using a second sensor and obtains a second identification result. The target mobile robot within the region of interest is then determined based on either the first or the second identification result.
[0016] The first sensing device and the second sensing device are different.
[0017] In one embodiment of this application, the first sensing device based on its own configuration identifies the region of interest and obtains a first identification result, including:
[0018] Acquire point cloud data identified by the first sensing device, and determine the first point cloud data within the preset region of interest;
[0019] Filter out the second point cloud data that meets the distance filtering criteria from the first point cloud data;
[0020] The second point cloud data is fitted into multiple line segments;
[0021] Determine the length of each of the plurality of line segments, and the angle between intersecting line segments;
[0022] The length and angle are matched with the contour parameters of the target mobile robot. If the match is successful, a first recognition result is generated that the target mobile robot has been identified. If the match fails, a first recognition result is generated that the target mobile robot has not been identified.
[0023] In one embodiment of this application, the second sensing device, based on its own configuration, identifies the region of interest and obtains a second identification result, including:
[0024] Acquire image data identified by the second sensing device and determine target image data within the region of interest;
[0025] Determine the target feature data in the target image data;
[0026] The target feature data is matched with the feature data of the target mobile robot. If the match is successful, a second recognition result is generated that the target mobile robot has been identified. If the match fails, a second recognition result is generated that the target mobile robot has not been identified.
[0027] In one embodiment of this application, the historical measurement relative pose parameters are determined by the relative pose parameters measured by the first sensing device and the relative pose parameters measured by the second sensing device, as well as their respective confidence parameters.
[0028] As one embodiment of this application, in this embodiment, the identification of a target mobile robot within a region of interest based on its own sensing device includes:
[0029] Upon receiving a queue walking message from the management device, the robot identifies the target mobile robot within the area of interest based on its own set of sensors.
[0030] As one embodiment of this application, this embodiment further includes:
[0031] Obtain the relative pose parameters between itself and the target mobile robot;
[0032] If the measured relative pose parameters meet the teaming conditions, the teaming is confirmed to be successful, and the measured relative pose parameters are stored as historical measured relative position parameters.
[0033] In one embodiment of this application, obtaining the actual relative motion speed between itself and the target mobile robot at the previous moment includes:
[0034] The relative motion velocity between itself and the target mobile robot, as determined by the sensing device at the previous moment, is obtained.
[0035] Determine the estimated relative motion velocity between itself and the target mobile robot at the previous moment;
[0036] The actual relative speed is determined based on the measured relative speed and the estimated relative speed.
[0037] As one embodiment of this application, this embodiment further includes:
[0038] Acquire and store the measured relative motion speed between itself and the target mobile robot as determined by the sensing device at the current moment.
[0039] A second aspect of this application provides a pose determination device for use in a mobile robot, the mobile robot being located in a queue, the queue comprising at least two mobile robots, the device comprising:
[0040] The first identification unit is used to identify the target mobile robot within the area of interest based on its own set of sensing devices;
[0041] The first acquisition unit is used to acquire the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and the corresponding actual relative motion speed.
[0042] The first calculation unit is used to calculate the estimated relative pose parameters at the current moment based on the historical measured relative pose parameters, the actual relative motion velocity, and the time difference; wherein, the time difference is the difference between the current moment and the previous moment;
[0043] The second acquisition unit is used to acquire the current measured relative pose parameters between itself and the target mobile robot as determined by the sensing device at the current moment.
[0044] The first determining unit is used to determine the actual relative pose parameters of itself and the target mobile robot at the current moment based on the current measured relative pose parameters and the estimated relative pose parameters.
[0045] A third aspect of this application provides a mobile robot, comprising:
[0046] Sensing devices;
[0047] Processor; and
[0048] A memory having executable code stored thereon, which, when executed by the processor, causes the processor to perform the method as described in any of the preceding methods.
[0049] A fourth aspect of this application provides a non-transitory machine-readable storage medium having executable code stored thereon, which, when executed by a processor of an electronic device, causes the processor to perform the method described in any of the preceding claims.
[0050] The technical solution provided in this application may include the following beneficial effects:
[0051] This application provides a pose determination method applied to a mobile robot. The mobile robot is located in a queue, which includes at least two mobile robots. Specifically, the method identifies a target mobile robot within a region of interest using its own sensors. It obtains historical measured relative pose parameters and corresponding actual relative motion speeds between itself and the target mobile robot at the previous moment. Based on the historical measured relative pose parameters, the actual relative motion speeds, and the time difference, it calculates estimated relative pose parameters for the current moment. It then obtains the current measured relative pose parameters between itself and the target mobile robot, determined by the sensors. Finally, it determines the actual relative pose parameters between itself and the target mobile robot at the current moment based on the current measured relative pose parameters and the estimated relative pose parameters. Thus, this application enables the determination of relative poses between mobile robots in a queue, improving the safety of mobile robot movement.
[0052] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0053] The above and other objects, features and advantages of this application will become more apparent from the more detailed description of exemplary embodiments thereof in conjunction with the accompanying drawings, wherein the same reference numerals generally represent the same components in the exemplary embodiments thereof.
[0054] Figure 1 This is a schematic flowchart illustrating a pose determination method according to an embodiment of this application;
[0055] Figure 2 This is a schematic flowchart illustrating the method for determining the actual relative motion velocity as shown in the embodiments of this application;
[0056] Figure 3 This is a flowchart illustrating the method for obtaining the first identification result as shown in an embodiment of this application;
[0057] Figure 4 This is a schematic diagram of the queue structure shown in an embodiment of this application;
[0058] Figure 5a This is a schematic diagram of point cloud data identified by the first sensing device in an embodiment of this application;
[0059] Figure 5b This is another schematic diagram of point cloud data identified by the first sensing device shown in the embodiments of this application;
[0060] Figure 5cThis is a schematic diagram illustrating the fitting of point cloud data as line segments in an embodiment of this application;
[0061] Figure 5d This is another schematic diagram illustrating the fitting of point cloud data as line segments in an embodiment of this application;
[0062] Figure 6 This is a schematic diagram illustrating the measurement of angular deviation in an embodiment of this application.
[0063] Figure 7 This is a flowchart illustrating the method for obtaining the second identification result as shown in an embodiment of this application;
[0064] Figure 8a This is a schematic diagram of the target image data shown in the embodiments of this application;
[0065] Figure 8b This is another schematic diagram illustrating the target image data in an embodiment of this application;
[0066] Figure 9 This is yet another schematic diagram of the target image data shown in the embodiments of this application;
[0067] Figure 10 This is a schematic diagram of the structure of a pose determination device shown in an embodiment of this application;
[0068] Figure 11 This is a schematic diagram of the structure of an electronic device shown in an embodiment of this application. Detailed Implementation
[0069] Preferred embodiments of the present application will now be described in more detail with reference to the accompanying drawings. While preferred embodiments of the present application are shown in the drawings, it should be understood that the present application may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided to make the present application more thorough and complete, and to fully convey the scope of the present application to those skilled in the art.
[0070] The terminology used in this application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. The singular forms “a,” “the,” and “the” used in this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.
[0071] It should be understood that although the terms "first," "second," "third," etc., may be used in this application to describe various information, this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, without departing from the scope of this application, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, "multiple" means two or more, unless otherwise explicitly specified.
[0072] The technical solutions of the embodiments of this application are described in detail below with reference to the accompanying drawings.
[0073] Figure 1 This application illustrates a pose determination method, which can be applied to a mobile robot located in a queue containing at least two mobile robots. See also... Figure 1 The method may include the following steps:
[0074] Step 101: Identify the target mobile robot within the region of interest based on its own sensor devices;
[0075] In this application, the mobile robot itself is equipped with sensing devices, which include a first sensing device and / or a second sensing device. That is to say, this application can use the first sensing device or the second sensing device to locate the target mobile robot in the region of interest. Of course, the first sensing device and the second sensing device can also be used simultaneously to locate the target mobile robot in the region of interest. In that case, as long as one sensing device can identify the target mobile robot, the location is considered successful.
[0076] In some embodiments, identifying a target mobile robot within a region of interest based on its own sensing devices may include:
[0077] The system identifies the region of interest based on its own first sensing device, obtains a first identification result, and determines the target mobile robot within the region of interest based on the first identification result.
[0078] Alternatively, the region of interest can be identified using a second sensing device that is set up on its own, a second identification result can be obtained, and the target mobile robot within the region of interest can be determined based on the second identification result;
[0079] Alternatively, the system may identify the region of interest using a first sensor device and obtain a first identification result, and identify the region of interest using a second sensor device and obtain a second identification result. The target mobile robot within the region of interest may be determined based on either the first or the second identification result.
[0080] It is understandable that there are at least two mobile robots in the queue, and the mobile robot at the front of the queue does not need to locate the target mobile robot in the region of interest, i.e., it does not need to determine the relative pose, because it is located at the very front of the queue.
[0081] Please note that, for ease of description, the mobile robot performing the pose determination method will be referred to as the "self-vehicle" in some parts of the description of this application, and the target mobile robot will be taken as the "lead vehicle" as an example. It should be noted that this does not constitute a limitation of this application, and the target mobile robot can also be the "follower vehicle".
[0082] The first sensing device and the second sensing device are different, specifically referring to the different identification methods of the first sensing device and the second sensing device.
[0083] As one possible embodiment, the first sensing device can be a lidar device, and the second sensing device can be an image sensing device.
[0084] Step 102: Obtain the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and the corresponding actual relative motion velocity;
[0085] It should be noted that, based on the current time, the previous time can be flexibly determined. For example, based on the current time, the time that is a preset time interval from the current time can be taken as the previous time.
[0086] The historical relative pose parameters of the previous moment are the relative pose parameters of the self and the target mobile robot determined by the sensing device at the previous moment.
[0087] The historical relative pose parameters can include the changes in the relative coordinates between the robot and the target robot, as well as the measurement angle deviation. It can also include the relative distance between the robot and the target robot. This relative distance can be the relative distance between the centers of the two robots.
[0088] In this embodiment, a sensing device is installed on the vehicle. Based on the relevant parameters from the rear of the front vehicle (the outline of the rear of the front vehicle or the feature image set on the rear of the front vehicle) to the center of the front vehicle, and the relevant parameters from the sensing device stored in the vehicle to the center of the vehicle, the pose parameters identified by the first sensing device are converted into the relative pose parameters of the vehicle center to the center of the front vehicle.
[0089] In some embodiments, such as Figure 2 As shown, obtaining the actual relative motion speed between oneself and the target mobile robot at the previous moment can include the following steps:
[0090] Step 201: Obtain the measured relative motion speed between itself and the target mobile robot as determined by the sensing device at the previous moment;
[0091] Step 202: Determine the estimated relative motion speed between itself and the target mobile robot at the previous moment;
[0092] The relative velocity can be estimated using parameters such as the relative velocity, relative acceleration, and time between the two mobile robots. It should be noted that when both mobile robots are in their initial startup state, the estimated relative velocity can be zero.
[0093] Step 203: Determine the actual relative motion speed based on the measured relative motion speed and the estimated relative motion speed.
[0094] As one possible implementation of this application, different confidence parameters can be set for relative motion velocities with different attributes. Then, the product of the measured relative motion velocity and its corresponding confidence parameter plus the product of the estimated relative pose parameter and its corresponding confidence parameter is the actual relative motion velocity.
[0095] Step 103: Calculate the estimated relative pose parameters at the current moment based on the historical measured relative pose parameters, the actual relative motion velocity, and the time difference;
[0096] The time difference is the difference between the current time and the previous time.
[0097] The estimated relative position parameters are the product of historically measured relative position parameters and the actual relative velocity and time difference.
[0098] Step 104: Obtain the current relative pose parameters between yourself and the target mobile robot as determined by the sensing device at the current moment;
[0099] The current relative pose parameters correspond to the historical relative pose parameters, including the relative coordinate transformation and the angle deviation, and may also include the relative distance.
[0100] As described above, the vehicle's own sensing devices may include a first sensor and / or a second sensor. Therefore, when using both the first and second sensors simultaneously, both historically measured relative position parameters and currently measured relative pose parameters can be determined based on the relative pose parameters determined by the first and second sensors, along with their respective confidence levels. In other words, historically measured relative pose parameters are determined by the relative pose parameters measured by the first and second sensors at the previous moment, along with their respective confidence levels. Currently measured relative pose parameters are determined by the relative pose parameters measured by the first and second sensors at the current moment, along with their respective confidence levels.
[0101] Specifically, the relative pose parameters can be measured as the product of the relative pose parameters determined by the first sensing device and their corresponding confidence parameters, plus the product of the relative pose parameters determined by the second sensing device and their corresponding confidence parameters.
[0102] In some embodiments, when using both the first and second sensing devices simultaneously, the relative pose parameters determined by the first and second sensing devices can be smoothed and filtered, such as by Kalmar filtering, respectively. Then, the relative pose parameters determined by the two sensing devices can be fused together, that is, multiplied by their respective confidence parameters and then summed to obtain the measured relative pose parameters.
[0103] Step 105: Determine the actual relative pose parameters of yourself and the target mobile robot at the current moment based on the current measured relative pose parameters and the estimated relative pose parameters.
[0104] To improve the accuracy of relative pose parameter determination, different confidence parameters can be set for pose parameters with different attributes. Then, the actual relative pose parameter can be the sum of the product of the currently measured relative pose parameter and its corresponding confidence parameter and the product of the estimated relative pose parameter and its corresponding confidence parameter.
[0105] Optionally, after determining the actual relative pose parameters at the current moment, the current measured relative pose parameters can be stored as historical measured relative pose parameters for use at the next moment.
[0106] In some embodiments, the method may further include: acquiring and storing a measured relative velocity between itself and the target mobile robot, determined by the sensing device at the current moment. The measured relative velocity at the current moment is stored for use in determining the actual relative velocity at the next moment.
[0107] This embodiment provides a pose determination method applied to a mobile robot. The mobile robot is located in a queue, which includes at least two mobile robots. Specifically, the method identifies a target mobile robot within a region of interest using its own sensors. It obtains the historical measured relative pose parameters and the corresponding actual relative motion speed between itself and the target mobile robot at the previous moment. Based on the historical measured relative pose parameters, the actual relative motion speed, and the time difference, it calculates the estimated relative pose parameters for the current moment. It then obtains the current measured relative pose parameters between itself and the target mobile robot determined by the sensors. Finally, based on the current measured relative pose parameters and the estimated relative pose parameters, it determines the actual relative pose parameters between itself and the target mobile robot at the current moment. Thus, this application realizes the determination of the relative pose between mobile robots in a queue, improving the safety of mobile robot movement.
[0108] In some embodiments of this application, such as Figure 3 As shown, the process of identifying the region of interest based on the first sensing device with its own settings and obtaining the first identification result may include the following steps:
[0109] Step 301: Acquire the point cloud data identified by the first sensing device, and determine the first point cloud data within the preset region of interest;
[0110] The first sensor installed on the vehicle can perform radar identification of the vehicle's driving area and acquire point cloud data. By segmenting the acquired point cloud data into regions of interest, the first point cloud data within the region of interest can be determined.
[0111] Step 302: Filter out the second point cloud data that meets the distance filtering condition from the first point cloud data;
[0112] Distance filtering is used to filter out point cloud data that can be clustered into line segments from the first point cloud data. Specifically, it can be achieved by setting the distance parameter between points.
[0113] To improve the accuracy of the sensor's identification, as one possible implementation of this application, before step 302, the following may be included:
[0114] The first point cloud data is subjected to noise reduction processing.
[0115] Accordingly, step 302 specifically involves selecting second point cloud data that meets the distance filtering criteria from the first point cloud data after noise reduction.
[0116] Step 303: Fit the second point cloud data into multiple line segments;
[0117] Specifically, a point cloud straight line fitting algorithm can be used to fit point cloud data into line segments.
[0118] Step 304: Determine the length of each of the multiple line segments and the angle between intersecting line segments;
[0119] By parameterizing the fitted multiple line segments, the length of each line segment and the angle between adjacent line segments are calculated.
[0120] Specifically, line segments can be parameterized by using polar coordinates, Cartesian coordinates, or other linear expression equations.
[0121] Step 305: Match the length and the angle with the contour parameters of the target mobile robot;
[0122] In one approach, the mobile robot, acting as an autonomous vehicle, can pre-store the contour parameters of the preceding vehicle; in another approach, the mobile robot, acting as an autonomous vehicle, can communicate with the preceding vehicle to obtain its contour parameters; and in yet another approach, a management device for managing all mobile robots can send the contour parameters of the preceding vehicle to the mobile robot.
[0123] In practical applications, each mobile robot in the queue has a corresponding contour parameter at its rear. The adjacent mobile robot behind it can identify the contour of the preceding robot through a first sensing device and match the length and angle of the identified line segments with the contour parameter of the preceding robot. Specifically, during the matching process, it can be determined whether the matching degree between the identified length and the length of the corresponding line segment in the contour parameter is within a preset length threshold range, and whether the matching degree between the identified angle and the angle of the corresponding two intersecting line segments in the contour parameter is within a preset angle threshold range. If both are within the threshold range, the matching is considered successful; otherwise, the matching is considered a failure.
[0124] Step 306: If the match is successful, generate a first recognition result that the target mobile robot has been identified; if the match fails, generate a first recognition result that the target mobile robot has not been identified.
[0125] For ease of understanding, this embodiment will be explained simply with a specific example, such as... Figure 4 As shown, the queue includes robot A, robot B, and robot C. Each robot is equipped with a lidar device. Taking robot B as an example, the lidar device on it can identify the outline of the robot in front, i.e., robot A.
[0126] like Figure 5a As shown, robot B can identify the point cloud data of robot A through the first sensor device, and obtain the following data through region of interest (ROI) segmentation, noise reduction, and distance filtering: Figure 5bThe point cloud data shown is then used for line segment fitting, and the fitted line segments are as follows: Figure 5c As shown. Then determine the length of each line segment and the angle of the intersecting line segments. Figure 5d The length of a fitted line segment and the angle at which two line segments intersect are shown. The length of the fitted line segment and the angle of the determined intersecting line segment are matched with the contour parameters of robot A. If the match is successful, it is determined that robot A is located; if the match fails, it is determined that robot A is not located.
[0127] After identifying the target mobile robot through its own sensors, the system can determine its relative pose parameters with the target robot based on these sensors. Taking the first sensor as an example... Figure 6 As shown, robot B is the voluntary vehicle, and robot A is the preceding vehicle. Robot B determines the center of the target mobile robot based on the outline identified by its own first sensor. It then converts the relative pose parameters between its own center and the target mobile robot's center into measured relative pose parameters between their respective centers. This conversion process also utilizes pre-defined parameters related to the first sensor and its corresponding mobile robot center.
[0128] Measuring relative attitude parameters includes: measuring the change in relative coordinates and measuring the angle deviation, such as delta_angle. Figure 6 As shown. It is understandable that the measured angle deviation is based on the angle difference determined by the due north direction of the vehicle itself and the due north direction of the vehicle in front.
[0129] Let the relative coordinate change be (delta_x, delta_y), then the relative distance Delta_dist = sqrt(delta_x^2, delta_y^2).
[0130] In some embodiments, such as Figure 7 As shown, the second sensing device, based on its own configuration, identifies the region of interest and obtains a second identification result, including:
[0131] Step 701: Acquire image data identified by the second sensing device and determine target image data within the region of interest;
[0132] The second sensor installed on the mobile robot can perform image recognition on the robot's walking area, acquire image data, and determine the target image data within the region of interest by segmenting the acquired image data into segments of interest.
[0133] Step 702: Determine the target feature data in the target image data;
[0134] Specifically, at least one target feature point data can be determined first in the target image data, and the target feature data can be determined through at least one target feature point data.
[0135] As a concrete example, see Figure 8a and Figure 8b At least one target feature point data in the target image data, such as Figure 8a The portion enclosed by the elliptical frame is used to determine target feature data through at least one target feature point, such as... Figure 8b The part indicated by the arrow.
[0136] Step 703: Match the target feature data with the feature data of the target mobile robot. If the match is successful, it is determined that the target mobile robot has been identified. If the match fails, it is determined that the target mobile robot has not been identified.
[0137] In one approach, the mobile robot, acting as an autonomous vehicle, can pre-store image feature data of the preceding vehicle; in another approach, the mobile robot, acting as an autonomous vehicle, can communicate with the preceding vehicle to obtain its image feature data; and in yet another approach, a management device used to manage all mobile robots can send the image feature data of the preceding vehicle to the mobile robot.
[0138] In practical applications, a target image can be placed at the rear of each mobile robot in the queue. This allows the adjacent mobile robot behind to identify the target image of the preceding robot through a second sensor, thereby determining the target feature data and matching it with the image feature data of the target image placed on the preceding robot. During the matching process, it can be determined whether the matching degree between the target feature data and the image feature data of the preceding robot is within the feature threshold range. If so, the matching is considered successful; otherwise, the matching is considered unsuccessful.
[0139] After identifying the target mobile robot using its own sensors, the system can determine its relative pose parameters with the target robot based on these sensors. Taking the second sensor as an example, it can extract at least one feature corner point from each target feature point data, such as... Figure 9 The feature corner point indicated by the arrow determines its relative pose parameters with respect to the target image of the target mobile robot based on the extracted feature corner point data, and then converts these parameters into measured relative pose parameters between its own center and the center of the target mobile robot. The conversion process also utilizes pre-set parameters related to the target mobile robot's center to the target image, as well as parameters related to the second sensing device's set center on the mobile robot.
[0140] In some embodiments, the mobile robot may begin to determine its pose upon receiving a queue walking message sent by the management device. That is, as one possible implementation, it may identify a target mobile robot within the region of interest based on its own set of sensors. This includes: upon receiving a queue walking message sent by the management device, identifying a target mobile robot within the region of interest based on its own set of sensors.
[0141] The management device is used to manage all mobile robots and can issue various instructions to the mobile robots. The management device can be connected to the mobile robots via wired or wireless means.
[0142] In some embodiments, when a mobile robot receives a queue walking message sent by a management device, it identifies a target mobile robot within an area of interest based on its own set of sensors, and then obtains the measured relative pose parameters between itself and the target mobile robot. If the measured relative pose parameters meet the teaming conditions, it determines that it has successfully teamed up, and stores the measured relative pose parameters as historical measured relative position parameters.
[0143] It should be noted that if the mobile robot is at the front of the line, there is no need to determine its pose.
[0144] To facilitate understanding of some of the technical solutions described above, a simple example will be provided:
[0145] Specifically, let the historical relative attitude parameter Pos_(t-1)_result and the actual relative motion velocity Vel_(t-1)_result be from the previous moment;
[0146] Therefore, the estimated relative attitude parameter Pos_data_t_step1 at the current moment is Pos_(t-1)_result + Vel_(t-1)_result * T;
[0147] Where T is the time difference between the current moment and the previous moment.
[0148] Suppose that the vehicle uses both a first sensor and a second sensor at the same time. Then, the first current measurement relative attitude parameter of the first sensor is Pos_t_step2_lidar, and the second current measurement relative attitude parameter of the second sensor is Pos_t_step2_vision.
[0149] Therefore, the current measured relative attitude parameter Pos_t_step2 = (Pos_t_step2_lidar) * a + (Pos_t_step2_vision) * b; where a and b are the confidence parameters, and a + b = 1;
[0150] The current actual relative pose parameter Pos_t_result = (Pos_data_t_step1)*(confidence_t_step1) + (Pos_t_step2)*(confidence_t_step2); where confidence_t_step1 and confidence_t_step2 are confidence parameters, and confidence_t_step1 + confidence_t_step2 = 1.
[0151] In addition, the robot's actual movement speed Vel_t_result can be updated synchronously.
[0152] Corresponding to the aforementioned application function implementation method embodiments, this application also provides a pose determination device, a mobile robot, and corresponding embodiments.
[0153] Figure 10 This application illustrates a pose determination device applied in a mobile robot, wherein the mobile robot is located in a queue, and the queue includes at least two mobile robots. (See also...) Figure 10 The device may include: a first identification unit 110, a first acquisition unit 120, a first calculation unit 130, a second acquisition unit 140, and a first determination unit 150;
[0154] The first identification unit 110 is used to identify a target mobile robot within an area of interest based on its own set of sensing devices;
[0155] The first acquisition unit 120 is used to acquire the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and the corresponding actual relative motion speed.
[0156] The first calculation unit 130 is used to calculate the estimated relative pose parameters at the current moment based on the historical measured relative pose parameters, the actual relative motion speed, and the time difference; wherein, the time difference is the difference between the current moment and the previous moment;
[0157] The second acquisition unit 140 is used to acquire the current measured relative pose parameters between itself and the target mobile robot determined by the sensing device at the current moment.
[0158] The first determining unit 150 is used to determine the actual relative pose parameters of itself and the target mobile robot at the current moment based on the current measured relative pose parameters and the estimated relative pose parameters.
[0159] In some embodiments, the first identification unit includes:
[0160] The first identification module is used to identify the region of interest based on its own first sensing device and obtain a first identification result; and
[0161] The first determining module is used to determine the target mobile robot within the region of interest based on the first identification result;
[0162] Alternatively, a second identification module is used to identify the region of interest based on a second sensing device configured within itself, and to obtain a second identification result; and
[0163] The second determining module is used to determine the target mobile robot within the region of interest based on the second identification result;
[0164] or,
[0165] The first identification module is used to identify the region of interest based on the first sensing device it is equipped with, and to obtain the first identification result;
[0166] The second identification module is used to identify the region of interest based on its own second sensing device and obtain a second identification result; and
[0167] The third determining module is used to determine the target mobile robot within the interest based on either the first identification result or the second identification result.
[0168] The first sensing device and the second sensing device are different.
[0169] In some embodiments, the first identification module is specifically used to acquire point cloud data identified by the first sensing device, determine the first point cloud data within a preset region of interest; filter out second point cloud data that meets the distance filtering conditions from the first point cloud data; fit the second point cloud data into multiple line segments; determine the length of each of the multiple line segments and the angle between intersecting line segments; match the length and the angle with the contour parameters of the target mobile robot; if the match is successful, generate a first identification result that the target mobile robot has been identified; if the match fails, generate a first identification result that the target mobile robot has not been identified.
[0170] In some embodiments, the second recognition module is specifically used to acquire image data recognized by the second sensing device, determine target image data within the region of interest, determine target feature data in the target image data, match the target feature data with the feature data of the target mobile robot, and if the match is successful, generate a second recognition result in which the target mobile robot is recognized; if the match fails, generate a second recognition result in which the target mobile robot is not recognized.
[0171] In some embodiments, when the mobile robot uses both a first sensing device and a second sensing device, the historical measured relative pose parameters and the historical measured relative pose parameters are determined by the relative pose parameters measured by the first sensing device and the relative pose parameters measured by the second sensing device, as well as their respective confidence parameters.
[0172] In some embodiments, the first identification unit is specifically used to identify the target mobile robot within the area of interest based on its own set of sensing devices when it receives a queue walking message sent by the management device.
[0173] In some embodiments, the device further includes:
[0174] The third acquisition unit is used to acquire the relative pose parameters between itself and the target mobile robot.
[0175] A team-up unit is defined to determine that it has successfully formed a team if the measured relative pose parameters meet the team-up conditions.
[0176] The parameter storage unit is used to store the measured relative pose parameters as historical measured relative position parameters.
[0177] In some embodiments, the first acquisition unit acquires the actual relative motion speed between itself and the target mobile robot at the previous moment, including: acquiring the measured relative motion speed between itself and the target mobile robot determined by the sensing device at the previous moment; determining the estimated relative motion speed between itself and the target mobile robot at the previous moment; and determining the actual relative motion speed based on the measured relative motion speed and the estimated relative motion speed.
[0178] In some embodiments, it further includes: a speed storage unit, used to acquire and store the measured relative motion speed between itself and the target mobile robot determined by the sensing device at the current moment.
[0179] This application also provides a mobile robot, including:
[0180] Sensing devices;
[0181] Processor; and
[0182] A memory storing executable code that, when executed by the processor, causes the processor to perform a pose determination method as described above.
[0183] This application also provides a management system, including:
[0184] The queue consists of at least two mobile robots; the at least two mobile robots include at least one mobile robot as described above.
[0185] A management device that communicates with the at least two mobile robots.
[0186] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated further here.
[0187] Figure 11 This is a schematic diagram of the structure of an electronic device shown in an embodiment of this application.
[0188] See Figure 11 The electronic device 1000 includes a memory 1010 and a processor 1020.
[0189] The processor 1020 can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.
[0190] Memory 1010 may include various types of storage units, such as system memory, read-only memory (ROM), and permanent storage devices. ROM may store static data or instructions required by the processor 1020 or other modules of the computer. Permanent storage devices may be read-write storage devices. Permanent storage devices may be non-volatile storage devices that retain stored instructions and data even when the computer is powered off. In some embodiments, permanent storage devices use mass storage devices (e.g., magnetic or optical disks, flash memory) as permanent storage devices. In other embodiments, permanent storage devices may be removable storage devices (e.g., floppy disks, optical drives). System memory may be a read-write storage device or a volatile read-write storage device, such as dynamic random access memory. System memory may store some or all of the instructions and data required by the processor during operation. Furthermore, memory 1010 may include any combination of computer-readable storage media, including various types of semiconductor memory chips (DRAM, SRAM, SDRAM, flash memory, programmable read-only memory), and disks and / or optical disks may also be used. In some embodiments, memory 1010 may include a removable storage device that is readable and / or writable, such as a laser disc (CD), a read-only digital multifunction optical disc (e.g., DVD-ROM, dual-layer DVD-ROM), a read-only Blu-ray disc, an ultra-high density optical disc, a flash memory card (e.g., SD card, mini SD card, Micro-SD card, etc.), a magnetic floppy disk, etc. Computer-readable storage media do not contain carrier waves or transient electronic signals transmitted wirelessly or via wired connections.
[0191] The memory 1010 stores executable code, which, when processed by the processor 1020, can cause the processor 1020 to execute part or all of the methods described above.
[0192] The solution of this application has been described in detail above with reference to the accompanying drawings. In the above embodiments, the descriptions of each embodiment have different emphases; parts not described in detail in a certain embodiment can be referred to in the relevant descriptions of other embodiments. Those skilled in the art should also understand that the actions and modules involved in the specification are not necessarily essential to this application. Furthermore, it is understood that the steps in the method of this application embodiment can be adjusted, combined, and deleted according to actual needs, and the modules in the device of this application embodiment can be combined, divided, and deleted according to actual needs.
[0193] Furthermore, the method according to this application can also be implemented as a computer program or computer program product, which includes computer program code instructions for performing some or all of the steps in the method described above.
[0194] Alternatively, this application may be implemented as a non-transitory machine-readable storage medium (or computer-readable storage medium, or machine-readable storage medium) storing executable code (or computer program, or computer instruction code) that, when executed by a processor of an electronic device (or electronic device, server, etc.), causes the processor to perform some or all of the steps of the methods described above according to this application.
[0195] Those skilled in the art will also understand that the various exemplary logic blocks, modules, circuits, and algorithm steps described in connection with the present application can be implemented as electronic hardware, computer software, or a combination of both.
[0196] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems and methods according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0197] The various embodiments of this application have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A pose determination method, characterized in that, Applied to mobile robots located in a queue, the queue comprising at least two mobile robots, the method includes: Identifies target mobile robots within areas of interest based on their own sensor devices; Obtain the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and their corresponding actual relative motion speed; The estimated relative pose parameters at the current moment are calculated based on the historical measured relative pose parameters, the actual relative motion velocity, and the time difference; wherein, the time difference is the difference between the current moment and the previous moment; Obtain the current relative pose parameters between itself and the target mobile robot as determined by the sensing device at the current moment; The actual relative pose parameters between itself and the target mobile robot at the current moment are determined based on the currently measured relative pose parameters and the estimated relative pose parameters; the actual relative pose parameters are jointly determined by the currently measured relative pose parameters, the estimated relative pose parameters, and their respective confidence parameters. The step of obtaining the actual relative motion speed between itself and the target mobile robot at the previous moment includes: obtaining the measured relative motion speed between itself and the target mobile robot determined by the sensing device at the previous moment; determining the estimated relative motion speed between itself and the target mobile robot at the previous moment; and determining the actual relative motion speed based on the measured relative motion speed and the estimated relative motion speed.
2. The method according to claim 1, characterized in that, The method of identifying a target mobile robot within a region of interest based on its own sensing devices includes: The system identifies the region of interest based on its own first sensing device, obtains a first identification result, and determines the target mobile robot within the region of interest based on the first identification result. Alternatively, the region of interest can be identified using a second sensing device that is set up on its own, a second identification result can be obtained, and the target mobile robot within the region of interest can be determined based on the second identification result; Alternatively, the system identifies the region of interest using a first sensor and obtains a first identification result, and identifies the region of interest using a second sensor and obtains a second identification result. The target mobile robot within the region of interest is then determined based on either the first or the second identification result. The first sensing device and the second sensing device are different.
3. The method according to claim 2, characterized in that, The first sensing device, based on its own settings, identifies the region of interest and obtains a first identification result, including: Acquire point cloud data identified by the first sensing device, and determine the first point cloud data within the preset region of interest; Filter out the second point cloud data that meets the distance filtering criteria from the first point cloud data; The second point cloud data is fitted into multiple line segments; Determine the length of each of the multiple line segments, and the angle between intersecting line segments; The length and angle are matched with the contour parameters of the target mobile robot. If the match is successful, a first recognition result is generated that the target mobile robot has been identified. If the match fails, a first recognition result is generated that the target mobile robot has not been identified.
4. The method according to claim 3, characterized in that, The second sensing device, based on its own settings, identifies the region of interest and obtains a second identification result, including: Acquire image data identified by the second sensing device and determine target image data within the region of interest; Determine the target feature data in the target image data; The target feature data is matched with the feature data of the target mobile robot. If the match is successful, a second recognition result is generated that the target mobile robot has been identified. If the match fails, a second recognition result is generated that the target mobile robot has not been identified.
5. The method according to claim 2, characterized in that, The historical relative pose parameters and the current relative pose parameters are determined by the relative pose parameters measured by the first sensing device and the relative pose parameters measured by the second sensing device, as well as their respective confidence parameters.
6. The method according to claim 1, characterized in that, The method of identifying a target mobile robot within a region of interest based on its own sensing devices includes: Upon receiving a queue walking message from the management device, the robot identifies the target mobile robot within the area of interest based on its own set of sensors.
7. The method according to claim 6, characterized in that, Also includes: Obtain the relative pose parameters between itself and the target mobile robot; If the measured relative pose parameters meet the team formation conditions, the team formation is confirmed to be successful, and the measured relative pose parameters are stored as historical measured relative pose parameters.
8. The method according to claim 1, characterized in that, Also includes: Acquire and store the measured relative motion speed between itself and the target mobile robot as determined by the sensing device at the current moment.
9. A pose determination device, characterized in that, Applied to mobile robots located in a queue, the queue comprising at least two mobile robots, the device includes: The first identification unit is used to identify the target mobile robot within the area of interest based on its own set of sensing devices; The first acquisition unit is used to acquire the historical measured relative pose parameters between itself and the target mobile robot at the previous moment and the corresponding actual relative motion speed. The first calculation unit is used to calculate the estimated relative pose parameters at the current moment based on the historical measured relative pose parameters, the actual relative motion velocity, and the time difference; wherein, the time difference is the difference between the current moment and the previous moment; The second acquisition unit is used to acquire the current measured relative pose parameters between itself and the target mobile robot as determined by the sensing device at the current moment. The first determining unit is configured to determine the actual relative pose parameters of itself and the target mobile robot at the current moment based on the current measured relative pose parameters and the estimated relative pose parameters; the actual relative pose parameters are jointly determined by the current measured relative pose parameters, the estimated relative pose parameters, and their respective confidence parameters; The first acquisition unit acquires the actual relative motion speed between itself and the target mobile robot at the previous moment, including: acquiring the measured relative motion speed between itself and the target mobile robot determined by the sensing device at the previous moment; determining the estimated relative motion speed between itself and the target mobile robot at the previous moment; and determining the actual relative motion speed based on the measured relative motion speed and the estimated relative motion speed.
10. A mobile robot, characterized in that, include: Sensing devices; processor; as well as A memory having executable code stored thereon, which, when executed by the processor, causes the processor to perform the method as described in any one of claims 1-8.
11. A management system, characterized in that, include: At least two mobile robots forming a queue; The at least two mobile robots include at least one mobile robot as described in claim 10; A management device that communicates with the at least two mobile robots.
12. A non-transitory machine-readable storage medium having executable code stored thereon, which, when executed by a processor of an electronic device, causes the processor to perform the method as described in any one of claims 1-8.