WO2003026308A2 - Method and device for enhancing coding/decoding of video signals - Google Patents

Method and device for enhancing coding/decoding of video signals Download PDF

Info

Publication number
WO2003026308A2
WO2003026308A2 PCT/DE2002/003386 DE0203386W WO03026308A2 WO 2003026308 A2 WO2003026308 A2 WO 2003026308A2 DE 0203386 W DE0203386 W DE 0203386W WO 03026308 A2 WO03026308 A2 WO 03026308A2
Authority
WO
WIPO (PCT)
Prior art keywords
levels
sequence
sorting information
index
field
Prior art date
Application number
PCT/DE2002/003386
Other languages
German (de)
French (fr)
Other versions
WO2003026308A3 (en
Inventor
Norbert Oertel
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
Application filed by Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Publication of WO2003026308A2 publication Critical patent/WO2003026308A2/en
Publication of WO2003026308A3 publication Critical patent/WO2003026308A3/en

Links

Classifications

    • 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
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/18Methods 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 a set of transform coefficients
    • 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/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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • the invention relates to a method or a device in which the current image information is estimated from already transmitted image areas and only a prediction error is transmitted. This is usually done by dividing an input image into blocks and looking for a corresponding block in previous images for each of these blocks, which minimizes an error or distance measure.
  • the prediction error is transformed and quantized by DCT or integer transformation from the local to the frequency domain, and the resulting coefficients are compressed by means of entropy coding and sent to the receiver.
  • Common methods for entropy coding are, for example, 3D Huffman codes with a display as a 3-tuple level / run / load, which is used in the ITU-T standard H.263, 2-D UVLCs with a display as a tuple level / run and a display the end of the block by coding a level 0, which is provided in the proposed ITU-T standard H.26L, or an independent coding of the levels and runs by an arithmetic encoder.
  • the object on which the invention is based is to increase the efficiency of the entropy coding of the prediction error and thereby to achieve the transmission of video signals with better quality at the same data rate or with the same quality but with a low data rate.
  • the invention relates to the method for coding by the features of claim 1, to the method to decode by the features of claim 6, to the device for coding by the features of claim 8 and to the device for decoding by the features of claim 9 solved.
  • the invention essentially consists in that, before entropy coding, the sampled levels of a prediction error matrix are sorted by a sorting method Sort, which is particularly advantageous for this purpose, in such a way that the amounts of the levels are always monotonically falling and thus a more efficient coding is made possible. So that a corresponding decoding is possible, a Sorting information formed and also transmitted entropy-coded.
  • An advantage of the method according to the invention is that the decoder can always assume a sorted sequence of levels and the encoder can consequently use more efficient coding, since coding a level with Betag
  • k the range of values for the following levels is limited to the interval [-k; k] and thus the number of possible code words is reduced.
  • this procedure allows a better statistical modeling of the probability of occurrence of the individual symbols and thus a further increase in coding efficiency.
  • a prediction error matrix PFM is linearized as usual by scanning SCAN.
  • entropy coding EC is carried out, the scanned levels 1 are sorted indirectly via an index field I according to the size of their amount, and sorting information s is formed, which is also transmitted entropy-coded.
  • a sorting method that is particularly well suited for this is "insertion location", since the sequence of levels is already sorted very often, except for zeros inserted between them.
  • Elementary sorting methods and also the "insertion location” method are, for example, from Robert's book Sedgewick, "Algorithms”; Addison-Wesley, 1991, Chapter 8, pp.121-136 known per se.
  • the sorting information consists of the index field without zeros.
  • the index field resulting from the sorting is not directly coded and transmitted in the encoder, but is first prepared for transmission with the aid of a marker field M of the same dimensioning of the index field, which is initially not marked at all positions. If a total of k levels is different from zero, the number of unmarked positions is counted from the start for the first k indices of the index field in their given order in the marker field until the index is reached. This number is stored and later fed to the entropy coding and sent to the decoder. The position in the marker field is then marked as marked and the next index is continued.
  • the decoder is used in a particularly efficient manner communicated to which position the levels have to be moved to create the original order.
  • the index field that was used for sorting is specially prepared before the transfer.
  • the decoder only needs to know the positions of the levels that are different from zero. All other positions must have zeros. It is therefore sufficient to only consider the first k positions of the index field if k levels are not equal to zero.
  • the index field is prepared for transmission with the help of a marker field of the same dimensioning of the index field, which is initially not marked at all positions.
  • At the beginning marker [i] FALSE applies to all i.
  • the number of unmarked positions is counted from the beginning for the first k indices of the index field in their given order in the marker field until the index is reached. This number is stored and later fed to the entropy coding and sent to the decoder. The position in the marker field is then marked as marked and the next index is continued.
  • a further advantageous embodiment of the method according to the invention consists in that delta coding is additionally carried out in the advantageous embodiment.
  • delta coding is additionally carried out in the advantageous embodiment.
  • stability properties [Sedgewick, p. 123]
  • a delta coding can also be used, which guarantees that no negative deltas occur. These deltas require even less bandwidth.
  • the following procedure for determining the non-negative deltas can also be summarized with the previous one.
  • the levels are now sorted in descending order according to their amount.
  • input data corresponding to the transmitted output data COUT of the encoder are decoded in a decoder DC into a sorted sequence of levels l x and sorting information s, which are fed to a sorting device Dsort, which in turn generates the original sequence of levels 1 ,
  • the decoding is in principle inverse to the encoding and its description consequently results indirectly from the description of the encoding.
  • any delta coding has to be undone. This is done by decoding a symbol, adding the predictor and adjusting the predictor. So completely analogous to encoding. After this step, the following data is available on the decoder side:
  • the marker field used for encoding is again required to decode the position information. At the beginning of the decoding of a block, this is pre-assigned with FALSE. If position information ⁇ k> has been decoded, ⁇ k> positions with the value FALSE are skipped in the marker field, from the beginning of the field, and the subsequent entry with the value FALSE is the entry searched for. At this point in the marker field, TRUE is saved and the index of this position is the index of the corresponding level. This means that the level must be at this point in the reconstructed block. As an example, the restoration of the position information based on the position information 1, 4, 0, 0, 2:
  • the decoded block results from this:
  • the invention also includes all combinations of hardware and software for carrying out the method according to the invention, as well as computer program products with an appropriate storage medium and the corresponding storage medium itself,

Abstract

According to the invention, the scanned levels of a prediction error matrix are sorted in accordance with a particularly advantageous sorting method, before entropic encoding, such that the values of the levels constantly decrease uniformly and so as to enable to obtain a more efficient coding. For a corresponding decoding, a sorting information is produced and likewise transmitted in entropically coded form.

Description

Beschreibungdescription
Verfahren und Vorrichtung zur verbesserten Codierung / Decodierung von VideosignalenMethod and device for improved coding / decoding of video signals
Die Erfindung betrifft ein Verfahren oder eine Vorrichtung, bei dem bzw. der aus bereits übertragenen Bildbereichen die aktuelle Bildinformation geschätzt und nur noch ein Prädiktionsfehler übermittelt wird. Dies erfolgt in der Regel dadurch, dass ein Eingabebild in Blöcke unterteilt wird und zu jedem dieser Blöcke ein korrespondierender Block in vorangegangenen Bildern gesucht wird, der ein Fehler- oder Abstandsmaß minimiert. Der Prädiktionsfehler wird durch DCT- oder Integertransformation vom Orts- in den Frequenzbereich transformiert, quantisiert und die daraus resultierenden Koeffizienten mittels einer Entropiecodierung komprimiert und zum Empfänger gesendet.The invention relates to a method or a device in which the current image information is estimated from already transmitted image areas and only a prediction error is transmitted. This is usually done by dividing an input image into blocks and looking for a corresponding block in previous images for each of these blocks, which minimizes an error or distance measure. The prediction error is transformed and quantized by DCT or integer transformation from the local to the frequency domain, and the resulting coefficients are compressed by means of entropy coding and sent to the receiver.
Aus der internationalen Patentanmeldung WO 00/27128 ist ein Verfahren und eine Vorrichtung bekannt, bei der die quantisierten Daten im Frequenzbereich mit quantisierten Daten im Frequenzbereich eines zweiten Blocks verglichen werden und eine Prädiktionsfehler-Matrix gebildet wird.From the international patent application WO 00/27128, a method and a device are known in which the quantized data in the frequency domain are compared with quantized data in the frequency domain of a second block and a prediction error matrix is formed.
Bei diesen an sich bekannten Verfahren wird die Eigenschaft der DCT- bzw. Integertransformation ausgenutzt, dass die Energie auf Koeffizienten konzentriert wird, die niedrige Frequenzen repräsentieren. Nach der Quantisierung liegt in aller Regel eine dünn besetzte Matrix vor, bei der nur wenige Koeffizienten nahe der linken oberen Ecke ungleich Null sind. Diese Matrix wird im nächsten Schritt durch einen Koeffizientenscan linearisiert , der die Koeffizienten in der Reihenfolge ihrer Wahrscheinlichkeit, ungleich Null zu sein, abtastet; häufig wird dazu ein ZigZag-Scan verwendet. Diese Liste wird in der Regel als eine Sequenz von Run/Level - Tupeln dargestellt, wobei der Level bzw. Pegel den Wert des von Null verschiedenen Koeffizienten angibt und der Run die Anzahl der Nullen, die zwischen diesem und dem vorangegangenen Koeffizienten ungleich Null liegen. Diese Sequenz wird im letzten Schritt der Entropiecodierung zugeführt. Gängige Verfahren zur Entropiecodierung sind z.B. 3D Huffman Codes mit einer Darstellung als 3-Tupel Level/Run/Last, das beim ITU-T-Standard H.263 Anwendung findet, 2-D UVLCs mit einer Darstellung als Tupel Level/Run und einer Anzeige des Blockendes durch die Codierung eines Levels 0, das beim vorgeschlagenen ITU-T-Standard H.26L vorgesehen ist, oder eine unabhängige Codierung der Levels und Runs durch einen arithmetischen Coder.In these methods, which are known per se, the property of the DCT or integer transformation is exploited that the energy is concentrated on coefficients which represent low frequencies. After quantization, there is usually a sparse matrix with only a few non-zero coefficients near the top left corner. This matrix is linearized in the next step by a coefficient scan which scans the coefficients in the order of their probability of being non-zero; A ZigZag scan is often used for this. This list is usually presented as a sequence of run / level tuples, where the level indicates the value of the non-zero coefficient and the run the Number of zeros that lie between this and the previous non-zero coefficient. This sequence is fed to the entropy coding in the last step. Common methods for entropy coding are, for example, 3D Huffman codes with a display as a 3-tuple level / run / load, which is used in the ITU-T standard H.263, 2-D UVLCs with a display as a tuple level / run and a display the end of the block by coding a level 0, which is provided in the proposed ITU-T standard H.26L, or an independent coding of the levels and runs by an arithmetic encoder.
Die der Erfindung zu Grunde liegende Aufgabe, besteht nun darin die Effizienz der Entropiecodierung des Prädiktionsfehler zu erhöhen und dadurch die Übertragung von Videosignalen mit besserer Qualität bei gleicher Datenrate oder mit gleicher Qualität bei jedoch geringer Datenrate zu erreichen.The object on which the invention is based is to increase the efficiency of the entropy coding of the prediction error and thereby to achieve the transmission of video signals with better quality at the same data rate or with the same quality but with a low data rate.
Die Erfindung wird hinsichtlich des Verfahrens zur Codierung durch die Merkmale des Anspruchs 1, hinsichtlich des Verfahrens zur Decodierung durch die Merkmale des Anspruchs 6, hinsichtlich des Vorrichtung zur Codierung durch die Merkmale des Anspruchs 8 und hinsichtlich des Vorrichtung zur Decodierung durch die Merkmale des Anspruchs 9 gelöst.The invention relates to the method for coding by the features of claim 1, to the method to decode by the features of claim 6, to the device for coding by the features of claim 8 and to the device for decoding by the features of claim 9 solved.
Die Unteransprüche betreffen vorteilhafte Ausgestaltungen der erfindungsgemäßen Verfahren.The subclaims relate to advantageous refinements of the method according to the invention.
Die Erfindung besteht im wesentlich darin, dass vor einer Entropiecodierung die abgetasteten Pegel einer Prädiktionfehler-Matix durch ein hierfür besonders vorteilhaftes Sortierverfahren Sort derart sortiert werden, dass die Beträge der Pegel immer monoton fallend sind und damit eine effizientere Codierung ermöglicht wird. Damit eine entsprechende Decodierung möglich ist, wird hierbei eine Sortierinformation gebildet und ebenfalls entropiecodiert übertragen.The invention essentially consists in that, before entropy coding, the sampled levels of a prediction error matrix are sorted by a sorting method Sort, which is particularly advantageous for this purpose, in such a way that the amounts of the levels are always monotonically falling and thus a more efficient coding is made possible. So that a corresponding decoding is possible, a Sorting information formed and also transmitted entropy-coded.
Ein Vorteil des erfindungsgemäßen Verfahrens liegt darin, dass der Decoder immer von einer sortierten Reihenfolge von Levels ausgehen kann und der Encoder demzufolge eine effizientere Codierung verwenden kann, da mit Codierung eines Levels mit Betag | 1 | =k sich der Wertebereich für die folgenden Levels auf das Intervall [-k;k] einschränkt und damit die Anzahl der möglichen Codewörter reduziert wird. Zusätzlich erlaubt dieses Vorgehen eine bessere statistische Modellierung der Auftrittswahrscheinlichkeiten der einzelnen Symbole und damit eine weitere Erhöhung der Codiereffizienz.An advantage of the method according to the invention is that the decoder can always assume a sorted sequence of levels and the encoder can consequently use more efficient coding, since coding a level with Betag | 1 | = k the range of values for the following levels is limited to the interval [-k; k] and thus the number of possible code words is reduced. In addition, this procedure allows a better statistical modeling of the probability of occurrence of the individual symbols and thus a further increase in coding efficiency.
Ein Ausführungsbeispiel der Erfindung wird nun nachfolgend anhand der Zeichnung näher erläutert.An embodiment of the invention will now be explained in more detail with reference to the drawing.
Zunächst wird eine Prädiktionsfehler-Matrix PFM wie üblich durch Abtasten SCAN linearisiert . Vor der Durchführung des letzten Schrittes, der Entropiecodierung EC, werden jedoch die gescannten Levels 1 indirekt über ein Indexfeld I nach der Größe ihres Betrages sortiert und eine Sortierinformation s gebildet, die ebenfalls entropiecodiert übertragen wird.First, a prediction error matrix PFM is linearized as usual by scanning SCAN. Before the last step, entropy coding EC, is carried out, the scanned levels 1 are sorted indirectly via an index field I according to the size of their amount, and sorting information s is formed, which is also transmitted entropy-coded.
Prinzipiell sind hierfür alle gängigen Sortierverfahren möglich. Ein Sortierverfahren, das sich jedoch besonders gut dafür eignet, ist „Insertionsort", da die Folge von Levels sehr häufig, bis auf zwischengeschobenen Nullen, bereits sortiert ist. Elementare Sortierverfahren und auch das Verfahren „Insertionsort" sind bspw. aus dem Buch von Robert Sedgewick, „Algorithmen"; Addison-Wesley, 1991, Kap. 8, S.121-136 für sich bekannt.In principle, all common sorting methods are possible for this. A sorting method that is particularly well suited for this is "insertion location", since the sequence of levels is already sorted very often, except for zeros inserted between them. Elementary sorting methods and also the "insertion location" method are, for example, from Robert's book Sedgewick, "Algorithms"; Addison-Wesley, 1991, Chapter 8, pp.121-136 known per se.
Im einfachsten Fall besteht die Sortierinformation aus dem Indexfeld ohne Nullen. Vorteilhafte Ausgestaltung des Encoders:In the simplest case, the sorting information consists of the index field without zeros. Advantageous embodiment of the encoder:
In einer vorteilhaften Ausgestaltung der Erfindung wird im Encoder das aus der Sortierung resultierende Indexfeld nicht direkt codiert und übertragen, sondern zuerst mit Hilfe eines Markerfeldes M derselben Dimensionierung des Indexfeldes, das initial an allen Positionen nicht markiert ist, zur Übertragung vorbereitet. Sind insgesamt k Levels von Null verschieden, so wird für die ersten k Indizes des Indexfeldes in ihrer gegebenen Reihenfolge im Markerfeld von Beginn an die Anzahl der nicht markierten Stellen gezählt, bis der Index erreicht ist. Diese Anzahl wird gespeichert und später der Entropiecodierung zugeführt und an den Decoder gesendet. Anschließend wird die Position im Markerfeld als markiert gekennzeichnet und mit dem nächsten Index fortgefahren.In an advantageous embodiment of the invention, the index field resulting from the sorting is not directly coded and transmitted in the encoder, but is first prepared for transmission with the aid of a marker field M of the same dimensioning of the index field, which is initially not marked at all positions. If a total of k levels is different from zero, the number of unmarked positions is counted from the start for the first k indices of the index field in their given order in the marker field until the index is reached. This number is stored and later fed to the entropy coding and sent to the decoder. The position in the marker field is then marked as marked and the next index is continued.
Im Falle einer Prädiktionsmatrix für eine Blockgröße 4x4 ergibt sich nach der Abtastung ein Feld level[k], k>=0 und k<16, in dem die Levels gespeichert sind. Zum Sortieren ist ein zusätzliches Feld index[k], k>=0 und k<16 erforderlich. Vor dem Sortieren wird dieses Feld vorbelegt, so dass index[k]=k gilt. Trivialerweise gilt vor dem Sortieren auch level[index[k]]=level[k] .In the case of a prediction matrix for a block size 4x4, a field level [k], k> = 0 and k <16 results after the scanning, in which the levels are stored. An additional field index [k], k> = 0 and k <16 is required for sorting. Before sorting, this field is pre-assigned so that index [k] = k applies. Trivially, before sorting, level [index [k]] = level [k] also applies.
Nach dem indirekten Sortieren gilt abs ( level[index[k]] ) >=abs ( level[index[k+l]] ) für alle k>=0 und k<15 .After indirect sorting, abs (level [index [k]])> = abs (level [index [k + l]]) applies to all k> = 0 and k <15.
Die Levels, die ungleich Null sind, werden nun in Sortierreihenfolge zum Decoder übertragen. Sind k Levels ungleich Null, so werden level[index[n]] für n=0 bis n=k-l in dieser Reihenfolge gesendet.The levels that are not equal to zero are now transferred to the decoder in sort order. If k levels are not equal to zero, level [index [n]] for n = 0 to n = k-l are sent in this order.
In der vorteilhaf en Ausgestaltung der Erfindung wird dem Decoder auf eine besonders effiziente Art und Weise mitgeteilt, an welche Position die Levels zur Herstellung der ursprünglichen Reihenfolge verschoben werden müssen. Dazu wird das Indexfeld, das zum Sortieren benutzt wurde, vor der Übertragung in besonderer Weise aufbereitet.In the advantageous embodiment of the invention, the decoder is used in a particularly efficient manner communicated to which position the levels have to be moved to create the original order. For this purpose, the index field that was used for sorting is specially prepared before the transfer.
Dem Decoder müssen nur die Positionen der Levels bekannt sein, die von Null verschieden sind. An allen anderen Positionen müssen sich zwangsläufig Nullen befinden. Es ist also völlig ausreichend, nur die ersten k Positionen des Indexfeldes zu betrachen, wenn k Levels ungleich Null sind.The decoder only needs to know the positions of the levels that are different from zero. All other positions must have zeros. It is therefore sufficient to only consider the first k positions of the index field if k levels are not equal to zero.
Das Indexfeld wird im folgenden Schritt mit Hilfe eines Markerfeldes derselben Dimensionierung des Indexfeldes, das initial an allen Positionen nicht markiert ist, zur Übertragung vorbereitet. Das Markerfeld ist ein Feld marker[i] für i>=0 und i<16. Am Anfang gilt marker[i]=FALSE für alle i .In the following step, the index field is prepared for transmission with the help of a marker field of the same dimensioning of the index field, which is initially not marked at all positions. The marker field is a field marker [i] for i> = 0 and i <16. At the beginning marker [i] = FALSE applies to all i.
Sind insgesamt k Levels von Null verschieden, so wird für die ersten k Indizes des Indexfeldes in ihrer gegebenen Reihenfolge im Markerfeld von Beginn an die Anzahl der nicht markierten Stellen gezählt, bis der Index erreicht ist. Diese Anzahl wird gespeichert und später der Entropiecodierung zugeführt und an den Decoder gesendet. Anschließend wird die Position im Markerfeld als markiert gekennzeichnet und mit dem nächsten Index fortgefahren.If a total of k levels is different from zero, the number of unmarked positions is counted from the beginning for the first k indices of the index field in their given order in the marker field until the index is reached. This number is stored and later fed to the entropy coding and sent to the decoder. The position in the marker field is then marked as marked and the next index is continued.
Eine programmtechnische Realisierung der vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrens läuft in ihrem hierfür wesentlichen Teil wie folgt ab:A programmatic implementation of the advantageous embodiment of the method according to the invention proceeds in its essential part as follows:
Zählen der Positionen, die nicht markiert sindCount the positions that are not marked
Speichere oder
Figure imgf000007_0001
Sende Ergebnis Marker[index[i]] : =TRUE Markiere aktuelle Position End for
Save or
Figure imgf000007_0001
Send result Marker [index [i]]: = TRUE Mark current position End for
Weitere vorteilhafte Ausgestaltung :Another advantageous embodiment:
Ein weitere vorteilhafte Ausgestaltung des erfindungsgemäßen Verfahrens besteht darin, dass bei der vorteilhaften Ausgestaltung zusätzlich eine Deltacodierung durchgeführt wird. Unter Ausnutzung der Stabilitäts-Eigenschaften [Sedgewick, S. 123] kann zusätzlich eine Deltacodierung angewandt werden, bei der garantiert ist, dass keine negativen Deltas auftreten. Diese Deltas benötigen noch weniger Bandbreite. Das folgende Verfahren zur Bestimmung der nichtnegativen Deltas kann auch mit dem vorangegangenen zusammengefasst werden.A further advantageous embodiment of the method according to the invention consists in that delta coding is additionally carried out in the advantageous embodiment. Using the stability properties [Sedgewick, p. 123], a delta coding can also be used, which guarantees that no negative deltas occur. These deltas require even less bandwidth. The following procedure for determining the non-negative deltas can also be summarized with the previous one.
Eine programmtechnische Realisierung der weiteren vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrens läuft in ihrem hierfür wesentlichen Teil wie folgt ab:A programmatic implementation of the further advantageous embodiment of the method according to the invention proceeds in its essential part as follows:
Bilde DeltaForm Delta
Merke aktuellen Level und ResultatNote current level and result
Figure imgf000008_0001
Figure imgf000008_0001
*) Wenn sich der Bertrag des Levels geändert hat, so muss der Prädiktor auf 0 zurückgesetzt werden. Konkretes Ausführungsbeispiel:*) If the transfer of the level has changed, the predictor must be reset to 0. Specific embodiment:
Im folgenden wird anhand eines konkreten Ausführungsbeispiels die Sortierung und die Bildung der Sortierinformation bei einer Codierung gezeigt :The sorting and the formation of the sorting information in the case of coding is shown below using a specific exemplary embodiment:
Figure imgf000009_0001
Figure imgf000009_0001
Figure imgf000009_0002
Die Level sind nun ihrem Betrag nach in absteigender Reihenfolge sortiert.
Figure imgf000009_0002
The levels are now sorted in descending order according to their amount.
3. Umwandeln des Indexfeldes :3. Convert the index field:
Fünf Levels sind von Null verschieden, es werden also fünfFive levels are different from zero, so there are five
Schritte zur Bildung der Sortierinformation benötigt.Steps required to form the sorting information.
Figure imgf000010_0001
Figure imgf000010_0001
Die Sequenz aus den obigen Resultaten bzw. die Sortierinformation die der Entropiecodierung zugeführt werden kann lautet dann wie folgt:
Figure imgf000011_0001
The sequence from the above results or the sorting information that can be supplied to the entropy coding is then as follows:
Figure imgf000011_0001
Decodierung:decoding:
In der Zeichnung werden Eingangsdaten, die den übertragenen Ausgangsdaten COUT des Encoders entsprechen, in einem Decoder DC in eine sortierte Folge von Pegeln lx und eine Sortierinformation s decodiert, die einer Sortiereinrichtung Dsort zugeführt werden, die ihrerseits wieder die ursprüngliche Folge von Pegeln 1 erzeugt.In the drawing, input data corresponding to the transmitted output data COUT of the encoder are decoded in a decoder DC into a sorted sequence of levels l x and sorting information s, which are fed to a sorting device Dsort, which in turn generates the original sequence of levels 1 ,
Die Decodierung erfolgt im Prinzip invers zur Encodierung und ihre Beschreibung ergibt sich folglich indirekt aus der Beschreibung der Encodierung.The decoding is in principle inverse to the encoding and its description consequently results indirectly from the description of the encoding.
Zum besseren Verständnis wird jedoch im folgenden auch die erfindungsgemäße Decodierung anhand des obigen konkreten Ausführungsbeispiels gezeigt:For a better understanding, however, the decoding according to the invention is also shown below on the basis of the above specific exemplary embodiment:
Zunächst ist eine eventuelle Deltacodierung rückgängig zu machen. Dies erfolgt durch Decodieren eines Symbols, Addition des Prädiktors und Anpassen des Prädiktors . Also vollkommen analog zur Encodierung. Nach diesem Schritt sind auf Decoderseite folgende Daten verfügbar:First of all, any delta coding has to be undone. This is done by decoding a symbol, adding the predictor and adjusting the predictor. So completely analogous to encoding. After this step, the following data is available on the decoder side:
1. Die decodierten, sortierten Levels:1. The decoded, sorted levels:
-2 -1 -1-2 -1 -1
2. Die decodierten Sortier- oder Positionsinformationen:2. The decoded sorting or position information:
Figure imgf000011_0002
Figure imgf000011_0002
Zur Decodierung der Positionsinformation wird wieder das zur Encodierung verwendete Markerfeld benötigt. Zu Beginn der Decodierung eines Blockes wird dieses mit FALSE vorbelegt. Wurde eine Positionsinformation <k> decodiert, so werden im Markerfeld, jeweils vom Beginn des Feldes an, <k> Positionen mit dem Wert FALSE übersprungen und der darauf folgende Eintrag mit dem Wert FALSE ist der gesuchte Eintrag. An dieser Stelle des Markerfeldes wird TRUE gespeichert und der Index dieser Stelle ist der Index des dazugehörigen Levels. Das heißt der Level muss im rekonstruierten Block an dieser Stelle stehen. Als Beispiel das Wiederherstellen der Positionsinformatinon anhand der Positionsinformation 1, 4, 0, 0, 2:The marker field used for encoding is again required to decode the position information. At the beginning of the decoding of a block, this is pre-assigned with FALSE. If position information <k> has been decoded, <k> positions with the value FALSE are skipped in the marker field, from the beginning of the field, and the subsequent entry with the value FALSE is the entry searched for. At this point in the marker field, TRUE is saved and the index of this position is the index of the corresponding level. This means that the level must be at this point in the reconstructed block. As an example, the restoration of the position information based on the position information 1, 4, 0, 0, 2:
Figure imgf000012_0001
Die resultierenden Indizes der sortierten Levels
Figure imgf000012_0001
The resulting indexes of the sorted levels
Figure imgf000013_0001
Figure imgf000013_0001
sind also:are therefore:
Figure imgf000013_0002
Figure imgf000013_0002
Daraus ergibt sich der decodierte Block zu:The decoded block results from this:
Figure imgf000013_0003
Figure imgf000013_0003
Die Erfindung umfasst auch alle Kombinationen aus Hard- und Software zur Durchführung des erfindungsgemäßen Verfahrens, sowie Computerprogramm-Erzeugnisse mit einem entsprechenden Speichermedium sowie das entsprechende Speichermedium selbst, The invention also includes all combinations of hardware and software for carrying out the method according to the invention, as well as computer program products with an appropriate storage medium and the corresponding storage medium itself,

Claims

Patentansprüche claims
1. Verfahren zur Codierung von Videosignalen,1. method for coding video signals,
- bei dem aus bereits übertragenen Bildbereichen eine aktuelle Bildinformation geschätzt und eine Prädiktionsfehler-Matrix (PFM) gebildet wird,in which current image information is estimated from image areas already transmitted and a prediction error matrix (PFM) is formed,
- bei dem die Prädiktionsfehlermatrix durch eine Koeffizientenabtastung (SCAN) linearisiert sowie in eine Folge von Pegeln (1) und Längen von Nullfolgen umgewandelt wird,- in which the prediction error matrix is linearized by a coefficient scan (SCAN) and converted into a sequence of levels (1) and lengths of zero sequences,
- bei dem die Folge von Pegeln indirekt über ein Indexfeld (I) nach der Größe ihres Betrages sortiert und eine Sortierinformation (s) gebildet wird und- in which the sequence of levels is sorted indirectly via an index field (I) according to the size of their amount and sorting information (s) is formed and
- bei dem die Sortierinformation und eine sortierte Folge von Pegeln (I codiert und die dabei gebildeten Codewerte an einen Ausgangsbitstrom (OUT) angefügt werden.- In which the sorting information and a sorted sequence of levels (I coded and the code values thus formed are added to an output bit stream (OUT).
2. Verfahren nach Anspruch 1, bei dem als Sortierverfahren dem Verfahren Insertionsort entspricht .2. The method according to claim 1, wherein the sorting method corresponds to the method of insertion.
3. Verfahren nach Anspruch 1 oder 2 , bei dem die Sortierinformation (s) direkt aus dem Inhalt des Indexfeldes gebildet wird, wobei Indexpositionen die Nullpegel zeigen nicht berücksichtigt werden.3. The method according to claim 1 or 2, wherein the sorting information (s) is formed directly from the content of the index field, index positions showing the zero level are not taken into account.
4. Verfahren nach Anspruch 1 oder 2 , bei dem die Sortierinformation (s) derart aus dem Inhalt des Indexfeldes gebildet wird, dass für jeden Indexwert der keinem Nullpegel zugeordnet ist in einem Markerfeld (M) in einer bestimmten Reihenfolge ein jeweiliges Resultat in Form der Anzahl der noch nicht markierten Positionen bis zu der Position des jeweiligen Indexwertes ermittelt wird, wobei die Position des Indexwertes selbst nicht mitzählt aber im Markerfeld für den nächsten Indexwert als bereits abgehandelt markiert wird, und dass die für die Indexwerte ermittelten Resultate die Sortierinformation darstellen.4. The method according to claim 1 or 2, in which the sorting information (s) is formed from the content of the index field in such a way that for each index value that is not assigned a zero level in a marker field (M) in a certain order a respective result in the form of Number of positions that have not yet been marked up to the position of the respective index value is determined, the position of the index value itself not being counted but being marked as already resolved in the marker field for the next index value, and that the results determined for the index values represent the sorting information.
5. Verfahren nach Anspruch 4 , bei dem zusätzlich eine Deltacodierung durchgeführt wird.5. The method according to claim 4, in which a delta coding is additionally carried out.
6. Verfahren zur Decodierung von Videosignalen,6. method for decoding video signals,
- bei dem aus einem Eingangsbitstrom eine sortierte Folge von Pegeln (IM und eine Sortierinformation (s) decodiert werden,a decoded sequence of levels (IM and sorting information (s) are decoded from an input bit stream,
- bei dem die sortierte Folge von Pegeln indirekt über ein aus der Sortierinformation gewonnenes Indexfeld (I) in eine ursprüngliche Folge von Pegeln (1) umgeordnet wird, wobei nicht zugeordnete Positionen mit einer Null ergänzt werden, und- in which the sorted sequence of levels is rearranged indirectly via an index field (I) obtained from the sorting information into an original sequence of levels (1), positions which are not assigned being supplemented with a zero, and
- bei dem aus der ursprüngliche Folge von Pegeln (1) die Prädiktionsfehlermatrix erzeugt wird, die zusammen mit einer aktuellen geschätzten Bildinformation ein resultierendes Bild ergibt.- In which the prediction error matrix is generated from the original sequence of levels (1), which results in a resulting image together with current estimated image information.
7. Verfahren nach Anspruch 6, bei dem der Inhalt des Indexfeldes aus der Sortierinformation (s) derart gebildet wird, dass für jeden Wert der Sortierinformation im Markerfeld (M) ein jeweiliger Indexwert durch Abzählen in einer bestimmten Reihenfolge der noch nicht markierten Positionen bis zu der Position des jeweiligen Indexwertes ermittelt wird, wobei die Position des Indexwertes selbst nicht mitzählt aber im Markerfeld für die Bildung eines nächsten Indexwertes als bereits abgehandelt markiert wird.7. The method according to claim 6, wherein the content of the index field from the sorting information (s) is formed such that for each value of the sorting information in the marker field (M) a respective index value by counting in a certain order of the positions not yet marked up to the position of the respective index value is determined, the position of the index value itself not being counted but marked as already resolved in the marker field for the formation of a next index value.
8. Vorrichtung zur Codierung von Videosignalen,8. Device for coding video signals,
- bei der Mittel derart vorhanden sind, dass aus bereits übertragenen Bildbereichen eine aktuelle Bildinformation geschätzt und eine Prädiktionsfehler-Matrix (PFM) gebildet wird, - bei der Mittel derart vorhanden sind, dass die Prädiktionsfehlermatrix durch eine Koeffizientenabtastung (SCAN) linearisiert sowie in eine Folge von Pegeln (1) und Längen von Nullfolgen umgewandelt wird,in which means are present in such a way that current image information is estimated from image areas already transmitted and a prediction error matrix (PFM) is formed, in which means are present in such a way that the prediction error matrix is linearized by a coefficient scan (SCAN) and converted into a sequence of levels (1) and lengths of zero sequences,
- bei der Mittel derart vorhanden sind, dass die Folge von Pegeln indirekt über ein Indexfeld (I) nach der Größe ihres Betrages sortiert und eine Sortierinformation (s) gebildet wird und- The means are available in such a way that the sequence of levels is sorted indirectly via an index field (I) according to the size of their amount and a sorting information (s) is formed and
- bei der Mittel derart vorhanden sind, dass die Sortierinformation und eine sortierte Folge von Pegeln (IM codiert und die dabei gebildeten Codewerte an einen Ausgangsbitström (OUT) angefügt werden.- The means are available in such a way that the sorting information and a sorted sequence of levels (IM coded and the code values formed in the process are added to an output bit stream (OUT).
9. Vorrichtung zur Decodierung von Videosignalen,9. Device for decoding video signals,
- bei der Mittel derart vorhanden sind, dass aus einem Eingangsbitstrom eine sortierte Folge von Pegeln (IM und eine Sortierinformation (s) decodiert werden,in which means are present in such a way that a sorted sequence of levels (IM and sorting information (s) are decoded from an input bit stream,
- bei der Mittel derart vorhanden sind, dass die sortierte Folge von Pegeln indirekt über ein aus der Sortierinformation gewonnenes Indexfeld (I) in eine ursprüngliche Folge von Pegeln (1) umgeordnet wird, wobei nicht zugeordnete Positionen mit einer Null ergänzt werden, und- The means are available in such a way that the sorted sequence of levels is indirectly reorganized into an original sequence of levels (1) via an index field (I) obtained from the sorting information, positions not assigned being supplemented with a zero, and
- bei der Mittel derart vorhanden sind, dass aus der ursprüngliche Folge von Pegeln (1) die- When means are available in such a way that from the original sequence of levels (1)
Prädiktionsfehlermatrix erzeugt wird, die zusammen mit einer aktuellen geschätzten Bildinformation ein resultierendes Bild ergibt. Prediction error matrix is generated, which together with current estimated image information results in a resulting image.
PCT/DE2002/003386 2001-09-14 2002-09-11 Method and device for enhancing coding/decoding of video signals WO2003026308A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10145375 2001-09-14
DE10145375.2 2001-09-14

Publications (2)

Publication Number Publication Date
WO2003026308A2 true WO2003026308A2 (en) 2003-03-27
WO2003026308A3 WO2003026308A3 (en) 2003-12-04

Family

ID=7699057

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2002/003386 WO2003026308A2 (en) 2001-09-14 2002-09-11 Method and device for enhancing coding/decoding of video signals

Country Status (1)

Country Link
WO (1) WO2003026308A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008058754A2 (en) * 2006-11-16 2008-05-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Device for encoding and decoding

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3611316A (en) * 1969-12-24 1971-10-05 Ibm Indirect indexed searching and sorting
US5260781A (en) * 1991-08-13 1993-11-09 Sony United Kingdom Ltd. Data compression apparatus and method
US5671406A (en) * 1995-10-18 1997-09-23 Digital Equipment Corporation Data structure enhancements for in-place sorting of a singly linked list
WO1998000977A1 (en) * 1996-07-03 1998-01-08 Motorola Inc. Method and apparatus for bound-based adaptive entropy encoding/decoding
US5721822A (en) * 1995-07-21 1998-02-24 Intel Corporation Run-length encoding/decoding video signals using scan patterns explicitly encoded into bitstreams
EP1102490A1 (en) * 1996-03-22 2001-05-23 Oki Electric Industry Co., Ltd. Image encoding method and image encoder
US6263026B1 (en) * 1992-02-29 2001-07-17 Samsung Electronics Co., Ltd. Signal compressing system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3611316A (en) * 1969-12-24 1971-10-05 Ibm Indirect indexed searching and sorting
US5260781A (en) * 1991-08-13 1993-11-09 Sony United Kingdom Ltd. Data compression apparatus and method
US6263026B1 (en) * 1992-02-29 2001-07-17 Samsung Electronics Co., Ltd. Signal compressing system
US5721822A (en) * 1995-07-21 1998-02-24 Intel Corporation Run-length encoding/decoding video signals using scan patterns explicitly encoded into bitstreams
US5671406A (en) * 1995-10-18 1997-09-23 Digital Equipment Corporation Data structure enhancements for in-place sorting of a singly linked list
EP1102490A1 (en) * 1996-03-22 2001-05-23 Oki Electric Industry Co., Ltd. Image encoding method and image encoder
WO1998000977A1 (en) * 1996-07-03 1998-01-08 Motorola Inc. Method and apparatus for bound-based adaptive entropy encoding/decoding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KNUTH D E: "The Art of Computer Programming;Volume 3/Sorting and Searching" SORTING AND SEARCHING, ART OF COMPUTER PROGRAMMING, READING, ADDISON WESLEY, US, Bd. 3, Seite 11 XP002172115 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008058754A2 (en) * 2006-11-16 2008-05-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Device for encoding and decoding
WO2008058754A3 (en) * 2006-11-16 2008-07-10 Fraunhofer Ges Forschung Device for encoding and decoding

Also Published As

Publication number Publication date
WO2003026308A3 (en) 2003-12-04

Similar Documents

Publication Publication Date Title
EP1487113B1 (en) Coding and decoding of transformation coefficients in image or video coders
DE69726661T2 (en) METHOD AND DEVICE FOR CODING A DIGITAL INFORMATION SIGNAL
EP0260748B1 (en) Bitrate reduction method and circuitry
DE69833094T2 (en) Method and apparatus for adaptive data compression with higher degree of compression
DE19506164C2 (en) Method for compressing entered symbols into code words
DE69735679T2 (en) Method of image decoding
EP2296282B1 (en) method and device for arithmetic encoding and decoding with use of multiple lookup tables
DE112012005164T5 (en) Method and apparatus for context-adaptive binary arithmetic coding of syntax elements
DE69928616T2 (en) SYSTEM FOR EXTRACTING CODING PARAMETERS FROM VIDEO DATA
DE112008003626T5 (en) Low complexity coding in data compression systems
DE10049571C1 (en) Method and arrangement for transmitting a vector
EP1425920B1 (en) Method of video coding and computer program product
WO2003026308A2 (en) Method and device for enhancing coding/decoding of video signals
DE10145374C1 (en) Video coding method identifies monotonously decreasing level sequence for using different entropy coding to provide monotomy information and entropy coding value
DE102004041418A1 (en) Method for coding a first and second data word and method for decoding a coded data word
DE19653133C2 (en) System and method for pre-entropic coding
DE19549491C2 (en) Palletised image compression with entropy encoding
EP1304885A2 (en) Method and computer program product for the encoding and decoding of video signal
EP1522148A1 (en) Method for coding positions of data elements in a data structure
DE69734613T2 (en) Coded information signal
DE3638127A1 (en) Method for reducing the bit rate
EP0525349B1 (en) Device for redundancy reduction encoding
DE10224996A1 (en) Method for encoding video signals sorts scanned levels of a predictive error matrix prior to entropic coding so as to let values of levels decrease uniformly and to obtain a more efficient coding.
WO1991009499A1 (en) Data compression process for compressing sequences of picture data of a digital picture signal to be transmitted

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A2

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

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
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