IP Library Granted Patent US 12,106,495
Granted Patent B2
US 12,106,495 · App. 18/126,972 · Granted Oct 1, 2024

Three-dimensional stabilized 360-degree composite image capture

Inventors: Bruno Francois (Atlanta, GA); Grant Schindler (Atlanta, GA)
Assignee: Carvana, LLC
G06T7/33G06F3/0484G06T3/4007G06T7/246G06V10/40G06V10/48G06V20/56H04N23/62H04N23/68H04N23/698H04N25/41G06T2200/32G06T2207/30244
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,106,495
App. No.
18/126,972
Filed
Mar 27, 2023
Granted
Oct 1, 2024
Kind
B2
Art Unit
2482
USPC
348/218.1
Abstract

Many embodiments can comprise a system. The system can comprise a processor and a memory coupled to the processor. The memory can include instructions that, when executed by the processor, cause the processor to: determine a direction of gravity in each image of a sequence of images around an object; estimate a center of mass of the object in each image of the sequence of images using the direction of gravity and dimensions of the object; stabilize each image in the sequence of images using the center of mass; and generate a 360 degree display of the object using each image in the stabilized sequence of images. Other embodiments are disclosed herein.

Claims (64)

1. A system comprising:

at least one processor; and

at least one memory coupled to the at least one processor and including instructions that, when executed by the at least one processor, cause the at least one processor to:

determine a direction of gravity in each image of a sequence of images around an object;

estimate a center of mass of the object in each image of the sequence of images using the direction of gravity and dimensions of the object;

stabilize each image in the sequence of images using the center of mass to create a stabilized sequence of images; and

generate a 360 degree display of the object using each image in the stabilized sequence of images.

2. The system of claim 1 , wherein the instructions further cause the at least one processor to:

rotate the 360 degree display around the center of mass;

receive a selection of a feature on the 360 degree display; and

in response to the receiving the selection, transition from rotating the 360 degree display around the center of mass to rotating the 360 degree display around the feature.

3. The system of claim 2 , wherein the 360 degree display is rotated about an axis of rotation extending parallel to the direction of gravity through the center of mass or the feature.

4. The system of claim 1 , wherein the dimensions comprise wheel locations of the object.

5. The system of claim 1 further comprising:

a camera coupled to the at least one processor, wherein the camera is configured to capture the sequence of images; and

a gyroscope sensor coupled to the at least one processor, wherein the gyroscope sensor is configured to provide signals corresponding to the direction of gravity.

6. The system of claim 1 , wherein the determining the direction of gravity comprises:

fit a plane to a set of camera positions for a camera used to capture the sequence of images;

generate a normal vector for the plane; and

set the normal vector for the plane as the direction of gravity.

7. The system of claim 1 , wherein the estimating the center of mass comprises:

sample at least two images from the sequence of images;

triangulate a point that projects to an approximate center of projection in each image of the at least two images; and

estimate the center of mass of the object in each image of the sequence of images using the direction of gravity, the dimensions of the object, and the point.

8. A method comprising:

determining a direction of gravity in each image of a sequence of images around an object;

estimating a center of mass of the object in each image of the sequence of images using the direction of gravity and dimensions of the object;

stabilizing each image in the sequence of images using the center of mass to create a stabilized sequence of images; and

generating a 360 degree display of the object using each image in the stabilized sequence of images.

9. The method of claim 8 further comprising:

rotating the 360 degree display around the center of mass;

receiving a selection of a feature on the 360 degree display; and

in response to the receiving the selection, transitioning from rotating the 360 degree display around the center of mass to rotating the 360 degree display around the feature.

10. The method of claim 9 , wherein the 360 degree display is rotated about an axis of rotation extending parallel to the direction of gravity through the center of mass or the feature.

11. The method of claim 8 , wherein the dimensions comprise wheel locations of the object.

12. The method of claim 8 further comprising:

capturing the sequence of images using a camera coupled to at least one processor; and

receiving signals corresponding to the direction of gravity from a gyroscope sensor.

13. The method of claim 8 , wherein the determining the direction of gravity comprises:

fitting a plane to a set of camera positions for a camera used to capture the sequence of images;

generating a normal vector for the plane; and

setting the normal vector for the plane as the direction of gravity.

14. The method of claim 8 , wherein the estimating the center of mass comprises:

sampling at least two images from the sequence of images;

triangulating a point that projects to an approximate center of projection in each image of the at least two images; and

estimating the center of mass of the object in each image of the sequence of images using the direction of gravity, the dimensions of the object, and the point.

15. An article of manufacture including at least one non-transitory, tangible computer readable storage medium having instructions stored thereon that, in response to execution by at least one processor, cause the at least one processor to perform operations comprising:

determining a direction of gravity in each image of a sequence of images around an object;

estimating a center of mass of the object in each image of the sequence of images using the direction of gravity and dimensions of the object;

stabilizing each image in the sequence of images using the center of mass to create a stabilized sequence of images; and

generating a 360 degree display of the object using each image in the stabilized sequence of images.

16. The article of manufacture of claim 15 , wherein the instructions cause the at least one processor to perform further operations comprising:

rotating the 360 degree display around the center of mass;

receiving a selection of a feature on the 360 degree display; and

in response to the receiving the selection, transitioning from rotating the 360 degree display around the center of mass to rotating the 360 degree display around the feature.

17. The article of manufacture of claim 16 , wherein, the 360 degree display is rotated about an axis of rotation extending parallel to the direction of gravity through the center of mass or the feature.

18. The article of manufacture of claim 15 , wherein the dimensions comprise wheel locations of the object.

19. The article of manufacture of claim 15 , wherein the instructions cause the at least one processor to perform further operations comprising:

capturing the sequence of images using a camera coupled to the at least one processor; and

receiving signals corresponding to the direction of gravity from a gyroscope sensor.

20. The article of manufacture of claim 15 , wherein the determining the direction of gravity comprises:

fitting a plane to a set of camera positions for a camera used to capture the sequence of images;

generating a normal vector for the plane; and

setting the normal vector for the plane as the direction of gravity.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2023
From: FRANCOIS, BRUNO; SCHINDLER, GRANT
To: CAR360 INC
Reel/Frame 065552/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2023
From: CAR360, INC.
To: CARVANA, LLC
Reel/Frame 065552/0383 →
Continuity (6)
Continuation 17403064 · Aug 16, 2021
Continuation 16404335 · May 6, 2019
Continuation 15711055 · Sep 21, 2017
Continuation In Part 14947842 · Nov 20, 2015
Provisional Application 62100546 · Jan 7, 2015
Related Publication 20230237680A1 · Jul 27, 2023
Cited By (1)
US 12,731,272