IP Library Granted Patent US 12,499,688
Granted Patent B2
US 12,499,688 · App. 17/744,081 · Granted Dec 16, 2025

Velocity estimation in remotely sensed imagery

Inventors: Brett W. Bader (Lyons, CO); Michael Aschenbeck (Westminster, CO); Charles W. Danforth (Louisville, CO); David Kettler (Thornton, CO); Wolfgang Schickler (Golden, CO)
Assignee: Vantor Inc.
G06V20/58G06T7/246G06T7/30G06T7/73H04N23/6812G06T2207/10016G06T2207/20081G06T2207/30236
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,499,688
App. No.
17/744,081
Granted
Dec 16, 2025
Kind
B2
Abstract

A method is provided for estimating velocity of a moving object. The method includes generating a raw velocity for the moving object from a position change between a first image generated by a first sensor and a second image generated by a second sensor of a sensor assembly and selecting a plurality of stationary background features that are captured with the moving object in one or more images. A background misregistration value is generated from apparent movement of the plurality of stationary background features and is used to correct the raw velocity.

Claims (55)

1 . A method for estimating velocity of a moving object, comprising:

receiving, by an image processing system, a first image generated by a first sensor, which is specific to a first wavelength band, a second image generated by a second panchromatic sensor, which is specific to a panchromatic band, and a third image generated by a third sensor, which is specific to a third wavelength band; the first wavelength band being different than the third wavelength band;

recognizing, by the image processing system, a moving object in the second image;

generating, by the image processing system, based on the moving object recognized in the second image, a raw velocity for the moving object from a displacement between the first image and the third image;

selecting, by the image processing system, a plurality of stationary background features that are captured with the moving object in the first image and/or the third second image based on locations of the plurality of the stationary background features relative to the moving object, wherein the plurality of stationary background features are non-moving features;

generating, by the image processing system, a background misregistration value from apparent movement of selected ones of the plurality of stationary background features; and

calculating, by the image processing system, the velocity of the moving object by correcting the raw velocity according to the background misregistration value.

2 . The method of claim 1 , wherein recognizing the moving object includes applying a machine learning object detection model to the second image.

3 . The method of claim 2 , wherein the machine learning object detection model is trained to identify one or more of cars, trains, ships, military vehicles, and aircraft.

4 . The method of claim 2 , wherein recognizing the moving object in the second images includes:

identifying, by the image processing system, one or more areas of the second image where motion occurs; and

applying, by the image processing system, the machine learning object detection model to only the one or more areas identified.

5 . The method of claim 1 , wherein selecting the plurality of stationary background features is based on the locations of the plurality of stationary background features being captured by one of the first sensor and/or the third sensor.

6 . The method of claim 1 , wherein obtaining the displacement between the first image and the third image includes:

extracting, by the image processing system, a template of the moving object from the first image;

obtaining, by the image processing system, correlation values for the template at a plurality of locations in the third image;

finding, by the image processing system, a maximum correlation location; and

using the maximum correlation location to calculate displacement.

7 . The method of claim 6 , wherein finding the maximum correlation location includes fitting a surface to the correlation values and finding the maximum correlation location at an offset from one of the plurality of locations in the second image.

8 . The method of claim 1 , wherein generating the raw velocity for the moving object further includes:

determining an additional displacement between at least one of the first image or the third image and a third image generated by a third sensor; and

calculating raw velocity from the displacement and the additional displacement.

9 . A computing system comprising:

one or more processors of an image processing system; and

a non-transitory processor readable medium, which includes processor executable code, which when executed by the one or more processors, causes the one or more processors to:

receive a first image generated by a first sensor, which is specific to a first wavelength band, a second image generated by a second panchromatic sensor, which is specific to a panchromatic band, and a third image generated by a third sensor, which is specific to a third wavelength band; the first wavelength band being different than the third wavelength band;

recognize a moving object in the second image;

generate, based on the moving object recognized in the second image, a raw velocity for the moving object from a position change between the first image and the third image;

select a plurality of stationary background features that are captured with the moving object in the first image and/or the third image based on locations of the plurality of the stationary background features relative to the moving object, wherein the plurality of stationary background features are non-moving features;

generate a background misregistration value from apparent movement of the plurality of stationary background features; and

calculate velocity of the moving object by correcting the raw velocity according to the background misregistration value.

10 . The computing system of claim 9 , wherein the processor executable code, when executed by the one or more processors, causes the one or more processors to recognize the moving object by applying a machine learning model; and

wherein the second image has a higher resolution, relative to the first image and the third image.

11 . The computing system of claim 9 , wherein the processor executable code, when executed by the one or more processors, further causes the one or mor processors, to determine orientation of the moving object and use the orientation to estimate likely direction of travel of the moving object.

12 . The computing system of claim 9 , wherein the processor executable code, when executed by the one or more processors, further causes the one or mor processors, to:

extract a template of the moving object from the first image;

obtain correlation values for the template at a plurality of locations in the third image;

find a maximum correlation location; and

use the maximum correlation location to calculate the position change.

13 . The computing system of claim 12 , wherein the processor executable code, when executed by the one or more processors, further causes the one or mor processors, to find the maximum correlation location by fitting a surface to the correlation values and finding the maximum correlation location at an offset from one of the plurality of locations in the second image.

14 . The computing system of claim 9 , further comprising:

a satellite including a sensor assembly in which the second panchromatic sensor is disposed between the first sensor and the third sensor; and

a ground station configured to receive the first, second and third images from the one or more satellites and to send the images to the first, second, and third image processing system.

15 . A non-transitory processor readable storage device having processor readable code embodied on the non-transitory processor readable storage device, the processor readable code for programming one or more processors to perform a method comprising:

receiving a first image generated by a first sensor, which is specific to a first wavelength band, a second image generated by a second panchromatic sensor, which is specific to a panchromatic band, and a third image generated by a third sensor, which is specific to a third wavelength band; the first wavelength band being different than the third wavelength band;

recognizing a moving object in the second image;

generating, based on the moving object recognized in the second image, a raw velocity for the moving object from a position change between the first image and the third image;

selecting a plurality of stationary background features that are captured with the moving object in the first image and/or the third image, based on locations of the plurality of the stationary background features relative to the moving object, wherein the plurality of stationary background features are non-moving features;

generating a background misregistration value from apparent movement of the plurality of stationary background features; and

calculating velocity of the moving object by correcting the raw velocity according to the background misregistration value.

16 . The non-transitory processor readable storage device of claim 15 , wherein selecting the plurality of stationary background features is based on the locations of the plurality of stationary background features being captured by one of the first sensor and/or the third sensor.

17 . The non-transitory processor readable storage device of claim 15 , wherein obtaining the position change between the first image and the third image includes: extracting a template of the moving object from the first image;

obtaining correlation values for the template at a plurality of locations in the third image;

finding a maximum correlation location; and

using the maximum correlation location to calculate the position change.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Mar 3, 2026
From: SIXTH STREET LENDING PARTNERS, ACTING IN ITS CAPACITY AS AGENT
To: AURORA INSIGHT INC.; VANTOR INC. (F/K/A MAXAR INTELLIGENCE INC.); VANTOR SERVICES INC. (F/K/A MAXAR MISSION SOLUTIONS INC.); LANTERIS SPACE LLC (F/K/A MAXAR SPACE LLC); SPATIAL ENERGY, LLC; LANTERIS SPACE ROBOTICS LLC (F/K/A MAXAR SPACE ROBOTICS LLC); VANTOR HOLDINGS INC. (F/K/A MAXAR TECHNOLOGIES HOLDINGS INC.)
Reel/Frame 075021/0624 →
CERTIFICATE OF AMENDMENT Recorded Jan 7, 2026
From: MAXAR INTELLIGENCE INC.
To: VANTOR INC.
Reel/Frame 074270/0330 →
CHANGE OF NAME Recorded Nov 4, 2025
From: MAXAR INTELLIGENCE INC.
To: VANTOR INC.
Reel/Frame 073462/0974 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 5, 2023
From: MAXAR INTELLIGENCE INC. (F/K/A DIGITALGLOBE, INC.); AURORA INSIGHT INC.; MAXAR MISSION SOLUTIONS INC. ((F/K/A RADIANT MISSION SOLUTIONS INC. (F/K/A THE RADIANT GROUP, INC.)); MAXAR SPACE LLC (F/K/A SPACE SYSTEMS/LORAL, LLC); SPATIAL ENERGY, LLC; MAXAR SPACE ROBOTICS LLC ((F/K/A SSL ROBOTICS LLC) (F/K/A MDA US SYSTEMS LLC)); MAXAR TECHNOLOGIES HOLDINGS INC.
To: SIXTH STREET LENDING PARTNERS, AS ADMINISTRATIVE AGENT
Reel/Frame 063660/0138 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2022
From: BADER, BRETT W.; ASCHENBECK, MICHAEL; DANFORTH, CHARLES W.; KETTLER, DAVID; SCHICKLER, WOLFGANG
To: MAXAR INTELLIGENCE INC.
Reel/Frame 059906/0808 →