Joint camera and inertial measurement unit calibration
US-2023377197-A1 · Nov 23, 2023 · US
US12285875B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12285875-B2 |
| Application number | US-202017089332-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 4, 2020 |
| Priority date | Nov 4, 2020 |
| Publication date | Apr 29, 2025 |
| Grant date | Apr 29, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for calibrating a robotic workcell. One of the methods includes obtaining an initial model of a workcell having a plurality of calibration entities including a plurality of robots and a plurality of sensors configured to observe movements by one or more calibration entities. executing a calibration program that generates movement data representing movements by the plurality of robots. A plurality of different constraint pairs are generated from sensor data, the constraint pairs specifying a relationship between poses of calibration entities that are observed in different coordinate frames each defined by a calibration entity and is represented in the sensor data. One or more optimization processes are performed on the plurality of different constraint pairs to generate a plurality of calibration values.
Opening claim text (preview).
What is claimed is: 1. A method performed by one or more computers, the method comprising: obtaining an initial model of an environment comprising a plurality of calibration entities including a plurality of sensors and a plurality of robots, each of the plurality of sensors configured to observe movements by one or more calibration entities in the environment; executing a calibration program that generates movement data representing movements by the plurality of robots within the environment; generating sensor data representing how the sensors observe poses of calibration entities after the movements by the plurality of robots during execution of the calibration program; generating, from the sensor data, a plurality of different constraint pairs, wherein each of the plurality of different constraint pairs specifies a relationship between (i) a first observed pose of a calibration entity of the plurality of calibration entities with respect to a reference coordinate frame of the environment and (ii) a second observed pose of the calibration entity with respect to an entity coordinate frame defined by another calibration entity of the plurality of calibration entities; performing one or more optimization processes on the plurality of different constraint pairs to generate a plurality of calibration values by minimizing a global error derived from a respective local error corresponding to each of the plurality of different constraint pairs; and generating an updated model of the environment using the plurality of calibration values by causing movement of one or more of the plurality of calibration entities. 2. The method of claim 1 , wherein each of the plurality of different constraint pairs comprises at least two different coordinate frames each defined by a calibration entity. 3. The method of claim 1 , wherein each constraint pair of the plurality of different constraint pairs comprises at least a calibration entity to be observed in different coordinate frames. 4. The method of claim 1 , wherein the plurality of different constraint pairs comprise a relative pose constraint that defines a relationship between a measured relative pose and a computed relative pose of a first coordinate frame observed in a second coordinate frame, wherein the first coordinate frame is defined by a first calibration entity and the second coordinate frame is defined by a second calibration entity. 5. The method of claim 4 , wherein the measured relative pose and the computed relative pose of the first coordinate frame comprise both translational and rotational positions observable to the second coordinate frame. 6. The method of claim 1 , wherein the plurality of different constraint pairs comprise a feature pose constraint that defines a relationship between feature poses of a calibration entity observed in two different coordinate frames each defined by a calibration entity. 7. The method of claim 6 , wherein the feature poses of the calibration entity comprise both translational and rotational positions. 8. The method of claim 1 , wherein the plurality of different constraint pairs comprise a feature point constraint that defines a relationship between point-wise poses of a calibration entity observed in two different coordinate frames each defined by a calibration entity. 9. The method of claim 8 , wherein the point-wise poses of the calibration entity comprise translational positions. 10. The method of claim 1 , wherein each of the plurality of sensors is a camera or a laser tracker. 11. The method of claim 1 , each of the plurality of calibration entities can be a sensor, a robot, and an object. 12. The method of claim 11 , wherein the object is a marker or a point-wise feature. 13. The method of claim 2 , wherein one of the at least two different coordinate frames defines a pose represented in the sensor data with respect to a reference coordinate frame. 14. The method of claim 13 , wherein the reference coordinate frame comprises a pre-determined coordinate frame defined for a workcell model. 15. The method of claim 1 , wherein performing one or more optimization processes on the plurality of different constraint pairs comprises quantifying, for each constraint pair of the plurality of different constraint pairs, the respective local error between poses of a calibration entity observed in two different coordinate frames. 16. The method of claim 15 , wherein performing one or more optimization processes on the plurality of different constraint pairs further comprises quantifying the global error based on the respective local error quantified for each constraint pair of the plurality of different constraint pairs. 17. The method of claim 16 , wherein minimizing the global error comprises minimizing the global error with one or more optimizers. 18. The method of claim 15 , wherein quantifying the respective local error between poses of the calibration entity observed in each of the plurality of different constraint pairs comprises quantifying the respective local error between poses of the calibration entity with respect to a reference coordinate frame. 19. The method of claim 1 , wherein performing one or more optimization processes on the plurality of different constraint pairs comprises quantifying, for each constraint pair of the plurality of different constraint pairs, the respective local error between a measured relative pose and a computed relative pose of a first coordinate frame observed in a second coordinate frame, wherein the first coordinate frame is defined by a first calibration entity and the second coordinate frame is defined by a second calibration entity. 20. The method of claim 1 , further comprising: generating a second plurality of different constraint pairs using the updated model of the environment; performing the one or more optimization processes on the second plurality of different constraint pairs to generate a second plurality of calibration values; and generating a second updated model of the environment using the second plurality of calibration values. 21. One or more computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform respective operations, the respective operations comprising: obtaining an initial model of an environment comprising a plurality of calibration entities including a plurality of sensors and a plurality of robots, each of the plurality of sensors configured to observe movements by one or more calibration entities in the environment; executing a calibration program that generates movement data representing movements by the plurality of robots within the environment; generating sensor data representing how the sensors observe poses of calibration entities after the movements by the plurality of robots, during execution of the calibration program; generating, from the sensor data, a plurality of different constraint pairs, wherein each of the plurality of different constraint pairs specifies a relationship between (i) a first observed pose of a calibration entity of the plurality of calibration entities with respect to a reference coordinate frame of the environment and (ii) a second observed pose of the calibration entity with respect to an entity coordinate frame defined by another calibration entity of the plurality of calibration entities; performing one or more optimization processes on the plurality of different constraint pairs to generate a plurality of calibration values
learning, adaptive, model based, rule based expert control · CPC title
Dual arm manipulator; Coordination of several manipulators · CPC title
Vision controlled systems · CPC title
Calibration of manipulator · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.