Object position determination method and apparatus, robot, and storage medium

By acquiring the position information of the object to be grasped relative to the reference coordinates, and using the relationship between the fixed reference coordinates and the baseline coordinates to calculate the object's third position information, the problem of inaccurate grasping caused by camera intrinsic parameters is solved, and higher precision object positioning and grasping are achieved.

CN116214514BActive Publication Date: 2026-03-24MECH MIND ROBOTICS TECH LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-17
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

In existing technologies, inaccurate object grasping is caused by camera intrinsic parameter issues, especially when the camera is time-varying, the position information of the object relative to the reference position is inaccurate.

Method used

By acquiring the first position information of the object to be grabbed relative to the preset reference coordinates, and calculating the third position information of the object to be grabbed relative to the reference coordinates based on the position information between the reference coordinates and the reference coordinates, the error caused by the camera intrinsic parameters is avoided by utilizing the relationship between the preset fixed reference coordinates and the reference coordinates.

Benefits of technology

It enables more accurate determination of the position information of the object to be grasped relative to the reference coordinates, avoids position errors caused by camera intrinsic parameters, and improves the accuracy of object grasping.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116214514B_ABST
    Figure CN116214514B_ABST
Patent Text Reader

Abstract

The method for determining the position of an object provided by the present disclosure, the device, the robot and the storage medium, the method is applied to a robot, by acquiring first position information of a to-be-grabbed object relative to a preset reference coordinate, acquiring third position information of the to-be-grabbed object relative to a reference coordinate according to second position information between the reference coordinate and the reference coordinate and the first position information; wherein the reference coordinate is a coordinate fixed between the position information set in advance for the camera shooting of the robot and the reference coordinate, and the relative position between the reference coordinate and the robot is fixed, and then the to-be-grabbed object is grabbed according to the third position information. In the technical solution, the preset reference coordinate is used as an intermediate conversion point of the reference coordinate and the to-be-grabbed object, and under the condition that the position information between the reference coordinate and the reference coordinate is known, the position information of the to-be-grabbed object relative to the reference coordinate can be more accurately determined, and the position error caused by the time-varying camera internal parameter problem in the prior art is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of machine vision technology, and in particular to a method, apparatus, robot, and storage medium for determining the position of an object. Background Technology

[0002] With the continuous development of the machine vision technology field, technicians and users have also put forward higher requirements for the accuracy of determining the position of objects in machine vision.

[0003] In existing technologies, object position recognition is mainly based on camera photography. That is, a reference position is preset, the camera takes a picture of the object to obtain the object's position relative to the camera, and then the position information of the object relative to the reference position is determined based on the position of the camera itself and the reference position.

[0004] However, in the above implementation, when there are time-varying intrinsic parameters of the camera, the position information of the object relative to the reference position will be inaccurate, which will lead to inaccurate object grasping. Summary of the Invention

[0005] This disclosure provides a method, apparatus, robot, and storage medium for determining the position of an object, in order to solve the problems of inaccurate object grasping caused by camera intrinsic parameters and other issues in the prior art.

[0006] In a first aspect, embodiments of this disclosure provide a method for determining the position of an object, applied to a robot, the method comprising:

[0007] Obtain the first position information of the object to be grabbed relative to the preset reference coordinates;

[0008] Based on the second position information between the reference coordinates and the base coordinates, and the first position information, the third position information of the object to be grasped relative to the base coordinates is obtained;

[0009] Based on the third location information, the object to be grasped is grabbed;

[0010] The reference coordinates are coordinates whose positional information between the robot's camera and the reference coordinates is fixed in advance, and the relative position of the reference coordinates and the robot is fixed.

[0011] In one possible design of the first aspect, the reference position corresponding to the reference coordinates and the object to be grasped are located within the current field of view of the robot's camera;

[0012] The step of obtaining the first position information of the object to be grasped relative to the preset reference coordinates includes:

[0013] Obtain the first position of the object to be grasped and the reference position corresponding to the reference coordinates;

[0014] The first position is converted into reference coordinates based on the reference position to obtain the first position information.

[0015] In another possible design of the first aspect, the reference position corresponding to the reference coordinates and the object to be grasped are respectively located within the different fields of view of the robot's camera before and after movement;

[0016] The step of obtaining the first position information of the object to be grasped relative to the preset reference coordinates includes:

[0017] The object to be grasped is obtained based on the second position of the camera after the movement;

[0018] Based on the fourth position information before and after the camera moves, the second position is determined based on the third position of the camera before the move;

[0019] The third position is converted into reference coordinates based on the reference position to obtain the first position information.

[0020] In another possible design in the first aspect, the calculation formula for obtaining the third position information of the object to be grasped relative to the reference coordinates based on the second position information between the reference coordinates and the base coordinates, and the first position information, is as follows:

[0021]

[0022] Among them, the The third location information, the For the first location information, the This refers to the second location information.

[0023] In another possible design within the first aspect, before acquiring the first position information of the object to be grasped relative to preset reference coordinates, the method further includes:

[0024] Three markers are used to determine a fixed location;

[0025] The reference coordinates are established with the center position of the three markers as the origin and the normal vector of the plane formed by the three markers.

[0026] Optionally, all three markers are located within the current field of view of the robot's camera.

[0027] Optionally, if the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera before and after movement, the method further includes:

[0028] The reference coordinates are redefined when the object to be grasped is within the field of view of the robot's camera.

[0029] Secondly, embodiments of this disclosure provide an object position determination device applied to a robot, the device comprising:

[0030] The acquisition module is used to acquire the first position information of the object to be captured relative to the preset reference coordinates;

[0031] The determining module is used to obtain the third position information of the object to be grasped relative to the reference coordinates based on the second position information between the reference coordinates and the base coordinates, and the first position information;

[0032] The grasping module is used to grasp the object to be grasped based on the third location information;

[0033] The reference coordinates are coordinates whose positional information between the robot's camera and the reference coordinates is fixed in advance, and the relative position of the reference coordinates and the robot is fixed.

[0034] In one possible design of the second aspect, the reference position corresponding to the reference coordinates and the object to be grasped are located within the current field of view of the robot's camera;

[0035] The acquisition module is specifically used for:

[0036] Obtain the first position of the object to be grasped and the reference position corresponding to the reference coordinates;

[0037] The first position is converted into reference coordinates based on the reference position to obtain the first position information.

[0038] In another possible design of the second aspect, the reference position corresponding to the reference coordinates and the object to be grasped are respectively located within the different fields of view of the robot's camera before and after movement;

[0039] The acquisition module is specifically used for:

[0040] The object to be grasped is obtained based on the second position of the camera after the movement;

[0041] Based on the fourth position information before and after the camera moves, the second position is determined based on the third position of the camera before the move;

[0042] The third position is converted into reference coordinates based on the reference position to obtain the first position information.

[0043] In another possible design, the calculation formula for obtaining the third position information of the object to be grasped relative to the reference coordinates based on the second position information between the reference coordinates and the base coordinates, and the first position information, is as follows:

[0044]

[0045] Among them, the The third location information, the For the first location information, the This refers to the second location information.

[0046] In another possible design, prior to acquiring the first position information of the object to be grasped relative to preset reference coordinates, the determining module is further configured to:

[0047] Three markers are used to determine a fixed location;

[0048] The reference coordinates are established with the center position of the three markers as the origin and the normal vector of the plane formed by the three markers.

[0049] Optionally, all three markers are located within the current field of view of the robot's camera.

[0050] Optionally, if the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera before and after movement, the determining module is further configured to:

[0051] The reference coordinates are redefined when the object to be grasped is within the field of view of the robot's camera.

[0052] Thirdly, this disclosure provides a robot, including: a processor, and a memory and a transceiver communicatively connected to the processor;

[0053] The memory stores computer-executed instructions; the transceiver is used for sending and receiving data.

[0054] The processor executes computer execution instructions stored in the memory to implement the method as described in the first aspect or any of the above methods.

[0055] Fourthly, this disclosure provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the method described in the first aspect or any of the above methods.

[0056] Fifthly, this disclosure provides a computer program product, including a computer program that, when executed by a processor, implements the method described in the first aspect or any of the above methods.

[0057] This disclosure provides a method, apparatus, robot, and storage medium for determining the position of an object. The method, applied to a robot, acquires first position information of the object to be grasped relative to preset reference coordinates. Based on second position information between the reference coordinates and a reference coordinate, and the first position information, a third position information of the object to be grasped relative to the reference coordinates is obtained. The reference coordinates are pre-set coordinates with fixed positional information relative to the reference coordinates, as captured by the robot's camera. The relative position of the reference coordinates and the robot is fixed. The object to be grasped is then grasped based on the third position information. In this technical solution, using preset reference coordinates as an intermediate conversion point between the reference coordinates and the object to be grasped allows for a more accurate determination of the object's position relative to the reference coordinates, avoiding position errors caused by time-varying camera intrinsic parameters in existing technologies. Attached Figure Description

[0058] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0059] Figure 1 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 1 ;

[0060] Figure 2 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 2 ;

[0061] Figure 3 A schematic diagram of object position determination provided in the embodiments of this disclosure. Figure 1 ;

[0062] Figure 4 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 3 ;

[0063] Figure 5 A schematic diagram of object position determination provided in the embodiments of this disclosure. Figure 2 ;

[0064] Figure 6 A schematic diagram of the structure of the object position determination device provided in the embodiments of this disclosure;

[0065] Figure 7This is a schematic diagram of the structure of a robot provided in an embodiment of this disclosure.

[0066] The accompanying drawings have illustrated specific embodiments of this disclosure, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concepts of this disclosure to those skilled in the art through reference to particular embodiments. Detailed Implementation

[0067] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0068] Before introducing the embodiments of this disclosure, the application background of the embodiments of this disclosure will first be explained:

[0069] With the continuous development of the machine vision technology field, technicians and users have also put forward higher requirements for the accuracy of determining the position of objects in machine vision.

[0070] In existing technologies, object position recognition is mainly based on camera photography. That is, a reference position is preset, the camera takes a picture of the object to obtain the object's position relative to the camera, and then the position information of the object relative to the reference position is determined based on the position of the camera itself and the reference position. The reference position is relatively fixed with the position of the robot.

[0071] The present invention addresses a problem in the prior art where, when a camera has time-varying intrinsic parameters, the position information of an object relative to a reference position becomes inaccurate, leading to inaccurate object grasping.

[0072] To address the technical problems existing in the prior art, the inventors of this disclosure have the following concept: This disclosure requires obtaining the position information of the object to be grasped relative to a reference point. The position of the reference point and the robot are fixed. At this time, a reference point can be selected in physical space. Due to the time-varying intrinsic parameter problem of the camera, the camera is used to photograph the reference point and the object to be grasped. The coordinates of the object to be grasped are then converted to the coordinates corresponding to the reference point. Furthermore, since the positions of the reference point and the reference point are fixed, the coordinates of the object to be grasped at the reference point are converted to the coordinates corresponding to the reference point, thereby avoiding positional errors caused by camera intrinsic parameters.

[0073] The technical solutions of this disclosure will now be described in detail through specific embodiments. It should be noted that the following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.

[0074] It is worth noting that the application fields of the methods, devices, robots and storage media for determining the position of objects disclosed herein are not limited.

[0075] In this disclosure, the implementing entity is a robot, which may specifically be a control unit in the robot or a controller that controls the robot.

[0076] Figure 1 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 1 ,like Figure 1 As shown, the method for determining the position of the object may include the following steps:

[0077] Step 11: Obtain the first position information of the object to be grabbed relative to the preset reference coordinates.

[0078] In this step, if the camera accuracy changes over time due to some reasons (such as temperature drift, micro-movement of parts after shaking, etc.), a reference coordinate can be preset in the physical space. When the camera takes pictures of the object to be grabbed and the reference coordinate, the position information of the object to be grabbed relative to the reference coordinate can be obtained, that is, the first position information.

[0079] As an example, the first position information is the coordinate point corresponding to the origin of the reference coordinate system of the object to be grabbed. Taking the object to be grabbed as a point, its first position information can be (3, 4, 5); taking the object to be grabbed as a cylinder (if the bottom surface of the cylinder is relatively small, it can be a point) as an example, its first position information can be composed of (3, 4, 5) and (4, 6, 7).

[0080] It should be understood that the coordinate points involved in the first position information are different depending on the shape of the object to be grasped.

[0081] Optionally, prior to step 11, the method for determining the object's position may also include the construction of reference coordinates:

[0082] Step 1: Determine three fixed landmarks (datum points).

[0083] The reference coordinates can be fixed in physical space and will not change over time. If the reference coordinates are offset, it means that the three markers constituting the reference coordinates are markers in fixed positions.

[0084] In one possible implementation, all three markers are located within the current field of view of the robot's camera.

[0085] The significance of this limitation is that the camera can determine the location information of the reference coordinates in a single shot, without the need for multiple shots, thus avoiding the impact of time-varying issues on the accuracy of the reference coordinates' location information.

[0086] Step 2: Establish reference coordinates with the center of the three markers as the origin and the normal vector of the plane formed by the three markers.

[0087] In physical space, the center positions of three markers are determined and denoted as the origin B. A plane is then constructed based on the normal vector of this plane and the origin B. (See the diagram below for an illustration of this implementation.) Figure 3 (Example shown).

[0088] Step 12: Based on the second position information between the reference coordinates and the base coordinates, and the first position information, obtain the third position information of the object to be grabbed relative to the base coordinates.

[0089] Among them, the reference coordinates are fixed coordinates that are pre-set for the position information between the robot's camera and the reference coordinates, and the relative position between the reference coordinates and the robot is fixed;

[0090] In this step, the positions of the reference coordinates and the base coordinates in physical space are known. After obtaining the first position information of the object to be grabbed relative to the reference coordinates, the position of the object to be grabbed can be converted into the base coordinates based on the second position information between the reference coordinates and the base coordinates, so as to obtain the third position information of the object to be grabbed relative to the base coordinates.

[0091] That is, the second position information can be understood as the positional relationship between the reference coordinates and the baseline coordinates.

[0092] Optionally, the calculation formula for step 12 is as follows:

[0093]

[0094] in, This is third-party location information. This is the first location information. This is the second location information.

[0095] In one possible implementation, the second position information is: with the reference coordinates as the origin, denoted as (0, 0, 0), and the coordinates of the reference coordinates relative to the reference coordinates are (2, 2, 2).

[0096] When the first position information of the object to be grabbed relative to the reference coordinates is (3,4,5), the third position information of the object to be grabbed relative to the reference coordinates is (5,6,7), that is, the position of the object to be grabbed in the coordinate system corresponding to the reference coordinates is (5,6,7).

[0097] Step 13: Grab the object to be grabbed based on the third location information.

[0098] In this step, the relative position of the reference coordinates and the robot is fixed in the robot's field of vision. Then, based on the third position information of the object to be grasped relative to the reference coordinates, the grasping unit is moved to the position indicated by the third position information to perform the grasping operation on the object to be grasped.

[0099] The above process avoids the involvement of external parameters and the flange in the robot, and also avoids errors caused by camera intrinsic parameters.

[0100] This disclosure provides a method for determining the position of an object, applied to a robot. The method acquires first position information of the object to be grasped relative to preset reference coordinates. Then, based on second position information between the reference coordinates and a reference coordinate, and the first position information, a third position information of the object relative to the reference coordinates is obtained. The reference coordinates are coordinates pre-set for the robot's camera, with a fixed position relative to the reference coordinates. The relative position of the reference coordinates and the robot is fixed. The object is then grasped based on the third position information. This technical solution uses preset reference coordinates as the intermediate conversion point between the reference coordinates and the object to be grasped. Knowing the position information between the reference coordinates and the reference coordinates allows for a more accurate determination of the object's position relative to the reference coordinates. This avoids position errors caused by time-varying camera intrinsic parameters in existing technologies, reduces absolute camera errors, corrects time-varying issues in the robotic arm, and eliminates the need for extrinsic parameter calibration when changing cameras.

[0101] exist Figure 1 Based on the illustrated embodiment, if the reference position corresponding to the reference coordinates and the object to be grasped are within the current field of view of the robot's camera, then step 11 above can be implemented as follows: Figure 2 As shown, Figure 2 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 2 .

[0102] in, Figure 3 A schematic diagram of object position determination provided in the embodiments of this disclosure. Figure 1 , combined Figure 3 The example shown is for Figure 2 The illustrated embodiment will be used for explanation.

[0103] Step 21: Obtain the first position of the object to be grabbed and the reference position corresponding to the reference coordinates.

[0104] In this step, with a single shot taken by the camera, the reference coordinates formed by the object to be grabbed and the three markers are captured within the camera's field of view. At this point, the first position of the object to be grabbed and the reference position corresponding to the reference coordinates are obtained from the camera's field of view.

[0105] In one possible implementation, a coordinate system is established with the camera as the origin. The first position of the object O to be captured can be (4, 5, 6), and the reference position corresponding to the reference coordinate B can be (1, 1, 1).

[0106] Step 22: Convert the first position into a reference coordinate system based on the reference position to obtain the first position information.

[0107] In this step, since the object to be captured and the reference coordinates are both in the same camera coordinate system after the camera takes a picture in physical space, the first position is converted into the reference coordinates based on the reference position to obtain the position information of the object to be captured in the reference coordinates, that is, the first position information.

[0108] In the above possible implementation, the first position can be (4, 5, 6), and the reference position corresponding to the reference coordinate B can be (1, 1, 1). If the reference coordinate is set to the origin (0, 0, 0), then the position information of the object O to be grabbed in the reference coordinate B is (3, 4, 5).

[0109] Furthermore, following this embodiment, step 12 is performed, namely, in physical space, the positional relationship between the reference coordinates and the base coordinates is known, and the object to be grasped is converted into third positional information relative to the base coordinates.

[0110] For example, if the base coordinates are (0, 0, 0) and the reference coordinates based on the base coordinates are (2, 2, 2), then the third position information of the object to be grabbed relative to the base coordinates is (5, 6, 7).

[0111] The method for determining the position of an object provided in this disclosure obtains a first position of the object to be grasped and a reference position corresponding to reference coordinates. Then, the first position is converted into reference coordinates based on the reference position to obtain first position information. In this technical solution, if the reference position corresponding to the reference coordinates and the object to be grasped are within the current field of view of the robot's camera, the conversion can be performed directly to obtain the first position information of the object to be grasped relative to the preset reference coordinates.

[0112] exist Figure 1Based on the illustrated embodiment, if the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera before and after movement, then step 11 above can be implemented as follows: Figure 4 As shown, Figure 4 Flowchart of the method for determining the position of an object provided in the embodiments of this disclosure Figure 3 .

[0113] in, Figure 5 A schematic diagram of object position determination provided in the embodiments of this disclosure. Figure 2 , combined Figure 5 The example shown is for Figure 4 The illustrated embodiment will be used for explanation.

[0114] Step 41: Obtain the second position of the object to be grabbed based on the camera's position after the movement.

[0115] In this step, during a single camera shot, the reference coordinates formed by the object to be grasped and the three markers are not fully captured within the camera's field of view. At this point, the robot controls the camera's movement to take pictures of the object to be grasped and the positions corresponding to the reference coordinates.

[0116] Furthermore, using the moved camera as a reference, the object to be grasped is determined based on the second position of the camera after the movement.

[0117] In one possible implementation, the second position is the coordinates of the object O to be captured based on Z2 (0, 0, -4) within the camera's field of view 2.

[0118] Step 42: Based on the fourth position information before and after the camera moves, determine the second position based on the third position where the camera was before the move.

[0119] In this step, the robot knows the fourth position information corresponding to the two camera movements before and after the camera moves. Based on the second position of the object to be grasped after the movement, the position of the object to be grasped can be converted to the third position of the camera before the movement.

[0120] In one possible implementation, the Z-axis and Y-axis coordinates between Z1 and Z2 remain unchanged, and only the camera moves on the X-axis, which is the fourth position information. For example, with Z1 as the origin (0, 0, 0), the coordinates of Z2 are (3, 0, 0), and the object to be grabbed O is based on the coordinates of Z2 (0, 0, -4). Then the second position is based on the third position of the camera before the movement, which is (3, 0, -4).

[0121] Step 43: Convert the third position into a reference coordinate system based on the reference position to obtain the first position information.

[0122] In this step, since the relationship between the reference position corresponding to the reference coordinates and the position of the camera before movement is fixed in physical space, the third position is converted into reference coordinates based on the reference position to obtain the position information of the object to be captured in the reference coordinates, i.e., the first position information.

[0123] In the above possible implementation, the third position can be (3, 0, -4), and the reference position corresponding to the reference coordinate B can be (1, 1, 1). If the reference coordinate is set to the origin (0, 0, 0), then the position information of the object O to be grabbed in the reference coordinate B is (2, -1, -5).

[0124] Furthermore, following this embodiment, step 12 is performed, that is, in physical space, the positional relationship between the reference coordinates and the base coordinates is fixed, and the object to be grasped is converted into third position information relative to the base coordinates.

[0125] For example, if the base coordinates are (0, 0, 0) and the reference coordinates based on the base coordinates are (2, 2, 2), then the third position information of the object to be grabbed relative to the base coordinates is (0, 1, -3).

[0126] In addition, optionally, if the reference position corresponding to the reference coordinates and the object to be grasped are located in different fields of view of the robot's camera before and after movement, the reference coordinates can be redefined when the object to be grasped is located in the field of view of the robot's camera.

[0127] In this embodiment, to avoid Figure 4 In the embodiment shown, where multiple conversions are required, the reference coordinates can be redefined within the camera's field of view corresponding to the captured object. Since the positional relationship between these reference coordinates and the baseline coordinates is fixed, a single conversion can be performed to obtain the third position information of the object relative to the baseline coordinates.

[0128] In other words, in practical applications, more markers can be installed to ensure that the camera can always see three markers at the same time when taking a picture of the object to be captured.

[0129] It should be understood that in practical applications, the positional relationship between the camera and the flange is fixed, meaning that the movement of the flange can be regarded as the movement of the camera.

[0130] Optional, Figure 4 The calculation formula corresponding to the illustrated embodiment can be:

[0131]

[0132] in, This is the first location information. For the second position, This is the fourth position information. The position of the camera based on reference coordinates before it moves.

[0133] The object position determination method provided in this disclosure involves obtaining the second position of the object to be grasped based on the camera's position after movement, and determining the second position based on the camera's third position before movement, using fourth position information before and after camera movement. The third position is then converted into reference coordinates relative to a reference position to obtain first position information. In this technical solution, the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera; the conversion is performed layer by layer to obtain the first position information of the object to be grasped relative to the preset reference coordinates.

[0134] The following are embodiments of the apparatus disclosed herein, which can be used to execute embodiments of the method disclosed herein. For details not disclosed in the apparatus embodiments of this disclosure, please refer to the embodiments of the method disclosed herein.

[0135] Figure 6 This is a schematic diagram of the structure of the object position determination device provided in an embodiment of this disclosure. Figure 6 As shown, the device for determining the position of an object is applied to a robot and includes:

[0136] The acquisition module 61 is used to acquire the first position information of the object to be grasped relative to the preset reference coordinates;

[0137] The determining module 62 is used to obtain the third position information of the object to be grasped relative to the reference coordinates based on the second position information between the reference coordinates and the reference coordinates, and the first position information;

[0138] The grasping module 63 is used to grasp the object to be grasped based on the third position information;

[0139] The reference coordinates are fixed coordinates that are pre-set for the robot's camera to capture images, and the relative position of the reference coordinates and the robot is fixed.

[0140] In one possible design of this disclosure embodiment, the reference position corresponding to the reference coordinates and the object to be grasped are located within the current field of view of the robot's camera;

[0141] Module 61 is used specifically for:

[0142] Obtain the first position of the object to be grabbed and the reference position corresponding to the reference coordinates;

[0143] The first position is converted into a reference coordinate system based on the reference position to obtain the first position information.

[0144] In another possible design of this disclosure embodiment, the reference position corresponding to the reference coordinates and the object to be grasped are located in different fields of view of the robot's camera before and after movement;

[0145] Module 61 is used specifically for:

[0146] The object to be grabbed is obtained based on the second position of the camera after the movement;

[0147] Based on the fourth position information before and after the camera moves, the second position is determined based on the third position of the camera before the move;

[0148] The third position is converted into a reference coordinate system based on the reference position to obtain the first position information.

[0149] In another possible design of this disclosure embodiment, the calculation formula corresponding to the third position information of the object to be grasped relative to the reference coordinates, based on the second position information between the reference coordinates and the base coordinates, and the first position information, is as follows:

[0150]

[0151] in, This is third-party location information. This is the first location information. This is the second location information.

[0152] In another possible design of this disclosure embodiment, before obtaining the first position information of the object to be grasped relative to the preset reference coordinates, the determining module 62 is further configured to:

[0153] Three markers are used to determine a fixed location;

[0154] Establish reference coordinates with the center of the three markers as the origin and the normal vector of the plane formed by the three markers.

[0155] Optionally, all three markers are located within the robot's current field of view of its camera.

[0156] Optionally, if the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera before and after movement, the determination module 62 is further used for:

[0157] The reference coordinates are redefined when the object to be grasped is within the field of view of the robot's camera.

[0158] The object position determination device provided in this disclosure can be used to execute the object position determination method in any of the above embodiments. Its implementation principle and technical effect are similar, and will not be described again here.

[0159] It should be noted that the division of the various modules in the above device is merely a logical functional division. In actual implementation, they can be fully or partially integrated into a single physical entity, or they can be physically separated. Furthermore, these modules can be implemented entirely in software via processing element calls; they can be fully implemented in hardware; or some modules can be implemented by processing element calls to software, while others are implemented in hardware. Additionally, these modules can be fully or partially integrated together, or implemented independently. The processing element mentioned here can be an integrated circuit with signal processing capabilities. In the implementation process, each step of the above method or each of the above modules can be completed through the integrated logic circuits in the hardware of the processor element or through software instructions.

[0160] Figure 7 This is a schematic diagram of the structure of the robot provided in the embodiments of this disclosure, such as... Figure 7 As shown, the robot may include: a processor 71, a memory 72, and computer program instructions stored in the memory 72 and executable on the processor 71. When the processor 71 executes the computer program instructions, it implements the method provided in any of the foregoing embodiments.

[0161] Optionally, the various components of the robot can be connected via a system bus.

[0162] The memory 72 can be a separate memory unit or a memory unit integrated into the processor 71. The number of processors 71 can be one or more.

[0163] It should be understood that the processor 71 can be a Central Processing Unit (CPU), or other general-purpose processors 71, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor 71 can be a microprocessor 71, or any conventional processor 71. The steps of the method disclosed in this disclosure can be directly manifested as being executed by the hardware processor 71, or being executed by a combination of hardware and software modules within the processor 71.

[0164] The system bus can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The system bus can be divided into address bus, data bus, control bus, etc. For ease of representation, only one thick line is used in the figure, but this does not indicate that there is only one bus or one type of bus. Memory 72 may include random access memory (RAM) 72, and may also include non-volatile memory (NVM) 72, such as at least one disk storage device 72.

[0165] All or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a readable memory 72. When the program is executed, it performs the steps of the above method embodiments; and the aforementioned memory 72 (storage medium) includes: read-only memory 72 (ROM), RAM, flash memory 72, hard disk, solid-state hard disk, magnetic tape, floppy disk, optical disk, and any combination thereof.

[0166] The robot provided in this disclosure can be used to execute the object position determination method provided in any of the above method embodiments. Its implementation principle and technical effect are similar, and will not be described again here.

[0167] This disclosure provides a computer-readable storage medium storing computer instructions that, when executed on a computer, cause the computer to perform the aforementioned method for determining the position of an object.

[0168] The aforementioned computer-readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory, electrically erasable programmable read-only memory, erasable programmable read-only memory, programmable read-only memory, read-only memory, magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.

[0169] Optionally, a readable storage medium can be coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Alternatively, the readable storage medium can be an integral part of the processor. Both the processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components within the device.

[0170] This disclosure also provides a computer program product, which includes a computer program stored in a computer-readable storage medium. At least one processor can read the computer program from the computer-readable storage medium, and when the at least one processor executes the computer program, it can implement the above-described method for determining the position of an object.

[0171] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.

Claims

1. A method for determining the position of an object, characterized in that, Applied to robots, the method includes: Three markers are identified at fixed locations, all of which are within the current field of view of the robot's camera; A reference coordinate system is established with the center position of the three markers as the origin and the normal vector of the plane formed by the three markers. Obtain the first position information of the object to be grabbed relative to the reference coordinates; Multiply the second position information between the reference coordinates and the base coordinates with the first position information to obtain the third position information of the object to be grasped relative to the base coordinates; Based on the third location information, the object to be grasped is grabbed; The reference coordinates are coordinates whose positional information between the robot's camera and the reference coordinates is fixed in advance, and the relative position of the reference coordinates and the robot is fixed.

2. The method according to claim 1, characterized in that, The reference position corresponding to the reference coordinates and the object to be grasped are located within the current field of view of the robot's camera; The step of obtaining the first position information of the object to be grasped relative to the preset reference coordinates includes: Obtain the first position of the object to be grasped and the reference position corresponding to the reference coordinates; The first position is converted into reference coordinates based on the reference position to obtain the first position information.

3. The method according to claim 1, characterized in that, The reference position corresponding to the reference coordinates and the object to be grasped are respectively located within the different fields of view of the robot's camera before and after movement; The step of obtaining the first position information of the object to be grasped relative to the preset reference coordinates includes: The object to be grasped is obtained based on the second position of the camera after the movement; Based on the fourth position information before and after the camera moves, the second position is determined based on the third position of the camera before the move; The third position is converted into reference coordinates based on the reference position to obtain the first position information.

4. The method according to claim 1, characterized in that, The calculation formula for multiplying the second position information between the reference coordinates and the base coordinates with the first position information to obtain the third position information of the object to be grasped relative to the base coordinates is as follows: Among them, the The third location information, the For the first location information, the This refers to the second location information.

5. The method according to claim 3, characterized in that, If the reference position corresponding to the reference coordinates and the object to be grasped are located within different fields of view of the robot's camera before and after movement, the method further includes: The reference coordinates are redefined when the object to be grasped is within the field of view of the robot's camera.

6. A device for determining the position of an object, characterized in that, The device, applied to robots, includes: The determination module is used to determine three markers at fixed positions, all of which are located within the current field of view of the robot's camera; and to establish reference coordinates with the center position of the three markers as the origin and the normal vector of the plane formed by the three markers. The acquisition module is used to acquire the first position information of the object to be captured relative to the reference coordinates; The determining module is further configured to multiply the second position information between the reference coordinates and the base coordinates with the first position information to obtain the third position information of the object to be grasped relative to the base coordinates; The grasping module is used to grasp the object to be grasped based on the third location information; The reference coordinates are coordinates whose positional information between the robot's camera and the reference coordinates is fixed in advance, and the relative position of the reference coordinates and the robot is fixed.

7. A robot, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Visual positioning method, device and system

    CN115511967A