Video coder employing pixel transportation
Abstract
A video encoding method and apparatus is shown wherein image information is represented as a plurality of pixels, the pixels are organized into blocks, pixels transposition is performed on image information at the boundaries of the blocks, the blocks are transform coded and quantized. Pixel transposition involves transposition of alternate pixels at the boundaries of blocks with pixels of neighboring blocks found in a pre-determined direction. The pre-determined direction may be fixed by a system or may be applied on an image by image basis. In the event that the pre-determined direction is not established by a system, a pixel transposition circuit includes a transposition keyword in the output bit stream which is used by a decoded to determine the direction of pixel transposition.
Claims
exact text as granted — not AI-modified1. A video coder, comprising:
a pixel transposition circuit that receives blocks of image data, each block including image data of an array of pixels, said pixel transposition circuit transposing selected pixels on a boundary of a first block with selected boundary pixels of a plurality of blocks neighboring said first block, a transform circuit that generates coefficients representative of data of the transposed blocks, and a quantizer that scales the coefficients.
2. The video coder of claim 1 , wherein the pixel transposition circuit transposes alternate pixels along the boundary of said first block with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
3. The video coder of claim 2 wherein the transposition direction is a diagonal direction, high-left to low-right.
4. The video coder of claim 2 wherein the transposition direction is a diagonal direction, low-left to high-right.
5. The video coder of claim 2 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block and a horizontal direction for pixels along a horizontal edge of the first block.
6. A video decoder, comprising:
a dequantizer that receives blocks of scaled coefficient information and reconstructing coefficients therefrom, an inverse transform circuit that reconstructs blocks of pixel data from the blocks of reconstructed coefficients, and a pixel transposition circuit that transposes pixels on a boundary of a first block with boundary pixels of a plurality of blocks neighboring said first block and generating blocks of image data for display.
7. The video decoder of claim 6 , wherein the pixel transposition circuit transposes alternate pixels along the boundary of the first block with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
8. The video decoder of claim 7 , wherein the transposition direction is a diagonal direction, high-left to low-right.
9. The video decoder of claim 7 , wherein the transposition direction is a diagonal direction, low-left to high-right.
10. The video decoder of claim 7 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block and a horizontal direction for pixels along a horizontal edge of the first block.
11. A method of encoding image data, comprising the steps of:
receiving blocks of image data, each block including data for an array of pixels, transposing selected pixels on a boundary edge of a first block with selected pixels from a plurality of blocks neighboring said first block, transforming pixel data of the blocks from the step transposing to coefficients, and scaling the transformed blocks.
12. The method of claim 11 , wherein the transposition step includes transposing alternate pixels along the boundary of the first block with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
13. The method of claim 12 , further comprising a step of generating a transposition keyword representative of the transposition direction.
14. The method of claim 12 , wherein the transposition direction is a diagonal direction, high-left to low-right.
15. The method of claim 12 , wherein the transposition direction is a diagonal direction, low-left to high-right.
16. The method of claim 12 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block and a horizontal direction for pixels along a horizontal edge of the first block.
17. A method of decoding blocks of encoded image data, comprising the steps of:
scaling the coded blocks to obtain blocks of coefficient data, transforming the coefficient data of the blocks to pixel data, and transposing selected pixels on a boundary edge of a first block with selected pixels from a plurality of blocks neighboring said first block.
18. The method of claim 17 , wherein the transposition step transposes alternate pixels along the boundary of the first block with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
19. The method of claim 18 , further comprising a step of receiving a transposition keyword that identifies a transposition direction.
20. The method of claim 18 , wherein the transposition direction is a diagonal direction, high-left to low-right.
21. The method of claim 18 , wherein the transposition direction is a diagonal direction, low-left to high-right.
22. The method of claim 18 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block and a horizontal direction for pixels along a horizontal edge of the first block.
23. A bitstream generated by a process comprising the steps of:
receiving blocks of image data, each block including data for an array of pixels, transposing selected pixels on a boundary edge of a first block with selected pixels from blocks neighboring the first block, transforming pixel data of the transposed blocks to coefficients, and scaling the transformed blocks.
24. The method of claim 23 , wherein the transposition step includes a step of transposing alternate pixels along the boundary of the first block with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
25. The method of claim 24 , further comprising a step of generating a transposition keyword representative of the transposition direction.
26. The method of claim 24 , wherein the transposition direction is a diagonal direction, high-left to low-right.
27. The method of claim 24 , wherein the transposition direction is a diagonal direction, low-left to high-right.
28. The method of claim 24 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block and a horizontal direction for pixels along a horizontal edge of the first block.
29. A method of encoding image data, comprising the steps of:
receiving blocks of image data, each block including an array of pixels; converting each block of image data into blocks of luminance pixel data and chrominance pixel data; transposing selected pixel data of adjacent luminance blocks; transposing selected pixel data of adjacent chrominance blocks; transforming pixel data of the transposed luminance blocks to luminance coefficients; transforming pixel data of the transposed chrominance blocks to chrominance coefficients; and scaling the transformed luminance coefficients and the transformed chrominance coefficients.
30. The method of claim 29 , wherein the luminance transposition step includes transposing alternate pixels along a boundary of a first luminance block with pixels from neighboring luminance blocks adjacent to the alternate pixels in a transposition direction.
31. The method of claim 30 , further comprising a step of generating a luminance transposition keyword representative of the transposition direction and transmitting the scaled luminance coefficient and the transposition keyword to a channel.
32. The method of claim 30 , wherein the transposition direction is a diagonal direction, high- left to low - right.
33. The method of claim 30 , wherein the transposition direction is a diagonal direction, low- left to high - right.
34. The method of claim 29 , wherein the transposition direction is a vertical direction for pixels along vertical edges of the luminance blocks and a horizontal direction for pixels along horizontal edges of the luminance blocks.
35. The method of claim 29 , wherein the chrominance transposition step includes transposing alternate pixels along a boundary of a first chrominance block with pixels from neighboring chrominance blocks adjacent to the alternate pixels in a transposition direction.
36. The method of claim 35 , further comprising a step of generating a chrominance transposition keyword representative of the transposition direction and transmitting the scaled chrominance coefficient and the transposition keyword to a channel.
37. The method of claim 35 , wherein the transposition direction is a diagonal direction, high- left to low - right.
38. The method of claim 35 , wherein the transposition direction is a diagonal direction, low- left to high - right.
39. The method of claim 35 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first chrominance block and a horizontal direction for pixels along a horizontal edge of the first chrominance block.
40. A method of decoding blocks of encoded luminance and chrominance data, comprising:
scaling blocks of encoded luminance data to obtain blocks of coefficient luminance data; scaling blocks of encoded chrominance data to obtain blocks of coefficient chrominance data; transforming the blocks of coefficient luminance data to blocks of luminance data; transforming the blocks of coefficient chrominance data to blocks of chrominance data; transposing selected alternate pixels of adjacent luminance blocks; transposing selected alternate pixels of adjacent chrominance blocks; and converting luminance blocks and chrominance blocks obtained from the transposings into blocks of image data.
41. The method of claim 40 , wherein the converting comprises transform decoding.
42. The method of claim 40 , wherein the luminance transposition step transposes alternate pixels along a boundary of a first luminance block with pixels from neighboring luminance blocks adjacent to the alternate pixels in a transposition direction.
43. The method of claim 42 , further comprising a step of receiving a transposition keyword that identifies the transposition direction, the transposing occurring according to the identified transposition direction.
44. The method of claim 42 , wherein the transposition direction is a diagonal direction, high- left to low - right.
45. The method of claim 42 , wherein the transposition direction is a diagonal direction, low- left to high - right.
46. The method of claim 42 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first luminance block and a horizontal direction for pixels along a horizontal edge of the first luminance block.
47. The method of claim 40 , wherein the chrominance transposition step transposes alternate pixels along a boundary of a first chrominance block with pixels from neighboring chrominance blocks adjacent to the alternate pixels in a transposition direction.
48. The method of claim 47 , further comprising a step of receiving a transposition keyword that identifies a transposition direction.
49. The method of claim 47 , wherein the transposition direction is a diagonal direction, high- left to low - right.
50. The method of claim 47 , wherein the transposition direction is a diagonal direction, low- left to high - right.
51. The method of claim 47 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first chrominance block and a horizontal direction for pixels along a horizontal edge of the first chrominance block.
52. A video coder, comprising:
an image block conversion circuit that receives blocks of image data, each block including image data of an array of pixels, said image block conversion circuit converting the received blocks of image data into luminance blocks and chrominance blocks; a pixel transposition circuit that transposes selected pixels of adjacent luminance blocks and transposes selected pixels of adjacent chrominance blocks; a transform circuit that generates luminance coefficients representative of data of the transposed luminance blocks, and generates chrominance coefficients representative of data of the transposed chrominance blocks; and a quantizer that scales the luminance coefficients and the chrominance coefficients.
53. The video coder of claim 52 , wherein the pixel transposition circuit transposes alternate pixels along a boundary of a first luminance block with pixels from neighboring luminance blocks adjacent to the alternate pixels in a transposition direction.
54. The video coder of claim 53 wherein the transposition direction is a diagonal direction, high- left to low - right.
55. The video coder of claim 53 wherein the transposition direction is a diagonal direction, low- left to high - right.
56. The video coder of claim 53 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first luminance block and a horizontal direction for pixels along a horizontal edge of the first luminance block.
57. The video coder of claim 52 , wherein the pixel transposition circuit transposes alternate pixels along a boundary of a first chrominance block with pixels from neighboring chrominance blocks adjacent to the alternate pixels in a transposition direction.
58. The video coder of claim 57 wherein the transposition direction is a diagonal direction, high- left to low - right.
59. The video coder of claim 57 wherein the transposition direction is a diagonal direction, low- left to high - right.
60. The video coder of claim 57 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first chrominance block and a horizontal direction for pixels along a horizontal edge of the first chrominance block.
61. A video decoder, comprising:
a dequantizer that receives blocks of scaled luminance coefficient information and reconstructs luminance coefficients therefrom, and also receives blocks of scaled chrominance coefficient information and reconstructs chrominance coefficients therefrom; an inverse transform circuit that reconstructs blocks of luminance pixel data from the blocks of reconstructed luminance coefficients, and also reconstructs blocks of chrominance pixel data from the blocks of reconstructed chrominance coefficients; a pixel transposition circuit that generates blocks of luminance image data by transposing pixels on a boundary of a first block of luminance pixel data with boundary pixels of a plurality of blocks of luminance pixel data neighboring said first block of luminance pixel data, and also generates blocks of chrominance image data by transposing pixels on a boundary of a first block of chrominance pixel data with boundary pixels of a plurality of blocks of chrominance pixel data neighboring said first block of chrominance pixel data; and an image block conversion circuit that generates blocks of image data from blocks of luminance image data and blocks of chrominance image data.
62. The video decoder of claim 61 , wherein the pixel transposition circuit transposes alternate pixels along a boundary of the first block of luminance pixel data with pixels from the neighboring blocks of luminance pixel data adjacent to the alternate pixels in a transposition direction.
63. The video decoder of claim 62 , wherein the transposition direction is a diagonal direction, high- left to low - right.
64. The video decoder of claim 62 , wherein the transposition direction is a diagonal direction, low- left to high - right.
65. The video decoder of claim 62 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block of luminance pixel data and a horizontal direction for pixels along a horizontal edge of the first block of luminance pixel data.
66. The video decoder of claim 61 , wherein the pixel transposition circuit transposes alternate pixels along a boundary of the first block of chrominance pixel data with pixels from the neighboring blocks of chrominance pixel data adjacent to the alternate pixels in a transposition direction.
67. The video decoder of claim 66 , wherein the transposition direction is a diagonal direction, high- left to low - right.
68. The video decoder of claim 66 , wherein the transposition direction is a diagonal direction, low- left to high - right.
69. The video decoder of claim 66 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block of chrominance pixel data and a horizontal direction for pixels along a horizontal edge of the first block of chrominance pixel data.
70. A bitstream generated by a process comprising the steps of:
receiving blocks of image data, each block including an array of pixels; converting each block of image data into blocks of luminance pixel data and chrominance pixel data; transposing selected pixels on a boundary edge of a first block of luminance pixel data with selected pixels from blocks neighboring the first block of luminance pixel data; transposing selected pixels on a boundary edge of a first block of chrominance pixel data with selected pixels from blocks neighboring the first block of chrominance pixel data; transforming pixel data of the transposed luminance blocks to luminance coefficients; transforming pixel data of the transposed chrominance blocks to chrominance coefficients; and scaling the transformed luminance coefficients and the transformed chrominance coefficients.
71. The bitstream of claim 70 , wherein the luminance transposition step includes transposing alternate pixels along a boundary of the first block of luminance pixel data with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
72. The bitstream of claim 71 , further comprising a step of generating a transposition keyword representative of the transposition direction and transmitting the scaled luminance coefficient and the transposition keyword to a channel.
73. The bitstream of claim 71 , wherein the transposition direction is a diagonal direction, high- left to low - right.
74. The bitstream of claim 71 , wherein the transposition direction is a diagonal direction, low- left to high - right.
75. The bitstream of claim 71 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block of luminance pixel data and a horizontal direction for pixels along a horizontal edge of the first block of luminance pixel data.
76. The bitstream of claim 70 , wherein the chrominance transposition step includes transposing alternate pixels along a boundary of the first block of chrominance pixel data with pixels from the neighboring blocks adjacent to the alternate pixels in a transposition direction.
77. The bitstream of claim 76 , further comprising a step of generating a transposition keyword representative of the transposition direction and transmitting the scaled chrominance coefficient and the transposition keyword to a channel.
78. The bitstream of claim 76 , wherein the transposition direction is a diagonal direction, high- left to low - right.
79. The bitstream of claim 76 , wherein the transposition direction is a diagonal direction, low- left to high - right.
80. The bitstream of claim 76 , wherein the transposition direction is a vertical direction for pixels along a vertical edge of the first block of chrominance pixel data and a horizontal direction for pixels along a horizontal edge of the first block of chrominance pixel data.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.