IP Library › Granted Patent US 11,931,910
Granted Patent B2
US 11,931,910 · App. 18/447,230 · Granted Mar 19, 2024

Use of artificial intelligence models to identify fasteners and perform related operations

Inventors: Ademola Ayodeji Oridate (Austin, TX); William Wilder (Austin, TX); Spencer Voiss (Austin, TX)
Assignee: Wilder Systems Inc.
B25J9/1697B25J9/161G05B2219/33002G05B2219/45066
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,931,910
App. No.
18/447,230
Granted
Mar 19, 2024
Kind
B2
Abstract

Aspects of the disclosure are directed towards artificial intelligence-based modeling of target objects, such as aircraft parts. In an example, a system initially trains a machine learning (ML) model based on synthetic images generated based on multi-dimensional representation of target objects. The same system or a different system subsequently further trains the ML model based on actual images generated by cameras positioned by robots relative to target objects. The ML model can be used to process an image generated by a camera positioned by a robot relative to a target object based on a multi-dimensional representation of the target object. The output of the ML model can indicate, for a detected target, position data, a target type, and/or a visual inspection property. This output can then be used to update the multi-dimensional representation, which is then used to perform robotics operations on the target object.

Claims (84)

1. A computer-implemented method comprising:

receiving a multi-dimensional representation of an aircraft part that includes a target, the multi-dimensional representation including first pose data of the target in a first coordinate system of the aircraft part, wherein the multi-dimensional representation of the aircraft part indicates a first target type of the target;

causing a robot to position a camera relative to the target based on the first pose data and a second coordinate system of the robot;

receiving an image generated by the camera while the camera is positioned relative to the target, the image showing at least the target;

generating an input to a machine learning model based on the image;

determining, based on a first output of the machine learning model in response to the input, second pose data of the target in the first coordinate system of the aircraft part, wherein the first output of the machine learning model indicates that the target is classified as having a second target type that matches the first target type; and

generating a second output based on the second pose data, the second output usable to control a robotic operation on the target.

2. The computer-implemented method of claim 1 , wherein the second pose data is determined in the first coordinate system based on an inverse kinematics transformation from a third coordinate system of the camera to the second coordinate system of the robot and a forward kinematics transformation from the second coordinate system of the robot to the first coordinate system of the aircraft part.

3. The computer-implemented method of claim 1 further comprising: and

determining whether an offset between the first pose data and the second pose data exists;

if the offset exists, storing an updated multi-dimensional representation of the aircraft part that includes the second pose data instead of the first pose data, wherein the updated multi-dimensional representation is usable to control the robotic operation on the target; or

if the offset does not exist, storing the updated multi-dimensional representation of the aircraft part that includes the first pose data or the second pose data.

4. The computer-implemented method of claim 3 , wherein the first output of the machine learning model indicates a visual inspection property of the target, and wherein the updated multi-dimensional representation includes the visual inspection property.

5. The computer-implemented method of claim 1 , wherein the camera is positioned relative to the target by setting the camera as a tool center point (TCP) in the second coordinate system of the robot and by expressing the first pose data in the second coordinate system based on a forward kinematics transformation.

6. The computer-implemented method of claim 1 , wherein the camera is positioned relative to the target such that the target is at a first position within a field of view of the camera, and wherein the second pose data is determined by at least:

determining a second position of a bounding box around a detection of the target in the image, the second position indicated in the first output of the machine learning model;

determining an offset between the second position and the first position; and

determining the second pose data based on the offset.

7. The computer-implemented method of claim 6 , wherein the camera is positioned relative to the target such that the camera is at a predefined distance from the target, wherein the offset is determined in a third coordinate system of the camera, and wherein the second pose data is determined by at least:

determining, based on the offset, an X-Y offset in the second coordinate system of the robot;

determining, based on the predefined distance, a Z-offset in the second coordinate system;

determining, based on the X-Y offset and the Z-offset, first positional data of the target in the second coordinate system; and

determining second position data based on the first position data and a transformation between the first coordinate system of the aircraft part and the second coordinate system, wherein the second pose data includes the second position data.

8. The computer-implemented method of claim 1 , wherein the second pose data is determined by at least:

determining a first orientation of the camera in the second coordinate system of the robot, wherein the camera is positioned relative to the target such that the camera has the first orientation; and

determining the second pose data based on the first orientation.

9. The computer-implemented method of claim 8 , and wherein the second pose data is determined by at least:

determining a second orientation of the target based on the first orientation of the camera and a transformation between the first coordinate system of the aircraft part and the second coordinate system, wherein the second pose data indicates the second orientation.

10. The computer-implemented method of claim 1 , wherein the second pose data is determined by at least:

determining depth data associated with the target based on a depth sensor;

determining, based on the depth data, a first orientation of the target in the second coordinate system of the robot; and

determining a second orientation of the target based on the first orientation and a transformation between the first coordinate system of the aircraft part and the second coordinate system, wherein the second pose data indicates the second orientation.

11. A system comprising:

one or more processors; and

one or more memory storing instructions that, upon execution by the one or more processors, configure the system to:

receive a multi-dimensional representation of an aircraft part that includes a target, the multi-dimensional representation including first pose data of the target in a first coordinate system of the aircraft part;

cause a robot to position a camera relative to the target based on the first pose data and a second coordinate system of the robot;

receive an image generated by the camera while the camera is positioned relative to the target, the image showing at least the target;

generate an input to a machine learning model based on the image;

determining, based on a first output of the machine learning model in response to the input, second pose data of the target in the first coordinate system of the aircraft part and a first classification of the target;

generate a second output based on the second pose data, the second output usable to control a robotic operation on the target;

determine that a set of targets of the aircraft part are classified as having a target type; and

generate a job file indicating pose data of each target of the set and a sequence of robotic operations to be performed across the targets of the set.

12. The system of claim 11 , wherein the one or more memory store further instructions that, upon execution by the one or more processors, configure the system to:

cause, based on the multi-dimensional representation of the aircraft part, the robot to position the camera relative to each target of a plurality of targets of the aircraft part;

receive a plurality of images generated by the camera, each of the plurality of images corresponding to one of the plurality of targets,

determine, by using the machine learning model and based on the plurality of images, a classification and pose data for each target of the plurality of targets; and

store the classification and the pose data of each target in a data store.

13. The system of claim 12 , wherein the one or more memory store first additional instructions that, upon execution by the one or more processors, configure the system to:

determine, by using the machine learning model and based on the plurality of images, a visual inspection property for each target of the plurality of targets; and

store the visual inspection property of each target in the data store.

14. The system of claim 13 , wherein the one or more memory store second additional instructions that, upon execution by the one or more processors, configure the system to:

determine that a set of targets of the aircraft part have a particular visual inspection property; and

generate a job file indicating pose data of each target of the set.

15. The system of claim 11 , wherein the target and the image are a first target and a first image, respectively, and wherein the one or more memory store further instructions that, upon execution by the one or more processors, configure the system to:

cause, based on the multi-dimensional representation of the aircraft part, the robot to position the camera relative to a second target of the aircraft part;

receive a second image generated by the camera and showing at least a portion of the second target,

determine, by using the machine learning model and based on the first image and the second image, that the first target is classified as having a target type to which the robotic operation applies and that the second target is classified as not having the target type or as being of a different target type to which the robotic operation is inapplicable; and

store a first classification of the first target and a second classification of the second target in a data store.

16. One or more non-transitory computer-readable storage media storing instructions that, upon execution on a system, cause the system to perform operations comprising:

receiving a multi-dimensional representation of an aircraft part that includes a target, the multi-dimensional representation including first pose data of the target in a first coordinate system of the aircraft part;

causing a robot to position a camera relative to the target based on the first pose data and a second coordinate system of the robot;

receiving an image generated by the camera while the camera is positioned relative to the target, the image showing at least the target;

generating an input to a machine learning model based on the image;

determining, based on a first output of the machine learning model in response to the input, second pose data of the target in the first coordinate system of the aircraft part;

generating a second output based on the second pose data, the second output usable to control a robotic operation on the target receive a plurality of images generated by the camera, each of the plurality of images corresponding to one of a plurality of targets of the aircraft part;

determine, by using the machine learning model and based on the plurality of images, a visual inspection property for each target of the plurality of targets; and

store the visual inspection property of each target in a data store.

17. The one or more non-transitory computer-readable storage media of claim 16 , wherein the target is a fastener or a fastener hole.

18. The one or more non-transitory computer-readable storage media of claim 16 , wherein the first output of the machine learning model indicates a fastener classification and a visual inspection property, and wherein the operations further comprise:

storing the fastener classification, the visual inspection property, and at least one of the first pose data or the second pose data in a data store in association with at least one of the aircraft part or a tail number of an aircraft that includes the aircraft part.

19. A computer-implemented method comprising:

receiving a multi-dimensional representation of an aircraft part that includes a first target, the multi-dimensional representation including first pose data of the first target in a first coordinate system of the aircraft part;

causing a robot to position a camera relative to the first target based on the first pose data and a second coordinate system of the robot;

receiving a first image generated by the camera while the camera is positioned relative to the first target, the first image showing at least a portion of the first target;

generating an input to a machine learning model based on the first image;

determining, based on a first output of the machine learning model in response to the input, second pose data of the first target in the first coordinate system of the aircraft part;

generating a second output based on the second pose data, the second output usable to control a robotic operation on the first target;

causing, based on the multi-dimensional representation of the aircraft part, the robot to position the camera relative to a second target of the aircraft part;

receiving a second image generated by the camera and showing at least a portion of the second target,

determining, by using the machine learning model and based on the first image and the second image, that the first target is classified as having a target type to which the robotic operation applies and that the second target is classified as not having the target type or as being of a different target type to which the robotic operation is inapplicable; and

storing a first classification of the first target and a second classification of the second target in a data store.

20. The computer-implemented method of claim 19 , further comprising:

generating a job file indicating pose data of each of the first target and the second target and a sequence of robotic operations to be performed across the first target and the second target.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2023
From: WILDER, WILLIAM; VOISS, SPENCER; ORIDATE, ADEMOLA
To: WILDER SYSTEMS INC.
Reel/Frame 065468/0129 →
Continuity (7)
Provisional Application 63481576 · Jan 25, 2023
Provisional Application 63481563 · Jan 25, 2023
Provisional Application 63377149 · Sep 26, 2022
Provisional Application 63398203 · Aug 15, 2022
Provisional Application 63398202 · Aug 15, 2022
Provisional Application 63396938 · Aug 10, 2022
Related Publication 20240051148A1 · Feb 15, 2024
Cited By (6)
US 12,220,826 US 12,303,931 US 12,304,091 US 12,390,937 US 12,447,626 US 12,667,970