IP Library Granted Patent US 12,018,971
Granted Patent B2
US 12,018,971 · App. 17/295,422 · Granted Jun 25, 2024

Liquid level determination

Inventors: Adam Philip Lins (Martinez, CA); Glenn Leo Price (Martinez, CA); Robert Alan Iovanni (Vallejo, CA)
Assignee: Bio-Rad Laboratories, Inc.
G01F23/292G06F16/245G06T7/62G06T7/73G16H10/40G16H40/40G06T2207/10024G06T2207/30004
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 12,018,971
App. No.
17/295,422
Granted
Jun 25, 2024
Kind
B2
Abstract

Disclosed herein are a system and method for determining a liquid level in a container based on data extracted from a digital image of the container. An image capture apparatus captures an image of a container used to store liquid reagents used by analytical instruments to test patient samples. A controller receives the captured image and extracts an analysis region based on a container type and applies a gradient filter to the analysis region. A location of a minimum gradient value (i.e., a row index) is determined based on the air-to-liquid boundary of the liquid in the extracted analysis region. A volume module calculates the liquid level in the analysis region by dividing the row index by a length of a gradient column vector and compares the determined liquid level to a threshold analysis region fraction for the container type to determine whether to output an alert.

Claims (54)

1. A system for determining a level of liquid in a container, the system comprising:

an image capture apparatus; and

a controller configured to:

receive a digital image of a container from the image capture apparatus, the container containing an unknown quantity of liquid;

extract an analysis region from the digital image;

calculate gradient values for different positions in the analysis region, wherein calculating gradient values comprises:

summing a plurality of row-wise pixel intensities in the analysis region,

computing a column-wise average of pixel intensities in the analysis region, and

for each row, computing a column-wise gradient value by computing an element wise subtraction of rows of the column-wise averages;

identify a minimum gradient value of the gradient values; and

determine a level of liquid in the container based on the position of the minimum gradient value in the analysis region.

2. The system of claim 1 , wherein the digital image is a color image and wherein the controller is further configured to convert the color image to grayscale.

3. The system of claim 1 , wherein the controller being configured to extract an analysis region from the digital image comprises the controller being configured to:

identify one or more visible indicia in the digital image;

query a data store for a container type associated with the identified visible indicia; and

identify a location of the analysis region in the digital image based on the container type.

4. The system of claim 1 , wherein the controller being configured to calculate gradient values for different positions in the analysis region comprises the controller being configured to:

apply a Sobel filter to pixels along a y-axis of the analysis region to extract a Sobel gradient; and

sum the extracted Sobel gradients along the x-axis of the analysis region.

5. The system of claim 1 , wherein the analysis region has a width of one pixel and wherein the controller being configured to calculate gradient values comprises the controller being configured to compute a row-wise intensity gradient of pixels along a y-axis of the analysis region.

6. The system of claim 1 , wherein the controller being configured to determine a level of liquid in the container comprises the controller being configured to compute a fraction of liquid in the analysis region by dividing a row index by a length of a gradient column vector in the analysis region.

7. The system of claim 1 , wherein the controller is further configured to:

compare the determined liquid level to a threshold level associated with a container type; and

responsive to determining that the liquid level is below the threshold level associated with the container type, outputting an alert to a display device.

8. The system of claim 1 , wherein the controller is further configured to determine a volume of liquid in the container based on the liquid level and a stored cross-sectional volume of the container.

9. The system of claim 1 , wherein the controller is further configured to:

compare the determined liquid level to a threshold level associated with a container type; and

responsive to determining that the liquid level is below the threshold level associated with the container type, switching an automated analyzer to a liquid-saving operation mode.

10. A computer-implemented method for determining a level of liquid in a container, the method comprising:

receiving a digital image of the container from an image capture apparatus, the container containing an unknown quantity of liquid;

extracting an analysis region from the digital image;

calculating gradient values for different positions in the analysis region, wherein calculating gradient values comprises:

summing a plurality of row-wise pixel intensities in the analysis region,

computing a column-wise average of pixel intensities in the analysis region, and

for each row, computing a column-wise gradient value by computing an element wise subtraction of rows of the column-wise averages;

identifying a minimum gradient value of the gradient values; and

determining a level of liquid in the container based on the position of the minimum gradient value in the analysis region.

11. The method of claim 10 , wherein the digital image is a color image and the method further comprises converting the color image to grayscale.

12. The method of claim 10 , wherein extracting an analysis region from the digital image comprises:

identifying one or more visible indicia in the digital image;

querying a data store for a container type associated with the identified visible indicia; and

identifying a location of the analysis region in the digital image based on the container type.

13. The method of claim 10 , wherein calculating gradient values for different positions in the analysis region comprises:

applying a Sobel filter to pixels along a y-axis of the analysis region to extract a Sobel gradient; and

summing the extracted Sobel gradients along the x-axis of the analysis region.

14. The method of claim 10 , wherein the analysis region has a width of one pixel and wherein calculating gradient values comprises computing a row-wise intensity gradient of pixels along a y-axis of the analysis region.

15. The method of claim 10 , wherein determining a level of liquid in the container comprises computing a fraction of liquid in the analysis region by dividing a row index by a length of a gradient column vector in the analysis region.

16. The method of claim 10 , further comprising:

comparing the determined liquid level to a threshold level associated with a container type; and

responsive to determining that the liquid level is below the threshold level associated with the container type, outputting an alert to a display device.

17. The method of claim 10 , further comprising determining a volume of liquid in the container based on the liquid level and a stored cross-sectional volume of the container.

18. The method of claim 10 , further comprising:

comparing the determined liquid level to a threshold level associated with a container type; and

responsive to determining that the liquid level is below the threshold level associated with the container type, switching an automated analyzer to a liquid-saving operation mode.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2022
From: LINS, ADAM PHILIP; PRICE, GLENN LEO; IOVANNI, ROBERT ALAN
To: BIO-RAD LABORATORIES, INC.
Reel/Frame 062146/0779 →
Continuity (2)
Provisional Application 62774529 · Dec 3, 2018
Related Publication 20210404856A1 · Dec 30, 2021