Hierarchical Quadtree Data Selection for Mobile 3D Terrain

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for rendering three-dimensional terrain data on mobile devices face limitations due to memory constraints and slow network speeds, requiring efficient data partitioning and loading strategies to minimize data transfer and storage needs.

Innovation Solution

An automatic pre-selection process using a hierarchical file system to download only the necessary data blocks that meet a defined quality factor, allowing temporary 'holes' in data until rendering is complete, thereby reducing data traffic and storage requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all data blocks are downloaded and stored in memory, then complete terrain data is available for rendering, but memory capacity is exceeded and data transfer time increases

Engineering Contradiction:
Improvecompleteness of terrain dataVSAvoidmemory capacity and data transfer volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The terrain data is divided into a hierarchical structure of data blocks organized in a quadtree, where the terrain is recursively subdivided into quadrants. This segmentation allows selective loading of only necessary blocks at appropriate detail levels, rather than loading all data blocks into memory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions of the terrain are rendered at different detail levels based on their importance and distance from the viewpoint. Areas closer to the center or containing important features are rendered at higher detail levels, while peripheral areas use lower detail levels, optimizing memory usage and data transfer.

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If data is subdivided into smaller blocks with multiple representation versions, then memory usage is reduced, but data selection complexity increases

Engineering Contradiction:
Improvememory capacityVSAvoiddata block management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The quadtree structure and multiple representation versions of data blocks are pre-computed and organized on the server before transmission. This preliminary organization eliminates the need for complex runtime data processing and selection logic on the mobile device, reducing device complexity while enabling efficient selective loading.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If data transfer is optimized to reduce network usage, then data transfer time is reduced, but rendering quality may be compromised

Engineering Contradiction:
Improvedata transfer timeVSAvoidrendering quality
Core Design Contradiction:
Loss of timeVSManufacturing precision

Solution Approach 1:

The system loads slightly more data than strictly necessary for the current viewpoint, including some adjacent data blocks and multiple detail levels. This partial excess ensures that when the user interacts with or moves the viewpoint, high-quality rendering can be maintained without requiring additional network transfers, thus reducing overall data transfer time while preserving rendering quality.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3108453B1Method for selecting data files for downloading
Publication Date: 2020.01.01 MY VIRTUAL REALITY SOFTWARE
  • EP3108453B1 patent drawingFigure 1
  • EP3108453B1 patent drawingFigure 2
  • EP3108453B1 patent drawingFigure 3

AI summary

Method for selecting a set of data files comprising surface data in a plurality of different detail levels for downloading from a server computer, the surface data being associated with a portion of a three-dimensional surface in an image scene, the data files being stored as nodes of a hierarchical file system characterized in that the selection process comprises assessing whether the portion of a three-dimensional surface is visible in an actual image scene. If it is not visible, the selection process is resumed with a sibling or an uncle node; if it is visible, the selection process continues with determining whether the surface data meets the criteria of a predefined resolution quality factor.