IP Library Granted Patent US 10,216,355
Granted Patent B2
US 10,216,355 · App. 14/710,554 · Granted Feb 26, 2019

Method for providing scale to align 3D objects in 2D environment

Inventor: Milos Jovanovic (Portland, OR)
Assignee: Atheer, Inc.
G06F3/04815G06F3/04845G06F3/04883G06Q50/01G06T19/006G06T2210/04
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 10,216,355
App. No.
14/710,554
Granted
Feb 26, 2019
Kind
B2
Abstract

Example systems and methods for virtual visualization of a three-dimensional (3D) model of an object in a two-dimensional (2D) environment. The method may include projecting a ray from a user device to a ground plane and determining an angle at which the projected ray touches the ground plane. The method further helps determine a level for the ground plane for positioning the 3D model of the object in the 2D environment.

Claims (60)

1. A method for visualizing a three-dimensional model of an object in a two-dimensional environment, the method comprising:

receiving, from a user via a user interface of a user device, an import request to import the two-dimensional environment to be used as a background for the three-dimensional model;

importing, based on the import request, the two-dimensional environment;

receiving a height of the user device relative to a ground plane of the two-dimensional environment;

calculating a scale and a perspective for the three-dimensional model of the object in the two-dimensional environment based on the height of the user device and an angle formed between the ground plane and a light ray projected from the user device to the ground plane;

calculating a space geometry and scale of the two-dimensional environment based on the height and angle;

calculating a first position for the three-dimensional model of the object in the two-dimensional environment based on the height and the angle for correctly placing the three-dimensional model of the object in the two-dimensional environment with respect to the space geometry and scale of the two-dimensional environment;

receiving, from the user via the user interface of the user device, a superimposing request to superimpose the three-dimensional model of the object onto the two-dimensional environment;

superimposing the three-dimensional model of the object onto the two-dimensional environment at the first position with the scale and perspective based on the superimposing request; and

responsive to receiving an adjusted position of the user device, displaying the three-dimensional model of the object superimposed onto the two-dimensional environment with an updated scale and updated perspective relative to an updated space geometry and scale of the two-dimensional environment, wherein the updated scale and updated perspective of the three-dimensional model and the updated space geometry and scale of the two dimensional environment are updated according to the adjusted position of the three-dimensional model of the object and the adjusted position of the user device.

2. The method of claim 1 , further comprising determining a level of the ground plane of the two-dimensional environment and receiving the user device height relative to the ground plane.

3. The method of claim 2 , further comprising determining a position of a camera used to capture the two-dimensional environment.

4. The method of claim 3 , further comprising projecting the light ray from the user device to the ground plane and determining the angle formed between the ground plane and the light ray projected from the user device.

5. The method of claim 1 , wherein importing the two-dimensional environment includes only importing a single image of the two-dimensional environment from the user device.

6. The method of claim 1 , wherein superimposing the three-dimensional model of the object includes:

obtaining an image of the three-dimensional model of the object in space; and

positioning the three-dimensional model of the object within the two-dimensional environment in a second position based upon the angle formed between the ground plane and the light ray projected from the user device.

7. The method of claim 6 , wherein positioning the three-dimensional model of the object includes rotating the three-dimensional model of the object relative to the two-dimensional environment.

8. The method of claim 1 , wherein the user device includes one of a mobile phone, a personal computer, a personal digital assistant, a tablet personal computer, a wearable computer device, and a three-dimensional scanner.

9. The method of claim 1 , further comprising:

receiving, from the user, a row request, the row request defining a number of rows of a three-dimensional model placement grid within the two-dimensional environment;

receiving, from the user, a column request, the column request defining a number of columns of the three-dimensional model placement grid within the two-dimensional environment; and

superimposing, based upon the row request and the column request, the three-dimensional model of the object at each intersection of each column and each row.

10. A system for visualization of a three-dimensional model of an object in a two-dimensional environment, the system comprising a processor, a storage device, and instructions on the storage device executable by the processor, comprising:

a receiving module configured to receive one or more requests from a user, the requests including one or more of an import request, a scale data request, a superimposing request, and a request for projection of a physical light ray from one or more user devices to a ground plane of the two-dimensional environment;

an importing module configured to import, based on the import request of the user, the two-dimensional environment;

a saving module configured to calculate and save both a space geometry and scale of the two-dimensional environment, the space geometry and scale calculated based solely on a device height of the one or more user devices relative to the ground plane and an angle between the ground plane and the physical light ray projected from the one or more user devices to the ground plane, wherein the space geometry and scale of the two-dimensional environment are dynamically updated responsive to an adjusted angle between the ground plane and the physical light ray projected from the one or more user devices to the ground plane; and

a superimposing module configured to superimpose, based on the superimposing request and the space geometry and scale calculated, the three-dimensional model of the object onto the two-dimensional environment with a scale and a perspective calculated based on the scale of the two-dimensional environment;

wherein the receiving module is further configured to receive one or more of an updated position of the one or more user devices and an updated position of the three-dimensional model of the object within the two-dimensional environment, wherein the superimposing module is further configured to adjust the scale and the perspective of the three-dimensional model of the object according to the updated position of the one or more user devices or the updated position of the three-dimensional model of the object.

11. The system of claim 10 , wherein the receiving module is further configured to determine the ground plane of the two-dimensional environment and to receive the device height relative to the ground plane.

12. The system of claim 10 , further comprising a visualizing module configured to receive one or more of the superimposing request from the user, the superimposing request including data describing the three-dimensional model of the object, an object replacement request, a request to adjust one or more lighting characteristics of the two-dimensional environment, and a scale data and perspective data request.

13. The system of claim 12 , further comprising an adding scale and perspective module configured to:

receive the scale data and perspective data request from the visualizing module;

receive a request from the user to change a scale and a perspective of the two-dimensional environment to change a perspective environment from a first display characteristic including one or more of a first scale and a first perspective to a second display characteristic including one or more of a second scale and a second perspective; and

display the two-dimensional environment with the second display characteristic.

14. The system of claim 11 , further comprising a moving module configured to receive a request to move the three-dimensional model of the object within the two-dimensional environment from a first location to a second location and superimpose the three-dimensional model of the object onto the two-dimensional environment at the second location.

15. The system of claim 11 , further comprising a spinning module configured to:

receive a request to spin the three-dimensional model of the object about an axis of rotation of the three-dimensional model of the object from a first rotational orientation to a second rotational orientation; and

superimpose the three-dimensional model of the object onto the two-dimensional environment with the second rotational orientation.

16. The system of claim 12 , wherein the visualizing module is further configured to:

receive a row request, the row request defining a number of rows of a three-dimensional model placement grid within the two-dimensional environment;

receive a column request, the column request defining a number of columns of the three-dimensional model placement grid within the two-dimensional environment; and

superimpose, based upon the row request and the column request, the three-dimensional model of the object at each intersection of each column and each row.

17. A system for visualization of a three-dimensional model of an object in a two-dimensional environment, the system comprising a processor, a storage device, and instructions on the storage device executable by the processor, comprising:

a receiving module configured to receive one or more requests from a user, the requests including one or more of an import request, a scale data request, a superimposing request, and a request for projection of a physical light ray from one or more user devices to a ground plane of the two-dimensional environment;

an importing module configured to import, based on the import request of the user, only a single image of the two-dimensional environment;

a visualizing module configured to receive one or more of the superimposing request from the user, the superimposing request including data describing the three-dimensional model of the object, an object replacement request, a request to adjust one or more lighting characteristics of the two-dimensional environment, and a scale data and perspective data request;

a saving module configured to save both a space geometry and scale of the two-dimensional environment, the space geometry and the scale of the two-dimensional environment calculated based on a device height of the one or more user devices from a ground plane and an angle between the ground plane and the physical light ray projected from the one or more user devices to the ground plane, wherein the ground level establishes the ground plane of the two-dimensional environment in a three-dimensional model of the two-dimensional environment, wherein the space geometry and scale of the two-dimensional environment are dynamically updated responsive to an adjusted angle between the ground plane and the physical light ray projected from the one or more user devices to the ground plane; and

a superimposing module configured to superimpose, based on the superimposing request and the ground level calculated, the three-dimensional model of the object onto the two-dimensional environment with a scale and a perspective relative to the two-dimensional environment calculated based on the device height and the angle.

18. The system of claim 17 , further comprising an adding scale and perspective module configured to:

receive the scale data and perspective data request from the visualizing module;

receive a request from the user to change a scale and a perspective of the two-dimensional environment to change a perspective environment from a first display characteristic including one or more of a first scale and a first perspective to a second display characteristic including one or more of a second scale and a second perspective; and

display the two-dimensional environment with the second display characteristic.

19. The system of claim 17 , further comprising:

a moving module configured to receive a request to move the three-dimensional model of the object within the two-dimensional environment from a first location to a second location and superimpose the three-dimensional model of the object onto the two-dimensional environment at the second location; and

a spinning module configured to receive a request to spin the three-dimensional model of the object about an axis of rotation of the three-dimensional model of the object from a first rotational orientation to a second rotational orientation and superimpose the three-dimensional model of the object onto the two-dimensional environment with the second rotational orientation.

20. The system of claim 17 , wherein the visualizing module is further configured to:

receive a row request, the row request defining a number of rows of a three-dimensional model placement grid within the two-dimensional environment;

receive a column request, the column request defining a number of columns of the three-dimensional model placement grid within the two-dimensional environment; and

superimpose, based upon the row request and the column request, the three-dimensional model of the object at each intersection of each column and each row.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2022
From: ATHEER, INC.
To: WEST TEXAS TECHNOLOGY PARTNERS, LLC
Reel/Frame 058962/0067 →
SECURITY INTEREST Recorded Nov 20, 2018
From: ATHEER, INC.
To: COTA CAPITAL MASTER FUND, L.P., AS COLLATERAL AGENT
Reel/Frame 048154/0759 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2017
From: SPACEVIEW, INC.
To: ATHEER, INC.
Reel/Frame 042774/0485 →
RELEASE OF SECURITY INTEREST Recorded Jun 7, 2017
From: SPACEVIEW INC.
To: PORTLAND SEED FUND, LP
Reel/Frame 042634/0761 →
SECURITY INTEREST Recorded Oct 12, 2016
From: SPACEVIEW, INC.
To: PORTLAND SEED FUND, LP
Reel/Frame 039996/0829 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2015
From: JOVANOVIC, MILOS
To: SPACEVIEW INC.
Reel/Frame 035825/0402 →
Continuity (10)
Continuation In Part 14251503 · Apr 11, 2014
Continuation In Part 13552658 · Jul 19, 2012
Provisional Application 61992759 · May 13, 2014
Provisional Application 61992665 · May 13, 2014
Provisional Application 61992774 · May 13, 2014
Provisional Application 61992629 · May 13, 2014
Provisional Application 61992746 · May 13, 2014
Provisional Application 61992719 · May 13, 2014
Provisional Application 61660730 · Jun 17, 2012
Related Publication 20150243071A1 · Aug 27, 2015