Virtual Object Alignment Using Physical Anchor Features

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In augmented reality environments, users face challenges in precisely manipulating virtual objects to align with physical objects or surfaces due to the lack of physical phenomena and rules, making it cumbersome to coordinate virtual content with real-world environments, especially with limited views and no zoomed-out or zoomed-in options.

Innovation Solution

A method and device that generate a three-dimensional model of the real-world environment, extract candidate anchor features from image data, and allow users to manipulate virtual objects by identifying correspondences between virtual and physical features, displaying indications to align virtual objects with physical objects, even when the physical features are not in the field of view, and providing directional notifications for alignment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If users manually manipulate virtual objects in augmented reality environments, then virtual objects can be positioned and oriented, but the process becomes cumbersome and imprecise due to lack of physical alignment cues

Engineering Contradiction:
Improvealignment precisionVSAvoidmanipulation ease
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system provides visual feedback by displaying indications of candidate anchor features in the environment. When a virtual object is manipulated near a physical object, the system highlights matching anchor features with visual cues (such as colored outlines or glow effects), giving users immediate feedback on alignment status and guiding precise positioning without requiring manual measurement or complex controls.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If the system provides detailed visual indications of anchor features, then alignment precision improves, but the user interface complexity increases

Engineering Contradiction:
Improvealignment precisionVSAvoidinterface complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system applies visual indications locally only to relevant candidate anchor features that are in proximity to the virtual object being manipulated. Instead of displaying all possible anchor features in the environment, the system dynamically filters and highlights only those features that are spatially close to the virtual object, reducing visual clutter while maintaining alignment precision.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If the system extracts and displays multiple candidate anchor features from the environment, then alignment options increase, but the difficulty of detecting and measuring appropriate features increases

Engineering Contradiction:
Improvealignment optionsVSAvoidfeature detection difficulty
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system performs preliminary extraction and analysis of candidate anchor features from the physical environment before the user begins manipulating virtual objects. The system pre-processes the environment to identify potential anchor points, edges, and surfaces, storing them as candidate features with their spatial coordinates and geometric properties. This preliminary action reduces the real-time computational burden during interaction.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides visual feedback by displaying indications of candidate anchor features in the environment. When a virtual object is manipulated near a physical object, the system highlights matching anchor features with visual cues (such as colored outlines or glow effects), giving users immediate feedback on alignment status and guiding precise positioning without requiring manual measurement or complex controls.

Inventive Principle:
Principle #23Feedback

4Adaptability or versatility

If the system provides indications extending from non-visible locations, then users can align with features outside field of view, but the device complexity increases

Engineering Contradiction:
Improvealignment capabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system uses visual indications as intermediaries to bridge the gap between the user's field of view and physical features located outside the visible area. When a candidate anchor feature is detected outside the current field of view, the system displays a visual indication (such as a projected outline or directional cue) that extends into the visible area, allowing users to align virtual objects with invisible physical features through the intermediary visual cue.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3437075B1Virtual object manipulation within physical environment
Publication Date: 2020.04.22 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3437075B1 patent drawingFigure 1
  • EP3437075B1 patent drawingFigure 2
  • EP3437075B1 patent drawingFigure 3

AI summary

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.