Free Viewpoint Video Rendering via Depth Hull and Distributed Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video production methods do not allow viewers to control the viewpoint of a video stream effectively, especially during playback, as they are limited to fixed camera angles or require complex computational resources for dynamic viewpoint changes.

Innovation Solution

A system using at least one depth video camera and one standard video camera to record a subject, creating a 3D depth hull that allows viewers to select any viewpoint within a continuous segment around the subject, with the central computer performing calculations to render the view and optionally distributing the workload to remote viewers for scalability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple cameras are used to provide multiple viewpoints, then viewer control over viewpoint is improved, but device complexity increases

Engineering Contradiction:
Improveviewpoint controlVSAvoidcamera system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the viewpoint control functionality by separating the camera array from the rendering computation. Multiple cameras capture footage from different angles, but the complex task of synthesizing arbitrary viewpoints is segmented out to be performed separately by distributed computing resources rather than requiring a single complex centralized system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The camera array is designed to capture footage that can be used for multiple different viewpoints simultaneously. The same set of cameras serves all potential viewing angles, making the camera system universal rather than requiring dedicated cameras for each specific viewpoint.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If complex graphical calculations are performed to create requested views, then viewpoint flexibility is improved, but computational burden increases

Engineering Contradiction:
Improveviewpoint flexibilityVSAvoidcomputational burden
Core Design Contradiction:
Adaptability or versatilityVSPower

Solution Approach 1:

The computational workload is segmented and distributed across multiple independent computing devices. Instead of one powerful computer performing all the complex graphical calculations for every requested viewpoint, the rendering tasks are divided and assigned to different devices in a distributed network, reducing the burden on any single system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates simplified representations or pre-computed data structures from the multi-camera footage that can be efficiently rendered on client devices. Rather than transmitting raw footage and requiring full re-rendering, copied or derived data structures enable viewpoint synthesis with reduced computational requirements.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If all recording data is transmitted to each viewer, then viewpoint calculation flexibility is improved, but data transmission requirements increase

Engineering Contradiction:
Improveviewpoint calculation flexibilityVSAvoiddata transmission
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system extracts only the essential data needed for viewpoint synthesis and transmits that selectively to viewers. Rather than sending all raw recording data from every camera to every client, the system extracts and transmits only the specific portions of data required for the requested viewpoint calculations, reducing overall data transmission requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

4Device complexity

If a single computer performs all calculations, then system simplicity is improved, but scalability worsens

Engineering Contradiction:
Improvesystem architectureVSAvoidscalability
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The centralized computing task is segmented into distributed computing nodes. The system architecture evolves from a single computer handling all calculations to multiple independent computing devices that can each handle portions of the rendering workload, enabling the system to scale to serve more viewers simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each computing device in the distributed system can independently perform viewpoint rendering calculations for its assigned tasks. Rather than relying on a central computer to service all rendering requests, each node in the distributed network serves itself by autonomously performing the graphical calculations needed for its designated viewpoint synthesis tasks.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8223192B2Free viewpoint video
Publication Date: 2012.07.17 TECHNION RES & DEV FOUND LTD
  • US8223192B2 patent drawing
  • US8223192B2 patent drawing
  • US8223192B2 patent drawing

AI summary

A method of remotely viewing a video from a selected viewpoint selected by the viewer from a continuous segment, including, recording a video of a subject using at least one depth video camera that records a video comprising a sequence of picture frames and additionally records a depth value for each pixel of the picture frames, recording a video of the subject using at least one standard video camera positioned to record a video at a viewpoint that differs from the viewpoint of the depth video camera, rendering a depth hull that defines a three dimensional outline of the subject being recorded using the depth values recorded by the depth video cameras, providing the recorded video from one or more cameras positioned on either side of the selected viewpoint, incorporating the recorded video from the one or more cameras onto the rendered depth hull to render a viewable video from the selected viewpoint; and displaying the rendered viewable video to the viewer.