IP Library Granted Patent US 11,232,297
Granted Patent B2
US 11,232,297 · App. 16/751,715 · Granted Jan 25, 2022

Fish biomass, shape, and size determination

Inventors: Barnaby John James (Los Gatos, CA); Evan Douglas Rapoport (Santa Cruz, CA); Matthew Messana (Sunnyvale, CA); Peter Kimball (Mountain View, CA)
Assignee: X Development LLC
G06K9/00369A01K61/95G06K9/00201G06N3/08G06T7/593G06T7/62G06T2207/10012G06T2207/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,232,297
App. No.
16/751,715
Granted
Jan 25, 2022
Kind
B2
Abstract

Methods, systems, and apparatuses, including computer programs encoded on a computer-readable storage medium for estimating the shape, size, and mass of fish are described. A pair of stereo cameras may be utilized to obtain right and left images of fish in a defined area. The right and left images may be processed, enhanced, and combined. Object detection may be used to detect and track a fish in images. A pose estimator may be used to determine key points and features of the detected fish. Based on the key points, a three-dimensional (3-D) model of the fish is generated that provides an estimate of the size and shape of the fish. A regression model or neural network model can be applied to the 3-D model to determine a likely weight of the fish.

Claims (34)

1. A computer-implemented method comprising:

obtaining, from video of a particular fish swimming by a camera system, a first pair of images of a particular fish in a first position with respect to the camera system, and a second pair of images of the particular fish in a second position with respect to the camera system;

for each pair of images of the particular fish, identifying key points of interest on the particular fish, then generating a model of the fish using the identified key points of interest, then generating a weight estimate for the fish;

aggregating the weight estimate of the particular fish that was generated based on the first pair of images of the particular fish in the first position with respect to the camera system, with the weight estimate of the particular fish that was generated based on the second pair of images of the particular fish in the second position with respect to the camera system; and

providing the aggregated weight estimate of the particular fish for output.

2. The method of claim 1 , comprising, before aggregating the weight estimates, confirming that the particular fish seen in the first pair of images is a same fish as the particular fish seen in the second pair of images.

3. The method of claim 1 , wherein aggregating the weight estimates comprises averaging the weight estimates.

4. The method of claim 1 , comprising ranking 3D models of the particular fish, then determining that the 3D models are among a top subset of all 3D models of the particular fish, and wherein the weight estimates are aggregated only after determining that the 3D models are among a top subset of all 3D models of the particular fish.

5. The method of claim 1 , comprising, after obtaining the first pair of images, determining a previously stored identifier that is already associated with the particular fish.

6. The method of claim 1 , wherein the model comprises a three-dimensional (3D) model.

7. The method of claim 1 , wherein the second pair of images of the particular fish is obtained after receiving an additional input indicating that more data is requested or required.

8. A system comprising:

one or more processing devices;

one or more machine-readable storage devices for storing instructions that are executable by the one or more processing devices to perform operations comprising:

obtaining, from video of a particular fish swimming by a camera system, a first pair of images of a particular fish in a first position with respect to the camera system, and a second pair of images of the particular fish in a second position with respect to the camera system;

for each pair of images of the particular fish, identifying key points of interest on the particular fish, then generating a model of the fish using the identified key points of interest, then generating a weight estimate for the fish;

aggregating the weight estimate of the particular fish that was generated based on the first pair of images of the particular fish in the first position with respect to the camera system, with the weight estimate of the particular fish that was generated based on the second pair of images of the particular fish in the second position with respect to the camera system; and

providing the aggregated weight estimate of the particular fish for output.

9. The system of claim 8 , comprising, before aggregating the weight estimates, confirming that the particular fish seen in the first pair of images is a same fish as the particular fish seen in the second pair of images.

10. The system of claim 8 , wherein aggregating the weight estimates comprises averaging the weight estimates.

11. The system of claim 8 , comprising ranking 3D models of the particular fish, then determining that the 3D models are among a top subset of all 3D models of the particular fish, and wherein the weight estimates are aggregated only after determining that the 3D models are among a top subset of all 3D models of the particular fish.

12. The system of claim 8 , comprising, after obtaining the first pair of images, determining a previously stored identifier that is already associated with the particular fish.

13. The system of claim 8 , wherein the model comprises a three-dimensional (3D) model.

14. The system of claim 8 , wherein the second pair of images of the particular fish is obtained after receiving an additional input indicating that more data is requested or required.

15. A non-transitory machine-readable storage medium for storing instructions that are executable by the one or more processing devices to perform operations comprising:

obtaining, from video of a particular fish swimming by a camera system, a first pair of images of a particular fish in a first position with respect to the camera system, and a second pair of images of the particular fish in a second position with respect to the camera system;

for each pair of images of the particular fish, identifying key points of interest on the particular fish, then generating a model of the fish using the identified key points of interest, then generating a weight estimate for the fish;

aggregating the weight estimate of the particular fish that was generated based on the first pair of images of the particular fish in the first position with respect to the camera system, with the weight estimate of the particular fish that was generated based on the second pair of images of the particular fish in the second position with respect to the camera system; and

providing the aggregated weight estimate of the particular fish for output.

16. The medium of claim 15 , comprising, before aggregating the weight estimates, confirming that the particular fish seen in the first pair of images is a same fish as the particular fish seen in the second pair of images.

17. The medium of claim 15 , wherein aggregating the weight estimates comprises averaging the weight estimates.

18. The medium of claim 15 , comprising ranking 3D models of the particular fish, then determining that the 3D models are among a top subset of all 3D models of the particular fish, and wherein the weight estimates are aggregated only after determining that the 3D models are among a top subset of all 3D models of the particular fish.

19. The medium of claim 15 , comprising, after obtaining the first pair of images, determining a previously stored identifier that is already associated with the particular fish.

20. The medium of claim 15 , wherein the model comprises a three-dimensional (3D) model.

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 Jan 27, 2020
From: JAMES, BARNABY JOHN; RAPOPORT, EVAN DOUGLAS; MESSANA, MATTHEW; KIMBALL, PETER
To: X DEVELOPMENT LLC
Reel/Frame 051626/0605 →
Continuity (2)
Continuation 15879851 · Jan 25, 2018
Related Publication 20200184206A1 · Jun 11, 2020