WO2010067942A2 - Lossless video compression method for h.264 codec - Google Patents

Lossless video compression method for h.264 codec Download PDF

Info

Publication number
WO2010067942A2
WO2010067942A2 PCT/KR2009/004870 KR2009004870W WO2010067942A2 WO 2010067942 A2 WO2010067942 A2 WO 2010067942A2 KR 2009004870 W KR2009004870 W KR 2009004870W WO 2010067942 A2 WO2010067942 A2 WO 2010067942A2
Authority
WO
WIPO (PCT)
Prior art keywords
variable length
pixel
compression
compression codes
pixel value
Prior art date
Application number
PCT/KR2009/004870
Other languages
French (fr)
Other versions
WO2010067942A3 (en
Inventor
Sang-Heon Lee
Moo-Kyoung Chung
Kyoung-Seon Shin
Suk-Ho Lee
Hoo-Sung Lee
Seong-Mo Park
Nak-Woong Eum
Original Assignee
Electronics And Telecommunications Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020090025868A external-priority patent/KR101168157B1/en
Application filed by Electronics And Telecommunications Research Institute filed Critical Electronics And Telecommunications Research Institute
Publication of WO2010067942A2 publication Critical patent/WO2010067942A2/en
Publication of WO2010067942A3 publication Critical patent/WO2010067942A3/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to H.264 codec, and more particularly, to a lossless video compression method for an H.264 codec that is used to reduce bandwidth for communications with an external memory.
  • Video compression technology such as H.264 codec is used to predict movements not only within the space of one screen but also within the spaces of several screens on the time axis in order to increase compression efficiency.
  • the frame memory is generally implemented as an external memory, such as an SDRAM, that requires a large data capacity.
  • variable block-size motion compensation In order to increase the video compression efficiency and functionality, new techniques including variable block-size motion compensation, 1/4 pixel accuracy motion compensation, multiple reference picture prediction, 4x4 conversion and interlaced scanning stereo matching, have been brought into the H.264. These techniques increase video compression rates, but at the same time, significantly increase bandwidth for communications with the external memory.
  • An aspect of the present invention provides a lossless video compression method for an H.264 codec that can significantly reduce bandwidth for communications with an external memory by compressing data and storing the compressed data in the external memory.
  • Another aspect of the present invention provides a lossless video compression method for an H.264 codec that can compress data to be written in an external memory without loss of images, that is, without lowering video quality, considering the compression is applied to a video system.
  • Another aspect of the present invention provides a lossless video compression method for an H.264 codec that allows for free access to data at an arbitrary location in an external memory by generating an address associated with the data written in the external memory.
  • a lossless video compression method for an H.264 codec including: dividing an image to be compressed into n (n is a natural number) pixel regions; compressing the n pixel regions to convert the n pixel regions into n variable length compression codes; and generating an address for writing or reading the n variable length compression codes by patterning a size variation of the n variable length compression codes.
  • the converting of the n pixel regions into the n variable length compression codes comprises: selecting a reference pixel having the minimum pixel value among m pixels (m is a natural number) according to the pixel regions; comparing the m pixels with the reference pixel to obtain m pixel value differences; converting the m pixel value differences into m compression codes having lengths corresponding to the m pixel value differences based on reference to compression code conversion specifications; and generating variable length compression codes comprising the pixel value of the reference pixel and compression codes respectively corresponding to the m pixels.
  • the compression code conversion specifications comprise information about compression code notation varying according to pixel value difference range.
  • the compression code notation is '0' + 3 bits when the pixel value difference is from 0 to 7
  • the compression code notation is '10'+ 3 bits when the pixel value difference is from 8 to 15
  • the compression code notation is '110' + 6 bits when the pixel value difference is from 16 to 79
  • the compression code notation of '1110'+ 6 bits when the pixel value difference is from 81 to 143
  • the compression code notation is '1111'+ 7 bits when the pixel value difference is from 144 to 271.
  • the compression codes increase in length in proportion to the pixel value differences and has a data structure in which the pixel value Min of the reference pixel comes before the m compression codes that are sequentially connected in order of the pixels.
  • the generating of the address comprises: quantizing the size of each of the n variable length compression codes; selecting a reference variation pattern most similar to a size variation pattern of the quantized variable length compression codes; obtaining the maximum value and the minimum value of the quantized variable length compression codes and obtaining a step size using a difference between the obtained maximum value and minimum value; and generating an address comprising information about the maximum value of the quantized variable length compression codes, the step size and the selected reference variation pattern.
  • the quantization is performed by dividing the size of each of the n variable length compression codes by bandwidth for communications with an external memory.
  • the method may further include writing or reading the n variable length compression codes in or from an external memory using the address.
  • a lossless video compression method for an H.264 codec can significantly reduce bandwidth for communications with an external memory by applying lossless compression of data being written in the external memory and allows for free access to data at an arbitrary location.
  • the energy consumed by H.264 codec can be reduced without lowering video quality, and an operation clock can be reduced.
  • FIG. 1 is a view schematically illustrating a lossless video compression method for an H.264 codec according to an exemplary embodiment of the present invention
  • FIG. 2 is a view illustrating an example of the operation S10 of dividing an image to be compressed into n pixel regions;
  • FIG. 3 is a view illustrating an example of pixel values of adjacent pixels
  • FIG. 4 is a view illustrating pixel value differences between a pixel having the minimum pixel value and the remaining pixels, shown in FIG. 3;
  • FIG. 5 is a view illustrating the operation S20 of converting pixel regions into variable length compression codes according to an exemplary embodiment of the present invention
  • FIG. 6 is a view illustrating a data structure of variable length compression codes according to an exemplary embodiment of the present invention.
  • FIG. 7 is a view illustrating the operation S30 of patterning a size variation of n variable length compression codes to generate an address according to an exemplary embodiment of the present invention
  • FIG. 8 is a view illustrating examples of reference variation patterns according to an exemplary embodiment of the present invention.
  • FIG. 9 is view illustrating an application example of the operation S30 of patterning a size variation of n variable length compression codes, shown in FIG. 7.
  • FIG. 1 is a view schematically illustrating a lossless video compression method for an H.264 codec according to an exemplary embodiment of the present invention.
  • an image to be compressed is divided into n pixel regions PA1 to PA16 as shown in FIG. 2, in operation S10, the n pixel regions PA1 to PA16 are respectively compressed into n variable length compression codes in operation S20, a size variation of the n variable length compression codes is patterned to generate an address in operation S30, and the n variable length compression codes are written in or read from an external memory using the address generated in operation S30, in operation S40.
  • images are not radically changed in terms of space.
  • adjacent pixels have similar pixel values.
  • a reference pixel having the minimum pixel value within a predetermined range is selected, and differences between the reference pixel and the remaining pixels are compressed to generate compression codes.
  • FIG. 5 is a view illustrating the operation S20 of converting pixel regions into variable length compression codes according to an exemplary embodiment of the present invention.
  • Each of the n pixel regions PA1 to PA16 is subject to conversion.
  • a pixel having the minimum pixel value Min is set as a reference pixel among m pixels within the corresponding pixel region PA1 in operation S21.
  • the pixel value of the reference pixel is compared with the pixel values of the m pixels within the corresponding pixel region to thereby obtain m pixel value differences MinDiff_1 to MinDiff_m in operation S22.
  • the pixel value differences MinDiff_1 to MinDiff_m are converted into m compression codes Pixel_1 to Pixel_m, respectively, which have lengths variable depending on the differences in pixel values in accordance with compression code conversion specifications in operation S23.
  • the lengths of the compression codes respectively corresponding to the m pixels increase in proportion to the pixel value differences between the m pixels and the reference pixel.
  • a pixel value difference of '0' corresponds to a compression code of '0000'
  • a pixel value difference of '1' corresponds to a compression code of '0001'
  • a pixel value difference of '9' corresponds to a compression code of '10010'
  • a pixel value difference of '16' corresponds to a compression code of '110000000'.
  • variable length compression codes consisting of the minimum pixel value Min and the m compression codes Pixel_1 to Pixel_m according to pixels are generated in operation S24.
  • variable length compression codes have a data structure in which the pixel value Min of the reference pixel comes before the m compression codes Pixel_1 to Pixel_m that are sequentially connected in order of the pixels.
  • the m pixels are respectively converted into the m compression codes Pixel_1 to Pixel_m, which are then put together into one piece of data to thereby generate the variable length compression codes. Accordingly, the sizes of the variable length compression codes respectively corresponding to the n pixel regions do not remain constant but change continuously.
  • the present invention proposes a new address generation method that allows for free access to data at a random location in an external memory even when the variable length compression codes respectively corresponding to the n pixel regions are variable, by utilizing a correlation between the variable length compression codes of the adjacent pixel regions.
  • FIG. 7 is a view illustrating the operation S30 of patterning a size variation of the n variable length compression codes according to an exemplary embodiment of the present invention.
  • the sizes of the n variable length compression codes, generated by converting the pixel regions into the compression codes in operation S20, are divided by communications bandwidth with the external memory to be quantized in operation S31.
  • variable length compression code when a variable length compression code has a size of 160 bits and the bandwidth for communications with the external memory is 64 bits, the size of the variable length compression code is quantized into a value of 3 by dividing 160 bits by 64 bits. In other words, 3 cycles are required to read the variable length compression code having a size of 160 bits by the 64-bit bandwidth for communications.
  • the maximum value and the minimum value are obtained among the quantized sizes of the n variable length compression codes in operation S32, and the difference between the maximum value and the minimum value is calculated in operation S33.
  • a variation pattern of the quantized sizes of the n variable length compression codes is compared with k reference variation patterns, defined and determined beforehand, to select one reference variation pattern that is most similar to the variation pattern of the quantized sizes of the variable length compression codes in operation S34.
  • the k reference variation patterns may be defined and determined before an address is generated by a user in operation S30. As shown in FIG. 8, the k reference variation patterns include various patterns.
  • An address containing information about the maximum value of the variable length compression code, the difference between the maximum value and the minimum value of the quantized variable length compression codes, and the reference variation pattern selected in operation S34 is generated in operation S35.
  • the address is represented in binary notation.
  • the size variation of the n variable length compression codes is patterned to generate an address, and the n variable length compression codes are written in, or read from, the external memory based on the address, so that data at a random location in the external memory can be accessed.
  • FIG. 9 it is assumed that an image to be compressed is divided into 16 pixel regions and each of the 16 pixel regions has variable length compression codes of sizes as shown in (a) of FIG. 9.
  • each of the 16 variable length compression codes is quantized by a bandwidth of 64 bits for communications with the external memory.
  • variable length compression code when a variable length compression code has a size of 64 bits or less, it is quantized into '1', when a variable length compression code has a size of '65 to 128' bits, it is quantized into '2', when a variable length compression code has a size of '129 to 192' bits, it is quantized into '3', when a variable length compression code has a size of '193 to 256' bits, it is quantized into '4', when a variable length compression code has a size of '257 to 320' bits, it is quantized into '5', and when a variable length compression code has a size of '321' or more, it is quantized into '6'.
  • a maximum value (6) and a minimum value (3) are obtained among the 16 quantized variable length compression codes, and a difference between the maximum value (6) and the minimum value (3), that is, a step size is obtained.
  • the 16 quantized variable length compression codes are arranged as shown in (c) of FIG. 9.
  • a size variation pattern of the 16 quantized variable length compression codes is compared with the k reference variation patterns of FIG. 8, to select a reference variation pattern which is most similar to the size variation pattern of the 16 quantized variable length compression codes, for example, a pattern 11.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)

Abstract

There is provided a lossless video compression method for an H.264 codec. A lossless video compression method for an H.264 codec according to an aspect of the invention may include: dividing an image to be compressed into n (n is a natural number) pixel regions; compressing the n pixel regions to convert the n pixel regions into n variable length compression codes; and generating an address for writing or reading the n variable length compression codes by patterning a size variation of the n variable length compression codes, thereby achieving lossless compression of data to be written in an external memory and allowing for access to data at an arbitrary location.

Description

LOSSLESS VIDEO COMPRESSION METHOD FOR H.264 CODEC
The present invention relates to H.264 codec, and more particularly, to a lossless video compression method for an H.264 codec that is used to reduce bandwidth for communications with an external memory.
Video compression technology such as H.264 codec is used to predict movements not only within the space of one screen but also within the spaces of several screens on the time axis in order to increase compression efficiency.
To this end, a compressed image needs to be first restored and then written in a frame memory, and data at a desired location therein is read. Here, the frame memory is generally implemented as an external memory, such as an SDRAM, that requires a large data capacity.
In order to increase the video compression efficiency and functionality, new techniques including variable block-size motion compensation, 1/4 pixel accuracy motion compensation, multiple reference picture prediction, 4x4 conversion and interlaced scanning stereo matching, have been brought into the H.264. These techniques increase video compression rates, but at the same time, significantly increase bandwidth for communications with the external memory.
In addition, since images with resolutions as high as full-HD images have been required in the industrial field, the bandwidth for communications with external memories has been a significant factor, which makes it very difficult to achieve full-HD images.
An aspect of the present invention provides a lossless video compression method for an H.264 codec that can significantly reduce bandwidth for communications with an external memory by compressing data and storing the compressed data in the external memory.
Another aspect of the present invention provides a lossless video compression method for an H.264 codec that can compress data to be written in an external memory without loss of images, that is, without lowering video quality, considering the compression is applied to a video system.
Another aspect of the present invention provides a lossless video compression method for an H.264 codec that allows for free access to data at an arbitrary location in an external memory by generating an address associated with the data written in the external memory.
According to an aspect of the present invention, there is provided a lossless video compression method for an H.264 codec, the method including: dividing an image to be compressed into n (n is a natural number) pixel regions; compressing the n pixel regions to convert the n pixel regions into n variable length compression codes; and generating an address for writing or reading the n variable length compression codes by patterning a size variation of the n variable length compression codes.
The converting of the n pixel regions into the n variable length compression codes comprises: selecting a reference pixel having the minimum pixel value among m pixels (m is a natural number) according to the pixel regions; comparing the m pixels with the reference pixel to obtain m pixel value differences; converting the m pixel value differences into m compression codes having lengths corresponding to the m pixel value differences based on reference to compression code conversion specifications; and generating variable length compression codes comprising the pixel value of the reference pixel and compression codes respectively corresponding to the m pixels.
The compression code conversion specifications comprise information about compression code notation varying according to pixel value difference range.
The compression code notation is '0' + 3 bits when the pixel value difference is from 0 to 7, the compression code notation is '10'+ 3 bits when the pixel value difference is from 8 to 15, the compression code notation is '110' + 6 bits when the pixel value difference is from 16 to 79, the compression code notation of '1110'+ 6 bits when the pixel value difference is from 81 to 143, and the compression code notation is '1111'+ 7 bits when the pixel value difference is from 144 to 271.
The compression codes increase in length in proportion to the pixel value differences and has a data structure in which the pixel value Min of the reference pixel comes before the m compression codes that are sequentially connected in order of the pixels.
The generating of the address comprises: quantizing the size of each of the n variable length compression codes; selecting a reference variation pattern most similar to a size variation pattern of the quantized variable length compression codes; obtaining the maximum value and the minimum value of the quantized variable length compression codes and obtaining a step size using a difference between the obtained maximum value and minimum value; and generating an address comprising information about the maximum value of the quantized variable length compression codes, the step size and the selected reference variation pattern.
The quantization is performed by dividing the size of each of the n variable length compression codes by bandwidth for communications with an external memory.
The method may further include writing or reading the n variable length compression codes in or from an external memory using the address.
As set forth above, according to exemplary embodiments of the invention, a lossless video compression method for an H.264 codec can significantly reduce bandwidth for communications with an external memory by applying lossless compression of data being written in the external memory and allows for free access to data at an arbitrary location.
Accordingly, according to an exemplary embodiment of the present invention, the energy consumed by H.264 codec can be reduced without lowering video quality, and an operation clock can be reduced.
FIG. 1 is a view schematically illustrating a lossless video compression method for an H.264 codec according to an exemplary embodiment of the present invention;
FIG. 2 is a view illustrating an example of the operation S10 of dividing an image to be compressed into n pixel regions;
FIG. 3 is a view illustrating an example of pixel values of adjacent pixels;
FIG. 4 is a view illustrating pixel value differences between a pixel having the minimum pixel value and the remaining pixels, shown in FIG. 3;
FIG. 5 is a view illustrating the operation S20 of converting pixel regions into variable length compression codes according to an exemplary embodiment of the present invention;
FIG. 6 is a view illustrating a data structure of variable length compression codes according to an exemplary embodiment of the present invention;
FIG. 7 is a view illustrating the operation S30 of patterning a size variation of n variable length compression codes to generate an address according to an exemplary embodiment of the present invention;
FIG. 8 is a view illustrating examples of reference variation patterns according to an exemplary embodiment of the present invention; and
FIG. 9 is view illustrating an application example of the operation S30 of patterning a size variation of n variable length compression codes, shown in FIG. 7.
The present application will now be described more fully hereinafter in conjunction with the accompanying drawings, in which exemplary embodiments thereof are shown, so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. In the following description of the present application, a detailed description of known functions and components incorporated herein will be omitted when it may make the subject matter of the present application rather unclear.
Reference should be made to the drawings, from which any parts that are not essential to the present application are omitted for the sake of clarity, and in which the same reference numerals and signs are used throughout the different drawings to designate the same or similar components.
In addition, unless explicitly described to the contrary, the word "comprise" and variations such as "comprises" or "comprising," will be understood to imply the inclusion of stated elements but not the exclusion of any other elements.
FIG. 1 is a view schematically illustrating a lossless video compression method for an H.264 codec according to an exemplary embodiment of the present invention.
Referring to FIG. 1, the lossless video compression method for an H.264 codec according to this embodiment, an image to be compressed is divided into n pixel regions PA1 to PA16 as shown in FIG. 2, in operation S10, the n pixel regions PA1 to PA16 are respectively compressed into n variable length compression codes in operation S20, a size variation of the n variable length compression codes is patterned to generate an address in operation S30, and the n variable length compression codes are written in or read from an external memory using the address generated in operation S30, in operation S40.
Hereinafter, the lossless video compression method for an H.264 codec will be described in more detail with reference to FIGS. 3 through 8.
In general, images are not radically changed in terms of space. As shown in FIG. 3, adjacent pixels have similar pixel values. In this embodiment, as shown in FIG. 4, a reference pixel having the minimum pixel value within a predetermined range is selected, and differences between the reference pixel and the remaining pixels are compressed to generate compression codes.
FIG. 5 is a view illustrating the operation S20 of converting pixel regions into variable length compression codes according to an exemplary embodiment of the present invention. Each of the n pixel regions PA1 to PA16 is subject to conversion.
When a predetermined pixel region, for example, the pixel region PA1 is selected to generate variable length compression codes, a pixel having the minimum pixel value Min is set as a reference pixel among m pixels within the corresponding pixel region PA1 in operation S21.
The pixel value of the reference pixel is compared with the pixel values of the m pixels within the corresponding pixel region to thereby obtain m pixel value differences MinDiff_1 to MinDiff_m in operation S22.
The pixel value differences MinDiff_1 to MinDiff_m are converted into m compression codes Pixel_1 to Pixel_m, respectively, which have lengths variable depending on the differences in pixel values in accordance with compression code conversion specifications in operation S23.
In Table 1, compression code conversion specifications are exemplified.
Referring to Table 1, the lengths of the compression codes respectively corresponding to the m pixels increase in proportion to the pixel value differences between the m pixels and the reference pixel. For example, a pixel value difference of '0' corresponds to a compression code of '0000', a pixel value difference of '1' corresponds to a compression code of '0001', a pixel value difference of '9' corresponds to a compression code of '10010', and a pixel value difference of '16' corresponds to a compression code of '110000000'.
In the case of a general image, as described above, most of the adjacent pixels have slight differences in pixel values. Thus, most of the pixels included in the predetermined pixel region are converted into compression codes having small lengths. Accordingly, according to an exemplary embodiment of the present invention, data compression efficiency can be maximized without the loss of compressed data.
Table 1
Compression code notation(binary) Pixel value difference range Number of compression codes Number of Bits
'0' + 3 bits 0 to 7 8 4
'10'+ 3 bits 8 to 15 8 5
'110' + 6 bits 16 to 79 64 9
'1110'+ 6 bits 81 to 143 64 10
'1111'+ 7 bits 144 to 271 128 11
After the m compression codes Pixel_1 to Pixel_m respectively corresponding to the m pixels are generated in operation S23, variable length compression codes consisting of the minimum pixel value Min and the m compression codes Pixel_1 to Pixel_m according to pixels are generated in operation S24.
Here, as shown in FIG. 6, the variable length compression codes have a data structure in which the pixel value Min of the reference pixel comes before the m compression codes Pixel_1 to Pixel_m that are sequentially connected in order of the pixels.
As described so far, in this embodiment, the m pixels are respectively converted into the m compression codes Pixel_1 to Pixel_m, which are then put together into one piece of data to thereby generate the variable length compression codes. Accordingly, the sizes of the variable length compression codes respectively corresponding to the n pixel regions do not remain constant but change continuously.
Therefore, the present invention proposes a new address generation method that allows for free access to data at a random location in an external memory even when the variable length compression codes respectively corresponding to the n pixel regions are variable, by utilizing a correlation between the variable length compression codes of the adjacent pixel regions.
FIG. 7 is a view illustrating the operation S30 of patterning a size variation of the n variable length compression codes according to an exemplary embodiment of the present invention.
First, in this embodiment, the sizes of the n variable length compression codes, generated by converting the pixel regions into the compression codes in operation S20, are divided by communications bandwidth with the external memory to be quantized in operation S31.
For example, when a variable length compression code has a size of 160 bits and the bandwidth for communications with the external memory is 64 bits, the size of the variable length compression code is quantized into a value of 3 by dividing 160 bits by 64 bits. In other words, 3 cycles are required to read the variable length compression code having a size of 160 bits by the 64-bit bandwidth for communications.
After the size of each of the n variable length compression codes is quantized, the maximum value and the minimum value are obtained among the quantized sizes of the n variable length compression codes in operation S32, and the difference between the maximum value and the minimum value is calculated in operation S33.
Then, a variation pattern of the quantized sizes of the n variable length compression codes is compared with k reference variation patterns, defined and determined beforehand, to select one reference variation pattern that is most similar to the variation pattern of the quantized sizes of the variable length compression codes in operation S34.
Here, the k reference variation patterns may be defined and determined before an address is generated by a user in operation S30. As shown in FIG. 8, the k reference variation patterns include various patterns.
An address containing information about the maximum value of the variable length compression code, the difference between the maximum value and the minimum value of the quantized variable length compression codes, and the reference variation pattern selected in operation S34 is generated in operation S35. Here, the address is represented in binary notation.
In this embodiment of the present invention, the size variation of the n variable length compression codes is patterned to generate an address, and the n variable length compression codes are written in, or read from, the external memory based on the address, so that data at a random location in the external memory can be accessed.
In FIG. 9, the operation S30 of patterning the size variation of the n variable length compression codes, shown in FIG. 7, to generate an address is exemplified.
For convenience of explanation, in FIG. 9, it is assumed that an image to be compressed is divided into 16 pixel regions and each of the 16 pixel regions has variable length compression codes of sizes as shown in (a) of FIG. 9.
Then, as shown in (b) of FIG. 9, each of the 16 variable length compression codes is quantized by a bandwidth of 64 bits for communications with the external memory.
That is, when a variable length compression code has a size of 64 bits or less, it is quantized into '1', when a variable length compression code has a size of '65 to 128' bits, it is quantized into '2', when a variable length compression code has a size of '129 to 192' bits, it is quantized into '3', when a variable length compression code has a size of '193 to 256' bits, it is quantized into '4', when a variable length compression code has a size of '257 to 320' bits, it is quantized into '5', and when a variable length compression code has a size of '321' or more, it is quantized into '6'.
Then, a maximum value (6) and a minimum value (3) are obtained among the 16 quantized variable length compression codes, and a difference between the maximum value (6) and the minimum value (3), that is, a step size is obtained.
Then, the 16 quantized variable length compression codes are arranged as shown in (c) of FIG. 9. As shown in (d) of FIG. 9, a size variation pattern of the 16 quantized variable length compression codes is compared with the k reference variation patterns of FIG. 8, to select a reference variation pattern which is most similar to the size variation pattern of the 16 quantized variable length compression codes, for example, a pattern 11.
Then, as shown in FIG. 9E, an address containing information about the maximum value (6) of the variable length compression codes, the step size, and the reference variation pattern, that is, the pattern 11 is generated.
Exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. The invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.

Claims (9)

  1. A lossless video compression method for an H.264 codec, the method comprising:
    dividing an image to be compressed into n (n is a natural number) pixel regions;
    compressing the n pixel regions to convert the n pixel regions into n variable length compression codes; and
    generating an address for writing or reading the n variable length compression codes by patterning a size variation of the n variable length compression codes.
  2. The method for claim 1, wherein the converting of the n pixel regions into the n variable length compression codes comprises:
    selecting a reference pixel having the minimum pixel value among m pixels (m is a natural number) according to the pixel regions;
    comparing the m pixels with the reference pixel to obtain m pixel value differences;
    converting the m pixel value differences into m compression codes having lengths corresponding to the m pixel value differences based on reference to compression code conversion specifications; and
    generating variable length compression codes comprising the pixel value of the reference pixel and compression codes respectively corresponding to the m pixels.
  3. The method for claim 2, wherein the compression code conversion specifications comprise information about compression code notation varying according to pixel value difference range.
  4. The method for claim 3, wherein the compression code notation is '0' + 3 bits when the pixel value difference is from 0 to 7, the compression code notation is '10'+ 3 bits when the pixel value difference is from 8 to 15, the compression code notation is '110' + 6 bits when the pixel value difference is from 16 to 79, the compression code notation of '1110'+ 6 bits when the pixel value difference is from 81 to 143, and the compression code notation is '1111'+ 7 bits when the pixel value difference is from 144 to 271.
  5. The method for claim 2, wherein the compression codes increase in length in proportion to the pixel value differences.
  6. The method for claim 2, wherein the compression codes has a data structure in which the pixel value Min of the reference pixel comes before the m compression codes that are sequentially connected in order of the pixels.
  7. The method for claim 1, wherein the generating of the address comprises:
    quantizing the size of each of the n variable length compression codes;
    selecting a reference variation pattern most similar to a size variation pattern of the quantized variable length compression codes;
    obtaining the maximum value and the minimum value of the quantized variable length compression codes and obtaining a step size using a difference between the obtained maximum value and minimum value; and
    generating an address comprising information about the maximum value of the quantized variable length compression codes, the step size and the selected reference variation pattern.
  8. The method of claim 7, wherein the quantization is performed by dividing the size of each of the n variable length compression codes by bandwidth for communications with an external memory.
  9. The method for claim 1, further comprising writing or reading the n variable length compression codes in or from an external memory using the address.
PCT/KR2009/004870 2008-12-11 2009-08-31 Lossless video compression method for h.264 codec WO2010067942A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20080125842 2008-12-11
KR10-2008-0125842 2008-12-11
KR10-2009-0025868 2009-03-26
KR1020090025868A KR101168157B1 (en) 2008-12-11 2009-03-26 Lossless compression method of image in h.264 codec

Publications (2)

Publication Number Publication Date
WO2010067942A2 true WO2010067942A2 (en) 2010-06-17
WO2010067942A3 WO2010067942A3 (en) 2010-11-11

Family

ID=42243145

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2009/004870 WO2010067942A2 (en) 2008-12-11 2009-08-31 Lossless video compression method for h.264 codec

Country Status (1)

Country Link
WO (1) WO2010067942A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197286A (en) * 2017-05-15 2017-09-22 华中科技大学 A kind of Lossless Image Compression Algorithm method and system based on reversible long code

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1758401A2 (en) * 2005-08-24 2007-02-28 Samsung Electronics Co., Ltd. Preprocessing for using a single motion compensated interpolation scheme for different video coding standards
WO2007027012A1 (en) * 2005-07-18 2007-03-08 Samsung Electronics Co., Ltd. Video coding method and apparatus for reducing mismatch between encoder and decoder
US20080055328A1 (en) * 2006-08-30 2008-03-06 Jong-Chul Shin Mapping method and video system for mapping pixel data included in the same pixel group to the same bank of memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007027012A1 (en) * 2005-07-18 2007-03-08 Samsung Electronics Co., Ltd. Video coding method and apparatus for reducing mismatch between encoder and decoder
EP1758401A2 (en) * 2005-08-24 2007-02-28 Samsung Electronics Co., Ltd. Preprocessing for using a single motion compensated interpolation scheme for different video coding standards
US20080055328A1 (en) * 2006-08-30 2008-03-06 Jong-Chul Shin Mapping method and video system for mapping pixel data included in the same pixel group to the same bank of memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197286A (en) * 2017-05-15 2017-09-22 华中科技大学 A kind of Lossless Image Compression Algorithm method and system based on reversible long code

Also Published As

Publication number Publication date
WO2010067942A3 (en) 2010-11-11

Similar Documents

Publication Publication Date Title
CN1168290C (en) Dual mode digital camera for video and still operation
US20120147209A1 (en) Solid-state image capturing device, and image capturing apparatus
WO2012033344A2 (en) Method and apparatus for encoding/decoding images using the effective selection of an intra-prediction mode group
EP1475972A2 (en) Apparatus and method for moving picture decoding device with parallel processing
WO2010074521A2 (en) Apparatus and method for converting image in an image processing system
GB2362055A (en) Image compression using a codebook
CN102868871A (en) Method and device for converting video image format
WO2010067942A2 (en) Lossless video compression method for h.264 codec
CN1092587A (en) Moving picture decoding device
US7499493B2 (en) Dual block motion vector storage in compressed form
US6212300B1 (en) Image processing apparatus, method and computer-executable program product for converting the format of data for specific image data
CN101443808B (en) Memory organizational scheme and controller architecture for image and video processing
CN112740676A (en) Coordination of intra transform coding and wide-angle intra prediction
CN207124684U (en) A kind of binocular machine vision platform
KR20160125382A (en) Method for generating a bitstream relative to image/video signal, bitstream carrying specific information data and method for obtaining such specific information
CN101931804B (en) Apparatus and method for rotating image without using memory
EP0779745A2 (en) Method of converting data outputting sequence in inverse DCT and circuit thereof
WO2012096551A2 (en) Method and device for encoding/decoding motion vector
KR101168157B1 (en) Lossless compression method of image in h.264 codec
KR100266063B1 (en) Image frame reallocation method
KR0129802B1 (en) Circuit for compensation of the motion by half pel in a picture compression system
Tajime et al. Memory compression method considering memory bandwidth for HDTV decoder LSIs
KR100614652B1 (en) Image processing apparatus and method for reducing power consumption
CN114731397A (en) Iterative training of neural networks for intra prediction
KR20070097763A (en) Method for compressing color data

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09832028

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09832028

Country of ref document: EP

Kind code of ref document: A2