Progressive block encoding using region analysis
First Claim
1. A method of progressively encoding and transmitting visual data, comprising:
- acquiring image information updates for a region of visual data, the region of visual data defined by a plurality of blocks of pixel data, wherein individual blocks of the plurality are associated with individual change histories for their respective pixel data;
retrieving stored region information for the region of visual data, the retrieved information including a recent encoded state for each block in the plurality;
determining available network bandwidth;
determining encoding parameters for each block in the region of visual data from the retrieved region information and the available network bandwidth;
encoding the plurality of blocks;
updating the retrieved region information in accordance with the determined encoding parameters; and
transmitting the encoded blocks across a computer network, wherein determining encoding parameters comprises determining an initial encoding quality level for pixel values that have changed, and wherein determining encoding parameters comprises determining an incremental encoding quality level for blocks that have been previously encoded, have not reached a lossless encoded state and have unchanged pixel values.
7 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a method of progressively encoding and transmitting visual data. First image information updates are acquired for a region of visual data. The region of visual data is defined by a plurality of blocks of pixel data, and individual blocks of the plurality are associated with individual change histories for their respective pixel data. Stored region information including a recent encoded state for each block in the plurality is retrieved. Available network bandwidth is determined, and then encoding parameters for each block in the region of visual data are determined from the retrieved region information and the available network bandwidth. The plurality of blocks is then encoded, the retrieved region information is updated in accordance with the determined encoding parameters; and the encoded blocks are transmitted across a computer network.
55 Citations
35 Claims
-
1. A method of progressively encoding and transmitting visual data, comprising:
-
acquiring image information updates for a region of visual data, the region of visual data defined by a plurality of blocks of pixel data, wherein individual blocks of the plurality are associated with individual change histories for their respective pixel data; retrieving stored region information for the region of visual data, the retrieved information including a recent encoded state for each block in the plurality; determining available network bandwidth; determining encoding parameters for each block in the region of visual data from the retrieved region information and the available network bandwidth; encoding the plurality of blocks; updating the retrieved region information in accordance with the determined encoding parameters; and transmitting the encoded blocks across a computer network, wherein determining encoding parameters comprises determining an initial encoding quality level for pixel values that have changed, and wherein determining encoding parameters comprises determining an incremental encoding quality level for blocks that have been previously encoded, have not reached a lossless encoded state and have unchanged pixel values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. Apparatus for progressively encoding and transmitting visual data, comprising:
-
means for acquiring image information updates for a region of visual data, the region of visual data defined by a plurality of blocks of pixel data, wherein individual blocks of the plurality are associated with individual change histories for their respective pixel data; means for retrieving stored region information for the region of visual data, the retrieved information including a recent encoded state for each block in the plurality; means for determining available network bandwidth; means for determining encoding parameters for each block in the region of visual data from the retrieved region information and the available network bandwidth; means for encoding the plurality of blocks; means for updating the retrieved region information in accordance with the determined encoding parameters; and means for transmitting the encoded blocks across a computer network, wherein determining encoding parameters comprises determining an initial encoding quality level for pixel values that have changed, and wherein determining encoding parameters comprises determining an incremental encoding quality level for blocks that have been previously encoded, have not reached a lossless encoded state and have unchanged pixel values.
-
-
35. A non-transitory computer readable medium encoded with a computer program which, when executed by a computer, progressively encodes and transmits visual data, by:
-
acquiring image information updates for a region of visual data, the region of visual data defined by a plurality of blocks of pixel data, wherein individual blocks of the plurality are associated with individual change histories for their respective pixel data; retrieving stored region information for the region of visual data, the retrieved information including a recent encoded state for each block in the plurality; determining available network bandwidth;
determining encoding parameters for each block in the region of visual data from the retrieved region information and the available network bandwidth;encoding the plurality of blocks; updating the retrieved region information in accordance with the determined encoding parameters; and transmitting the encoded blocks across a computer network, wherein determining encoding parameters comprises determining an initial encoding quality level for pixel values that have changed, and wherein determining encoding parameters comprises determining an incremental encoding quality level for blocks that have been previously encoded, have not reached a lossless encoded state and have unchanged pixel values.
-
Specification