Virtual object manipulation within physical environment
First Claim
1. A method for manipulating a virtual object displayed via a display device, the method comprising:
- receiving image data of a real world physical environment comprising a plurality of physical features;
using the image data, generating a three dimensional model of at least a portion of the real world physical environment;
extracting from the image data a plurality of candidate anchor features that each correspond to one of the physical features in the real world physical environment;
receiving user manipulation input that manipulates the virtual object as displayed within the real world physical environment, wherein the virtual object comprises a virtual anchor feature;
based on the manipulation of the virtual object, identifying at least one correspondence between the virtual anchor feature of the virtual object and a corresponding candidate anchor feature from the plurality of candidate anchor features, wherein the corresponding candidate anchor feature is located at an initial three dimensional location in the three dimensional model, and is extracted from a frame of the image data received at an initial time;
based on identifying the at least one correspondence, displaying via the display device an indication of the corresponding candidate anchor feature at its corresponding physical feature within the real world physical environment;
determining that the corresponding candidate anchor feature is not present in subsequent frames of the image data received after the initial time; and
maintaining the corresponding candidate anchor feature at the initial three dimensional location in the three dimensional model until expiration of a predetermined period of time after the initial time.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, computing device and head-mounted display device for manipulating a virtual object displayed via a display device are disclosed. In one example, image data of a physical environment comprising physical features is received. A three dimensional model of at least a portion of the environment is generated. Candidate anchor features that each correspond to one of the physical features are extracted from the image data. User input is received that manipulates the virtual object as displayed within the environment. Based on the manipulation, a correspondence between a virtual anchor feature of the virtual object and a corresponding candidate anchor feature is identified. An indication of the corresponding candidate anchor feature at its corresponding physical feature within the environment is displayed to the user.
-
Citations
17 Claims
-
1. A method for manipulating a virtual object displayed via a display device, the method comprising:
-
receiving image data of a real world physical environment comprising a plurality of physical features; using the image data, generating a three dimensional model of at least a portion of the real world physical environment; extracting from the image data a plurality of candidate anchor features that each correspond to one of the physical features in the real world physical environment; receiving user manipulation input that manipulates the virtual object as displayed within the real world physical environment, wherein the virtual object comprises a virtual anchor feature; based on the manipulation of the virtual object, identifying at least one correspondence between the virtual anchor feature of the virtual object and a corresponding candidate anchor feature from the plurality of candidate anchor features, wherein the corresponding candidate anchor feature is located at an initial three dimensional location in the three dimensional model, and is extracted from a frame of the image data received at an initial time; based on identifying the at least one correspondence, displaying via the display device an indication of the corresponding candidate anchor feature at its corresponding physical feature within the real world physical environment; determining that the corresponding candidate anchor feature is not present in subsequent frames of the image data received after the initial time; and maintaining the corresponding candidate anchor feature at the initial three dimensional location in the three dimensional model until expiration of a predetermined period of time after the initial time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computing device for manipulating a virtual object displayed via a display device, the computing device comprising:
-
a processor; and a memory holding instructions executable by the processor to; receive image data of a real world physical environment comprising a plurality of physical features; using the image data, generate a three dimensional model of at least a portion of the real world physical environment; extract from the image data a plurality of candidate anchor features that each correspond to one of the physical features in the real world physical environment, wherein at least one of the corresponding physical feature is located at a non-visible location in the real world physical environment that is outside a field of view of the display device; receive user manipulation input that manipulates the virtual object as displayed within the real world physical environment, wherein the virtual object comprises a virtual anchor feature; based on the manipulation of the virtual object, identify at least one correspondence between the virtual anchor feature of the virtual object and a corresponding candidate anchor feature from the plurality of candidate anchor features, wherein the corresponding candidate anchor feature corresponds to the at least one corresponding physical feature that is located at the non-visible location; based on identifying the at least one correspondence, display via the display device an indication of the corresponding candidate anchor feature at its corresponding physical feature within the real world physical environment, wherein the indication extends into the field of view of the display device from the non-visible location; and when the virtual anchor feature of the virtual object aligns with the corresponding candidate anchor feature of the corresponding physical feature located at the non-visible location, output a directional notification that indicates the non-visible location of the corresponding physical feature. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A head-mounted display device, comprising:
-
an at least partially see-through display; a processor; and a memory holding instructions executable by the processor to; display a virtual object via the at least partially see-through display; receive image data of a real world physical environment comprising a plurality of physical features; using the image data, generate a three dimensional model of at least a portion of the real world physical environment; extract from the image data a plurality of candidate anchor features that each correspond to one of the physical features in the real world physical environment; receive user manipulation input that manipulates the virtual object as displayed within the real world physical environment, wherein the virtual object comprises a virtual anchor feature; based on the manipulation of the virtual object, identify at least one correspondence between the virtual anchor feature of the virtual object and a corresponding candidate anchor feature from the plurality of candidate anchor features, wherein the corresponding candidate anchor feature is located at an initial three dimensional location in the three dimensional model, and is extracted from a frame of the image data received at an initial time; based on identifying the at least one correspondence between the virtual anchor feature and the corresponding candidate anchor feature, display via the at least partially see-through display an indication of the corresponding candidate anchor feature at its corresponding physical feature within the real world physical environment; determine that the corresponding candidate anchor feature is not present in subsequent frames of the image data received after the initial time; and maintain the corresponding candidate anchor feature at the initial three dimensional location in the three dimensional model until expiration of a predetermined period of time after the initial time.
-
Specification