Parallel Pose Estimation Threads for Real-Time 3D Model Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems for generating 3D models from image frames are not capable of real-time or near-real-time processing, often resulting in incomplete or inaccurate models due to insufficient image sequences, requiring users to capture additional images for better results.

Innovation Solution

A system and method utilizing parallel processing threads to generate 3D point clouds and models in real time or near real time by processing image frames, where one thread performs camera pose estimation from frame-to-frame and another thread refines poses using keyframes, allowing for concurrent estimation and refinement of camera poses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sequential processing of image frames is used to generate 3D models, then processing accuracy can be maintained, but processing time increases significantly and real-time generation is not achieved

Engineering Contradiction:
Improve3D model generation speedVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The processing system is divided into multiple independent processing threads: a first processing thread performs camera pose estimation from frame-to-frame at lower resolution, while a second processing thread performs pose refinement from frame-to-keyframe at higher resolution. These threads operate in parallel to simultaneously perform multiple processing tasks, thereby reducing overall processing time while maintaining model accuracy through the complementary nature of the two processing approaches.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces a resolution dimension by processing images at two different resolutions through different threads. The first thread processes down-sampled lower resolution images for rapid pose estimation, while the second thread processes higher resolution images for refinement. This multi-resolution approach enables parallel processing without sacrificing the accuracy that would require full-resolution processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If high resolution image processing is performed for accurate pose estimation, then model accuracy improves, but processing complexity and computational load increase

Engineering Contradiction:
Improvecamera pose estimation accuracyVSAvoidprocessing system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Different processing threads are assigned different resolution qualities based on their specific functions. The first processing thread uses lower resolution images sufficient for obtaining initial pose estimates, while the second processing thread uses higher resolution images specifically for refinement tasks. This local quality differentiation ensures that high resolution processing is applied only where necessary for accuracy, reducing overall computational complexity.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system applies partial high-resolution processing only to keyframes and selective frames through the second processing thread, rather than processing every frame at high resolution. The first thread handles the majority of frames at lower resolution, and the second thread performs refinement only on selected frames where higher precision is needed, thus avoiding excessive computational burden while maintaining necessary accuracy.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If complete image sequences are captured before processing to ensure model completeness, then model accuracy improves, but processing time and user wait time increase

Engineering Contradiction:
Improve3D model completenessVSAvoiduser wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The parallel processing threads are initiated and begin processing image frames as soon as they are captured, rather than waiting for the complete sequence to be collected. The first thread continuously performs pose estimation on incoming frames, and the second thread refines poses using keyframes as they become available. This preliminary action enables real-time or near-real-time 3D model generation while maintaining completeness through continuous processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The processing system operates continuously as image frames are captured, with both processing threads actively working in parallel throughout the image capture sequence. This continuous processing ensures that 3D model generation progresses throughout the capture period rather than being delayed until after all frames are collected, thereby reducing user wait time while maintaining model completeness through ongoing refinement.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9607388B2System and method of pose estimation
Publication Date: 2017.03.28 QUALCOMM INC
  • US9607388B2 patent drawing
  • US9607388B2 patent drawing
  • US9607388B2 patent drawing

AI summary

A method includes receiving, from an image capture device, a first image frame of a sequence of image frames. The method also includes estimating, at a processor, a camera pose corresponding to the first image frame by comparing the first image frame to a second image frame. The second image frame precedes the first image frame in the sequence of image frames. The method further includes estimating, at the processor, a refined camera pose corresponding to the first image frame by comparing the first image frame to a keyframe. The keyframe corresponds to a particular image frame that precedes the second image frame in the sequence of image frames.