IP Library Granted Patent US 10,147,226
Granted Patent B1
US 10,147,226 · App. 15/064,201 · Granted Dec 4, 2018

2D motion vectors from 3D model data

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,147,226
App. No.
15/064,201
Granted
Dec 4, 2018
Kind
B1
Abstract

A method of converting three dimensional image data into two dimensional image data, includes identifying at least two vertices of an object to be rendered in a frame of three dimensional image data, calculating a three-dimensional (3D) motion vector for each vertex of the object to be rendered, determining a position of each vertex in a new frame, calculating the motion vectors for a block based upon the vertex position in the new frame and the motion vectors for the vertex, and using the motion vectors for the vertex to render pixels in the new frame.

Claims (22)

1. A method of converting spatial three dimensional model data into two dimensional image data, comprising:

receiving the spatial three dimensional model data at a display system having a graphics processing unit and a display processor, wherein the display processor has a capability to hold one or two frames of spatial two dimensional image data and utilize motion vectors to reconstruct at least a part of a frame of spatial two dimensional image data;

identifying at least two vertices of an object to be rendered in a frame of the spatial three dimensional model data;

calculating a three-dimensional (3D) motion vector for each vertex of the object to be rendered between a first frame and a second frame of the spatial three-dimensional model data;

determining a position of each vertex in a new frame;

calculating the motion vectors for a block based upon each vertex position in the new frame and the motion vectors for the vertex, wherein a block is one of a set of rectangular blocks into which image data in the new frame is divided;

determining a motion vector for a center of a block of pixels, wherein the determining is based on the motion vector for the vertex located in the block, a location of the center of the block of pixels relative to the vertex, and at least one other motion vector for another vertex; and

using the motion vector for the center of the block to render pixels in the new frame onto a screen.

2. The method of claim 1 , further comprising selecting which motion vectors will be used for the block.

3. The method of claim 2 , wherein selecting which motion vectors comprises using depth information to select the motion vectors.

4. The method of claim 3 , wherein selecting the motion vector comprising selecting a foreground motion vector.

5. The method of claim 1 , wherein using the motion vectors to render the pixels comprises interpolating between two frames of previously rendered video frames.

6. The method of claim 5 , wherein interpolating between two frames of previously rendered video frames comprises:

rendering the two frames of previously rendered video frames using the graphics processor; and

rendering the pixels in the interpolated frame using the display processor.

7. The method of claim 1 , wherein using the motion vectors to render the pixels comprises extrapolating a frame of video data from a previously rendered video frame.

8. The method of claim 7 , wherein extrapolating the frame of video data comprising:

extrapolating the frame of video data using the display processor; and

filling in any missing information using the graphics processor.

9. The method of claim 8 , wherein filling in any missing information comprises using a stencil buffer to identify which information is missing.

10. The method of claim 8 , wherein the missing information comprises at least one of uncover regions, lighting effects, shadows and alpha blending.

11. The method of claim 1 , further comprising calculating a 2D position of the vertices prior to calculating the 3D vertices.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2021
From: PIXELWORKS SEMICONDUCTOR TECHNOLOGY COMPANY, LLC
To: PIXELWORKS SEMICONDUCTOR TECHNOLOGY (SHANGHAI) CO., LTD.
Reel/Frame 056895/0695 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2021
From: PIXELWORKS, INC.
To: PIXELWORKS SEMICONDUCTOR TECHNOLOGY COMPANY, LLC
Reel/Frame 055846/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2016
From: CHEN, SONGSONG; ZHANG, BOB; WOODALL, NEIL
To: PIXELWORKS, INC.
Reel/Frame 037923/0867 →