# US 10,504,236 B2 · Testing a battery

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,504,236 B2
- Document ID: US10504236B2
- Status: Granted
- Kind: B2
- Application number: 15/864,748
- Filed: 2018-01-08
- Published: 2019-07-11
- Granted: 2019-12-10
- Earliest claimed: 2018-01-08
- Assignees: The Boeing Company
- Applicants: The Boeing Company
- Inventors: Elizabeth Killelea; Joseph Gonzalez; Jan Wei Pan
- Web page: https://patentgrep.com/patent/US10504236B2

## CPC

- G06T 7/62: of area, perimeter, diameter or volume
- G01B 11/022: {by means of tv-camera scanning}
- G01R 31/385: Arrangements for measuring battery or accumulator variables (for monitoring G01R31/382)
- G06F 18/23: Clustering techniques
- G06T 7/0004: {Industrial image inspection}
- G06T 7/269: using gradient-based methods
- G06T 7/70: Determining position or orientation of objects or cameras (camera calibration G06T7/80)
- H01M 6/5083: {Testing apparatus}
- H01M 10/4285: {Testing apparatus}
- H04N 1/40012: {Conversion of colour to monochrome}
- G06T 2200/24: involving graphical user interfaces [GUIs]
- G06T 2207/10016: Video; Image sequence
- G06T 2210/12: Bounding box
- Y02E 60/10: Energy storage using batteries
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G01B: MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01R: MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES (indicating correct tuning of resonant circuits H03J3/12)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H01M: PROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- Y02E: REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION

## Abstract

A method of testing a battery includes causing a battery in a test environment to produce a fire having a flame that extends out from the battery, and capturing a digital image of a scene that includes at least a portion of a test environment and the flame, the digital image being formed using visible light. The method includes uploading the digital image to a computer configured to produce a quiver plot and identify points on the quiver plot that define a polygon that is an approximate outline of the flame. The computer is configured to determine dimensions of the polygon, and translate the dimensions from the quiver plot to the digital image, and from the digital image to dimensions of the flame in the scene. And the computer is configured to generate a displayable report that includes at least the dimensions of the flame.

## Claims

### Claim 1

A method of testing a battery comprising:
setting up the battery in a test environment;
puncturing or heating the battery in the test environment to cause the battery to produce a fire having a flame that extends out from the battery;
capturing a digital image of a scene that includes at least a portion of the test environment and the flame that extends out from the battery, the digital image being captured using a digital camera that forms the digital image using visible light where the digital camera is positioned external to the test environment; and
uploading the digital image of the scene to a computer configured to determine dimensions of the flame in the scene based thereon, including the computer being configured to at least:
produce a quiver plot of the scene from the digital image, the quiver plot including a plurality of velocity vectors that represent motion of gases in the scene, the motion of gases including motion of gases in and around the flame, the plurality of velocity vectors originating at a respective plurality of points in the quiver plot and having respective magnitudes and directions;
identify a point of the respective plurality of points as an origin point to represent an origin of the flame in the scene;
select or receive selection of other points of the respective plurality of points based on similarity of at least the directions of the velocity vectors originating at the origin point and the other points, the origin point and the other points defining a polygon in the quiver plot that is an approximate outline of the flame;
determine dimensions of the polygon in the quiver plot;
translate the dimensions of the polygon in the quiver plot to corresponding dimensions of a polygon in the digital image;
translate the corresponding dimensions of the polygon in the digital image to dimensions of the flame in the scene; and
generate a displayable report that includes at least the dimensions of the flame.

### Claim 2 (depends on 1)

The method of claim 1, wherein setting up the battery in the test environment includes setting up the battery between the digital camera and a fixed background within a back region of the test environment, and the digital image of the scene includes at least a portion of the fixed background and the flame that extends out from the battery.

### Claim 3 (depends on 1)

The method of claim 1, wherein uploading the digital image of the scene to the computer includes uploading the digital image of the scene to the computer configured to further:
convert the digital image from color to black-and-white before the quiver plot is produced from the digital image.

### Claim 4 (depends on 1)

The method of claim 1, wherein uploading the digital image of the scene to the computer includes uploading the digital image of the scene to the computer configured to further:
identify as abnormal any velocity vectors of the plurality of velocity vectors based on at least a threshold dissimilarity of at least the directions of the velocity vectors and neighboring velocity vectors in the quiver plot;
construct new velocity vectors for the velocity vectors identified as abnormal from an interpolation of the neighboring velocity vectors; and
replace the velocity vectors identified as abnormal with the new velocity vectors, the velocity vectors identified as abnormal being replaced before the origin point is identified and the other points are selected.

### Claim 5 (depends on 1)

The method of claim 1, wherein the computer being configured to select or receive selection of the other points includes being configured to perform an iterative process in which a first iteration includes the computer being configured to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, a velocity vector originating at a neighboring point that is most similar in at least direction to a velocity vector originating at the point; and
select the neighboring point as one of the other points that defines the polygon in the quiver plot,
wherein in each of at least some iterations of the iterative process after the first iteration, the point in the quiver plot is the neighboring point selected in an immediately preceding iteration, and the computer being configured to identify the velocity vector excludes the velocity vector originating at the point in the immediately preceding iteration.

### Claim 6 (depends on 1)

The method of claim 1, wherein the computer being configured to select or receive selection of the other points includes being configured to perform an iterative process in which a first iteration includes the computer being configured to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, velocity vectors originating at neighboring points that have at least a threshold similarity of at least direction to a velocity vector originating at the point; and
select the neighboring points as candidate points,
wherein in each of at least some iterations of the iterative process after the first iteration, the computer being configured to identify velocity vectors for the point in the quiver plot includes being configured to identify velocity vectors for each of the neighboring points selected in an immediately preceding iteration, and
wherein the computer being configured to select or receive selection of the other points further includes being configured to produce a cluster of the candidate points over iterations of the iterative process, and select points on a boundary of the cluster as the other points that with the origin point defines the polygon.

### Claim 7 (depends on 1)

The method of claim 1, wherein capturing the digital image of the scene includes capturing a digital video of the scene including a series of digital images, and
wherein uploading the digital image of the scene to the computer includes uploading the digital video of the scene to the computer configured to determine the dimensions of the flame in each digital image of the series of digital images, and further configured to determine a change or a rate of change in a dimension of the dimensions of the flame over the series of digital images, the displayable report further including the change in the dimension of the flame.

### Claim 8 (depends on 1)

The method of claim 1, wherein capturing the digital image of the scene includes capturing a digital video of the scene including a series of digital images, and
wherein uploading the digital image of the scene to the computer includes uploading the digital video of the scene to the computer configured to determine the dimensions of the flame in each digital image of the series of digital images, and further configured to determine a duration of the flame based on the dimensions of the flame over the series of digital images, the displayable report further including the duration of the flame.

### Claim 9

A computer for use in testing a battery, the computer comprising:
a memory configured to store a digital image captured during a test of a battery in which the battery is punctured or heated in a test environment to cause the battery to produce a fire having a flame that extends out from the battery, the digital image being of a scene that includes at least a portion of the test environment and the flame that extends out from the battery, the digital image being captured using a digital camera that forms the digital image using visible light where the digital camera is positioned external to the test environment; and
a processor coupled to the memory and programmed to access the digital image and determine dimensions of the flame in the scene based thereon, including the processor being programmed to at least:
produce a quiver plot of the scene from the digital image, the quiver plot including a plurality of velocity vectors that represent motion of gases in the scene, the motion of gases including motion of gases in and around the flame, the plurality of velocity vectors originating at a respective plurality of points in the quiver plot and having respective magnitudes and directions;
identify a point of the respective plurality of points as an origin point to represent an origin of the flame in the scene;
select or receive selection of other points of the respective plurality of points based on similarity of at least the directions of the velocity vectors originating at the origin point and the other points, the origin point and the other points defining a polygon in the quiver plot that is an approximate outline of the flame;
determine dimensions of the polygon in the quiver plot;
translate the dimensions of the polygon in the quiver plot to corresponding dimensions of a polygon in the digital image;
translate the corresponding dimensions of the polygon in the digital image to dimensions of the flame in the scene; and
generate a displayable report that includes at least the dimensions of the flame.

### Claim 10 (depends on 9)

The computer of claim 9, wherein the battery in the test environment includes the battery between the digital camera and a fixed background within a back region of the test environment, and the digital image of the scene includes at least a portion of the fixed background and the flame that extends out from the battery.

### Claim 11 (depends on 9)

The computer of claim 9, wherein the processor is programmed to further convert the digital image from color to black-and-white before the quiver plot is produced from the digital image.

### Claim 12 (depends on 9)

The computer of claim 9, wherein the processor is programmed to further:
identify as abnormal any velocity vectors of the plurality of velocity vectors based on at least a threshold dissimilarity of at least the directions of the velocity vectors and neighboring velocity vectors in the quiver plot;
construct new velocity vectors for the velocity vectors identified as abnormal from an interpolation of the neighboring velocity vectors; and
replace the velocity vectors identified as abnormal with the new velocity vectors, the velocity vectors identified as abnormal being replaced before the origin point is identified and the other points are selected.

### Claim 13 (depends on 9)

The computer of claim 9, wherein the processor being programmed to select or receive selection of the other points includes being programmed to perform an iterative process in which a first iteration includes the processor being programmed to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, a velocity vector originating at a neighboring point that is most similar in at least direction to a velocity vector originating at the point; and
select the neighboring point as one of the other points that defines the polygon in the quiver plot,
wherein in each of at least some iterations of the iterative process after the first iteration, the point in the quiver plot is the neighboring point selected in an immediately preceding iteration, and the processor being programmed to identify the velocity vector excludes the velocity vector originating at the point in the immediately preceding iteration.

### Claim 14 (depends on 9)

The computer of claim 9, wherein the processor being programmed to select or receive selection of the other points includes being programmed to perform an iterative process in which a first iteration includes the processor being programmed to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, velocity vectors originating at neighboring points that have at least a threshold similarity of at least direction to a velocity vector originating at the point; and
select the neighboring points as candidate points,
wherein in each of at least some iterations of the iterative process after the first iteration, the processor being programmed to identify velocity vectors for the point in the quiver plot includes being programmed to identify velocity vectors for each of the neighboring points selected in an immediately preceding iteration, and
wherein the processor being programmed to select or receive selection of the other points further includes being programmed to produce a cluster of the candidate points over iterations of the iterative process, and select points on a boundary of the cluster as the other points that with the origin point defines the polygon.

### Claim 15 (depends on 9)

The computer of claim 9, wherein memory being configured to store the digital image of the scene includes being configured to store a digital video of the scene including a series of digital images, and
wherein the processor is programmed to access the digital video of the scene and determine the dimensions of the flame in each digital image of the series of digital images, and further programmed to determine a change or a rate of change in a dimension of the dimensions of the flame over the series of digital images, the displayable report further including the change in the dimension of the flame.

### Claim 16 (depends on 9)

The computer of claim 9, wherein memory being configured to store the digital image of the scene includes being configured to store a digital video of the scene including a series of digital images, and
wherein the processor is programmed to access the digital video of the scene and determine the dimensions of the flame in each digital image of the series of digital images, and further programmed to determine a duration of the flame based on the dimensions of the flame over the series of digital images, the displayable report further including the duration of the flame.

### Claim 17

A computer-readable storage medium for use in testing a battery, the computer-readable storage medium being non-transitory and having computer-readable program code stored therein that in response to execution by a processor, causes a computer to at least:
access a digital image captured during a test of a battery in which the battery is punctured or heated in a test environment to cause the battery to produce a fire having a flame that extends out from the battery, the digital image being of a scene that includes at least a portion of the test environment and the flame that extends out from the battery, the digital image being captured using a digital camera that forms the digital image using visible light where the digital camera is positioned external to the test environment; and
determine dimensions of the flame in the scene based on the digital image, including the computer being caused to at least:
produce a quiver plot of the scene from the digital image, the quiver plot including a plurality of velocity vectors that represent motion of gases in the scene, the motion of gases including motion of gases in and around the flame, the plurality of velocity vectors originating at a respective plurality of points in the quiver plot and having respective magnitudes and directions;
identify a point of the respective plurality of points as an origin point to represent an origin of the flame in the scene;
select or receive selection of other points of the respective plurality of points based on similarity of at least the directions of the velocity vectors originating at the origin point and the other points, the origin point and the other points defining a polygon in the quiver plot that is an approximate outline of the flame;
determine dimensions of the polygon in the quiver plot;
translate the dimensions of the polygon in the quiver plot to corresponding dimensions of a polygon in the digital image;
translate the corresponding dimensions of the polygon in the digital image to dimensions of the flame in the scene; and
generate a displayable report that includes at least the dimensions of the flame.

### Claim 18 (depends on 17)

The computer-readable storage medium of claim 17, wherein the battery in the test environment includes the battery between the digital camera and a fixed background within a back region of the test environment, and the digital image of the scene includes at least a portion of the fixed background and the flame that extends out from the battery.

### Claim 19 (depends on 17)

The computer-readable storage medium of claim 17, wherein the computer-readable storage medium has computer-readable program code stored therein that in response to execution by the processor, causes the computer to further convert the digital image from color to black-and-white before the quiver plot is produced from the digital image.

### Claim 20 (depends on 17)

The computer-readable storage medium of claim 17, wherein the computer-readable storage medium has computer-readable program code stored therein that in response to execution by the processor, causes the computer to further:
identify as abnormal any velocity vectors of the plurality of velocity vectors based on at least a threshold dissimilarity of at least the directions of the velocity vectors and neighboring velocity vectors in the quiver plot;
construct new velocity vectors for the velocity vectors identified as abnormal from an interpolation of the neighboring velocity vectors; and
replace the velocity vectors identified as abnormal with the new velocity vectors, the velocity vectors identified as abnormal being replaced before the origin point is identified and the other points are selected.

### Claim 21 (depends on 17)

The computer-readable storage medium of claim 17, wherein the computer being caused to select or receive selection of the other points includes being caused to perform an iterative process in which a first iteration includes the computer being caused to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, a velocity vector originating at a neighboring point that is most similar in at least direction to a velocity vector originating at the point; and
select the neighboring point as one of the other points that defines the polygon in the quiver plot,
wherein in each of at least some iterations of the iterative process after the first iteration, the point in the quiver plot is the neighboring point selected in an immediately preceding iteration, and the computer being programmed to identify the velocity vector excludes the velocity vector originating at the point in the immediately preceding iteration.

### Claim 22 (depends on 17)

The computer-readable storage medium of claim 17, wherein the computer being caused to select or receive selection of the other points includes being caused to perform an iterative process in which a first iteration includes the computer being caused to at least:
identify for a point in the quiver plot that in the first iteration is the origin point, velocity vectors originating at neighboring points that have at least a threshold similarity of at least direction to a velocity vector originating at the point; and
select the neighboring points as candidate points,
wherein in each of at least some iterations of the iterative process after the first iteration, the computer being caused to identify velocity vectors for the point in the quiver plot includes being caused to identify velocity vectors for each of the neighboring points selected in an immediately preceding iteration, and
wherein the computer being caused to select or receive selection of the other points further includes being caused to produce a cluster of the candidate points over iterations of the iterative process, and select points on a boundary of the cluster as the other points that with the origin point defines the polygon.

### Claim 23 (depends on 17)

The computer-readable storage medium of claim 17, wherein memory being configured to store the digital image of the scene includes being configured to store a digital video of the scene including a series of digital images, and
wherein the computer is caused to access the digital video of the scene and determine the dimensions of the flame in each digital image of the series of digital images, and further caused to determine a change or a rate of change in a dimension of the dimensions of the flame over the series of digital images, the displayable report further including the change in the dimension of the flame.

### Claim 24 (depends on 17)

The computer-readable storage medium of claim 17, wherein memory being configured to store the digital image of the scene includes being configured to store a digital video of the scene including a series of digital images, and
wherein the computer is caused to access the digital video of the scene and determine the dimensions of the flame in each digital image of the series of digital images, and further caused to determine a duration of the flame based on the dimensions of the flame over the series of digital images, the displayable report further including the duration of the flame.
