IP Library Patent Application 14147452
Patent Application
App. No. 14/147,452

COMPOSITING IMAGES IN A COMPRESSED BITSTREAM

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 None
App. No.
14/147,452
Abstract

A system for compositing images in a compressed bitstream can include memory and first and second modules. The first module can be configured to receive images and corresponding position information that indicates positions of the images in a composite image, determine pixels of the images that will be occluded in the composite image, and store, at memory locations of the memory, pixels of the images that will be visible in the composite image. The second module can be configured to receive the position information, retrieve, from the memory locations, the visible pixels of the images, determine the images corresponding to the visible pixels based at least on the memory locations, and generate the composite image by arranging the visible pixels based at least on the position information. In one or more implementations, the visible pixels can be compressed before being stored in memory and decompressed after being retrieved from memory.

Claims (60)

1 . A method for compositing images in a compressed bitstream, the method comprising:

receiving images and corresponding position information items that indicate positions of the images in a composite image;

determining occluded portions of the images that will be occluded by another of the images in the composite image based at least on the position information items; and

storing, in a memory module, representations of visible portions of the images that will be visible in the composite image, the visible portions of the images being separate from the occluded portions of the images.

2 . The method of claim 1 , further comprising:

retrieving, from the memory module, the representations of the visible portions of the images; and

generating the composite image from the representations of the visible portions of the images, the visible portions of the images being arranged in the composite image based at least on the position information items; and

providing, for display, the composite image that comprises the visible portions of the images.

3 . The method of claim 2 , wherein storing, in the memory module, the representations of the visible portions of the images that will visible in the composite image further comprises:

compressing, using a compression algorithm, the representations of the visible portions of the images; and

storing, in the memory module, the compressed representations of the visible portions of the images.

4 . The method of claim 3 , wherein retrieving, from the memory module, the compressed representations of the visible portions of the images comprises:

retrieving, from memory locations of the memory module, the compressed representations of the visible portions of the images; and

decompressing the compressed representations of the visible portions of the images.

5 . The method of claim 4 , wherein the compression algorithm comprises a variable bit rate compression algorithm, and the method further comprises:

utilizing independent rate buffers for the images;

retrieving, from the memory locations of the memory module, the compressed representations of the visible portions of the images;

determining the images corresponding to the compressed representations of the visible portions of the images based at least on the memory locations; and

storing the compressed representations of the visible portions of the images in the rate buffers utilized for the images.

6 . The method of claim 5 , further comprising:

determining the images corresponding to the compressed representations of the visible portions of the images based at least on the memory locations and a memory location to pixel location mapping.

7 . The method of claim 3 , wherein the compression algorithm comprises a variable bit rate compression algorithm, and the method further comprises:

utilizing independent rate buffers for the images; and

buffering the compressed representations of the visible portions of the images in the corresponding rate buffers prior to storing, in the memory module, the compressed representations of the visible portions of the images.

8 . The method of claim 3 , wherein the storing, in the memory module, the compressed representations of the visible portions of the images further comprises:

determining locations in the memory module to store the compressed representations of the visible portions of the images based at least on a pixel location to memory location mapping.

9 . The method of claim 1 , wherein the occluded portions of the images comprise occluded pixels of the images, the visible portions of the images comprise visible pixels of the images, and the memory module comprises dynamic random-access memory.

10 . A computer program product comprising instructions stored in a tangible computer-readable storage medium, the instructions comprising:

instructions for receiving position information items that indicate positions of images in a composite image, wherein at least a portion of one of the images is overlapped by another of the images in the composite image;

instructions for retrieving, from memory locations of a memory module, compressed visible portions of the images, the compressed visible portions of the image, when decompressed, being visible in the composite image;

instructions for storing the compressed visible portions of the images in buffers associated with the images corresponding to the compressed visible portions, the images corresponding to the compressed visible portions being determined based at least on the memory locations and the position information items;

instructions for decompressing the compressed visible portions of the images; and

instructions for generating the composite image from the decompressed visible portions of the images, the decompressed visible portions of the images being arranged in the composite image based at least on the position information items.

11 . The computer program product of claim 10 , wherein the position information items comprise layer indications that are indicative of an order in which the images are layered in the composite image.

12 . The computer program product of claim 10 , wherein the instructions further comprise:

instructions for determining the images corresponding to the compressed visible portions based at least on a memory location to pixel location mapping.

13 . The computer program product of claim 12 , wherein the memory location to pixel location mapping is based at least on a compression algorithm used to compress the compressed visible portions of the images.

14 . The computer program product of claim 13 , wherein the instructions further comprise:

instructions for receiving the images;

instructions for determining occluded portions of the images that will be occluded by another of the images in the composite image based at least on the position information items;

instructions for compressing, using the compression algorithm, the visible portions of the images; and

instructions for storing, at the memory locations of the memory module, the compressed visible portions of the images, the compressed visible portions of the images being separate from the occluded portions of the images.

15 . The computer program product of claim 14 , wherein the instructions further comprise:

instructions for determining one of the memory locations for storing one of the compressed visible portions of one of the images based at least on the compression algorithm, a position of the one of the compressed visible portions within the one of the images, and the one of the position information items corresponding to the one of the images.

16 . A system comprising:

a memory that is configured to store pixels;

a first module that is configured to receive images and corresponding position information items that indicate positions of the images in a composite image, determine occluded pixels of the images that will be occluded by another of the images in the composite image based at least on the position information items, and store, at memory locations of the memory, visible pixels of the images that will be visible in the composite image, the visible pixels of the images being separate from the occluded pixels of the images; and

a second module that is configured to receive the position information items, retrieve, from the memory locations of the memory, the visible pixels of the images, determine the images corresponding to the visible pixels based at least on the memory locations, and generate the composite image from the visible pixels of the images, the visible pixels of the images being arranged in the composite image based at least on the position information items.

17 . The system of claim 16 , further comprising a host processor and wherein:

the first module is configured to receive the position information items from the host processor; and

the second module is configured to receive the position information items from the host processor.

18 . The system of claim 16 , wherein:

the first module is configured to compress the visible pixels of the images and store, at the memory locations of the memory, the compressed visible pixels; and

the second module is configured to retrieve, from the memory locations of the memory, the compressed visible pixels, store the compressed visible pixels in buffers associated with the corresponding images, and decompress the compressed visible pixels.

19 . The system of claim 18 , wherein:

the memory comprises dynamic random access memory;

the first module is configured to store, in first bursts, the compressed visible pixels at the memory locations of the memory; and

the second module is configured to retrieve, in second bursts, the compressed visible pixels from the memory locations of the memory.

20 . The system of claim 16 , further comprising:

a display buffer that is configured to store the composite image, wherein the second module is configured to write the composite image to the display buffer.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2014
From: SHIN, JAEWON; SCHONER, BRIAN FRANCIS; WALLS, FREDERICK GEORGE
To: BROADCOM CORPORATION
Reel/Frame 031901/0044 →