IP Library Granted Patent US 11,688,154
Granted Patent B2
US 11,688,154 · App. 16/885,646 · Granted Jun 27, 2023

Analysis and sorting in aquaculture

Inventors: Laura Chrobak (Mountain View, CA); Barnaby John James (Los Gatos, CA)
Assignee: X Development LLC
G06V10/42A01K61/95G06F18/2185G06F18/23213G06F18/2433G06T7/0012G06T7/62G06T7/70G06V20/05G06V40/10G06T2207/20081G06T2207/20084
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,688,154
App. No.
16/885,646
Granted
Jun 27, 2023
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer-storage media, for sorting fish in aquaculture. In some implementations, one or more images are obtained of a particular fish within a population of fish. Based on the one or more images of the fish, a data element is determined. The data element can include a first value that reflects a physical characteristic of the particular fish, and a second value that reflects a condition factor of the particular fish. Based on the data element, the fish is classified as a member of a particular subpopulation of the population of fish. An actuator of an automated fish sorter is controlled based on classifying the particular fish as a member of the particular subpopulation of the population of fish.

Claims (37)

1. A computer-implemented method comprising:

obtaining one or more images of a particular fish within a population of fish;

determining, based on the one or more images of the fish, a vector to represent the particular fish in a multi-dimensional space, the vector including (i) a first value that reflects a physical characteristic of the particular fish, and (ii) a second value that is calculated based on a relationship between a weight of the particular fish and one or more lengths associated with the particular fish that are estimated from the one or more images of the particular fish;

classifying, based on a position indicated by the vector within the multi-dimensional space relative to respective positions indicated by other vectors that represent other fish in the multi-dimensional space, the fish as a member of a particular subpopulation of the population of fish; and

controlling an actuator of an automated fish sorter based on classifying the particular fish as a member of the particular subpopulation of the population of fish.

2. The computer-implemented method of claim 1 , wherein the one or more images of the fish include at least a first image representing a first view of the fish and a second image representing a different, second view of the fish.

3. The computer-implemented method of claim 2 , wherein at least the first image and the second image are used to determine a three dimensional (3D) pose of the fish, and wherein the second value is calculated based on the 3D pose of the fish.

4. The computer-implemented method of claim 1 , wherein the vector is determined, in part, by estimating a set of truss lengths corresponding to distances between locations on a body of the fish.

5. The computer-implemented method of claim 1 , comprising generating the other vectors that represent the other fish.

6. The computer-implemented method of claim 5 , wherein classifying the fish as a member of the particular subpopulation includes generating one or more clusters based on the position indicated by the vector and the respective positions indicated by the other vectors.

7. The computer-implemented method of claim 1 , wherein the actuator controls a flap that selectively opens a particular passage among multiple passages that are associated with the automated fish sorter, and wherein one of the multiple passages is associated with runt fish.

8. The computer-implemented method of claim 7 , wherein the flap includes holes to reduce force required to actuate the actuator.

9. The computer-implemented method of claim 1 , further comprising generating a visual representation of the multi-dimensional space by plotting the first value of the vector and the second value of the vector as a coordinate pair, to visually represent a data point within a graph among data points that are associated with the other fish.

10. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

obtaining one or more images of a particular fish within a population of fish;

determining, based on the one or more images of the fish, a vector to represent the particular fish in a multi-dimensional space, the vector including (i) a first value that reflects a physical characteristic of the particular fish, and (ii) a second value that is calculated based on a relationship between a weight of the particular fish and one or more lengths associated with the particular fish that are estimated from the one or more images of the particular fish;

classifying, based on a position indicated by the vector within the multi-dimensional space relative to respective positions indicated by other vectors that represent other fish in the multi-dimensional space, the fish as a member of a particular subpopulation of the population of fish; and

controlling an actuator of an automated fish sorter based on classifying the particular fish as a member of the particular subpopulation of the population of fish.

11. The non-transitory, computer-readable medium of claim 10 , wherein the one or more images of the fish include at least a first image representing a first view of the fish and a second image representing a different, second view of the fish.

12. The non-transitory, computer-readable medium of claim 11 , wherein at least the first image and the second image are used to determine a three dimensional (3D) pose of the fish, and wherein the second value is calculated based on the 3D pose of the fish.

13. The non-transitory, computer-readable medium of claim 10 , wherein the vector is determined, in part, by estimating a set of truss lengths corresponding to distances between locations on a body of the fish.

14. The non-transitory, computer-readable medium of claim 10 , comprising generating the other vectors that represent the other fish.

15. The non-transitory, computer-readable medium of claim 14 , wherein classifying the fish as a member of the particular subpopulation includes generating one or more clusters based on the position indicated by the vector and the respective positions indicated by the other vectors.

16. The non-transitory, computer-readable medium of claim 10 , w wherein the actuator controls a flap that selectively opens a particular passage among multiple passages that are associated with the automated fish sorter, and wherein one of the multiple passages is associated with runt fish.

17. The non-transitory, computer-readable medium of claim 10 , further comprising generating a visual representation of the multi-dimensional space by plotting the first value of the vector and the second value of the vector as a coordinate pair, to visually represent a data point within a graph among data points that are associated with the other fish.

18. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

obtaining one or more images of a particular fish within a population of fish;

determining, based on the one or more images of the fish, a vector to represent the particular fish in a multi-dimensional space, the vector including (i) a first value that reflects a physical characteristic of the particular fish, and (ii) a second value that is calculated based on a relationship between a weight of the particular fish and one or more lengths associated with the particular fish that are estimated from the one or more images of the particular fish;

classifying, based on a position indicated by the vector within the multi-dimensional space relative to respective positions indicated by other vectors that represent other fish in the multi-dimensional space, the fish as a member of a particular subpopulation of the population of fish; and

controlling an actuator of an automated fish sorter based on classifying the particular fish as a member of the particular subpopulation of the population of fish.

19. A computer-implemented method comprising:

obtaining one or more images of a particular fish within a population of fish;

determining, based on the one or more images of the fish, a vector to represent the particular fish in a multi-dimensional space, the vector including (i) a first value that reflects a physical characteristic of the particular fish, and (ii) a second value that is calculated based on a relationship between a weight of the particular fish and one or more lengths associated with the particular fish that are estimated from the one or more images of the particular fish;

classifying, based on a position indicated by the vector within the multi-dimensional space relative to respective positions indicated by other vectors that represent other fish in the multi-dimensional space, the fish as a member of a particular subpopulation of the population of fish; and

generating a prediction of a healthy yield for the population of fish based at least on classifying the fish as the member of the particular subpopulation.

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 Jun 29, 2020
From: CHROBAK, LAURA; JAMES, BARNABY JOHN
To: X DEVELOPMENT LLC
Reel/Frame 053068/0156 →