WO1997047139A2 - Method and device for decoding coded digital video signals - Google Patents

Method and device for decoding coded digital video signals Download PDF

Info

Publication number
WO1997047139A2
WO1997047139A2 PCT/IB1997/000639 IB9700639W WO9747139A2 WO 1997047139 A2 WO1997047139 A2 WO 1997047139A2 IB 9700639 W IB9700639 W IB 9700639W WO 9747139 A2 WO9747139 A2 WO 9747139A2
Authority
WO
WIPO (PCT)
Prior art keywords
block
data
coding
quantization
sub
Prior art date
Application number
PCT/IB1997/000639
Other languages
French (fr)
Other versions
WO1997047139A3 (en
Inventor
Peter Frencken
Peter De With
Original Assignee
Philips Electronics N.V.
Philips Norden Ab
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
Application filed by Philips Electronics N.V., Philips Norden Ab filed Critical Philips Electronics N.V.
Priority to EP97923270A priority Critical patent/EP0842585A2/en
Priority to JP10500376A priority patent/JPH11510989A/en
Priority to US09/011,367 priority patent/US6125146A/en
Publication of WO1997047139A2 publication Critical patent/WO1997047139A2/en
Publication of WO1997047139A3 publication Critical patent/WO1997047139A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • 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/98Adaptive-dynamic-range coding [ADRC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer

Definitions

  • the present invention relates to a method of coding digital video data corresponding to the pixels of a sequence of pictures, comprising at least a block forming step, for dividing the input video data into blocks, a quantization and coding step, for quantizing data corresponding to each block and coding the quantized data, and a control step, for controlling a quantization parameter of said quantization and coding step in accordance with another parameter that depends on the content of each block.
  • the invention also relates, for the implementation of this method, to a system for coding digital video data corresponding to the pixels of a sequence of pictures, comprising at least a block converter, for dividing the input video data associated to one picture into blocks, a quantization and coding sub-assembly, for quantizing data corresponding to each block and coding the quantized data, and a control sub-assembly, for controlling a quantization parameter of said quantization and coding sub-assembly in accordance with a parameter that depends on the content of each block.
  • Such an invention may be used in the field of digital television, especially according to the MPEG standard (described for instance in the document "MPEG : a video compression standard for multimedia applications", D. Le Gall, Communications of the ACM, April 1991 , vol.34, n°4, pp.46-58) and, more generally, is of interest in the field of multimedia applications.
  • MPEG a video compression standard for multimedia applications
  • the storage capacity for one reference frame is 5 Mbits for 50 Hz systems and 4, 1 Mbits for 60 Hz systems. To enable the decoding of both standards, 10 Mbits have therefore to be provided in the decoder for the storage of both reference frames. It must also be recalled that the reconstruction of MPEG video signals after decoding occurs in a macroblock order whereas the information to be displayed is required in an interlaced scanning line format. As the macroblocks are frame coded, the information of both fields has to be delivered during decoding, and the conversion from the frame coded macroblock format to the interlaced scanning line format requires a conversion memory, generally of 5 Mbits or 4,1 Mbits according to the system (50 Hz or 60 Hz).
  • the integrated circuit technology that is to-day available allows to implement other functionalities than video decoding, for example combinations with audio decoding and bidimensional graphics, and next generation MPEG decoders will probably include demultiplexing functions and improved processors. All these additional functions are memory demanding and their performance is determined by the amount of available memory capacity.
  • the memory requirement for 50 Hz decoding is about 13 Mbits, and can also be applied in 60 Hz decoders (about 11,1 Mbits). It is however likely that in a near future the memory requirement for MPEG decoders will strongly increase and that the 16 Mbits frontier will be exceeded even for 60 Hz systems.
  • a first object of the invention is therefore to propose another type of method for decoding coded digital video signals, in which an increased reduction of memory capacity is further obtained without noticeable picture quality degradation.
  • the invention relates to a method as defined in the preamble of the description and wherein said dependant parameter is defined according to the dynamic range value of the data of each block, said dynamic range being equal to the difference between the maximum and the minimum value of each block or to a value in direct relation with said difference.
  • the document EP 0618733 also describes a coding system including a block converter, a quantization and coding sub-system, and a control sub- assembly for modifying a quantization parameter according to some content of each block.
  • the considered content is the distribution, in each block, of the high-frequency significant coefficients obtained after a DCT (discrete ⁇ osine transform) carried out on the input video data.
  • DCT discrete ⁇ osine transform
  • Another object of the invention is to propose a coding system allowing to carry out said coding method.
  • the invention relates to a system as defined in the preamble of the description and wherein said system also comprises a third sub-assembly, for the definition of dynamic range values, and a fourth sub-assembly, for a cost computation with respect to possible quantization strategies respectively associated to said range values, followed by a selection of one of these strategies according to a cost criterion related to said cost computation.
  • Another object of the invention is to propose a decoding method allowing to decode signals that have been coded according to the above-indicated coding method.
  • the invention relates to a method of decoding digital coded video signals corresponding to the pixels of an original sequence of pictures, comprising at least a decoding step, for decoding said coded signals arranged in blocks, a reconstruction step, for deriving MPEG I, P and B data from said decoded signals, and a format conversion step, wherein said reconstruction step comprises a storing step of said decoded data and, before and after said step, an additional compression step related to the dynamic range value of the data of each block and a corresponding expansion step.
  • Another object of the invention is finally to proposed a decoding system for carrying out said decoding method.
  • the invention relates to a system for decoding digital coded video signals corresponding to the pixels of an original sequence of pictures, comprising at least in series a decoding sub-assembly, provided for decoding said coded signals arranged into blocks, an adder receiving on a first input the decoded output signals of said decoding sub-assembly, and a storing stage including two parallel reference memories, provided for the prediction of MPEG P pictures or the bidirectional interpolation of MPEG B pictures and the outputs of which are connected to second and third inputs of said adder, the ouput of said adder being also connected to the input of a conversion memory, wherein said system also comprises before said storing stage additional compression means and after said storing stage corresponding expansion means, said additional compression being related to the dynamic range value of the data of each block.
  • Figs 1 and 2 show block-based coding systems in feedback and feed forward cases respectively ;
  • FIG.3 is an illustration of a feed forward coding scheme for a compression system according to the invention ;
  • - Fig.4 shows a simplified, conventional block predictive video decoder
  • Fig.5 such a decoder in the MPEG case
  • Fig.6 a similar scheme when the invention is applied to such a video decoder
  • Fig.7 a corresponding timing diagram for a sequence of coded pictures that have to be decoded with said decoder according to the invention
  • - Figs.8 and 9 show two block organizations that are convenient in the case of a decoder according to the invention
  • Fig.10 depicts a possible arrangement of such blocks within an MPEG macroblock ;
  • - Fig.11 shows for a main level 50 Hz picture a frame based mapping of quantizer segments, and Fig.12 a field base mapping ;
  • - Figs.13 and 14 show for luminance and chrominance an example of prediction area in the MPEG case ;
  • Fig.15 gives, for every value of bit cost between 0 and 8 bits per pixel, an example of storage format for the compressed pixel data in the external memory, for a relation between pixel numbers and spatial positions in 2 x 8 ADRC blocks given by Fig.16, and Fig.17 gives an example of possible overall global format in said external memory when taking into account the additional control data that have to be also stored ;
  • Fig.18 gives an example of storage of ADRC control data in the external memory
  • Fig.19 illustrates how the invividual start addresses of the ADRC blocks are calculated for the data retrieval ;
  • Fig.20 is an illustration of possible partial accesses of ADRC blocks, provided in order to prohibit unnecessary accesses in the external memory.
  • Figs.1 and 2 depict block-based coding systems in feedback and feed forward cases respectively.
  • the incoming video data IVD are converted to blocks in a block converter (11 and 21 respectively), and the content of each block is predicted by a block predictor (12 and 22 respectively).
  • Each predicted sample is then subtracted from the corresponding input sample before prediction (in subtractors 13 and 23 respectively) and only the sample differences are quantized (in quantizers 14 and 24 respectively) and coded (in coders 15 and 25 respectively).
  • the prediction is based on previously quantized blocks (an adder 16 is provided in the feedback loop in order to reconstruct from the sample differences obtained at the output of the quantizer 14 complete samples at the input of the predictor 12).
  • the quantizer 14 yields a fixed bit rate at its output, for example 4 bits/sample instead of 8 bits at its input.
  • the prediction is based on the present set of blocks.
  • the prediction values, available at the output of the predictor 22, have therefore to be transmitted to the decoder, which knows the past only, and to this end a connection 26 is provided between the predictor 22 and the quantizing and coding sub-assembly (24,25).
  • a group of blocks is analyzed in view of a determination of the optimal quantization. Taking into account the prediction values, this analysis is done in a quantization tester 27 inserted between the output of the subtractor 23 and the sub-assembly (24,25).
  • a segment memory 28 also inserted between said subtractor 23 and sub-assembly (24,25) allows to delay the sample differences by a duration sufficient for a complete analysis of the whole current segment, in order to find a quantizer strategy yielding a fixed bitrate per segment. While reading out the stored segment, this optimal quantizer strategy is carried out. If a fixed bitrate is used, the segment memory is no longer necessary and can then be omitted. In the following only a feed forward coding system will be considered, because it gives the highest picture quality (and allows a local access to the block data).
  • a compromise may be made between the best prediction, provided by way of a sample average (SUMS(i)) for all sample indexes i within the block, and a very simple one that consists in selecting among all the samples of the block the lowest one (MINS(i)) : the prediction, efficient if the block size is not too large, is obtained by selecting and averaging the sum of the lowest sample value (or minimum MINS(i)) and the largest one (or maximum MAXS(i)).
  • the dynamic range of the sample differences that have to be coded which is defined by the maximum sample value minus the minimum one, may change from block to block.
  • the coder then adapts the quantizer as a function of this dynamic range. This technique is called Adaptive Dynamic Range Coding, or ADRC.
  • FIG.3 An illustration of a feed forward coding scheme of an ADRC compression system is shown in Fig.3.
  • the incoming video data IVD are converted to blocks in a block converter 31 , with a block geometry that may be choosen either symmetrically or asymmetrically (for instance 4 x 4, or 2 x 8, or 1 x 16, for blocks of typically 16 pixels).
  • a block predictor 33 provided at the output of the detector 32, a prediction of each block is then determined by calculating the average between said minimum and maximum values, dividing by two and rounding the result.
  • These minimum and maximum values are also sent to a dynamic range definition circuit 34 that carries out the subtraction of the maximum value with the minimum one.
  • the obtained dynamic range (for instance in 8-bit resolution if both minimum and maximum amplitudes have such a resolution) is then used for controlling the quantizer choice in the compression system, as explained hereunder (for example, when an edge is inside a block, the dynamic range is large and more coarse quantization is allowed).
  • this dynamic range parameter is divided into classes, eight in the present case. Two examples (1) and (2) of such a division are given in the following table :
  • transitions between those classes determine the compression performance and depend on the chosen prediction method (and the quantization parameter) : in the first example of the table (averaging (MINS(i) + MAXS(i))/2), the transitions co ⁇ espond to real binary numbers, while with a prediction from the block minimum (second example of the table) those transitions are at slightly different positions.
  • groups of blocks are temporarily stored in a memory 36 provided at the output of the dynamic range definition circuit 34, each group being called a segment (a typical size of a segment may be about 100 ADRC blocks of 16 samples, i.e. a few MPEG macroblocks in the case of the MPEG standard).
  • said group is analyzed in an analysis circuit 37 provided in parallel with said memory 36, in order to find an optimum quantization scheme.
  • the segment memory 36 and the analysis circuit 37 both receive the same inputs, i.e. the output of the dynamic range definition circuit 34 and the output of a subtracter 35 subtracting the output of the block predictor 33 from each sample S(i) available at the output of the block converter 31.
  • sample differences SD(ij) within one ADRC block j are then virtually quantized, that is to say one computes in the analysis circuit 37 the output bit cost when a particular quantizer would be chosen.
  • 8 different quantization strategies, all based on uniform quantizers, have been used, according to the formulas :
  • RSD(ij) QSD(i,j) x QSTEP (2) in which QSD(i,j) designates the quantized sample difference, RSD(i,j) the reconstructed sample value, and QSTEP an integer number (for instance in the present case a power of 2) giving the length of the quantizer intervals.
  • the bit cost computation can be derived from a table such as the following one, corresponding to 8 strategies in parallel :
  • the bit cost for a block is 16 times the number within the appropriate column of the above-indicated bit cost table, and the individual block costs are then accumulated to give a bit cost per segment for each of said strategies.
  • the control of the quantization is the following.
  • a second sub-assembly including the memory 36, the analysis circuit 37 and a selector 39 carries out for each group of blocks (stored in the memory 36) a cost computation with respect to each of the possible quantization strategies respectively associated to the range values (this computation being carried out in the circuit 37) and a subsequent selection (by means of the selector 39) of the strategy corresponding to the lowest computed cost. This strategy is then carried out in a quantizing and coding sub- assembly 38.
  • the quantizing part of the sub-assembly 38 is based on the above-given equations (1) and (2), about which it can be recalled that they have a linear form (adding operations, or multiplying ones with adaptive constants). Since compression and decompression steps are performed many times in case of MPEG systems, each error related to the direct coefficient (DC) should be obviously prevented in the quantization process, for examples thanks to a small sign dependent correction allowing to guarantee a fully symmetrical quantization characteristic. Finally the number of levels at the output of the quantizer is defined by a table, such as the following one (also co ⁇ esponding to the eight same strategies 0 to 7) :
  • the coding part of the sub-assembly 38 then covers the mapping of output levels of its quantizing part to a bit pattern, and the resulting data are multiplexed with other data that have to be sent to the decoding part for reconstruction (inter alia, the value of the strategy, which is transmitted once per segment).
  • the format per block contains the block prediction, the dynamic range class and the quantized differences.
  • Fig.4 shows a block diagram related to a simplified, conventional block predictive decoder.
  • the input coded data ICD, recovered (after the transmission and/or storing step of the data coded at the encoding side) from a memory (in an MPEG case, from one of the two MPEG reference memories) are sent to a data buffer 41 having the size of a few data blocks or of a segment (a group of blocks).
  • the coded data are demultiplexed in a demultiplexing circuit 42, the demultiplexed information being the quantization strategy QST, the dynamic range class DRC and the quantized sample differences QSD.
  • quantized sample differences QSD are sent to an inverse quantizer 43 in which the quantizers levels are translated, with the aid of the quantizer step size and bit cost tables, to individual sample differences, that are then added in an adder 44 to the output signals of a predictor 45 matching with that of the encoder.
  • the video samples available at the output of the adder 44 are finally converted in a format converter 46 to the required video format.
  • the block diagram of a video decoder is the following.
  • the input coded data ICD stored in an input buffer 51, are then decomposed into pixel data DPD and motion vectors MVT and decoded in a decoding sub- assembly 52.
  • the pixel data DPD available at the output of said sub-assembly are processed according to the type of the frames :
  • the decoded pixel data are added in an adder 54 to predicted data coming from one of the two reference memories (53a or 53b) of the MPEG decoder and controlled by a co ⁇ esponding motion vector MVT, and the result at the output of the adder 54 is stored in the other reference memory (53b or 53a) ;
  • the decoding sub-assembly 52 includes a variable-length decoder, an inverse quantizing circuit and an inverse discrete cosine transform circuit) and stored in one of the two reference memories 53a and 53b, no other data being in this case added to the decoded data DPD.
  • the output of the adder 54 is supplied via a conversion memory 56 to the output of the decoder, for display.
  • Fig.5 When ADRC is applied to such a video decoder, the block diagram of Fig.5 is modified as shown in Fig.6 ; all data to be stored in referenced memories (53a, 53b) are compressed in an ADRC compression circuit 66 (such an ADRC compression circuit 66 comprises circuits similar to the elements 39 and 32 to 37 as previously described in relation with the implementation of the invention at the encoding side), and all data to be retrieved from those memories are expanded in ADRC expanding circuits (67a, 67b) before any other processing takes places (such expanding circuits then carrying out the inverse operations).
  • ADRC compression circuit 66 comprises circuits similar to the elements 39 and 32 to 37 as previously described in relation with the implementation of the invention at the encoding side
  • ADRC expanding circuits 67a, 67b
  • a co ⁇ esponding timing diagram is shown in Fig.7 for a sequence of coded pictures Io, P 3 , B,, B 2 , P 6 , B 4 , B 5 , P 9 , B 7) B 8 (co ⁇ esponding to an original sequence I 0 , B,, Bj, P 3 , B 4 , B 5 , P 6 , B 7 , B g , P 9 ,..., before coding and modification of the order of the data in view of the bidirectional interpolation of B pictures).
  • This sequence of coded pictures and the decoded data are in the same order, and therefore only the second ones are shown in the first line (DECOD) of Fig.7.
  • the second line REFM1 (reference memory) designates the decoded data that are stored in one of the two reference memories (for instance 53a) : IQ, P 6 ,..., while the third line REFM2 indicates the decoded data P 3 , P ,... stored in the other one 53b.
  • the arrows between the first and second lines and between the first and third lines respectively indicate the ADRC compressions carried out in the compression circuit 66, before the storing steps in the memories 53a and 53b.
  • This compression step is followed at the output of said memories by co ⁇ esponding ADRC expansions carried out by the circuits 67a and 67b and designated by the a ⁇ ows coming either from the second line REFM1 or from the third one REFM2.
  • this memory may also be su ⁇ ounded, as schematically indicated in Fig.6, by ADRC compression and expansion circuits similar to the circuit 66 or the circuits (67a, 67b) respectively. If provided, this ADRC compression is then indicated by the a ⁇ ows arriving to the fourth line DISPM (display memory) of Fig.7, and the a ⁇ ows going from this fourth line to the fifth one DISPL (display) co ⁇ espond to the associated ADRC expansion.
  • DISPM display memory
  • Said fourth line shows the content of the display memory, in the form of successive fields obtained from the reference data I 0 , P 3 , P 0 , P 9 ,..., successively stored in the reference memories, or from the interpolated data Bi, B 2 , B 3 , B 4 , B 5 , B 6 , B,,..., and said fifth line shows the pictures Io, Bj, B 2 , P 3 , B 4 , B s , P 6 , B,,... successively displayed (in the same order as the original one) in an interlaced manner (odd, even).
  • this decoding scheme only one of the two ADRC compressions/expansions.
  • the compression circuitry for all storage actions may be used in time multiplex so that only one compression circuit is really required.
  • each ADRC step preferably operates on basis of blocks of 16 pixels, which is adapted to the 8 x 8 DCT block size observed in MPEG standard (as motion prediction and display data are retrieved on field basis in this standard, by applying the ADRC compression(s)expansion(s) on field basis, the memory access requirements are minimized).
  • two ADRC block organizations may then be proposed, as shown in Figs.8 and 9 (the pixels belonging to the difference ADRC blocks are indicated by 1, 2, 9 and 10 in accordance to an introduced sub-block numbering) : both have the same geometry but the second one is prefe ⁇ ed in the MPEG case because of the higher co ⁇ elation of horizontally adjacent pixels.
  • ADRC blocks As the decoded reference data in an MPEG decoder arrive in a macroblock order at the ADRC compression circuit, the relation between ADRC blocks and MPEG macroblocks is important : a possible arrangement of 2 x 8 ADRC blocks (indicated by ⁇ B) within a 16 x 16 MPEG macroblock showing is depicted in Fig.10 (1 x 8 ADRC blocks for each of the odd and even fields of the luminance Y, and similarly 1 x 8 ADRC blocks for the chrominance). As can be seen, 24 ADRC blocks ( ⁇ B blocks) are located in one macroblock. Other constellations are however possible within a macroblock, an important point being the need to optimize this constellation in view of a minimum access requirements in case of MPEG's motion prediction.
  • a second ADRC parameter is the segment length, since the optimal quantizing strategy is chosen in relation with it. Segments of about 100 ADRC blocks have been considered as a good choice, which implies 4 or 5 macroblocks in the MPEG case. Taking into account that all the macroblocks have to be accessible individually on basis of horizontal and vertical motion vectors, and in order to match the segment to the coded picture size, the number of segments per macroblock line will be an integer number (here, 9), as shown in Fig.11 if one chooses the quantizer segment equal to 5 macroblocks for a main level/ main profile MPEG decoder with 720 pixels per line (and therefore 45 macroblocks on one macroblock line) and a quantization performed on frame basis. In case said quantization is performed on field basis, the resulting structure is shown in Fig.12.
  • a noticeable difference between the ADRC solution in MPEG case and the conventional video systems relates to the vector controlled access for motion prediction (that takes place on macroblock basis, with a pixel or sub-pixel accuracy).
  • An example of odd field luminance prediction is given in Fig.13 (and of chrominance prediction in Fig.14).
  • ADRC blocks from four different macroblocks are required for prediction, but not all the ADRC blocks within these macroblocks are used.
  • all ADRC blocks will be individually accessible, and the number of accesses has even to be further reduced if also subsets of pixels within an ADRC block can be accessed.
  • the ADRC principle previously described operates on blocks of 16 pixels with a bit cost, after compression, comprised between 0 and 8 bits per pixel.
  • one ADRC block occupies between 0 and 8 memory words of 16 bits, and a possible mapping of pixel data onto the memory is then given in Fig.15, that indicates for all values of bit cost an example of storage format for the compressed pixel data in the external memory, while Fig.16 recalls the relation between pixel numbers and spatial positions in a 2 x 8 ADRC block.
  • a possible overall global format in said external memory is then given in Fig.17.
  • the real pixel data are separated from the control data DR and pred, since in case of variable compression rates the pixel storage area changes whereas the control data are fixed.
  • said compression ratio may be made variable, for instance between 1 and 3 which implies data packet size between 960 (no compression) and 320 memory words respectively.
  • control data Since first the control data remain fixed (while the pixel storage area changes), and also because both data DR (concerning the dynamic range) and pred (respectively 3 bits and 8 bits in the present case) do not fit to the 16 bit wide memory organization, these data are stored, as shown in Fig.17, in a separate memory area (for these control data, co ⁇ esponding to 11 bits per ADRC block, i.e to 0,7 bit/pixel, the real compression ratio is 1 ,7 instead of 2 in the given example).
  • the ADRC blocks within a quantizer segment qs should be individually accessible, for example by reading all 5 x 24 DR values, translating them to a bit cost and adding these individual bit cost values in order to find the access point for each ADRC block (this requires some memory accesses and computations and, in this case, it is obvious that DR values should be stored separate from the prediction values pred).
  • Another possibility is to calculate the start address of each individual ADRC block during compression and store these full addresses as control data in the memory (this costs 10 bits per ADRC block, or 0,6 bit/pixel). Practically an optimum has to be found between the number of memory accesses and the required storage capacity.
  • An example for the storage of ADRC control data in the 16 bit wide organized external memory is shown in Fig.18, according to a three steps approach :
  • the quantizer strategy QS that can be coded up to 4 bits ; mostly 3 bits practically
  • the start position stmb or start addresses, only coded in 3 bits
  • the start position stmbl of the first macroblock of each segment needs not to be coded since it is located at the very beginning of the data packet
  • each macroblock (MB1, MB2, MB3, MB4, MB5) is split into three groups (three groups, because often luminance data of one field and chrominance data of both fields are needed) of 8 ADRC blocks representing the information for Y-odd, Y-even (luminance) and for the chrominance, and, for each one of said group, the start address and the dynamic range class drc of the eight concerned ADRC blocks are stored in two memory words ;
  • Fig.19 allows to understand how the start addresses of the ADRC blocks are calculated.
  • the DR values drcl to drc7 are translated (in a memory rom and with the aid of the quantizer strategy QS) into a bit cost (bcl to bc7) that represents the number of memory words for the concerned ADRC block.
  • bcl to bc7 a bit cost that represents the number of memory words for the concerned ADRC block.
  • the individual bit costs each entry within the group of ADRC blocks can be found.
  • the anchor address of the 5MB large qs area has still to be added (adder 198). It may be noted that since these operations are macroblock based, the rom and adder blocks (roml to rom7 ; adders 191 to 197) can be used sequentially and need only to be implemented once.
  • ADRC blocks can be accessed partly in most cases. As shown in Fig.20, 16 partial accesses, limited to pixel pairs due to the vertical grouping of pixels within an ADRC block, are possible. The mapping of those pixels in the external memory depends on the bit cost as shown in Fig.15.

Abstract

The invention relates to a video coding method and system including a quantization and coding sub-assembly (38) in which a quantization parameter is controlled by another parameter defined as being in direct relation with the dynamic range value of the data contained in given blocks of pixels. Application: MPEG video decoders.

Description

"METHOD AND DEVICE FOR DECODING CODED DIGITAL VIDEO SIGNALS" Description
FIELD OF THE INVENTION
The present invention relates to a method of coding digital video data corresponding to the pixels of a sequence of pictures, comprising at least a block forming step, for dividing the input video data into blocks, a quantization and coding step, for quantizing data corresponding to each block and coding the quantized data, and a control step, for controlling a quantization parameter of said quantization and coding step in accordance with another parameter that depends on the content of each block.
The invention also relates, for the implementation of this method, to a system for coding digital video data corresponding to the pixels of a sequence of pictures, comprising at least a block converter, for dividing the input video data associated to one picture into blocks, a quantization and coding sub-assembly, for quantizing data corresponding to each block and coding the quantized data, and a control sub-assembly, for controlling a quantization parameter of said quantization and coding sub-assembly in accordance with a parameter that depends on the content of each block.
Such an invention may be used in the field of digital television, especially according to the MPEG standard (described for instance in the document "MPEG : a video compression standard for multimedia applications", D. Le Gall, Communications of the ACM, April 1991 , vol.34, n°4, pp.46-58) and, more generally, is of interest in the field of multimedia applications.
BACKGROUND OF THE INVENTION
Most of MPEG decoders usually comprise an external memory of 16,8 Mbits (1 Mbit = 220 bits), or even more when they have to support decoding at main level/main profile. It is known for instance that the incoming bitstream has to be stored in an input buffer (VBV-buffer), the theoretical capacity of which is equal to 1,835 Mbit. However, since a practical decoder cannot decode instantaneously, some additional buffer is required, which increases the input buffer to a capacity of about 2,5 Mbits. Moreover, in order to support a bidirectional motion compensation, the decoder must include two reference
CONFIRMATION COfY frames. The storage capacity for one reference frame is 5 Mbits for 50 Hz systems and 4, 1 Mbits for 60 Hz systems. To enable the decoding of both standards, 10 Mbits have therefore to be provided in the decoder for the storage of both reference frames. It must also be recalled that the reconstruction of MPEG video signals after decoding occurs in a macroblock order whereas the information to be displayed is required in an interlaced scanning line format. As the macroblocks are frame coded, the information of both fields has to be delivered during decoding, and the conversion from the frame coded macroblock format to the interlaced scanning line format requires a conversion memory, generally of 5 Mbits or 4,1 Mbits according to the system (50 Hz or 60 Hz). The total memory requirement then becomes equal to (2,5 + (3 x 4, 1)) = 14,8 Mbits for a 60 Hz decoder and to (2,5 + (3 x 5)) = 17,5 Mbits for a 50 Hz decoder. For this last one, the practical 16 Mbits limit is therefore exceeded.
Moreover, the integrated circuit technology that is to-day available allows to implement other functionalities than video decoding, for example combinations with audio decoding and bidimensional graphics, and next generation MPEG decoders will probably include demultiplexing functions and improved processors. All these additional functions are memory demanding and their performance is determined by the amount of available memory capacity.
In order to solve this problem, it has been added extra memory (of 4 Mbits) to the MPEG decoder, but such a solution is provisional and will be probably obsolete in a near future. More expensive 16 Mbits memories will then be added.
Another proposed solution, described in the document EP 0618722, has consisted in reducing the memory capacity for display conversion. By using the display memory in a macroblock line fashion rather than on field basis, the capacity of the display memory has been reduced from 5 Mbits to about 3,5 Mbits. The memory requirement for 50 Hz MPEG decoders then falls below the practical limit of 16 Mbits, but due to the so-called 3 : 2 pull down mode the concerned principle cannot be simply applied in 60 Hz systems. A further reduction in memory capacity, described in the documents EP 0714208 and EP 0716395, has been achieved by doubling the decoding speed in the MPEG decoder. The field lines required for display can then be directly delivered at the appropriate speed, the non required lines from the opposite field being discarded at the end of the decoding process. With this solution, the memory requirement for 50 Hz decoding is about 13 Mbits, and can also be applied in 60 Hz decoders (about 11,1 Mbits). It is however likely that in a near future the memory requirement for MPEG decoders will strongly increase and that the 16 Mbits frontier will be exceeded even for 60 Hz systems.
SUMMARY OF THE INVENTION
A first object of the invention is therefore to propose another type of method for decoding coded digital video signals, in which an increased reduction of memory capacity is further obtained without noticeable picture quality degradation.
To this end the invention relates to a method as defined in the preamble of the description and wherein said dependant parameter is defined according to the dynamic range value of the data of each block, said dynamic range being equal to the difference between the maximum and the minimum value of each block or to a value in direct relation with said difference.
It may be noted that the document EP 0618733 also describes a coding system including a block converter, a quantization and coding sub-system, and a control sub- assembly for modifying a quantization parameter according to some content of each block. However, in that document, the considered content is the distribution, in each block, of the high-frequency significant coefficients obtained after a DCT (discrete ςosine transform) carried out on the input video data. This kind of quantization control is intended to lead to a better regulation of the coded information amount, especially in video tape recorders, while the technical solution proposed according to the invention must lead to a higher compression ratio in order to reduce the needed memory capacity.
Another object of the invention is to propose a coding system allowing to carry out said coding method.
To this end the invention relates to a system as defined in the preamble of the description and wherein said system also comprises a third sub-assembly, for the definition of dynamic range values, and a fourth sub-assembly, for a cost computation with respect to possible quantization strategies respectively associated to said range values, followed by a selection of one of these strategies according to a cost criterion related to said cost computation.
Another object of the invention is to propose a decoding method allowing to decode signals that have been coded according to the above-indicated coding method.
To this end the invention relates to a method of decoding digital coded video signals corresponding to the pixels of an original sequence of pictures, comprising at least a decoding step, for decoding said coded signals arranged in blocks, a reconstruction step, for deriving MPEG I, P and B data from said decoded signals, and a format conversion step, wherein said reconstruction step comprises a storing step of said decoded data and, before and after said step, an additional compression step related to the dynamic range value of the data of each block and a corresponding expansion step.
Another object of the invention is finally to proposed a decoding system for carrying out said decoding method.
To this end the invention relates to a system for decoding digital coded video signals corresponding to the pixels of an original sequence of pictures, comprising at least in series a decoding sub-assembly, provided for decoding said coded signals arranged into blocks, an adder receiving on a first input the decoded output signals of said decoding sub-assembly, and a storing stage including two parallel reference memories, provided for the prediction of MPEG P pictures or the bidirectional interpolation of MPEG B pictures and the outputs of which are connected to second and third inputs of said adder, the ouput of said adder being also connected to the input of a conversion memory, wherein said system also comprises before said storing stage additional compression means and after said storing stage corresponding expansion means, said additional compression being related to the dynamic range value of the data of each block.
BRIEF DESCRIPTION OF THE DRAWINGS
The particularities and advantages of the invention will become more apparent from the following description and the accompanying drawings, in which :
- Figs 1 and 2 show block-based coding systems in feedback and feed forward cases respectively ;
- Fig.3 is an illustration of a feed forward coding scheme for a compression system according to the invention ;
- Fig.4 shows a simplified, conventional block predictive video decoder, Fig.5 such a decoder in the MPEG case, Fig.6 a similar scheme when the invention is applied to such a video decoder and Fig.7 a corresponding timing diagram for a sequence of coded pictures that have to be decoded with said decoder according to the invention ; - Figs.8 and 9 show two block organizations that are convenient in the case of a decoder according to the invention, and Fig.10 depicts a possible arrangement of such blocks within an MPEG macroblock ;
- Fig.11 shows for a main level 50 Hz picture a frame based mapping of quantizer segments, and Fig.12 a field base mapping ; - Figs.13 and 14 show for luminance and chrominance an example of prediction area in the MPEG case ;
- Fig.15 gives, for every value of bit cost between 0 and 8 bits per pixel, an example of storage format for the compressed pixel data in the external memory, for a relation between pixel numbers and spatial positions in 2 x 8 ADRC blocks given by Fig.16, and Fig.17 gives an example of possible overall global format in said external memory when taking into account the additional control data that have to be also stored ;
- Fig.18 gives an example of storage of ADRC control data in the external memory, and Fig.19 illustrates how the invividual start addresses of the ADRC blocks are calculated for the data retrieval ;
- Fig.20 is an illustration of possible partial accesses of ADRC blocks, provided in order to prohibit unnecessary accesses in the external memory.
DESCRIPTION OF PREFERRED EMBODIMENT
As presented above, the invention is based on a compression of the reference frame information before storage. Two examples of compression methods will be now described. As both methods are based on predictive coding, such a coding process will be first described. Figs.1 and 2 depict block-based coding systems in feedback and feed forward cases respectively. In both cases, the incoming video data IVD are converted to blocks in a block converter (11 and 21 respectively), and the content of each block is predicted by a block predictor (12 and 22 respectively). Each predicted sample is then subtracted from the corresponding input sample before prediction (in subtractors 13 and 23 respectively) and only the sample differences are quantized (in quantizers 14 and 24 respectively) and coded (in coders 15 and 25 respectively).
In the feedback case of Fig.1, the prediction is based on previously quantized blocks (an adder 16 is provided in the feedback loop in order to reconstruct from the sample differences obtained at the output of the quantizer 14 complete samples at the input of the predictor 12). The quantizer 14 yields a fixed bit rate at its output, for example 4 bits/sample instead of 8 bits at its input. In the feed forward case of Fig.2, the prediction is based on the present set of blocks. The prediction values, available at the output of the predictor 22, have therefore to be transmitted to the decoder, which knows the past only, and to this end a connection 26 is provided between the predictor 22 and the quantizing and coding sub-assembly (24,25). Prior to the final quantization and coding in this sub-assembly, a group of blocks, here called a segment, is analyzed in view of a determination of the optimal quantization. Taking into account the prediction values, this analysis is done in a quantization tester 27 inserted between the output of the subtractor 23 and the sub-assembly (24,25). A segment memory 28 also inserted between said subtractor 23 and sub-assembly (24,25) allows to delay the sample differences by a duration sufficient for a complete analysis of the whole current segment, in order to find a quantizer strategy yielding a fixed bitrate per segment. While reading out the stored segment, this optimal quantizer strategy is carried out. If a fixed bitrate is used, the segment memory is no longer necessary and can then be omitted. In the following only a feed forward coding system will be considered, because it gives the highest picture quality (and allows a local access to the block data).
For block-based prediction, several kinds of predictors are attractive because of their simplicity. In the MPEG case, a compromise may be made between the best prediction, provided by way of a sample average (SUMS(i)) for all sample indexes i within the block, and a very simple one that consists in selecting among all the samples of the block the lowest one (MINS(i)) : the prediction, efficient if the block size is not too large, is obtained by selecting and averaging the sum of the lowest sample value (or minimum MINS(i)) and the largest one (or maximum MAXS(i)). The dynamic range of the sample differences that have to be coded, which is defined by the maximum sample value minus the minimum one, may change from block to block. The coder then adapts the quantizer as a function of this dynamic range. This technique is called Adaptive Dynamic Range Coding, or ADRC.
An illustration of a feed forward coding scheme of an ADRC compression system is shown in Fig.3. The incoming video data IVD are converted to blocks in a block converter 31 , with a block geometry that may be choosen either symmetrically or asymmetrically (for instance 4 x 4, or 2 x 8, or 1 x 16, for blocks of typically 16 pixels). The converter 31 is followed by a detector 32 that selects the lowest sample value of each block (= the minimum MINS(i)) and the largest one (= the maximum MAXS(i)). In a block predictor 33 provided at the output of the detector 32, a prediction of each block is then determined by calculating the average between said minimum and maximum values, dividing by two and rounding the result. These minimum and maximum values are also sent to a dynamic range definition circuit 34 that carries out the subtraction of the maximum value with the minimum one.
The obtained dynamic range (for instance in 8-bit resolution if both minimum and maximum amplitudes have such a resolution) is then used for controlling the quantizer choice in the compression system, as explained hereunder (for example, when an edge is inside a block, the dynamic range is large and more coarse quantization is allowed). As the number of different dynamic range values is rather large and the decoding part has to know (in an expanding system corresponding to the compression system) which range was used for quantization, this dynamic range parameter is divided into classes, eight in the present case. Two examples (1) and (2) of such a division are given in the following table :
TABLE 1
Dynamic range Class number
(1) (2)
0-1 0-1 0
2-3 2-5 1
4-7 6-11 2
8-15 12-27 3
16-31 28-59 4
32-63 60-119 5
64-127 120-239 6
128-255 240-255 7
It must be noted that the transitions between those classes determine the compression performance and depend on the chosen prediction method (and the quantization parameter) : in the first example of the table (averaging (MINS(i) + MAXS(i))/2), the transitions coπespond to real binary numbers, while with a prediction from the block minimum (second example of the table) those transitions are at slightly different positions.
In order to carry out this principle according to the invention, groups of blocks are temporarily stored in a memory 36 provided at the output of the dynamic range definition circuit 34, each group being called a segment (a typical size of a segment may be about 100 ADRC blocks of 16 samples, i.e. a few MPEG macroblocks in the case of the MPEG standard). In the same time, said group is analyzed in an analysis circuit 37 provided in parallel with said memory 36, in order to find an optimum quantization scheme. The segment memory 36 and the analysis circuit 37 both receive the same inputs, i.e. the output of the dynamic range definition circuit 34 and the output of a subtracter 35 subtracting the output of the block predictor 33 from each sample S(i) available at the output of the block converter 31. The sample differences SD(ij) within one ADRC block j are then virtually quantized, that is to say one computes in the analysis circuit 37 the output bit cost when a particular quantizer would be chosen. In the present case, 8 different quantization strategies, all based on uniform quantizers, have been used, according to the formulas :
QSD(i ) = (SD(i,j)/QSTEP) + 0,5 (1)
RSD(ij) = QSD(i,j) x QSTEP (2) in which QSD(i,j) designates the quantized sample difference, RSD(i,j) the reconstructed sample value, and QSTEP an integer number (for instance in the present case a power of 2) giving the length of the quantizer intervals. The bit cost computation can be derived from a table such as the following one, corresponding to 8 strategies in parallel :
TABLE 2 Strategy bit costs
Dynamic 0 1 2 3 4 5 6 7 range class
0 1 0 0 0 0 0 0 0
1 2 1 1 0 0 0 0 0 2 3 2 2 1 1 0 0 0
3 4 3 2 2 1 1 0 0
4 5 4 3 3 2 2 1 1
5 6 5 4 4 3 2 2 1
6 7 6 5 5 4 3 3 2 7 8 7 6 6 5 4 3 3
As the memory stores a whole segment, i.e. a group of blocks, the bit cost for a block is 16 times the number within the appropriate column of the above-indicated bit cost table, and the individual block costs are then accumulated to give a bit cost per segment for each of said strategies. The control of the quantization is the following. When the first sub-assembly including the detector 32, the block predictor 33, the definition circuit 34 and the subtractor 35 has allowed to define the range values, a second sub-assembly including the memory 36, the analysis circuit 37 and a selector 39 carries out for each group of blocks (stored in the memory 36) a cost computation with respect to each of the possible quantization strategies respectively associated to the range values (this computation being carried out in the circuit 37) and a subsequent selection (by means of the selector 39) of the strategy corresponding to the lowest computed cost. This strategy is then carried out in a quantizing and coding sub- assembly 38.
The quantizing part of the sub-assembly 38 is based on the above-given equations (1) and (2), about which it can be recalled that they have a linear form (adding operations, or multiplying ones with adaptive constants). Since compression and decompression steps are performed many times in case of MPEG systems, each error related to the direct coefficient (DC) should be obviously prevented in the quantization process, for examples thanks to a small sign dependent correction allowing to guarantee a fully symmetrical quantization characteristic. Finally the number of levels at the output of the quantizer is defined by a table, such as the following one (also coπesponding to the eight same strategies 0 to 7) :
TABLE 3 Quantizer step size (dynamic range)
Dynamic 0 1 range class
0 1 2 2 4 4 4 4 4
1 1 2 2 4 4 8 8 8
2 1 2 2 4 4 8 8 8
3 1 2 4 4 8 8 8 8
4 1 2 4 4 8 8 16 16
5 1 2 4 4 8 16 16 32
6 1 2 4 4 8 16 16 32
7 1 2 4 4 8 16 32 32
An example of use of the tables can be given. For instance for class 6, first example (1) of division, and strategy 3, the dynamic range is between 64 and 127 (TABLE 1) which could cost 7 bits prior to quantization (which is then equivalent to strategy 0, according to TABLE 2). With a quantizer step of 4, the result is between 16 and 31 (TABLE 1), which requires a coding in 5 bits (TABLES 2 and 3 give QSTEP = 4 and bit cost = 5 at the location corresponding to "class 6/strategy 3"). These tables, which may require a different content depending on the nature of the signal to be compressed and the compression factor to be realized, are only examples, but the performance of the whole compression (and decompression) system is determined by them. In an MPEG decoder, they may be implemented as down loadable tables which can be adapted dynamically by the system controller.
The coding part of the sub-assembly 38 then covers the mapping of output levels of its quantizing part to a bit pattern, and the resulting data are multiplexed with other data that have to be sent to the decoding part for reconstruction (inter alia, the value of the strategy, which is transmitted once per segment). The format per block contains the block prediction, the dynamic range class and the quantized differences.
While Figs 1 to 3 were related to the encoding process, the basic principle of the invention may also be applied during the decoding process. Fig.4 shows a block diagram related to a simplified, conventional block predictive decoder. The input coded data ICD, recovered (after the transmission and/or storing step of the data coded at the encoding side) from a memory (in an MPEG case, from one of the two MPEG reference memories) are sent to a data buffer 41 having the size of a few data blocks or of a segment (a group of blocks). The coded data are demultiplexed in a demultiplexing circuit 42, the demultiplexed information being the quantization strategy QST, the dynamic range class DRC and the quantized sample differences QSD. These quantized sample differences QSD are sent to an inverse quantizer 43 in which the quantizers levels are translated, with the aid of the quantizer step size and bit cost tables, to individual sample differences, that are then added in an adder 44 to the output signals of a predictor 45 matching with that of the encoder. The video samples available at the output of the adder 44 are finally converted in a format converter 46 to the required video format.
In the MPEG case, coπesponding to Fig.5, the block diagram of a video decoder is the following. The input coded data ICD, stored in an input buffer 51, are then decomposed into pixel data DPD and motion vectors MVT and decoded in a decoding sub- assembly 52. The pixel data DPD available at the output of said sub-assembly are processed according to the type of the frames :
(a) for predictively coded frames (P frames), the decoded pixel data are added in an adder 54 to predicted data coming from one of the two reference memories (53a or 53b) of the MPEG decoder and controlled by a coπesponding motion vector MVT, and the result at the output of the adder 54 is stored in the other reference memory (53b or 53a) ;
(b) for bidirectionally interpolated frames (B frames), vector controlled predicted data from both reference memories 53a and 53b are added to the decoded pixel data DPD ; (c) for intra coded frames (I frames), the pixel data, representing full display pixels, are conventionally decoded (at this end the decoding sub-assembly 52 includes a variable-length decoder, an inverse quantizing circuit and an inverse discrete cosine transform circuit) and stored in one of the two reference memories 53a and 53b, no other data being in this case added to the decoded data DPD.
Whatever the type of frame, the output of the adder 54 is supplied via a conversion memory 56 to the output of the decoder, for display.
When ADRC is applied to such a video decoder, the block diagram of Fig.5 is modified as shown in Fig.6 ; all data to be stored in referenced memories (53a, 53b) are compressed in an ADRC compression circuit 66 (such an ADRC compression circuit 66 comprises circuits similar to the elements 39 and 32 to 37 as previously described in relation with the implementation of the invention at the encoding side), and all data to be retrieved from those memories are expanded in ADRC expanding circuits (67a, 67b) before any other processing takes places (such expanding circuits then carrying out the inverse operations). A coπesponding timing diagram is shown in Fig.7 for a sequence of coded pictures Io, P3, B,, B2, P6, B4, B5, P9, B7) B8 (coπesponding to an original sequence I0, B,, Bj, P3, B4, B5, P6, B7, Bg, P9,..., before coding and modification of the order of the data in view of the bidirectional interpolation of B pictures). This sequence of coded pictures and the decoded data are in the same order, and therefore only the second ones are shown in the first line (DECOD) of Fig.7. The second line REFM1 (reference memory) designates the decoded data that are stored in one of the two reference memories (for instance 53a) : IQ, P6,..., while the third line REFM2 indicates the decoded data P3, P ,... stored in the other one 53b. The arrows between the first and second lines and between the first and third lines respectively indicate the ADRC compressions carried out in the compression circuit 66, before the storing steps in the memories 53a and 53b. This compression step is followed at the output of said memories by coπesponding ADRC expansions carried out by the circuits 67a and 67b and designated by the aπows coming either from the second line REFM1 or from the third one REFM2. The dotted aπows coming from the first line DECOD coπespond to the B pictures interpolated thanks to the reference pictures stored in the memories 53a and 53b.
If the display conversion is performed by means of a field or frame memory, this memory may also be suπounded, as schematically indicated in Fig.6, by ADRC compression and expansion circuits similar to the circuit 66 or the circuits (67a, 67b) respectively. If provided, this ADRC compression is then indicated by the aπows arriving to the fourth line DISPM (display memory) of Fig.7, and the aπows going from this fourth line to the fifth one DISPL (display) coπespond to the associated ADRC expansion. Said fourth line shows the content of the display memory, in the form of successive fields obtained from the reference data I0, P3, P0, P9,..., successively stored in the reference memories, or from the interpolated data Bi, B2, B3, B4, B5, B6, B,,..., and said fifth line shows the pictures Io, Bj, B2, P3, B4, Bs, P6, B,,... successively displayed (in the same order as the original one) in an interlaced manner (odd, even). Obviously it is possible to implement in this decoding scheme only one of the two ADRC compressions/expansions. As can be seen from the timing diagram of Fig.7, it must be noted that the compression circuitry for all storage actions may be used in time multiplex so that only one compression circuit is really required.
In all these situations, each ADRC step preferably operates on basis of blocks of 16 pixels, which is adapted to the 8 x 8 DCT block size observed in MPEG standard (as motion prediction and display data are retrieved on field basis in this standard, by applying the ADRC compression(s)expansion(s) on field basis, the memory access requirements are minimized). Within this MPEG system, two ADRC block organizations may then be proposed, as shown in Figs.8 and 9 (the pixels belonging to the difference ADRC blocks are indicated by 1, 2, 9 and 10 in accordance to an introduced sub-block numbering) : both have the same geometry but the second one is prefeπed in the MPEG case because of the higher coπelation of horizontally adjacent pixels. Moreover, as the decoded reference data in an MPEG decoder arrive in a macroblock order at the ADRC compression circuit, the relation between ADRC blocks and MPEG macroblocks is important : a possible arrangement of 2 x 8 ADRC blocks (indicated by μB) within a 16 x 16 MPEG macroblock showing is depicted in Fig.10 (1 x 8 ADRC blocks for each of the odd and even fields of the luminance Y, and similarly 1 x 8 ADRC blocks for the chrominance). As can be seen, 24 ADRC blocks (μB blocks) are located in one macroblock. Other constellations are however possible within a macroblock, an important point being the need to optimize this constellation in view of a minimum access requirements in case of MPEG's motion prediction. A second ADRC parameter is the segment length, since the optimal quantizing strategy is chosen in relation with it. Segments of about 100 ADRC blocks have been considered as a good choice, which implies 4 or 5 macroblocks in the MPEG case. Taking into account that all the macroblocks have to be accessible individually on basis of horizontal and vertical motion vectors, and in order to match the segment to the coded picture size, the number of segments per macroblock line will be an integer number (here, 9), as shown in Fig.11 if one chooses the quantizer segment equal to 5 macroblocks for a main level/ main profile MPEG decoder with 720 pixels per line (and therefore 45 macroblocks on one macroblock line) and a quantization performed on frame basis. In case said quantization is performed on field basis, the resulting structure is shown in Fig.12.
A noticeable difference between the ADRC solution in MPEG case and the conventional video systems relates to the vector controlled access for motion prediction (that takes place on macroblock basis, with a pixel or sub-pixel accuracy). An example of odd field luminance prediction is given in Fig.13 (and of chrominance prediction in Fig.14). As can be seen, ADRC blocks from four different macroblocks are required for prediction, but not all the ADRC blocks within these macroblocks are used. In order to limit the overhead in memory access to a minimum, all ADRC blocks will be individually accessible, and the number of accesses has even to be further reduced if also subsets of pixels within an ADRC block can be accessed.
For an MPEG decoder with a by- 16 organized external memory, the ADRC principle previously described operates on blocks of 16 pixels with a bit cost, after compression, comprised between 0 and 8 bits per pixel. Thus one ADRC block occupies between 0 and 8 memory words of 16 bits, and a possible mapping of pixel data onto the memory is then given in Fig.15, that indicates for all values of bit cost an example of storage format for the compressed pixel data in the external memory, while Fig.16 recalls the relation between pixel numbers and spatial positions in a 2 x 8 ADRC block.
When taking into account the additional data that have to be also stored (besides pixel data are indeed provided some control data on dynamic range class and prediction values), a possible overall global format in said external memory, supposed to be 16 bit wide, is then given in Fig.17. As can be seen in this figure, the real pixel data are separated from the control data DR and pred, since in case of variable compression rates the pixel storage area changes whereas the control data are fixed. As also seen in Fig.17, the quantization strategy search is performed on frame basis on five consecutive macroblocks MB1 to MB5 (said search being made for quantizer segments qsl, qs2, qs3,..., qs323, qs324), and the fixed length of each data packet of five macroblocks (=5 x 24 ADRC blocks) is equal to 480 words in the described example, which implies for the real pixel data a compression ratio of 2 or a coding efficiency of 4 bits/pixel. By changing the target length of the compressed pixel data field, said compression ratio may be made variable, for instance between 1 and 3 which implies data packet size between 960 (no compression) and 320 memory words respectively.
Since first the control data remain fixed (while the pixel storage area changes), and also because both data DR (concerning the dynamic range) and pred (respectively 3 bits and 8 bits in the present case) do not fit to the 16 bit wide memory organization, these data are stored, as shown in Fig.17, in a separate memory area (for these control data, coπesponding to 11 bits per ADRC block, i.e to 0,7 bit/pixel, the real compression ratio is 1 ,7 instead of 2 in the given example). Moreover, in order to support motion compensation at a minimum access rate, the ADRC blocks within a quantizer segment qs should be individually accessible, for example by reading all 5 x 24 DR values, translating them to a bit cost and adding these individual bit cost values in order to find the access point for each ADRC block (this requires some memory accesses and computations and, in this case, it is obvious that DR values should be stored separate from the prediction values pred). Another possibility is to calculate the start address of each individual ADRC block during compression and store these full addresses as control data in the memory (this costs 10 bits per ADRC block, or 0,6 bit/pixel). Practically an optimum has to be found between the number of memory accesses and the required storage capacity. An example for the storage of ADRC control data in the 16 bit wide organized external memory is shown in Fig.18, according to a three steps approach :
(1) for each quantizer segment qsl to qs324, the quantizer strategy QS (that can be coded up to 4 bits ; mostly 3 bits practically) and the start position stmb (or start adress, only coded in 3 bits) for the macroblocks 2 to 5 are stored in one memory word (the start position stmbl of the first macroblock of each segment needs not to be coded since it is located at the very beginning of the data packet) ;
(2) each macroblock (MB1, MB2, MB3, MB4, MB5) is split into three groups (three groups, because often luminance data of one field and chrominance data of both fields are needed) of 8 ADRC blocks representing the information for Y-odd, Y-even (luminance) and for the chrominance, and, for each one of said group, the start address and the dynamic range class drc of the eight concerned ADRC blocks are stored in two memory words ;
(3) the prediction of two ADRC blocks (1,2 ; 3,4 ; 5,6 ; 7,8) are combined into one memory word, and also stored in a separate memory area (for the luminance, the predictions of two vertically adjacent ADRC blocks are combined, whereas for the chrominance the predictions of U and V of the same spatial position are combined).
For the data retrieval, Fig.19 allows to understand how the start addresses of the ADRC blocks are calculated. The DR values drcl to drc7 are translated (in a memory rom and with the aid of the quantizer strategy QS) into a bit cost (bcl to bc7) that represents the number of memory words for the concerned ADRC block. By adding (thanks to the adders 191 to 197) the individual bit costs, each entry within the group of ADRC blocks can be found. To find the absolute address, the anchor address of the 5MB large qs area has still to be added (adder 198). It may be noted that since these operations are macroblock based, the rom and adder blocks (roml to rom7 ; adders 191 to 197) can be used sequentially and need only to be implemented once.
In order to prohibit unnecessary accesses to the external memory, ADRC blocks can be accessed partly in most cases. As shown in Fig.20, 16 partial accesses, limited to pixel pairs due to the vertical grouping of pixels within an ADRC block, are possible. The mapping of those pixels in the external memory depends on the bit cost as shown in Fig.15.

Claims

CLAIMS :
1. A method of coding digital video data coπesponding to the pixels of a sequence of pictures, comprising at least a block forming step, for dividing the input video data into blocks, a quantization and coding step, for quantizing data coπesponding to each block and coding the quantized data, and a control step, for controlling a quantization parameter of said quantization and coding step in accordance with another parameter that depends on the content of each block, wherein said dependant parameter is defined according to the dynamic range value of the data of each block, said dynamic range being equal to the difference between the maximum and the minimum value of each block or to a value in direct relation with said difference.
2. A system for coding digital video data coπesponding to the pixels of a sequence of pictures, comprising at least a block converter, for dividing the input video data associated to one picture into blocks, a quantization and coding sub-assembly, for quantizing data coπesponding to each block and coding the quantized data, and a control sub-assembly, for controlling a quantization parameter of said quantization and coding sub-assembly in accordance with a parameter that depends on the content of each block, wherein said system also comprises a third sub-assembly, for the definition of dynamic range values, and a fourth sub-assembly, for a cost computation with respect to possible quantization strategies respectively associated to said range values, followed by a selection of one of these strategies according to a cost criterion related to said cost computation.
3. A coding system according to claim 2, in which said third sub-assembly comprises a detector for selecting the lowest and largest values of each block of the considered picture, a predictor, for determining for each of said blocks the average between said values, dividing it by two and rounding the result, a dynamic range definition circuit, for subtracting said maximum value with the minimum one, a subtracter, for defining the difference between the output of said predictor and each sample available at the output of the block converter, a memory, for storing the blocks by groups called segments, an analysis circuit, for computing a cost for each of said quantization strategies, and a selector, for choosing the quantization strategy coπesponding to the lowest computed cost.
4. A method of decoding digital coded video signals coπesponding to the pixels of an original sequence of pictures, comprising at least a decoding step, for decoding said coded signals aπanged in blocks, a reconstruction step, for deriving MPEG I, P and B data from said decoded signals, and a format conversion step, wherein said reconstruction step comprises a storing step of said decoded data and, before and after said step, an additional compression step related to the dynamic range value of the data of each block and a coπesponding expansion step.
5. A system for decoding digital coded video signals corresponding to the pixels of an original sequence of pictures, comprising at least in series a decoding sub-assembly, provided for decoding said coded signals arranged into blocks, an adder receiving on a first input the decoded output signals of said decoding sub-assembly, and a storing stage including two parallel reference memories, provided for the prediction of MPEG P pictures or the bidirectional interpolation of MPEG B pictures and the outputs of which are connected to second and third inputs of said adder, the ouput of said adder being also connected to the input of a conversion memory, wherein said system also comprises before said storing stage additional compression means and after said storing stage coπesponding expansion means, said additional compression being related to the dynamic range value of the data of each block.
6. A decoding system according to claim 5, wherein said additional compression means comprise a first sub-assembly, provided for the definition of said dynamic range values, and a second sub-assembly, provided for a cost computation with respect to possible quantization strategies respectively associated to said range values and a selection of one of said strategies according to a cost criterion related to said cost computation.
7. A coding system according to anyone of claims 2 and 3, wherein, each picture being subdivided into MPEG macroblocks, each macroblock comprises an integer number of ADRC blocks.
8. A decoding system according to anyone of claims 5 and 6, wherein, the decoded signals coπesponding to pictures that have been subdivided into MPEG macroblocks, each macroblock comprises an integer number of ADRC blocks.
PCT/IB1997/000639 1996-06-05 1997-06-04 Method and device for decoding coded digital video signals WO1997047139A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP97923270A EP0842585A2 (en) 1996-06-05 1997-06-04 Method and device for decoding coded digital video signals
JP10500376A JPH11510989A (en) 1996-06-05 1997-06-04 Method and apparatus for decoding an encoded digital video signal
US09/011,367 US6125146A (en) 1996-06-05 1997-06-04 Method and device for decoding coded digital video signals

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP96401202 1996-06-05
EP96401202.5 1996-06-05
EP97400410.3 1997-02-25
EP97400410 1997-02-25

Publications (2)

Publication Number Publication Date
WO1997047139A2 true WO1997047139A2 (en) 1997-12-11
WO1997047139A3 WO1997047139A3 (en) 1998-01-08

Family

ID=26144050

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB1997/000639 WO1997047139A2 (en) 1996-06-05 1997-06-04 Method and device for decoding coded digital video signals

Country Status (5)

Country Link
US (1) US6125146A (en)
EP (1) EP0842585A2 (en)
JP (1) JPH11510989A (en)
KR (1) KR19990036188A (en)
WO (1) WO1997047139A2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998026605A1 (en) * 1996-12-10 1998-06-18 Thomson Consumer Electronics, Inc. Overhead data processor in a memory efficient image processing system
WO1998027736A2 (en) * 1996-12-17 1998-06-25 Thomson Consumer Electronics, Inc. Pixel block compression apparatus in an image processing system
WO1999037096A1 (en) * 1998-01-16 1999-07-22 Sarnoff Corporation Region-based information compaction for digital images
WO2000001156A2 (en) * 1998-06-30 2000-01-06 Koninklijke Philips Electronics N.V. Method and device for gathering block statistics during inverse quantization and iscan
EP0994627A2 (en) * 1998-10-13 2000-04-19 Matsushita Electric Industrial Co., Ltd. Regulation of the computational and memory requirements of a compressed bitstream in a video decoder
WO2000064185A1 (en) * 1999-04-15 2000-10-26 Sarnoff Corporation Standard compression with dynamic range enhancement of image regions
KR100454501B1 (en) * 2001-12-26 2004-10-28 브이케이 주식회사 Apparatus for prediction to code or decode image signal and method therefor
US7457415B2 (en) 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
USRE42589E1 (en) 1998-01-16 2011-08-02 Akikaze Technologies, Llc Enhanced MPEG information distribution apparatus and method
US9294780B2 (en) 2009-12-08 2016-03-22 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by motion prediction using arbitrary partition, and method and apparatus for decoding video by motion prediction using arbitrary partition

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69737554D1 (en) * 1996-08-05 2007-05-16 Matsushita Electric Ind Co Ltd DATA TRANSMITTER, RECEIVER, PROCESSOR, DEVICE AND SYSTEM FOR MANAGING EQUIPMENT, DATA ENTRY AND RECEIVING SYSTEM AND TRANSMISSION MEDIUM
JP4240554B2 (en) * 1997-07-11 2009-03-18 ソニー株式会社 Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method
US7263127B1 (en) 1998-04-02 2007-08-28 Intel Corporation Method and apparatus for simplifying frame-based motion estimation
US6904174B1 (en) * 1998-12-11 2005-06-07 Intel Corporation Simplified predictive video encoder
US7046734B2 (en) * 1998-04-02 2006-05-16 Intel Corporation Method and apparatus for performing real-time data encoding
US6463102B1 (en) * 1998-09-11 2002-10-08 Harmonic, Inc. Digital video compressor with border processor
US6782135B1 (en) * 2000-02-18 2004-08-24 Conexant Systems, Inc. Apparatus and methods for adaptive digital video quantization
US6687304B1 (en) * 2000-04-19 2004-02-03 Koninklijke Philips Electronics N.V. Efficient video data data access using fixed ratio compression
US8374237B2 (en) * 2001-03-02 2013-02-12 Dolby Laboratories Licensing Corporation High precision encoding and decoding of video images
US8780997B2 (en) * 2005-11-18 2014-07-15 Apple Inc. Regulation of decode-side processing based on perceptual masking
US8031777B2 (en) * 2005-11-18 2011-10-04 Apple Inc. Multipass video encoding and rate control using subsampling of frames
US8233535B2 (en) 2005-11-18 2012-07-31 Apple Inc. Region-based processing of predicted pixels
US8295343B2 (en) 2005-11-18 2012-10-23 Apple Inc. Video bit rate control method
US20070116117A1 (en) * 2005-11-18 2007-05-24 Apple Computer, Inc. Controlling buffer states in video compression coding to enable editing and distributed encoding
US8654838B2 (en) * 2009-08-31 2014-02-18 Nxp B.V. System and method for video and graphic compression using multiple different compression techniques and compression error feedback
WO2015196465A1 (en) * 2014-06-27 2015-12-30 华为技术有限公司 Method for selecting public land mobile network (plmn), and apparatus and device thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5307177A (en) * 1990-11-20 1994-04-26 Matsushita Electric Industrial Co., Ltd. High-efficiency coding apparatus for compressing a digital video signal while controlling the coding bit rate of the compressed digital data so as to keep it constant
EP0618733A2 (en) * 1993-03-29 1994-10-05 Canon Kabushiki Kaisha Code amount control device and encoding apparatus using the same
US5396567A (en) * 1990-11-16 1995-03-07 Siemens Aktiengesellschaft Process for adaptive quantization for the purpose of data reduction in the transmission of digital images
EP0714208A2 (en) * 1994-11-25 1996-05-29 Koninklijke Philips Electronics N.V. Method and system for decoding coded video signals
EP0716395A1 (en) * 1994-12-07 1996-06-12 Laboratoires D'electronique Philips S.A.S. A method for decoding compressed images

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2830111B2 (en) * 1989-07-21 1998-12-02 ソニー株式会社 High efficiency coding device
US5193003A (en) * 1989-08-15 1993-03-09 Sony Corporation Apparatus for decoding digital video data with small memory requirement
EP0537322A1 (en) * 1991-04-18 1993-04-21 Eastman Kodak Company Secondary quantization of digital image signals for minimum visual distortion
FR2697706B1 (en) * 1992-11-03 1994-11-25 Thomson Csf Flow reduction method and device for recording images on a VCR.
JP3106749B2 (en) * 1992-12-10 2000-11-06 ソニー株式会社 Adaptive dynamic range coding device
US5400075A (en) * 1993-01-13 1995-03-21 Thomson Consumer Electronics, Inc. Adaptive variable length encoder/decoder
FR2703535A1 (en) * 1993-03-31 1994-10-07 Philips Electronique Lab Method and apparatus for decoding compressed images
US5734433A (en) * 1995-06-21 1998-03-31 Sony Corporation Picture encoding apparatus, picture encoding method, picture encoding and transmitting method, and picture record medium
US5774597A (en) * 1995-09-05 1998-06-30 Ge Medical Systems, Inc. Image compression and decompression using overlapped cosine transforms
JP3552811B2 (en) * 1995-09-29 2004-08-11 三菱電機株式会社 Digital video signal encoding device and decoding device
US5815206A (en) * 1996-05-03 1998-09-29 Lsi Logic Corporation Method for partitioning hardware and firmware tasks in digital audio/video decoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396567A (en) * 1990-11-16 1995-03-07 Siemens Aktiengesellschaft Process for adaptive quantization for the purpose of data reduction in the transmission of digital images
US5307177A (en) * 1990-11-20 1994-04-26 Matsushita Electric Industrial Co., Ltd. High-efficiency coding apparatus for compressing a digital video signal while controlling the coding bit rate of the compressed digital data so as to keep it constant
EP0618733A2 (en) * 1993-03-29 1994-10-05 Canon Kabushiki Kaisha Code amount control device and encoding apparatus using the same
EP0714208A2 (en) * 1994-11-25 1996-05-29 Koninklijke Philips Electronics N.V. Method and system for decoding coded video signals
EP0716395A1 (en) * 1994-12-07 1996-06-12 Laboratoires D'electronique Philips S.A.S. A method for decoding compressed images

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998026605A1 (en) * 1996-12-10 1998-06-18 Thomson Consumer Electronics, Inc. Overhead data processor in a memory efficient image processing system
US6167086A (en) * 1996-12-10 2000-12-26 Thomson Licensing S.A. Overhead data processor in a memory efficient image processing system
US6256347B1 (en) 1996-12-17 2001-07-03 Thomson Licensing S.A. Pixel block compression apparatus in an image processing system
WO1998027736A2 (en) * 1996-12-17 1998-06-25 Thomson Consumer Electronics, Inc. Pixel block compression apparatus in an image processing system
WO1998027736A3 (en) * 1996-12-17 1998-08-06 Thomson Consumer Electronics Pixel block compression apparatus in an image processing system
WO1999037096A1 (en) * 1998-01-16 1999-07-22 Sarnoff Corporation Region-based information compaction for digital images
USRE42589E1 (en) 1998-01-16 2011-08-02 Akikaze Technologies, Llc Enhanced MPEG information distribution apparatus and method
US6118820A (en) * 1998-01-16 2000-09-12 Sarnoff Corporation Region-based information compaction as for digital images
USRE43647E1 (en) 1998-03-30 2012-09-11 Akikaze Technologies, Llc Region-based information compaction as for digital images
US7403565B2 (en) 1998-03-30 2008-07-22 Akikaze Technologies, Inc. Region-based information compaction as for digital images
US6560285B1 (en) 1998-03-30 2003-05-06 Sarnoff Corporation Region-based information compaction as for digital images
WO2000001156A3 (en) * 1998-06-30 2000-04-13 Koninkl Philips Electronics Nv Method and device for gathering block statistics during inverse quantization and iscan
WO2000001156A2 (en) * 1998-06-30 2000-01-06 Koninklijke Philips Electronics N.V. Method and device for gathering block statistics during inverse quantization and iscan
US7457415B2 (en) 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
US7801306B2 (en) 1998-08-20 2010-09-21 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
US6542549B1 (en) 1998-10-13 2003-04-01 Matsushita Electric Industrial Co., Ltd. Method and model for regulating the computational and memory requirements of a compressed bitstream in a video decoder
EP0994627A3 (en) * 1998-10-13 2000-07-26 Matsushita Electric Industrial Co., Ltd. Regulation of the computational and memory requirements of a compressed bitstream in a video decoder
EP0994627A2 (en) * 1998-10-13 2000-04-19 Matsushita Electric Industrial Co., Ltd. Regulation of the computational and memory requirements of a compressed bitstream in a video decoder
JP2002542739A (en) * 1999-04-15 2002-12-10 サーノフ コーポレイション Standard compression with increased dynamic range of image area
WO2000064185A1 (en) * 1999-04-15 2000-10-26 Sarnoff Corporation Standard compression with dynamic range enhancement of image regions
KR100454501B1 (en) * 2001-12-26 2004-10-28 브이케이 주식회사 Apparatus for prediction to code or decode image signal and method therefor
US9294780B2 (en) 2009-12-08 2016-03-22 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by motion prediction using arbitrary partition, and method and apparatus for decoding video by motion prediction using arbitrary partition
US10448042B2 (en) 2009-12-08 2019-10-15 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by motion prediction using arbitrary partition, and method and apparatus for decoding video by motion prediction using arbitrary partition

Also Published As

Publication number Publication date
WO1997047139A3 (en) 1998-01-08
JPH11510989A (en) 1999-09-21
EP0842585A2 (en) 1998-05-20
KR19990036188A (en) 1999-05-25
US6125146A (en) 2000-09-26

Similar Documents

Publication Publication Date Title
US6125146A (en) Method and device for decoding coded digital video signals
CA2142150C (en) Motion compensation for interlaced digital video signals
US5838597A (en) MPEG-2 decoding with a reduced RAM requisite by ADPCM recompression before storing MPEG-2 decompressed data
US6256347B1 (en) Pixel block compression apparatus in an image processing system
US5193004A (en) Systems and methods for coding even fields of interlaced video sequences
US5731850A (en) Hybrid hierarchial/full-search MPEG encoder motion estimation
WO2000045602A1 (en) Optimal encoding scheme for motion compensated video
JP2000013799A (en) Device and method for motion compensation encoding and decoding
US5650823A (en) Half pel motion estimation method for B pictures
KR100238622B1 (en) A motion video compression system with novel adaptive quantisation
US20080123748A1 (en) Compression circuitry for generating an encoded bitstream from a plurality of video frames
US6020924A (en) Reduced memory size set top box which stores frames and associated motion vectors which indicate which block or blocks are to be retrieved from memory
US5761423A (en) Scalable picture storage access architecture for video decoding
KR20000057237A (en) Memory efficient compression apparatus and quantizer in an image processing system
KR100549208B1 (en) Overhead data processor in a memory efficient image processing system
US6108381A (en) Tree search vector quantization for compressing digital video data to be stored in buffers and MPEG decoder and SQTV processor with reduced memory requisites
US5805483A (en) Method of converting data outputting sequence in inverse DCT and circuit thereof
US6490321B1 (en) Apparatus and method of encoding/decoding moving picture using second encoder/decoder to transform predictive error signal for each field
KR20010011309A (en) Algorithm and Implementation Method of a Low-Complexity Video Encoder
US5774590A (en) Image data reproducing apparatus
KR100210384B1 (en) A quantizer
WO2001005159A1 (en) Downconverting decoder for interlaced pictures
KR19980030711A (en) Data Deformatting Circuit of Image Decoder
MXPA99005602A (en) Pixel block compression apparatus in an image processing system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP KR US

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 1997923270

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 09011367

Country of ref document: US

ENP Entry into the national phase

Ref country code: JP

Ref document number: 1998 500376

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 1019980700856

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1997923270

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019980700856

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1997923270

Country of ref document: EP

WWR Wipo information: refused in national office

Ref document number: 1019980700856

Country of ref document: KR