WO2002054779A2 - Verfahren zur header-kompression bei einer video-codierung - Google Patents

Verfahren zur header-kompression bei einer video-codierung Download PDF

Info

Publication number
WO2002054779A2
WO2002054779A2 PCT/DE2001/004938 DE0104938W WO02054779A2 WO 2002054779 A2 WO2002054779 A2 WO 2002054779A2 DE 0104938 W DE0104938 W DE 0104938W WO 02054779 A2 WO02054779 A2 WO 02054779A2
Authority
WO
WIPO (PCT)
Prior art keywords
header information
header
code word
transmitted
block
Prior art date
Application number
PCT/DE2001/004938
Other languages
English (en)
French (fr)
Other versions
WO2002054779A3 (de
Inventor
Gero Baese
Fabrice Cognot
Original Assignee
Siemens Aktiengesellschaft
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DE10143063A external-priority patent/DE10143063C2/de
Priority claimed from DE10143102A external-priority patent/DE10143102B4/de
Application filed by Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Publication of WO2002054779A2 publication Critical patent/WO2002054779A2/de
Publication of WO2002054779A3 publication Critical patent/WO2002054779A3/de

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the invention relates to a method for compressing data to be transmitted with header information by reducing the header information in a video coding.
  • header generally refers to the part of a data packet that does not contain user data, but rather various administrative data (e.g. address, packet number, sender identification, packet status, etc.).
  • Data for error detection or error correction e.g. Cyclic Redundancy Check CRC
  • CRC Cyclic Redundancy Check
  • header information is generally also transmitted in addition to the actual image information as user data. These serve on the one hand for synchronization, for example in the case of disturbed channels, and on the other hand to increase compression or the transmission of special functionalities.
  • compressed data e.g. Transfer data for decompression via the header information, without which decoding by the receiver would not be possible.
  • Header information also plays an important role in the area of data transmission over networks, in that the user data are encapsulated several times in small data packets. If, for example, the OSI reference model with its seven layers is taken as a basis, it becomes clear that the comparatively small data packet is provided with its own header information in each layer. In particular at low data rates, such header information takes up a considerable part of the available bandwidth.
  • the development of video coding already allows real-time video transmission. The quality is essentially determined by the available bandwidth. Especially with low bandwidths, however, the header information often already consumes a large part of the bandwidth.
  • the invention addresses this problem of increasingly complex header information and tries to reduce the amount of header information.
  • the object of the present invention is therefore to provide an optimized possibility for the effective coding of header information.
  • this object is achieved by a method for compressing data blocks to be transmitted with header information, all possible header elements or the most frequently occurring header elements being coded by means of a code word table, in that each of these header elements has a code word is assigned, which is transmitted instead of the actual header information, current header information being predicted on the basis of respective code words for the associated header elements and the code word length being selected in accordance with a probability of occurrence of a header element, in particular in inverse proportion to it.
  • the term "predicate” comes from source coding and decoding and is familiar to the person skilled in the art.
  • a predictor determines, for example, an estimate for the next expected signal from previous signals according to a specified rule. In the case of an adaptive predictor, this regulation is variable and depends, for example, on the previous values and other short-term characteristics of the signal.
  • a statistical evaluation of temporally preceding data blocks for re-sorting the code table is preferably carried out either on the basis of empirically determined data blocks before a transmission or dynamically during a transmission.
  • the method according to the invention can also be used advantageously for compressing the header information of video sequences if image information of a data block is divided into a plurality of macroblocks, which are separate
  • a particularly advantageous embodiment of the method according to the present invention can be used for compressing data to be transmitted from video sequences if image information of a data block is subdivided into a plurality of macroblocks which have respective header information and are encoded separately by
  • the header information of a macro block is predicted from the corresponding macro block of the previous data block, all possible transitions of a header element of a macro block of a previous data block to a corresponding macro block of a subsequent data block or the most frequently occurring transitions being coded using a code word table by assigning a code word to each of these transitions, which is transmitted instead of the actual header information, current header information being predicted on the basis of a respective code word by
  • the header information of all macroblocks of a current data block are compared with the corresponding header information of the macroblocks of a previous data block and
  • - Entropy coding is carried out by determining a respective code word table as a function of the frequency of determined differences between header information of the macro blocks of a current data block and the macro blocks of a preceding data block.
  • the concept of entropy comes from information theory and is also referred to as information content.
  • the entropy coding denotes the optimal minimum
  • Data blocks are present as a coherent header block
  • Picture / data block Since the previous picture / data block is generally known to a decoder, a coding of a current picture can take place on the basis of these assumptions, in that header elements are coded by a code word table in which a code word is assigned to each header element. The code word length is arranged according to the probability of occurrence of the respective header element, especially inversely proportional to it. The code word length thus becomes shorter on average.
  • the coding is also carried out by rearranging the code word table in
  • the method of the invention with the individual embodiments described can be implemented particularly advantageously by a device with a coding unit and with a decoding unit, each with a suitably programmed microprocessor.
  • FIG. 1 shows the hierarchical breakdown of the image data according to the H.26L standard
  • FIG. 2 shows the syntax of a resulting video data stream
  • FIG. 3 shows a prediction by averaging the header information of all or some of the surrounding other macroblocks
  • FIG. 4 shows a prediction by searching for a Macroblocks whose header information has exactly the same value as the header element of the current macroblock
  • FIG. 5 shows the principle of a code word table which supplies a code number based on header information MBtype to be encoded and the already encoded header information MBtype_n-1 of the corresponding macroblock in the previous frame
  • FIG. 7 shows the formation of a difference header block
  • Predecessor data blocks, 8 shows a schematic diagram to illustrate the 'spiral reading'
  • FIG. 9 shows a schematic diagram of the actual coding for
  • FIG 10 a concrete code word table according to the principle
  • FIG 5 for the embodiment of FIG 7 to
  • FIG 9 for the H.26L standard.
  • H.26L is a block-based video codec in which each data block with image data, a so-called frame, is split into smaller sub-blocks, so-called macro blocks MB. This results in a hierarchical structure, which is shown in the illustration in FIG. 1.
  • Each macroblock usually has a 16x16 pixel matrix, from which a corresponding chrominance block C (8x8 pixels by subsampling) and luminance block L (4x4 pixels) are derived.
  • the coding is based on the consideration that two successive images or sequences S1 ... S4 do not differ significantly and, for this reason, only the difference information is coded after the movement of the moving regions has been estimated.
  • each macro block In order to signal the coding decisions, header information is added.
  • each macro block In addition to an image header of a frame, each macro block also receives MB header information.
  • the large number of macro blocks MB per frame quickly shows how extensive the resulting header information can be.
  • 2 shows the syntax of a resulting video data stream.
  • the respective header information is shown. In particular, they denote:
  • MVD motion vector difference in order to infer the actual motion vectors from the predicted motion vectors
  • MBtype is particularly important for the further exemplary embodiment. MBtype is created for each individual macroblock MB. Depending on the value that MBtype assumes, the other header elements RefFrame, Intra_pred_mode and CBP either occur or not.
  • header elements are predicted based on spatial and / or temporal dependencies between different data blocks. This can be achieved, for example, by signaling by means of a code word that a data block type represented by the header information has not changed compared to the temporally preceding data block. In particular, this can be a 1-bit code word. This code word is transmitted instead of the actual header information and the current header information is predicted, in particular equated, from the header information of the preceding data block.
  • Another possibility is a difference coding between the current value of a current header information MBtype and the value of the corresponding macroblock MB in the preceding data block / frame.
  • a possible code table can look like this:
  • the respectively determined code word, the code number is then transmitted.
  • the value for MBtype is predicted based on the code word received.
  • the difference between the MBtype values of two adjacent macroblocks MB within the same data block / frame can be used to create a code table. In both cases, it is not absolutely necessary to code all possible difference values. If there are some very rare difference values, it is sufficient if only the frequent difference values are coded, whereas if a rare difference value occurs, the header information, ie the value for MBtype, is explicitly transmitted.
  • a code length that is as short as possible is assigned to code values associated with differential values, while correspondingly longer code words are assigned to such difference values with a low probability of occurrence.
  • a particularly effective coding is thus achieved, since on average significantly more short code words are transmitted than long code words.
  • a further reduction in the bit rate for header information can thus be achieved.
  • Forming averages This can be done, for example, by using the header information of the macro blocks surrounding or adjacent to the current macro block MB of the same frame, Frame_n 'and possibly also of the preceding frame, Frame_n-1', by one
  • Another embodiment of the invention consists in making a prediction by searching for a macroblock whose header information is exactly the same value like the header element of the current macroblock.
  • a variety of different macro blocks can be used.
  • it can be the same macro block MB_n-1 of the previous frame, which is therefore in the same position as the one currently to be coded
  • Macroblock MB the neighboring macroblocks of the current frame also come into consideration, of which the left-hand and the macroblock above and above (each with a dark background) are outlined. All these selection options have in common that the associated header information has already been transmitted or has been predicted by the recipient and is therefore known.
  • the header information of one of these other macroblocks corresponds to the header information of the macroblock MB currently to be coded. If so, it is signaled in a code word table via corresponding code numbers which of these candidates the prediction is selected by selecting the current header information equal to the header information linked by the code word.
  • the code words or code numbers are coded in such a way that the smallest possible code length is selected for the code words assigned to the most frequent selection options, while correspondingly longer code words are assigned to those candidates with a low probability of occurrence.
  • a particularly effective coding is thus achieved, since on average significantly more short code words are transmitted than long code words.
  • a further reduction in the bit rate for header information can thus be achieved.
  • experiments have shown that for the H.26L standard, above all, the header information of a corresponding macro block in a previous data block / frame often coincides. A prediction based on the assumption that the header information MBtype does not change compared to the corresponding one of the previous frame has therefore proven to be particularly promising.
  • the probability can be estimated that a macroblock with a given header information MBtype depends directly on the MBtype that this macroblock had in the previous frame,
  • a particularly advantageous embodiment of the invention therefore consists in determining a code word table which supplies a code number based on header information MBtype to be encoded and the already encoded header information MBty ⁇ e_n-1 of the corresponding macroblock in the previous frame. All possible transitions from a previous MBtype to a current MBtype are thus coded.
  • This concept is illustrated in the illustration according to FIG. 5.
  • the lines describe the possible values of the header information for MBtype__n-l, i.e. the corresponding predecessor macro block.
  • the columns describe the MBtype header information of the same macroblock in the current frame.
  • the corresponding code word CODE results at the intersection.
  • Such a code word table is provided on the transmitter side and on the receiver side.
  • the corresponding code word is selected on the transmitter side and is transmitted instead of the actual MBtype header information.
  • the receiver side based on the received code word, the inverted
  • Codeword table closed on the current value for MBtype A code word table designed in this way for use with H.26L is shown in FIG. 6, only the most frequent nine values of the 32 possible values being encoded for MBtype. It was also taken into account that the smallest possible code length is selected for the code words assigned to the most frequent transitions, while longer code words are assigned correspondingly longer code words with a low probability of occurrence.
  • the code word table is preferably created depending on the - or the previous pictures. In general, you can measure which header type (e.g. MBtype) occurs how often. In addition to temporal, spatial dependencies on the movement / movement vectors or a quantization parameter can also be taken into account.
  • header type e.g. MBtype
  • the next step can be a crucial one
  • the coding can be improved by rearranging the assignment of the code words to their meaning within the code word table using such determined dependencies. This means that shorter code words are used for more common types, which in turn leads to savings in the bit rate.
  • a successful special case consists in the MB type for the macro block to be encoded in the current picture / data block for the same macro block from the previous picture as that most likely to assume and provide with the shortest code word. It is based on the assumption that the MBtype for a certain macroblock does not change from one picture to the next. In order to complete the table, the MB types from the surrounding macro blocks in the previous image / data block can also be assumed to be the next probable.
  • a corresponding statistical evaluation consists in determining, over the entire previous picture, which MB type occurs how often. This number can depend on e.g. the movement contained in the image or the quantization used. This would make it possible to predefine the code word tables for certain quantization parameters or to determine a measure of motion for determining the code word tables to be used.
  • various other statistics can also be used. Furthermore e.g. only the immediate vicinity of the corresponding macroblock in the previous image can be viewed. It is also possible to use the frequency up to the macro block to be coded in the current picture, to only look at the immediate vicinity of the macro block, or to determine the distribution over several pictures / data blocks, frame 'of a sequence S1 ... S4.
  • the central aspect here according to the invention is that in the event that a macroblock derives its MB type from the has retained the previous image / data block, the associated header information MBtype is no longer transmitted at all.
  • the video data stream is suitably resorted by forming a so-called riority layered bitstream. This is done by each layer having a certain type of information, e.g. Header information. This ensures that the values of a header element for all macroblocks MB are transmitted together or in blocks. This opens up new possibilities for coding header information.
  • Header information e.g. Header information
  • the associated spatial redundancy can be used to: to achieve an improved order of arrangement of the header elements in the layer.
  • Header elements MBtype were read row by row in the coding on which the code word table according to FIG. 6 is based, e.g. starting from the upper left corner to the lower right corner.
  • an effective reorganization of the header elements can now be achieved. A possibility with particularly good results is presented below.
  • Blocks B_n and B_n-1 are plotted over time t and the difference header block DIFF resulting from the comparison is shown in the right-hand area of FIG. In this way, the information of the header elements can be determined that have changed compared to the previous block B_n-1.
  • Such changed values for MBtypes are entered with the current MBtype value (fields with a gray background, different grayscale represent the corresponding header values), while the fields of unchanged header elements in the differential header block DIFF remain empty (white fields, so-called holes).
  • the difference header block thus has empty fields or holes for unchanged header elements.
  • a so-called “spiral reading” is used in order to obtain as long as possible sequences of MBtype header elements that are not to be transmitted. These can in turn be encoded very effectively.
  • a transformation is carried out by reading out the differential header block DIFF in a spiral.
  • DIFF differential header block
  • This transformed data stream provides data fields and empty fields for the actual coding and has a predetermined length L, which results from the number of macroblocks per data block / frame.
  • L the length of macroblocks per data block / frame.
  • An encoded data stream with two types of information is formed, namely position values of fields and field contents. This is done particularly effectively by sending all positions followed by individual MB types.
  • FIG. 9 shows a particularly advantageous type of such coding, the position of a value being given with the last position as a reference in that the number of empty fields (unchanged MB type) between two values (changed MB type) is specified.
  • FIG. 9 shows for a data stream of length L that the position information is transmitted indirectly by specifying the number of empty fields before the next concrete value of a changed header element MBtype.
  • the exemplary values given include indefinite sizes a and b because, for reasons of space, not the entire data stream can be shown, but only its beginning and end. For this reason, no concrete values can be given in the middle area outlined by dotted fields. However, the principle is clear and is therefore: Number of empty fields associated with the subsequent or previous code number.
  • a code word table can be determined in a manner similar to that already explained in connection with FIG. 6 by forming a table which supplies a code number depending on the value MBtype of the same macroblock in the previous frame.
  • the difference here is that an MBtype can no longer be the same as in the previous frame, precisely because such MBtypes no longer are explicitly transferred (see previous explanations).
  • a code word table suitable for the embodiment described above has a somewhat different structure, which is shown as an example in FIG.
  • the assignment of the code words to their meaning can be rearranged dynamically or statistically. For example, you can in turn statistically evaluate a previous image. With the distributions obtained for the individual header elements MBtype, the code word table can then be rearranged or new ones determined in order to ensure that the smallest possible code length is chosen for the code words assigned to the most frequent transitions. This new code word table then applies to the next picture, etc.
  • Decoding can then be carried out in a particularly simple manner, which enables a particularly cost-effective implementation of decoding units.
  • the decoder creates the data field from the received data stream and locates the positions of the MBtype header elements that had changed. With this information, the difference header
  • Block DIFF can be reconstructed on the decoder side.
  • the received code numbers can now be replaced by the associated MBtype header elements.
  • the remaining fields are replaced by the MBtype header values of the previously decoded data block.
  • the complete header information is thus available on the decoder side.
  • the measures of the invention described by way of example using the header information MBtype can in principle also be applied to any other header information, in particular also to the further header information RefFrame and CBP of the H.26L standard.
  • a suitable code word table for CBP can, for example, depend statistically on the header information MBtype of a macroblock in a preceding data block.

Abstract

Zur Komprimierung von zu übertragenden Datenblöcken mit Header-Informationen werden Header-Elemente mittels einer Codeworttabelle codiert, indem jedem dieser Header-Elemente oder Übergängen zwischen zwei aufeinanderfolgenden Header-Elementen ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird. Eine aktuelle Header-Information wird anhand jeweiliger Codeworte für die zugehörigen Header-Elemente prädiziert und die Codewortlänge umgekehrt proportional zu einer Auftrittswahrscheinlichkeit eines Header-Elementes gewählt, indem die Header-Informationen aus zeitlich vorangehenden Datenblöcken statistisch ausgewertet werden und die Codeworttabelle zur Codierung des aktuellen oder eines nachfolgenden Datenblocks anhand der dabei gewonnenen Verteilungen für einzelne Header-Elemente so umsortiert wird, dass einem zuletzt statistisch nächstbedeutendsten Header-Element das nächstkürzeste Codewort zugeordnet wird.

Description

Beschreibung
Verfahren zur Header-Kompression bei einer Video-Codierung
Die Erfindung betrifft ein Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen durch Reduzierung der Header-Information bei einer Video-Codierung.
Mit dem Begriff Header wird im allgemeinen der Teil eines Datenpaketes bezeichnet, in dem keine Nutzdaten, sondern diverse Verwaltungsdaten enthalten sind (z.B. Adresse, Paketnummer, Senderkennung, Paketstatus etc.). Daten zur Fehlererkennung bzw. zur Fehlerkorrektur (z.B. Cyclic Redundancy Check CRC) werden i.A. zu den Nutzdaten gezählt.
Auch bei der Codierung von Videodaten werden in der Regel neben den eigentlichen Bildinformationen als Nutzdaten zusätzlich solche Header-Informationen übertragen. Diese dienen einerseits der Synchronisation, beispielsweise bei gestörten Kanälen, andererseits zur Erhöhung einer Kompression bzw. der Übermittlung von besonderen Funktionalitäten. Im Fall komprimierter Daten werden z.B. über die Header-Information Daten zur Dekompression übertragen, ohne die eine empfängerseitige Decodierung nicht möglich wäre.
Auch im Bereich der Datenübertragung über Netzwerke spielen Header-Informationen eine große Rolle, indem die Nutzdaten in kleinen Datenpaketen mehrfach gekappselt werden. Legt man z.B. das OSI-Referenzmodell mit seinen sieben Schichten zugrunde, so wird deutlich, dass das vergleichsweise kleine Datenpaket in jeder Schicht mit einer eigenen Header- Information versehen wird. Insbesondere bei niedrigen Datenraten nimmt solche Header-Information einen beträchtlichen Teil der zur Verfügung stehenden Bandbreite ein. Die Entwicklung der Video-Codierung erlaubt heute bereits eine Video-Übertragung in Echtzeit. Die Qualität wird im wesentlichen durch die zur Verfügung stehende Bandbreite bestimmt. Vor allem bei niedrigen Bandbreiten verbraucht jedoch auch hierbei häufig die Header-Information bereits einen großen Teil der Bandbreite.
Die Erfindung nimmt sich diesem Problem zunehmend komplexerer Header-Informationen an und versucht die Menge der Header- Informationen zu reduzieren.
In der Videocodierung ist bisher kein Verfahren bekannt, in dem eine zu übertragende Header-Information reduziert wird.
Aufgabe der vorliegenden Erfindung ist es daher, eine optimierte Möglichkeit zur wirksamen Codierung von Header- Information zu schaffen.
Gemäß der vorliegenden Erfindung wird diese Aufgabe durch ein Verfahren zur Komprimierung von zu übertragenden Datenblöcken mit Header-Informationen gelöst, wobei alle möglichen Header- Elemente oder die am häufigsten auftretenden Header-Elemente mittels einer Codeworttabelle codiert werden, indem jedem dieser Header-Elemente ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand jeweiliger Codeworte für die zugehörigen Header-Elemente pradiziert wird und wobei die Codewortlänge entsprechend einer Auftrittswahrscheinlichkeit eines Header-Elementes gewählt wird, insbesondere umgekehrt proportional dazu. Dies geschieht dadurch, dass die Header-Informationen aus zeitlich vorangehenden Datenblöcken statistisch ausgewertet werden und die Codeworttabelle zur Codierung des aktuellen oder eines nachfolgenden Datenblocks anhand der dabei gewonnenen Verteilungen für einzelne Header-Elemente so umsortiert wird, dass einem zuletzt statistisch nächstbedeutendsten Header- Element das nächstkürzeste Codewort zugeordnet wird. Der Begriff "prädizieren" stammt dabei aus der Quellcodierung und -decodierung und ist dem Fachmann geläufig. Ein Prädiktor ermittelt z.B. aus vorangegangenen Signalen nach einer festgelegten Vorschrift einen Schätzwert für das nächste erwartete Signal . Bei einem adaptiven Prädiktor ist diese Vorschrift variabel und hängt z.B. von den vorangegangenen Werten und anderen kurzzeitigen Charakteristika des Signals ab.
Eine statistische Auswertung zeitlich vorangehender Datenblöcke zur Umsortierung der Codetabelle erfolgt vorzugsweise entweder anhand empirisch ermittelter Datenblöcke vor einer Übertragung oder aber dynamisch während einer Übertragung.
Zur Komprimierung der Header-Informationen von VideoSequenzen lässt sich das erfindungsgemäße Verfahren auch vorteilhaft einsetzen, wenn Bildinformationen eines Datenblocks in eine Mehrzahl von Makroblöcken untergliedert sind, die separate
Header-Informationen aufweisen und separat codiert werden, indem die Header-Information eines Makroblocks jeweils aus dem entsprechenden Makroblock des zeitlich vorangehenden Datenblocks pradiziert wird.
Dabei hat es sich als besonders günstig erwiesen, wenn nicht der Header-Elemente selbst, sondern alle möglichen Übergänge eines Header-Elementes eines Makroblocks eines vorangehenden Datenblocks auf das entsprechende Header-Element eines entsprechenden Makroblocks eines nachfolgenden Datenblocks oder die am häufigsten auftretenden Übergänge mittels einer Codeworttabelle codiert werden, indem jedem dieser Übergänge ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird. Eine besonders vorteilhafte Ausgestaltung des Verfahrens nach der vorliegenden Erfindung lässt sich zur Komprimierung von zu übertragenden Daten von Videosequenzen einsetzen, wenn Bildinformationen eines Datenblocks in eine Mehrzahl von Makroblöcken untergliedert sind, die jeweilige Header- Informationen aufweisen und separat codiert werden, indem
- die Header-Information eines Makroblocks jeweils aus dem entsprechenden Makroblock des zeitlich vorangehenden Datenblocks pradiziert wird, wobei alle möglichen Übergänge eines Header-Elementes eines Makroblocks eines vorangehenden Datenblocks auf einen entsprechenden Makroblock eines nachfolgenden Datenblocks oder die am häufigsten auftretenden Übergänge mittels einer Codeworttabelle codiert werden, indem jedem dieser Übergänge ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird, indem
- die Header-Informationen aller Makroblöcke eines aktuellen Datenblocks mit den entsprechenden Header-Informationen der Makroblöcke eines vorangehenden Datenblocks verglichen werden und
- eine Entropiecodierung erfolgt, indem eine jeweilige Codeworttabelle in Abhängigkeit von der Häufigkeit ermittelter Differenzen zwischen Header-Informationen der Makroblöcke eines aktuellen Datenblocks mit den Makroblöcken eines vorangehenden Datenblocks ermittelt wird.
Der Begriff der Entropie stammt aus der Informationstheorie und wird auch als Informationsgehalt bezeichnet. Die Entropiecodierung bezeichnet dabei die optimale minimale
Anzahl von Bit, mit der ein mit einer bestimmten Wahrscheinlichkeit auftretendes Symbol unter dem Aspekt der Redundanzreduzierung minimal codiert werden kann. Falls aus einem Zeichenvorrat von n Symbolen das Symbol Si mit einer Wahrscheinlichkeit pi auftritt, ergibt sich die Entropie H aus : n
H = ∑ pi log2 Pi i=l
Dabei hat es sich als besonders effektiv erwiesen, wenn ein Vergleich von Header-Informationen im einzelnen realisiert wird durch
- Organisation des resultierenden Videodatenstroms derart, dass die Header-Informationen aller Makroblöcke dieses
Datenblocks als ein zusammenhängender Header-Block vorliegen,
- Vergleichen der Header-Informationen des aktuellen Header- Blocks mit denen des Header-Blocks des vorangegangenen Datenblocks und Ermitteln eines Differenz-Header-Blocks, indem im aktuellen Header-Block Felder unveränderter Header- Informationen durch Leerfelder ersetzt werden und
- Transformation des Differenz-Header-Blocks durch U ordnung der Reihenfolge der einzelnen Felder ausgehend vom Zentrum spiralförmig bis zum Rand (sog. spiral reading) .
Weiter hat es sich als besonders vorteilhaft erwiesen, wenn die Entropiecodierung im einzelnen realisiert wird durch
- Codierung des transformierten Differenz-Header-Blocks durch Angabe von jeweiligem Positionswert und Feldinhalt, wobei Leerfelder mit unveränderter Header-Information nicht übertragen werden, indem in einem resultierenden Header- Datenstrom anstelle von Leerfeldern jeweils die Anzahl solcher aufeinanderfolgender Leerfelder vor oder nach einer expliziten Header-Information angegeben wird und - Codierung des Header-Datenstroms mit Codeworten der aktuellen Codeworttabelle, indem zugeordnete Codeworte explizite Header-Informationen, die sich im Vergleich zum Vorgänger-Makroblock verändert haben, im resultierenden Header-Datenstrom ersetzen und - Umordnung der Codeworttabelle für einen folgenden
Datenblock anhand der ermittelten Vergleichsergebnisse zwischen Header-Informationen, indem die Codewortlänge stets umgekehrt proportional zu einer Auftrittswahrscheinlichkeit eines Übergangs zwischen Header-Elementen gewählt wird.
Eine Decodierung eines erfindungsgemäß komprimierten Header- Datenstroms erfolgt vorteilhaft mit den folgenden Verfahrensschritten :
- Rekonstruktion der Felder eines Differenz-Header-Blocks und Lokalisierung der Positionen von explizit übertragenen Header-Informationen, die sich im Vergleich zum Vorgänger- Makroblock verändert haben,
- Konvertierung der Feldinhalte an solchermaßen lokalisierten Positionen durch das einem Feldinhalt zugeordnete Header- Element anhand der inversen aktuellen Codeworttabelle und
- Ersetzen der übrigen Feldinhalte durch die Header- Informationen an den entsprechenden Positionen aus dem vorangegangenen Datenblock.
Es existiert also ein Zusammenhang zwischen der
Auftrittswahrscheinlichkeit eines Header-Elementes und dem Header-Element an der gleichen Stelle in einem vorhergehenden
Bild/Datenblock. Da einem Decoder in der Regel das vorhergehende Bild/Datenblock bekannt ist, kann eine Codierung eines aktuellen Bildes unter diesen Annahmen erfolgen, indem Header-Elemente durch eine Codeworttabelle codiert werden, in der jedem Header-Element ein Codewort zugeordnet ist. Die Codewortlänge ist entsprechend der Auftrittswahrscheinlichkeit des jeweiligen Header-Elementes geordnet, vor allem umgekehrt proportional dazu. Die Codewortlänge wird so im Mittel kürzer. Weiter erfolgt die Codierung durch Neuordnung der Codeworttabelle in
Abhängigkeit vom Codewort für das jeweilige Header-Element im vorangehenden Bild/Datenblock. Diese Neuordnung kann sowohl dynamisch (on the fly) erfolgen, als auch vorher statistisch ermittelt werden. Besonders effektiv lässt sich die Erfindung zur Header- Kompression für eine Videocodierung nach dem H.26L-Standard einsetzen.
Besonders vorteilhaft kann das Verfahren der Erfindung mit den einzelnen beschriebenen Ausführungsformen durch eine Vorrichtung mit einer Codiereinheit und mit einer Decodiereinheit mit jeweils geeignet programmiertem Mikroprozessor realisiert werden.
Weitere Vorteile und Details der Erfindung ergeben sich anhand der folgenden Beschreibung vorteilhafter Ausführungsbeispiele und in Verbindung mit den Figuren. Es zeigt jeweils in Prinzipdarstellung:
FIG 1 die hierarchische Untergliederung der Bilddaten gemäß dem H.26L-Standard, FIG 2 die Syntax eines resultierenden Video-Datenstroms, FIG 3 eine Prädiktion durch Mittelwertbildung der Header- Informationen aller oder einiger der umgebenden anderen Makroblöcke, FIG 4 eine Prädiktion durch Suche eines Makroblocks, dessen Header-Information genau denselben Wert aufweist, wie das Header-Element des aktuellen Makroblocks,
FIG 5 das Prinzip einer Codeworttabelle, die eine Code- Nummer liefert ausgehend von einer zu codierenden Header-Information MBtype und der bereits codierten Header-Information MBtype_n-l des entsprechenden Makroblocks in dem vorangegangenen Frame,
FIG 6 eine konkrete Codeworttabelle gemäß dem Prinzip aus
FIG 5 für den H.26L-Standard, FIG 7 die Bildung eines Differenz-Header-Blocks durch
Vergleich des aktuellen Blocks mit den Header- Elementen aller aktuellen Makroblöcke mit dem vorangehenden Block aller Makroblöcke des
Vorgänger-Datenblocks , FIG 8 eine Prinzipskizze zur Darstellung des ' spiral reading' , FIG 9 eine Prinzipskizze der eigentlichen Codierung zur
Bildung des zu übertragenden Datenstroms nach einer vorteilhaften Ausführungsform und FIG 10 eine konkrete Codeworttabelle gemäß dem Prinzip aus
FIG 5 für das Ausführungsbeispiel nach FIG 7 bis
FIG 9 für den H.26L-Standard.
Die Erfindung soll im folgenden exemplarisch anhand der Videocodierung nach dem H.26L-Standard erläutert werden. Der besseren Verständlichkeit halber wird zunächst ein kurzer Überblick über die technischen Grundlagen dieses Standards gegeben.
H.26L ist ein blockbasierter Video-Codec bei dem jeder Datenblock mit Bilddaten, ein sog. Frame, in kleinere Unterblöcke, sog. Makroblöcke MB, aufgespaltet wird. Daraus resultiert eine hierarchische Struktur, die in der Abbildung gemäß FIG 1 gezeigt ist. Jeder Makroblock besitzt in der Regel eine 16x16 Pixelmatrix, aus der jeweils ein entsprechender Chrominanzblock C (8x8 Pixel durch Subsampling) und Luminanzblock L (4x4 Pixel) abgeleitet wird.
Der Codierung liegt die Überlegung zugrunde, dass sich zwei aufeinanderfolgende Bilder bzw. Sequenzen S1...S4 nicht signifikant unterscheiden und aus diesem Grund lediglich die Differenzinformation nach einer erfolgten BewegungsSchätzung der sich bewegenden Regionen codiert wird.
Um die Codierungsentscheidungen zu signalisieren, wird Header-Information hinzugefügt. Neben einem Bild-Header eines Frames erhält auch jeder Makroblock MB Header-Information. Aus der Vielzahl der Makroblöcke MB pro Frame wird dabei schnell deutlich, wie umfangreich die daraus resultierende Header-Information werden kann. In der Darstellung gemäß FIG 2 ist die Syntax eines resultierenden Video-Datenstroms gezeigt. Dabei sind die jeweiligen Header-Informationen gezeigt. Es bezeichnen dabei im einzelnen:
- Psync: ein Bildsynchronisierungs-Codewort
- Ptype: Signalisierung, ob INTER- oder INTRA-Codierung vorliegt - MBtype: Signalisierung, auf welche Weise ein Makroblock MB codiert ist
- Intra_pred_mode : Prädiktionsinformation für den Fall, dass ein MB INTRA-codiert ist
- RefFrame: Angabe des Referenz-Frames, der für die Pradiktion des Makroblocks MB genutzt wurde
- MVD: Bewegungsvektordifferenz, um aus den prädizierten Bewegungsvektoren auf die tatsächlichen Bewegungsvektoren zu schließen
- CBP: kennzeichnet die Existenz und das Muster von Chrominanz- und Luminanz-Koeffizienten
- Tcoeff : Chrominanz- und Luminanz-Koeffizienten
Für das weitere Ausführungsbeispiel ist vor allem MBtype bedeutsam. MBtype wird für jeden einzelnen Makroblock MB gebildet. Abhängig vom Wert, den MBtype annimmt, treten die weiteren Header-Elemente RefFrame, Intra_pred_mode und CBP entweder auf oder nicht.
Im Folgenden werden nun mögliche Ausführungen zur Header- Komprimierung gezeigt.
Eine zentrale Überlegung der Erfindung besteht nun darin, dass einzelne Header-Elemente anhand von räumlichen und/oder zeitlichen Abhängigkeiten zwischen verschiedenen Datenblöcken pradiziert werden. Dies kann beispielsweise erreicht werden, indem durch ein Codewort signalisiert, dass sich ein durch die Header- Information repräsentierter Datenblocktyp im Vergleich zum zeitlich vorangehenden Datenblock nicht geändert hat. Dies kann insbesondere ein 1-Bit-Codewort sein. Dieses Codewort wird anstelle der eigentlichen Header-Information übertragen und die aktuelle Header-Information aus der Header- Information des vorangehenden Datenblocks pradiziert, insbesondere gleichgesetzt.
Eine andere Möglichkeit besteht in einer Differenz-Codierung zwischen dem aktuellen Wert einer aktuellen Header- Information MBtype und dem Wert des entsprechenden Makroblocks MB in dem vorangehenden Datenblock/Frame. Eine mögliche Codetabelle kann folgendermaßen aussehen:
Code-Nummer Differenz
0 0 1 1
2 -1
3 2
4 -2
5 3 6 -3
Anstelle des Wertes für MBtype wird dann das jeweils ermittelte Codewort, die Code-Nummer, übertragen. Decoderseitig wird anhand des empfangenen Codewortes der Wert für MBtype pradiziert.
Alternativ kann auch die Differenz der MBtype Werte zweier benachbarter Makroblöcke MB innerhalb desselben Datenblocks/Frames (vgl. FIG 1) zur Erstellung einer Codetabelle herangezogen werden. In beiden Fällen müssen nicht unbedingt alle möglichen Differenzwerte codiert werden. Wenn nämlich einige sehr seltene Differenzwerte auftreten, so reicht es aus, wenn nur die häufigen Differenzwerte codiert werden, während im Fall des Auftretens eines seltenen Differenzwertes die Header- Information, also der Wert für MBtype, explizit übertragen wird.
Besonders günstig ist es, wenn die Codeworte bzw. Code- Nummern derart codiert werden, dass für die den häufigsten
Differenzwerten zugeordneten Codeworte eine möglichst geringe Codelänge gewählt wird, während solchen Differenzwerten mit kleiner Auftrittswahrscheinlichkeit entsprechend längere Codeworte zugeordnet werden. Damit wird eine besonders effektive Codierung erreicht, da im Durchschnitt wesentlich mehr kurze Codeworte übertragen werden, als lange Codeworte. Dadurch kann somit eine weitere Reduktion der Bitrate für Header-Information erreicht werden.
Eine andere Möglichkeit besteht in einer Prädiktion durch
Bildung von Mittelwerten. Dies kann beispielsweise dadurch erfolgen, dass die Header-Informationen der den aktuellen Makroblock MB umgebenden bzw. benachbarten Makroblöcke desselben Frames ,Frame_n' sowie evtl. auch des vorangehenden Frames ,Frame_n-l' herangezogen werden, um einen
Prädiktionswert zu ermitteln. In FIG 3 ist ein solches Szenario skizziert mit Frame_n-1 (gestrichelt skizziert) und einem aktuellen Frame_n mit dem zu codierenden Makroblock MB (dunkel hinterlegt) und vier beispielhaften benachbarten Makroblöcken. Die aktuelle Header-Information von MB kann dann durch Mittelwertbildung der Header-Informationen aller oder einiger dieser umgebenden anderen Makroblöcke pradiziert werden .
Eine weitere Ausführungsform der Erfindung besteht darin, eine Prädiktion dadurch vorzunehmen, dass ein Makroblock gesucht wird, dessen Header-Information genau denselben Wert aufweist, wie das Header-Element des aktuellen Makroblocks. Dabei kann auf eine Vielzahl verschiedener anderer Makroblöcke zurückgegriffen werden.
In FIG 4 sind einige der möglichen Kandidaten gezeigt. Dies sind zum einen Makroblöcke wie ein Makroblock MB_v, auf den durch einen oder mehrere ermittelte Bewegungsvektoren verwiesen wird. Zum anderen kann es der gleiche Makroblock MB_n-l des vorangehenden Frames sein, der also an der gleichen Stelle liegt wie der aktuell zu codierende
Makroblock MB. Außerdem kommen auch noch die benachbarte Makroblöcke des aktuellen Frames in Betracht, von denen exemplarisch der linke und der darüber liegende Makroblock (jeweils dunkel hinterlegt) skizziert sind. Allen diesen Auswahlmöglichkeiten ist gemeinsam, dass die zugehörigen Header-Informationen bereits übertragen wurden bzw. e pfängerseitig pradiziert wurden und damit bekannt sind.
Bei der Codierung wird überprüft, ob die Header-Information eines dieser anderen Makroblöcke der Header-Information des aktuell zu codierenden Makroblocks MB entspricht. Wenn ja, so wird in einer Codeworttabelle über entsprechende Code-Nummern signalisiert, von welchem dieser Kandidaten die Prädiktion gewählt wird, indem die aktuelle Header-Information gleich der durch das Codewort verknüpften Header-Information gewählt wird.
Auch hierbei ist es günstig, wenn die Codeworte bzw. Code- Nummern derart codiert werden, dass für die den häufigsten Auswahlmöglichkeiten zugeordneten Codeworte eine möglichst geringe Codelänge gewählt wird, während solchen Kandidaten mit kleiner Auftrittswahrscheinlichkeit entsprechend längere Codeworte zugeordnet werden. Damit wird eine besonders effektive Codierung erreicht, da im Durchschnitt wesentlich mehr kurze Codeworte übertragen werden, als lange Codeworte. Dadurch kann somit eine weitere Reduktion der Bitrate für Header-Information erreicht werden. In diesem Zusammenhang haben Experimente gezeigt, dass für den H.26L-Standard vor allem die Header-Informationen eines entsprechenden Makroblocks in einem zeitlich vorangehenden Datenblock/Frame häufig übereinstimmt. Eine Prädiktion auf Grundlage der Annahme, dass sich die Header-Information MBtype gegenüber der entsprechenden des Vorgänger-Frames nicht ändert, hat sich also als besonders vielversprechend erwiesen.
Ausgehend von dieser Erkenntnis lässt sich die Wahrscheinlichkeit dafür schätzen, dass ein Makroblock mit einer gegebenen Header-Information MBtype direkt vom MBtype abhängt, die dieser Makroblock im vorangehenden Frame hatte,
Eine besonders vorteilhafte Ausführungsform der Erfindung besteht deshalb darin, eine Codeworttabelle zu bestimmen, die eine Code-Nummer liefert ausgehend von einer zu codierenden Header-Information MBtype und der bereits codierten Header- Information MBtyρe_n-l des entsprechenden Makroblocks in dem vorangegangenen Frame. Es werden somit alle möglichen Übergänge von einem Vorgänger-MBtype auf einen aktuellen MBtype codiert. Dieses Konzept ist in der Darstellung gemäß FIG 5 veranschaulicht. Die Zeilen beschreiben die möglichen Werte der Header-Informationen für MBtype__n-l, also des entsprechenden Vorgängermakroblocks . Die Spalten beschreiben die Header-Information MBtype des gleichen Makroblocks im aktuellen Frame. Das entsprechende Codewort CODE ergibt sich im Schnittpunkt.
Eine solche Codeworttabelle ist senderseitig und empfängerseitig vorgesehen. Senderseitig wird das entsprechende Codewort gewählt und anstelle der eigentlichen Header-Information MBtype übertragen. Empfängerseitig wird anhand des empfangenen Codeworts anhand der invertierten
Codeworttabelle auf den aktuelle Wert für MBtype geschlossen. Eine solchermaßen konzipierte Codeworttabelle ist zur Anwendung für H.26L ist in FIG 6 gezeigt, wobei nur die häufigsten neun Werte der 32 möglichen Werte für MBtype codiert sind. Dabei wurde auch berücksichtigt, dass für die den häufigsten Übergängen zugeordneten Codeworte eine möglichst geringe Codelänge gewählt wird, während solchen Übergänge mit kleiner Auftrittswahrscheinlichkeit entsprechend längere Codeworte zugeordnet werden.
In diesem Zusammenhang hat es sich auch als günstige
Alternative erwiesen, wenn eine räumliche Prädiktion der Header-Information eines Makroblocks aus ermittelten Bewegungsvektoren der Makroblöcke eines Datenblocks erfolgt, indem solche Bewegungsvektoren die Prädiktionsrichtung signalisieren.
Es kann somit festgehalten werden: die Codeworttabelle wird vorzugsweise in Abhängigkeit von dem - oder den vorangegangenen Bildern erstellt. Im Allgemeinen kann gemessen werden, welcher Header-Typ (z.B. MBtype) wie häufig vorkommt. Dabei können neben zeitlichen auch räumliche Abhängigkeiten von der Bewegung/ Bewegungsvektoren oder einem Quantisierungsparameter berücksichtigt werden.
In einem nächsten Schritt kann eine entscheidende
Verbesserung der Codierung erreicht werden, indem mit solchen ermittelten Abhängigkeiten die Zuordnung der Codeworte zu ihrer Bedeutung innerhalb der Codeworttabelle umgeordnet wird. Damit werden kürzere Codeworte für häufigere Typen angewendet, was wiederum zu einer Ersparnis in der Bitrate führt .
Wie bereits vorangehend dargestellt, besteht ein erfolgreicher Spezialfall darin, für den zu codierenden Makroblock im aktuellen Bild/Datenblock den MBtype für den gleichen Makroblock aus dem vorangegangenen Bild als den wahrscheinlichsten anzunehmen und mit dem kürzesten Codewort auszustatten. Es liegt also die Annahme zugrunde, dass sich der MBtype für einen bestimmten Macroblock von einem Bild zum nächsten nicht ändert. Um die Tabelle zu vervollständigen können auch von den umliegenden Makroblöcken im vorangegangenen Bild/ Datenblock die MBtypen als nächst wahrscheinlich angenommen werden.
Eine entsprechende statistische Auswertung besteht .darin, dass über das gesamte vorhergehende Bild ermittelt wird, welcher MBtype wie häufig vorkommt. Diese Anzahl kann abhängig sein von z.B. der im Bild enthaltenen Bewegung oder auch der verwendeten Quantisierung. Damit wäre es möglich, für bestimmte Quantisierungsparameter die Codeworttabellen vorher festzulegen oder aber ein Bewegungsmaß zur Bestimmung der zu verwendenden Codeworttabellen festzulegen.
Es können aber alternativ auch verschiedene andere Statistiken verwandt werden. Weiterhin kann z.B. nur die unmittelbare Umgebung des entsprechenden Makroblocks im vorangegangenen Bild betrachtet werden. Es ist auch möglich, im aktuellen Bild die Häufigkeit bis zum gerade zu codierenden Makroblock zu verwenden, nur die unmittelbare Umgebung des Makroblocks zu betrachten, oder über mehrere Bilder/Datenblöcke , Frame ' einer Sequenz S1...S4 die Verteilung zu ermitteln.
Grundsätzlich kann eine weitere Verbesserung erreicht werden, wenn z.B. sog. , Streaming' zugrunde gelegt wird. Es wird erst das ganze Bild codiert, bevor es gesendet wird. Es entstehen damit andere Codeworttabellen als die in FIG 6 gezeigte. Diese Ausführungsmöglichkeit soll im Folgenden ebenfalls anhand des bereits bekannten H.26L-Standards beschrieben werden .
Zentraler Aspekt hierbei ist gemäß der Erfindung, dass für den Fall, dass ein Makroblock seinen MBtype aus dem vorangegangenen Bild/Datenblock beibehalten hat, die zugehörige Header-Information MBtype überhaupt nicht mehr übertragen wird.
Dazu wird der Videodatenstrom geeignet umsortiert, indem ein sog. , riority layered bitstream' gebildet wird. Dies erfolgt, indem jedes Layer einen bestimmten Typ von Information aufweist, also z.B. Header-Informationen. Damit wird erreicht, dass die Werte eines Header-Elementes für ale Makroblöcke MB gemeinsam bzw. blockweise übertragen werden. Dadurch ergeben sich neue Möglichkeiten einer Codierung von Header-Informationen.
Aufbauend auf der Erkenntnis, dass abhängig von der Art einer Videosequenz in der Regel zwischen 36% und 69% der Header- Information MBtype gegenüber der Header-Information des gleichen Makroblocks im vorangehenden Frame unverändert bleibt, lässt sich die damit verbundene räumliche Redundanz dazu verwenden, eine verbesserte Reihenfolge einer Anordnung der Header-Elemente im Layer zu erreichen.
In der der Codeworttabelle nach FIG 6 zugrunde liegenden Codierung wurden Header-Elemente MBtype Reihe für Reihe gelesen, z.B. ausgehend von der linken oberen Ecke bis zur unteren rechten Ecke. Nunmehr lässt sich jedoch eine effektive Umorganisation der Header-Elemente erreichen. Im Folgenden wird eine Möglichkeit mit besonders guten Ergebnissen dargestellt.
Zunächst wird der aktuelle Block/Layer B_n mit den Header-
Elementen aller aktuellen Makroblöcke mit dem vorangehenden Block/Layer B_n-1 aller Makroblöcke des Vorgänger-Datenblocks verglichen. Die Vorgehensweise ist in FIG 7 skizziert. Es sind Blöcke B_n und B_n-1 über die Zeit t aufgetragen und im rechten Bereich von FIG 7 ist der aus dem Vergleich resultierende Differenz-Header-Block DIFF gezeigt. Auf diese Weise kann die Information der Header-Elemente ermittelt werden, die sich im Vergleich zum Vorgängerblock B_n-1 geändert haben. Solche veränderte Werte für MBtypes sind mit dem jeweils aktuellen MBtype-Wert eingetragen (grau hinterlegte Felder, wobei verschiedene Graustufen für entsprechende Header-Werte stehen) , während die Felder unveränderter Header-Elemente im Differenz-Header-Block DIFF leer bleiben (weiße Felder, sog. holes) . Der Differenz- Header-Block weist somit Leerfelder bzw. holes für unveränderte Header-Elemente auf .
Im nächsten Verarbeitungsschritt wird ein sog. "spiral reading" angewandt, um möglichst lange Folgen von nicht zu übertragenen Header-Elementen MBtype zu erhalten. Diese lassen sich wiederum sehr effektiv codieren.
Dazu erfolgt eine Transformation durch spiralförmiges Auslesen des Differenz-Header-Blocks DIFF. Indem man ausgehend von der Mitte spiralförmig bis zum Rand von DIFF ausliest, wird nur die Reihenfolge der Felder von DIFF manipuliert, ohne dass Werte verändert werden. Unter der
Annahme, dass die wichtigste Bildinformation in der Mitte eines Frames angesiedelt ist und dort auch die meisten Bewegungen der Bildinformation erfolgen, wird dadurch erreicht, dass der resultierende Datenstrom die wichtigste Information zuerst aufweist und zusätzlich möglichst lange
Folgen von Leerfeldern entstehen, die sich besonders effektiv codieren lassen. Diese Vorgehensweise ist in der Darstellung gemäß FIG 8 skizziert, wobei durch Pfeile das , spiral reading' des Differenz-Header-Blocks DIFF gezeigt ist und im rechten Figurenbereich der daraus resultierende transformierte Datenstrom angedeutet ist.
Dieser transformierte Datenstrom stellt zur eigentlichen Codierung Datenfelder und Leerfelder zur Verfügung und besitzt eine vorgegebene Länge L, die sich aus der Anzahl von Makroblöcken pro Datenblock/Frame ergibt. Ziel ist es nun, diese Daten zu übertragen, wobei aufgrund der Leerfeider folgende Vorgehensweise gewählt wird. Es wird ein codierter Datenstrom mit zwei Arten von Informationen gebildet, nämlich Positionswerten von Feldern und Feldinhalten. Besonders effektiv erfolgt dies, indem alle Positionen gefolgt von einzelnen MBtypes gesendet werden. Die FIG 9 zeigt eine besonders vorteilhafte Art einer solchen Codierung, wobei die Position eines Wertes jeweils mit der letzten Position als Referenz angegeben wird, indem die Anzahl von Leerfeldern (unveränderter MBtype) zwischen zwei Werten (veränderter MBtype) angegeben wird.
In FIG 9 ist für einen Datenstrom der Länge L gezeigt, dass die Positionsinformationen indirekt durch Angabe der Anzahl von Leerfeldern vor dem nächsten konkreten Wert eines veränderten Header-Elementes MBtype übertragen wird. Die angegebenen beispielhaften Werte weisen u.a. unbestimmte Größen a und b auf, weil aus Platzgründen nicht der gesamte Datenstrom gezeigt werden kann, sondern nur dessen Anfang und Ende. Aus diesem Grund können in dem durch punktierte Felder skizzierten mittleren Bereich auch keine konkreten Werte angegeben wird. Das Prinzip wird jedoch deutlich und lautet somit: Anzahl an Leerfeldern assoziiert mit der nachfolgenden oder vorangehenden Code-Nummer .
Daran wird bereits deutlich, dass die konkret zu übertragenden Werte von veränderten Header-Elementen wiederum über eine entsprechende Codeworttabelle codiert werden können und die entsprechend zugehörigen Codenummern übertragen werden .
Eine Codeworttabelle kann auf ähnliche Weise wie bereits in Verbindung mit FIG 6 erläutert bestimmt werden, indem eine Tabelle gebildet wird, die eine Code-Nummer in Abhängigkeit vom Wert MBtype des gleichen Makroblocks im vorangehenden Frame liefert. Der Unterschied ist hier jedoch, dass nunmehr ein MBtype nicht mehr der gleiche sein kann wie im vorangehenden Frame, eben weil solche MBtypes nicht mehr explizit übertragen werden (vgl. vorangehende Erläuterungen). Aus diesem Grund weist eine für die vorangehend beschriebene Ausführungsform geeignete Codeworttabelle eine etwas andere Struktur auf, die in FIG 10 beispielhaft abgebildet ist.
In dem in FIG 10 gezeigten Beispiel sind wiederum nur die häufigsten neun Werte der 32 möglichen Werte für MBtype codiert. Dabei wurde auch berücksichtigt, dass für die den häufigsten Übergängen zugeordneten Codeworte eine möglichst geringe Codelänge gewählt wird, während solchen Übergänge mit kleiner Auftrittswahrscheinlichkeit entsprechend längere Codeworte zugeordnet werden.
Auch hier kann die Zuordnung der Codeworte zu ihrer Bedeutung dynamisch oder statistisch umgeordnet werden. Z.B. kann man wiederum ein zeitlich vorangegangenes Bild insgesamt statistisch auswerten. Mit den gewonnenen Verteilungen für die einzelnen Header-Elemente MBtype kann dann die Codeworttabelle umsortiert bzw. neue bestimmt werden, um zu gewährleisten, dass für die den häufigsten Übergängen zugeordneten Codeworte eine möglichst geringe Codelänge gewählt wird. Diese neue Codeworttabelle gilt dann für das nächste Bild usw..
Eine Decodierung kann dann auf besonders einfache Weise erfolgen, was eine besonders kostengünstige Ausführung von Decodiereinheiten ermöglicht. Der Decoder erstellt das Datenfeld aus dem empfangenen Datenstrom und lokalisiert die Positionen der Header-Elemente MBtype, die sich verändert hatten. Mit diesen Informationen kann der Differenz-Header-
Block DIFF decoderseitig rekonstruiert werden. Anhand der inversen Codeworttabelle können nun die empfangenen Code- Nummern durch die zugehörigen Header-Elemente MBtype ersetzt werden. Schließlich werden noch die übrigen Felder durch die Header-Werte MBtype des vorangegangen decodierten Datenblocks ersetzt. Damit liegt decoderseitig die vollständige Header- Information vor. Die gleiche Vorgehensweise ist auch für die anderen geschilderten Kandidaten zur Prädiktion geeignet. Ebenso lassen sich die exemplarisch anhand der Header-Information MBtype beschriebenen Maßnahmen der Erfindung vom Prinzip her auch auf beliebige andere Header-Informationen anwenden, insbesondere auch auf die weiteren Header-Informationen RefFrame und CBP des H.26L-Standards . Eine geeignete Codeworttabelle für CBP kann beispielsweise von den Header- Informationen MBtype eines Makroblocks in einem vorangehenden Datenblock statistisch abhängen.

Claims

Patentansprüche
1. Verfahren zur Komprimierung von zu übertragenden Datenblöcken mit Header-Informationen, wobei alle möglichen Header-Elemente oder die am häufigsten auftretenden Header- Elemente mittels einer Codeworttabelle codiert werden, indem jedem dieser Header-Elemente ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand jeweiliger Codeworte für die zugehörigen Header-Elemente pradiziert wird und wobei die Codewortlänge umgekehrt proportional zu einer Auftrittswahrscheinlichkeit eines Header-Elementes gewählt wird, indem die Header-Informationen aus zeitlich vorangehenden Datenblöcken statistisch ausgewertet werden und die Codeworttabelle zur Codierung des aktuellen oder eines nachfolgenden Datenblocks anhand der dabei gewonnenen Verteilungen für einzelne Header-Elemente so umsortiert wird, dass einem zuletzt statistisch nächstbedeutendsten Header-Element das nächstkürzeste Codewort zugeordnet wird.
2. Verfahren zur Komprimierung von zu übertragenden Datenblöcken mit Header-Informationen, wobei eine statistische Auswertung zeitlich vorangehender Datenblöcke zur Umsortierung der Codetabelle anhand empirischer ermittelter Datenblöcke vor einer Übertragung erfolgt.
3. Verfahren zur Komprimierung von zu übertragenden Datenblöcken mit Header-Informationen, wobei eine statistische Auswertung zeitlich vorangehender Datenblöcke zur Umsortierung der Codetabelle dynamisch während einer Übertragung erfolgt .
4. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach einem der vorangehenden Ansprüche, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die separate Header-Informationen (MBtype) aufweisen und separat codiert werden, indem die Header-Information eines Makroblocks jeweils aus dem entsprechenden Makroblock des zeitlich vorangehenden Datenblocks (Frame_n-1) pradiziert wird.
5. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 4, wobei anstelle der Header-Elemente selbst alle möglichen Übergänge eines Header- Elementes eines Makroblocks (MBtype_n-l) eines vorangehenden Datenblocks (Frame_n-1) auf einen entsprechenden Makroblock (MB) eines nachfolgenden Datenblocks (Frame_n) oder die am häufigsten auftretenden Übergänge mittels einer Codeworttabelle codiert werden, indem jedem dieser Übergänge ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
6. Verfahren zur Komprimierung von zu übertragenden Daten von
Videosequenzen (S1...S4), insbesondere nach einem der Ansprüche 1 bis 3, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die jeweilige Header-Informationen (MBtype) aufweisen und separat codiert werden, indem
- die Header-Information eines Makroblocks jeweils aus dem entsprechenden Makroblock des zeitlich vorangehenden Datenblocks (Frame_n-1) pradiziert wird, wobei alle möglichen Übergänge eines Header-Elementes (MBtype_n-l) eines Makroblocks eines vorangehenden Datenblocks (Frame_n-1) auf einen entsprechenden Makroblock (MB) eines nachfolgenden Datenblocks (Frame_n) oder die am häufigsten auftretenden Übergänge mittels einer Codeworttabelle codiert werden, indem jedem dieser Übergänge ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-In ormation anhand eines jeweiligen Codewortes pradiziert wird, indem - die Header-Informationen (MBtype) aller Makroblöcke (MB) eines aktuellen Datenblocks (Frame) mit den entsprechenden Header-Informationen der Makroblöcke eines vorangehenden Datenblocks (Frame_n-1) verglichen werden und - eine Entropiecodierung erfolgt, indem eine jeweilige Codeworttabelle in Abhängigkeit von der Häufigkeit ermittelter Differenzen zwischen Header-Informationen (MBtype) der Makroblöcke (MB) eines aktuellen Datenblocks (Frame) mit den Makroblöcken eines vorangehenden Datenblocks (Frame_n-1) ermittelt wird.
7. Verfahren zur Komprimierung von zu übertragenden Daten von Videosequenzen (S1...S4) nach Anspruch 6, wobei ein Vergleich von Header-Informationen im einzelnen realisiert wird durch - Organisation des resultierenden Videodatenstroms derart, dass die Header-Informationen aller Makroblöcke dieses Datenblocks als ein zusammenhängender Header-Block (B_n) vorliegen,
- Vergleichen der Header-Informationen des aktuellen Header- Blocks (B_n) mit denen des Header-Blocks (B_n-1) des vorangegangenen Datenblocks und Ermitteln eines Differenz- Header-Blocks (DIFF) , indem im aktuellen Header-Block (B_n) Felder unveränderter Header-Informationen durch Leerfeider (holes) ersetzt werden und - Transformation des Differenz-Header-Blocks (DIFF) durch
Umordnung der Reihenfolge der einzelnen Felder ausgehend vom Zentrum spiralförmig bis zum Rand.
8. Verf hren zur Komprimierung von zu übertragenden Daten von VideoSequenzen (S1...S4) nach Anspruch 7, wobei die
Entropiecodierung im einzelnen realisiert wird durch
- Codierung des transformierten Differenz-Header-Blocks (DIFF) durch Angabe von jeweiligem Positionswert und
Feldinhalt, wobei Leerfelder mit unveränderter Header- Information (holes) nicht übertragen werden, indem in einem resultierenden Header-Datenstrom anstelle von Leerfeldern (holes) jeweils die Anzahl solcher aufeinanderfolgender Leerfelder vor oder nach einer expliziten Header-Information angegeben wird und
- Codierung des Header-Datenstroms mit Codeworten der aktuellen Codeworttabelle, indem zugeordnete Codeworte explizite Header-Informationen, die sich im Vergleich zum Vorgänger-Makroblock verändert haben, im resultierenden Header-Datenstrom ersetzen und
- Umordnung der Codeworttabelle für einen folgenden Datenblock anhand der ermittelten Vergleichsergebnisse zwischen Header-Informationen, indem die Codewortlänge stets umgekehrt proportional zu einer Auftrittswahrscheinlichkeit eines Übergangs zwischen Header-Elementen gewählt wird.
9. Verfahren zur Decodierung eines gemäß Anspruch 7 komprimierten Header-Datenstroms mit den folgenden
Verfahrensschritten:
- Rekonstruktion der Felder eines Differenz-Header-Blocks und Lokalisierung der Positionen von explizit übertragenen Header-Informationen, die sich im Vergleich zum Vorgänger- Makroblock verändert haben,
- Konvertierung der Feldinhalte an solchermaßen lokalisierten Positionen durch das einem Feldinhalt zugeordnete Header- Element anhand der inversen aktuellen Codeworttabelle und
- Ersetzen der übrigen Feldinhalte durch die Header- Informationen an den entsprechenden Positionen aus dem vorangegangenen Datenblock.
10. Verwendung des Verfahren nach einem der vorangehenden Ansprüche zur Header-Kompression für eine Videocodierung nach dem H.26L-Standard.
11. Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9 mit einer Codiereinheit und/oder mit einer Decodiereinheit mit jeweils geeignet programmiertem Mikroprozessor.
12. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen, indem einzelne Header-Elemente anhand von räumlichen und/oder zeitlichen Abhängigkeiten zwischen verschiedenen Datenblöcken pradiziert werden.
13. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 12, wobei durch ein Codewort signalisiert wird, dass sich ein durch die Header- Information repäsentierter Datenblocktyp im Vergleich zum zeitlich vorangehenden Datenblock nicht geändert hat, so dass dieses Codewort anstelle der eigentlichen Header-Information übertragen wird und die aktuelle Header-Information aus der Header-Information des vorangehenden Datenblocks pradiziert wird, insbesondere gleichgesetzt wird.
14. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 12, wobei alle möglichen Header-Informationen oder die am häufigsten auftretenden Header-Informationen mittels einer Codeworttabelle codiert werden, indem jeder dieser Header-
Informationen ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei die Codewortlänge entsprechend der Auftrittswahrscheinlichkeit einer Header-Information, insbesondere umgekehrt proportional zur Auftrittswahrscheinlichkeit, gewählt wird und wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
15. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 12 oder 13, wobei alle möglichen Übergänge von Header-Informationen eines vorangehenden Datenblocks auf einen nachfolgenden Datenblock oder die am häufigsten auftretenden Übergänge mittels einer Codeworttabelle codiert werden, indem jedem dieser Übergänge ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
16. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 15, wobei die
Codewortlänge entsprechend der Auftrittswahrscheinlichkeit eines Übergangs, insbesondere umgekehrt proportional zur Auftrittswahrscheinlichkeit, gewählt wird.
17. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 12 oder 13, wobei Header-Informationen mittels einer Codeworttabelle codiert werden, indem jeder möglichen Differenz zwischen Header- Informationen aufeinanderfolgender Datenblöcke oder den am häufigsten auftretenden Differenzen ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
18. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach Anspruch 12 oder 13, wobei Header-Informationen mittels einer Codeworttabelle codiert werden, indem jeder möglichen Differenz zwischen Header-Informationen benachbarter Makroblöcke innerhalb desselben Datenblocks oder den am häufigsten auftretenden Differenzen ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
19. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 17 oder 18, wobei die Codewortlänge entsprechend der Auftrittswahrscheinlichkeit eines Übergangs, insbesondere umgekehrt proportional zur Auftrittswahrscheinlichkeit, gewählt wird.
20. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach einem der vorangehenden Ansprüche, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die separate Header-Informationen (MBtype) aufweisen und separat codiert werden, indem die Header-Information eines Makroblocks jeweils aus dem entsprechenden Makroblock des zeitlich vorangehenden Datenblocks (Frame_n-1) pradiziert wird.
21. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach Anspruch 12, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die separate Header-Informationen (MBtype) aufweisen und separat codiert werden, indem eine räumliche Prädiktion der Header- Information eines Makroblocks aus ermittelten Bewegungsvektoren der Makroblöcke eines Datenblocks erfolgt, indem solche Bewegungsvektoren die Prädiktionsrichtung signalisieren.
22. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach Anspruch 12 oder 21, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die separate Header-Informationen (MBtype) aufweisen und separat codiert werden, indem eine räumliche Prädiktion der Header-Information eines Makroblocks aus der oder den Header- Informationen benachbarter Makroblöcke innerhalb desselben Datenblocks erfolgt.
23. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen von Videosequenzen nach Anspruch 13, 18, 19 und 20, wobei Bildinformationen eines Datenblocks (Frame_n) in eine Mehrzahl von Makroblöcken (MB) untergliedert sind, die separate Header-Informationen (MBtype) aufweisen und separat codiert werden, indem mittels einer Codeworttabelle codiert wird, ob eine Prädiktion anhand der Header-Information eines zeitlichen vorangehenden Makroblocks oder eines räumlich benachbarten Makroblocks oder eines Bewegungsvektors erfolgt, indem jeder dieser Auswahlmöglichkeiten ein Codewort zugeordnet wird, das anstelle der eigentlichen Header-Information übertragen wird, wobei eine aktuelle Header-Information anhand eines jeweiligen Codewortes pradiziert wird.
24. Verfahren zur Komprimierung von zu übertragenden Daten mit Header-Informationen nach Anspruch 23, wobei die Codewortlänge entsprechend der Auftrittswahrscheinlichkeit eines Übergangs, insbesondere umgekehrt proportional zur Auftrittswahrscheinlichkeit, gewählt wird.
25. Verwendung des Verfahren nach einem der vorangehenden Ansprüche zur Header-Kompression für eine Videocodierung nach dem H.26L-Standard.
26. Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 12 bis 24 mit einer Codiereinheit und/oder mit einer Decodiereinheit mit jeweils geeignet programmiertem Mikroprozessor.
PCT/DE2001/004938 2001-01-08 2001-12-28 Verfahren zur header-kompression bei einer video-codierung WO2002054779A2 (de)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
DE10100435.4 2001-01-08
DE10100436 2001-01-08
DE10100436.2 2001-01-08
DE10100435 2001-01-08
DE10143063A DE10143063C2 (de) 2001-01-08 2001-09-03 Verfahren zur Reduzierung von Header-Information
DE10143063.9 2001-09-03
DE10143102A DE10143102B4 (de) 2001-01-08 2001-09-03 Verfahren zur Header-Kompression bei einer Video-Codierung
DE10143102.3 2001-09-03

Publications (2)

Publication Number Publication Date
WO2002054779A2 true WO2002054779A2 (de) 2002-07-11
WO2002054779A3 WO2002054779A3 (de) 2002-12-12

Family

ID=27437920

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2001/004938 WO2002054779A2 (de) 2001-01-08 2001-12-28 Verfahren zur header-kompression bei einer video-codierung

Country Status (1)

Country Link
WO (1) WO2002054779A2 (de)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1553782A3 (de) * 2002-05-28 2005-07-27 Sharp Kabushiki Kaisha Verfahren und Systeme zur Intraprädiktions-Modusschätzung von Bildern, Kommunikation und Organisation
US7236524B2 (en) 2002-05-28 2007-06-26 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode communication
US7289672B2 (en) 2002-05-28 2007-10-30 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode estimation
US7386048B2 (en) 2002-05-28 2008-06-10 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode organization
EP1954060A1 (de) * 2005-10-19 2008-08-06 NTT DoCoMo, Inc. Bildprädiktionscodierungseinrichtung, bildprädiktionsdecodierungseinrichtung, bildprädiktionscodierungsverfahren, bildprädiktionsdecodierungsverfahren, bildprädiktionscodierungsprogramm und bildprädiktionsdecodierungsprogramm
EP2105027A1 (de) * 2007-01-18 2009-09-30 Samsung Electronics Co., Ltd. Verfahren und vorrichtung zur kodierung und dekodierung auf grundlage von intraprädiktion
EP2661085A3 (de) * 2009-12-16 2013-11-20 Electronics and Telecommunications Research Institute Adaptive Bildcodierungsvorrichtung und Verfahren
US10237565B2 (en) 2011-08-01 2019-03-19 Qualcomm Incorporated Coding parameter sets for various dimensions in video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293379A (en) * 1991-04-22 1994-03-08 Gandalf Technologies, Inc. Packet-based data compression method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293379A (en) * 1991-04-22 1994-03-08 Gandalf Technologies, Inc. Packet-based data compression method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"SESSION HEADER COMPRESSION SCHEME USING DIFFERENTIAL RUN-LENGTH ENCODING" IBM TECHNICAL DISCLOSURE BULLETIN, IBM CORP. NEW YORK, US, Bd. 40, Nr. 12, 1. Dezember 1997 (1997-12-01), Seiten 125-126, XP000754111 ISSN: 0018-8689 *
CASNER & VAN JACOBSON: "Compressing IP/UDP/RTP Headers for Low-Speed Serial Links" IETF REQUEST FOR COMMENTS: 2508, [Online] Februar 1999 (1999-02), XP002121319 Gefunden im Internet: <URL:http://www.ietf.org/rfc/rfc2508.txt> [gefunden am 2002-09-18] *
DEGERMARK M ET AL: "LOW-LOSS TCP/IP HEADER COMPRESSION FOR WIRELESS NETWORKS" WIRELESS NETWORKS, ACM, US, Bd. 3, Nr. 5, 1. Oktober 1997 (1997-10-01), Seiten 375-387, XP000728935 ISSN: 1022-0038 *

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2860978A1 (de) * 2002-05-28 2015-04-15 Sharp Kabushiki Kaisha Verfahren und System zur Schätzung, Kommunikation und Organisation des Intraprädiktionsmodus von Bildern
US7236524B2 (en) 2002-05-28 2007-06-26 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode communication
EP1746843A3 (de) * 2002-05-28 2007-10-17 Sharp Kabushiki Kaisha Verfahren und Systeme zur Bildintraprädiktions-modusschätzung, Kommunikation und Organisation
US7289672B2 (en) 2002-05-28 2007-10-30 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode estimation
US7386048B2 (en) 2002-05-28 2008-06-10 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode organization
US10715799B2 (en) 2002-05-28 2020-07-14 Dolby Laboratories Licensing Corporation Methods and systems for image intra-prediction mode management
US10368066B2 (en) 2002-05-28 2019-07-30 Dolby Laboratories Licensing Corporation Methods and systems for image intra-prediction mode management
US9979963B2 (en) 2002-05-28 2018-05-22 Dolby Laboratories Licensing Corporation Methods and systems for image intra-prediction mode management
EP2290990A1 (de) * 2002-05-28 2011-03-02 Sharp Kabushiki Kaisha Verfahren und Systeme zur Bildintraprädiktions-modusschätzung, Kommunikation und Organisation
EP2290989A1 (de) * 2002-05-28 2011-03-02 Sharp Kabushiki Kaisha Verfahren und Systeme zur Bildintraprädiktions-modusschätzung, Kommunikation und Organisation
EP1944977A3 (de) * 2002-05-28 2011-03-02 Sharp Kabushiki Kaisha Verfahren und System zur Schätzung, Kommunikation und Organisation des Intraprädiktionsmodus von Bildern
EP2309757A1 (de) * 2002-05-28 2011-04-13 Sharp Kabushiki Kaisha Verfahren und Systeme zur Bildintraprädiktions-modusschätzung, Kommunikation und Organisation
EP1553782A3 (de) * 2002-05-28 2005-07-27 Sharp Kabushiki Kaisha Verfahren und Systeme zur Intraprädiktions-Modusschätzung von Bildern, Kommunikation und Organisation
US9973762B2 (en) 2002-05-28 2018-05-15 Dolby Laboratories Licensing Corporation Methods and systems for image intra-prediction mode management
US8228986B2 (en) 2002-05-28 2012-07-24 Sharp Kabushiki Kaisha Methods and systems for image intra-prediction mode management
US8233538B2 (en) 2002-05-28 2012-07-31 Sharp Kabushiki Kaisha Methods and systems for image intra-prediction mode management
USRE43567E1 (en) 2002-05-28 2012-08-07 Sharp Kabushiki Kaisha Methods and systems for image intra-prediction mode estimation
US8279927B2 (en) 2002-05-28 2012-10-02 Sharp Kabushiki Kaisha Methods and systems for image intra-prediction mode management
US8331450B2 (en) 2002-05-28 2012-12-11 Sharp Kabushiki Kaisha Methods and systems for image intra-prediction mode management
US9374590B2 (en) 2002-05-28 2016-06-21 Dolby Laboratories Licensing Corporation Methods and systems for image intra-prediction mode management
EP2860979A1 (de) * 2002-05-28 2015-04-15 Sharp Kabushiki Kaisha Verfahren und System zur Schätzung, Kommunikation und Organisation des Intraprädiktionsmodus von Bildern
EP2860977A1 (de) * 2002-05-28 2015-04-15 Sharp Kabushiki Kaisha Verfahren und System zur Schätzung, Kommunikation und Organisation des Intraprädiktionsmodus von Bildern
EP1954060A4 (de) * 2005-10-19 2011-05-25 Ntt Docomo Inc Bildprädiktionscodierungseinrichtung, bildprädiktionsdecodierungseinrichtung, bildprädiktionscodierungsverfahren, bildprädiktionsdecodierungsverfahren, bildprädiktionscodierungsprogramm und bildprädiktionsdecodierungsprogramm
EP2461591A1 (de) * 2005-10-19 2012-06-06 NTT DoCoMo, Inc. Vorrichtungen, Verfahren und Programme zur prädiktiven Bildkodierung
EP3893501A1 (de) * 2005-10-19 2021-10-13 NTT DoCoMo, Inc. Bildprädiktioncodierungsvorrichtung, bildprädiktiondecodierungsvorrichtung, bildprädiktioncodierungsverfahren, bildprädiktiondecodierungsverfahren, bildprädiktioncodierungsprogramm und bildprädiktiondecodierungsprogramm
EP3893502A1 (de) * 2005-10-19 2021-10-13 NTT DoCoMo, Inc. Bildprädiktionsdecodierungsvorrichtung und bildprädiktionsdecodierungsverfahren
EP2608542A1 (de) * 2005-10-19 2013-06-26 NTT DoCoMo, Inc. Bildvorschau-Kodierungsvorrichtung, Bildvorschau-Dekodierungsvorrichtung, Bildvorschau-Kodierungsverfahren, Bildvorschau-Dekodierungsverfahren, Bildvorschau-Kodierungsprogramm und Bildvorschau-Dekodierungsprogramm
EP1954060A1 (de) * 2005-10-19 2008-08-06 NTT DoCoMo, Inc. Bildprädiktionscodierungseinrichtung, bildprädiktionsdecodierungseinrichtung, bildprädiktionscodierungsverfahren, bildprädiktionsdecodierungsverfahren, bildprädiktionscodierungsprogramm und bildprädiktionsdecodierungsprogramm
US10484681B2 (en) 2005-10-19 2019-11-19 Ntt Docomo, Inc. Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
EP3448024A1 (de) * 2005-10-19 2019-02-27 Ntt Docomo, Inc. Bildvorschaudecodierungsvorrichtung und bildvorschaudecodierungsverfahren
US10165271B2 (en) 2005-10-19 2018-12-25 Ntt Docomo, Inc. Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
US9571831B2 (en) 2005-10-19 2017-02-14 Ntt Docomo, Inc. Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
CN103747256A (zh) * 2005-10-19 2014-04-23 株式会社Ntt都科摩 图像预测编码装置、图像预测解码装置、图像预测编码方法
US9860534B2 (en) 2005-10-19 2018-01-02 Ntt Docomo, Inc. Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
EP2105027A4 (de) * 2007-01-18 2011-01-12 Samsung Electronics Co Ltd Verfahren und vorrichtung zur kodierung und dekodierung auf grundlage von intraprädiktion
EP2105027A1 (de) * 2007-01-18 2009-09-30 Samsung Electronics Co., Ltd. Verfahren und vorrichtung zur kodierung und dekodierung auf grundlage von intraprädiktion
US8391369B2 (en) 2007-01-18 2013-03-05 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding based on intra prediction
US10728541B2 (en) 2009-12-16 2020-07-28 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
CN105430412A (zh) * 2009-12-16 2016-03-23 韩国电子通信研究院 执行帧内预测的视频解码/编码方法和装置
US10419752B2 (en) 2009-12-16 2019-09-17 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
CN105376566A (zh) * 2009-12-16 2016-03-02 韩国电子通信研究院 执行帧内预测的视频解码/编码方法和装置
US10708580B2 (en) 2009-12-16 2020-07-07 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
CN105187837A (zh) * 2009-12-16 2015-12-23 韩国电子通信研究院 执行帧内预测的视频解码/编码方法和装置
CN103402092B (zh) * 2009-12-16 2017-10-31 韩国电子通信研究院 执行帧内预测的视频解码装置
EP2661085A3 (de) * 2009-12-16 2013-11-20 Electronics and Telecommunications Research Institute Adaptive Bildcodierungsvorrichtung und Verfahren
CN103402092A (zh) * 2009-12-16 2013-11-20 韩国电子通信研究院 执行帧内预测的视频解码装置
US11659159B2 (en) 2009-12-16 2023-05-23 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
US11805243B2 (en) 2009-12-16 2023-10-31 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
US11812012B2 (en) 2009-12-16 2023-11-07 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
US10237565B2 (en) 2011-08-01 2019-03-19 Qualcomm Incorporated Coding parameter sets for various dimensions in video coding

Also Published As

Publication number Publication date
WO2002054779A3 (de) 2002-12-12

Similar Documents

Publication Publication Date Title
EP1487113B1 (de) Kodierung und Dekodierung von Transformationskoeffizienten in Bild- oder Videokodierern
DE69626483T2 (de) Speicherverwaltung in einem Videodekodierer
EP2198610B1 (de) Verfahren und vorrichtung zum erstellen eines kodierten ausgangsvideostroms aus mindestens zwei kodierten eingangsvideoströmen, sowie verwendung der vorrichtung
DE60028942T2 (de) Videokodierung
DE60313454T2 (de) Verfahren und systeme zur bildintraprädiktionsmodusschätzung,kommunikation und organisation
DE60220106T2 (de) Verfahren und Vorrichtung zur Reduzierung von Störungen in dekodierten Bildern mit Nachfilterung
DE69938372T2 (de) Verfahren und Vorrichtung zur Videokodierung
DE69637067T2 (de) System zur variablen Längendekodierung
DE10048735A1 (de) Verfahren zur Codierung und Decodierung von Bildsequenzen sowie Einrichtungen hierzu
DE4400355A1 (de) Adaptiver Längenvariabel-Kodierer/Dekodierer
EP2100455A2 (de) Verfahren zur videocodierung einer folge digitalisierter bilder
DE112012002125T5 (de) Vorrichtung und Verfahren für einen abtastungsadaptiven Offset für Luminanz- und Chrominanz-Komponenten
DE102016125379A1 (de) Bewegungsvektoraufteilung des letzten Frames
EP0830029A2 (de) Verfahren zur Reduzierung von Daten in Videosignalen
DE10033110B4 (de) Verfahren, und System zur Übertragung digitalisierter Bewegtbilder von einem Sender zu einem Empfänger und zugehöriger Decoder
DE69816971T2 (de) Videokodierer mit skalierungsabhängiger vlc (variable length code) kodierung
DE60221807T2 (de) Lauflängenkodierung nichtkodierter makroblöcke
DE10296787B4 (de) Selektive Prädikation für ein Intra-Codieren eines Videodatenblocks
WO2002054779A2 (de) Verfahren zur header-kompression bei einer video-codierung
DE69828144T2 (de) Verfahren und vorrichtung zur videocodierung und -decodierung
EP0834233B1 (de) Verfahren zur erzeugung und zur auswertung eines stroms von bilddaten für videoübertragung
DE69928494T2 (de) Videosignalkompression
EP0836785B1 (de) Verfahren zur dekodierung und kodierung eines komprimierten videodatenstroms mit reduziertem speicherbedarf
DE10143102B4 (de) Verfahren zur Header-Kompression bei einer Video-Codierung
WO2011157399A1 (de) Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): CN JP US

AL Designated countries for regional patents

Kind code of ref document: A2

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

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): CN JP US

AL Designated countries for regional patents

Kind code of ref document: A3

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

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP