IP Library Granted Patent US 11,594,058
Granted Patent B2
US 11,594,058 · App. 17/094,380 · Granted Feb 28, 2023

Entity identification using machine learning

Inventors: Barnaby John James (Los Gatos, CA); Grace Taixi Brentano (Redwood City, CA); Christopher Thornton (Mountain View, CA)
Assignee: X Development LLC
G06V40/10A01K61/95A01K63/02G06K9/627G06K9/6215G06K9/6232G06K9/6256G06N20/00G06T3/40G06V10/245G06V10/40G06V20/80
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,594,058
App. No.
17/094,380
Granted
Feb 28, 2023
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media for identification and re-identification of fish. In some implementations, first media representative of aquatic cargo is received. Second media based on the first media is generated, wherein a resolution of the second media is higher than a resolution of the first media. A cropped representation of the second media is generated. The cropped representation is provided to the machine learning model. In response to providing the cropped representation to the machine learning model, an embedding representing the cropped representation is generated using the machine learning model. The embedding is mapped to a high dimensional space. Data identifying the aquatic cargo is provided to a database, wherein the data identifying the aquatic cargo comprises an identifier of the aquatic cargo, the embedding, and a mapped region of the high dimensional space.

Claims (74)

1. A method, performed by one or more processors, the method comprising:

receiving, by the one or more processors, multiple images of a particular fish;

generating, by the one or more processors and using the multiple images of the particular fish, a synthetic image of the particular fish that has a higher resolution than any of the received images of the particular fish;

locating, by the one or more processors, multiple, predetermined anatomical key points of the particular fish within the synthetic image, then generating, by the one or more processors and from the synthetic image, a cropped representation that includes the anatomical key points of the particular fish and that excludes at least some other region of the synthetic image that does not include the anatomical key points of the particular fish;

providing, by the one or more processors, the cropped representation to a machine learning model that is trained to generate embeddings from input representations of fish;

in response to providing the cropped representation to the machine learning model, obtaining, by the one or more processors, an embedding for the provided cropped representation from the machine learning model;

mapping, by the one or more processors, the embedding to a high dimensional space;

generating a cluster identifier based on clustering the embedding, in the high dimensional space, with embeddings in the high dimensional space that are associated with one or more other fish; and

providing, by the one or more processors, to a database, the data identifying the cluster identifier for the particular fish.

2. The method of claim 1 , wherein generating the cluster identifier comprises

determining, by the one or more processors, that the embedding matches to a previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding has been re-identified.

3. The method of claim 1 , wherein mapping the embedding to the high dimensional space comprises:

determining, by the one or more processors, that the embedding does not match any previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding is newly identified.

4. The method of claim 1 , wherein the mapped region of the high dimensional space corresponds to a cluster, wherein the cluster identifies one or more characteristics associated with fish, and wherein the high dimensional space comprises multiple clusters.

5. The method of claim 1 , wherein generating the cropped representation comprises:

generating, by the one or more processors, a midpoint line using at least two of the key points;

generating, by the one or more processors, an extended line from a midpoint of the midpoint line to another key point;

generating, by the one or more processors, an orthogonal line from the midpoint;

shifting, by the one or more processors, the orthogonal line to a second key point;

generating, by the one or more processors, a shift in the other key and

duplicating, by the one or more processors, the orthogonal line and associating the duplicated orthogonal line with the shifted key point.

6. The method of claim 1 , wherein the key points comprise a dorsal fin of the aquatic cargo, a pectoral fin of the aquatic cargo, and an eye of the particular fish.

7. The method of claim 1 , wherein the embedding comprises a 128-or-more dimensional vector.

8. The method of claim 1 , comprising:

generating, by the one or more processors, positive training data representative of a fish type associated with the machine learning model;

generating, by the one or more processors, negative training data representative of other fish types that are not associated with the machine learning model; and

training, by the one or more processors, the machine learning model to generate embeddings using the positive training data and the negative training data.

9. A system comprising one or more processors and one or more storage devices storing instructions that are operable, when executed by the one or more processors, to cause the one or more processors to perform operations comprising:

receiving, by the one or more processors, multiple images of a particular fish;

generating, by the one or more processors and using the multiple images of the particular fish, a synthetic image of the particular fish that has a higher resolution than any of the received images of the particular fish;

locating, by the one or more processors, multiple, predetermined anatomical key points of the particular fish within the synthetic image, then generating, by the one or more processors and from the synthetic image, a cropped representation that includes the anatomical key points of the particular fish and that excludes at least some other region of the synthetic image that does not include the anatomical key points of the particular fish;

providing, by the one or more processors, the cropped representation to a machine learning model that is trained to generate embeddings from input representations of fish;

in response to providing the cropped representation to the machine learning model, obtaining, by the one or more processors, an embedding for the provided cropped representation from the machine learning model;

mapping, by the one or more processors, the embedding to a high dimensional space;

generating a cluster identifier based on clustering the embedding, in the high dimensional space, with embeddings in the high dimensional space that are associated with one or more other fish; and

providing, by the one or more processors, to a database, the data identifying the cluster identifier for the particular fish.

10. The system of claim 9 , wherein generating the cluster identifier comprises

determining, by the one or more processors, that the embedding matches to a previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding has been re-identified.

11. The system of claim 9 , wherein mapping the embedding to the high dimensional space comprises:

determining, by the one or more processors, that the embedding does not match any previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding is newly identified.

12. The system of claim 9 , wherein the mapped region of the high dimensional space corresponds to a cluster, wherein the cluster identifies one or more characteristics associated with fish, and wherein the high dimensional space comprises multiple clusters.

13. The system of claim 9 , wherein generating the cropped representation comprises:

generating, by the one or more processors, a midpoint line using at least two of the key points;

generating, by the one or more processors, an extended line from a midpoint of the midpoint line to another key point;

generating, by the one or more processors, an orthogonal line from the midpoint;

shifting, by the one or more processors, the orthogonal line to a second key point;

generating, by the one or more processors, a shift in the other key and

duplicating, by the one or more processors, the orthogonal line and associating the duplicated orthogonal line with the shifted key point.

14. The system of claim 9 , wherein the key points comprise a dorsal fin of the aquatic cargo, a pectoral fin of the aquatic cargo, and an eye of the particular fish.

15. The system of claim 9 , wherein the embedding comprises a 128-or-more dimensional vector.

16. The system of claim 9 , wherein the operations comprise:

generating, by the one or more processors, positive training data representative of a fish type associated with the machine learning model;

generating, by the one or more processors, negative training data representative of other fish types that are not associated with the machine learning model; and

training, by the one or more processors, the machine learning model to generate embeddings using the positive training data and the negative training data.

17. One or more non-transitory computer-readable media comprising instructions stored thereon that are executable by one or more processing devices and upon such execution cause the one or more processing devices to perform operations comprising:

receiving, by the one or more processors, multiple images of a particular fish;

generating, by the one or more processors and using the multiple images of the particular fish, a synthetic image of the particular fish that has a higher resolution than any of the received images of the particular fish;

locating, by the one or more processors, multiple, predetermined anatomical key points of the particular fish within the synthetic image, then generating, by the one or more processors and from the synthetic image, a cropped representation that includes the anatomical key points of the particular fish and that excludes at least some other region of the synthetic image that does not include the anatomical key points of the particular fish;

providing, by the one or more processors, the cropped representation to a machine learning model that is trained to generate embeddings from input representations of fish;

in response to providing the cropped representation to the machine learning model, obtaining, by the one or more processors, an embedding for the provided cropped representation from the machine learning model;

mapping, by the one or more processors, the embedding to a high dimensional space;

generating a cluster identifier based on clustering the embedding, in the high dimensional space, with embeddings in the high dimensional space that are associated with one or more other fish; and

providing, by the one or more processors, to a database, the data identifying the cluster identifier for the particular fish.

18. The media of claim 17 , wherein generating the cluster identifier comprises

determining, by the one or more processors, that the embedding matches to a previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding has been re-identified.

19. The media of claim 17 , wherein mapping the embedding to the high dimensional space comprises:

determining, by the one or more processors, that the embedding does not match any previously-generated embedding; and

determining, as a result, that the particular fish associated with the embedding is newly identified.

20. The media of claim 17 , wherein the mapped region of the high dimensional space corresponds to a cluster, wherein the cluster identifies one or more characteristics associated with fish, and wherein the high dimensional space comprises multiple clusters.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2024
From: X DEVELOPMENT LLC
To: TIDALX AI INC.
Reel/Frame 068477/0306 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2020
From: JAMES, BARNABY JOHN; BRENTANO, GRACE TAIXI; THORNTON, CHRISTOPHER
To: X DEVELOPMENT LLC
Reel/Frame 054344/0921 →
Cited By (3)
US 12,406,521 US 12,639,940 US 12,647,668