WO1997042767A1 - Process for quantization and a process for inverse quantization of transform coding coefficients of a video data stream - Google Patents
Process for quantization and a process for inverse quantization of transform coding coefficients of a video data stream Download PDFInfo
- Publication number
- WO1997042767A1 WO1997042767A1 PCT/DE1997/000859 DE9700859W WO9742767A1 WO 1997042767 A1 WO1997042767 A1 WO 1997042767A1 DE 9700859 W DE9700859 W DE 9700859W WO 9742767 A1 WO9742767 A1 WO 9742767A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- quantization
- video data
- data stream
- matrix
- coefficients
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
Definitions
- the coding and compression of data to be transmitted is becoming increasingly important.
- the data should be encoded in such a way that the greatest possible compression of the information is achieved with as little loss of information as possible.
- Various methods for coding a video data stream are known, for example block-based image coding methods such as MPEG (MPEG 1 or MPEG 2) [1], the H.261 standard [2] or JPEG [3].
- block-based image coding methods such as MPEG (MPEG 1 or MPEG 2) [1], the H.261 standard [2] or JPEG [3].
- object-based image coding methods are also known.
- the transformation coding coefficients are usually quantized for transformation coding coefficients which result from a transformation coding which is applied to the image to be coded. Furthermore, an inverse quantization is used for the reconstruction of the video data stream on the quantized coefficients, the result values of which are subjected to an inverse transformation coding for the final reconstruction of the digital image.
- the quantization is carried out in such a way that elements of a data matrix which has the transformation coding coefficients during quantization and coefficients quantized during inverse quantization are multiplied by a predeterminable scalar factor and are temporarily stored in an intermediate matrix.
- the elements of the intermediate matrix are multiplied by elements of a predetermined quantization matrix.
- the invention is therefore based on the problem of specifying a method for quantization and for inverse quantization of transformation coding coefficients, wherein less computing time is required to carry out the quantization or for inverse quantization than in the known method and thus the methods are carried out more cost-effectively can be led.
- a first method is used in the method for quantizing transformation coding coefficients of a video data stream
- the first intermediate matrix is temporarily stored and multiplied by a data matrix which contains the transformation coding coefficients.
- a second intermediate matrix is determined, which results from the multiplication of a quantization matrix by at least one scalar factor.
- the second intermediate matrix is also temporarily stored and multiplied by a second data matrix that contains quantized coefficients.
- the method can easily be used in any block-based image coding method, for example in one of the methods for image coding mentioned above.
- 1 is a block diagram showing an arrangement for image coding
- Fig. 2 is a block diagram in which a sketch of the
- FIG. 3 shows a flow diagram in which the method steps for quantization are shown
- Fig. 5 is a flowchart in which the method for
- FIG. 6 shows a flow chart in which the use of the method for quantization and / or for inverse quantization in the context of the image coding is shown;
- FIG. 7 shows a flow chart in which the use of the method according to the invention in the context of image decoding of a video data stream is shown;
- Fig. 8 is a sketch showing two computers, images recorded by a camera are encoded in a first computer and transmitted to a second computer, where they are decoded.
- FIG. 1 shows a block diagram in which an arrangement for image coding is described.
- the arrangement has at least the following components: a first means DCT for performing a transformation coding, for example a discrete cosine transformation; a quantization unit Q; an inverse quantization unit IQ; a second means IDCT for performing inverse transform coding; - an addition unit AE; a memory SP; a third means BS for carrying out a motion estimation; a subtraction unit SE.
- the first means DCT and the quantization unit Q form a forward path VP.
- the inverse quantization Unit IQ and the second means IDCT form a backward path RP.
- a fourth means VLC is provided for performing channel coding of the quantized transformation coefficients, possibly with an additional unit for error detection and / or error correction of bit errors.
- An output of the subtraction unit SE is coupled to an input of the first means DCT.
- An output of the first means DCT is coupled to an input of the quantization unit Q.
- An output of the quantization unit Q is coupled to an input of the inverse quantization unit IQ.
- the output of the quantization unit Q is coupled to an input of the fourth means VLC.
- An output of the inverse quantization unit IQ is coupled to an input of the second means IDCT.
- An output of the second means IDCT is coupled to a first input of the addition unit AE.
- An output of the addition unit AE is coupled to an input of the memory SP.
- An output of the memory SP is coupled to a first input of a third means BS.
- a first output of the third means BS is coupled to a second input of the memory SP. With this coupling, memory addresses ADR are transferred from the third means BS to the memory SP.
- the memory addresses ADR indicate the memory addresses ADR required by the third means BS to carry out the motion estimation.
- a second output of the memory SP is coupled to a second input of the subtraction unit SE and to a second input of the addition unit AE.
- a video data stream VD to be coded which in the case of block-based image coding methods has individual image blocks, is applied to the first input of the subtraction unit SE.
- the video data stream VD to be encoded is also applied to the third means BS, where the video data stream VD is used in the context of a motion estimation.
- the configuration of the quantization unit Q and / or the inverse quantization unit Q is explained in detail in the course of the description of the methods.
- the design of the quantization unit Q or the inverse quantization unit IQ is such that the method for quantization described below or the method for inverse quantization can be carried out.
- the arrangement for image decoding has at least the following components:
- a fifth means VLD for performing an inverse channel coding of quantized transformation coding coefficients; the inverse quantization unit IQ; -
- the second means IDCT for performing the inverse transformation coding; the addition unit AE; the memory SP; the third means BS for motion estimation.
- the quantized transformation coding coefficients are fed to the inverse quantization unit IQ, which is coupled to the fifth means VLD.
- the inverse quantized transformation coding coefficients are fed to the second means IDCT, the input of which with the output of the inverse quantization unit IQ is coupled.
- An output of the second means IDCT is coupled to a first input of the addition unit AE.
- An output of the memory SP is coupled to a second input AE.
- a temporally preceding, reconstructed image of the reconstructed video data stream RVD is applied to the second input of the addition unit AE.
- An output of the addition unit AE is coupled to an input of the memory SP.
- an output of the memory SP is coupled to an input of the third means BS.
- a second input of the third means BS for motion estimation is coupled to an output of the memory SP, via which the reconstructed images which have preceded the time and are stored in the memory SP are fed in to carry out a motion estimation in the third means BS.
- the configuration of the inverse quantization unit IQ is shown in detail in connection with the method according to the invention for inverse quantization.
- a first step 300 of the method for quantization before each quantization it is checked whether at least one scalar factor, which is multiplied by a quantization matrix, or the quantization matrix has changed.
- a first intermediate matrix Y1 is determined 301.
- [4] is known, with at least one scalar factor (cf. FIG. 3).
- the first intermediate matrix Y1 is temporarily stored 302.
- the first intermediate matrix Yl remains unchanged until either the at least one scalar factor or the quantization matrix changes. It has been found that the quantization matrix and the at least one scalar factor for an average of 10 to 20 successive image blocks can be kept unchanged.
- the first intermediate matrix Y1 determined for the last quantization used is used directly for the method step described below.
- the first intermediate matrix Y1 is multiplied by a first data matrix which contains the transformation coding coefficients.
- the transformation coding coefficients are formed by a transformation coding which is applied to the video data stream to be coded.
- a first step 400 it is checked before each quantization whether at least one scalar factor, which is multiplied by a quantization matrix, or the quantization matrix has changed.
- a second intermediate matrix Y2 is determined 401.
- the second intermediate matrix results in the same way as the first intermediate matrix Y1, that is to say from the multiplication of the quantization matrix by at least one scalar factor.
- the second intermediate matrix Y2 is temporarily stored.
- the statements made above The duration during which the quantization matrix and the scalar factor remain unchanged on average also apply to this method.
- the second intermediate matrix Y2 is multiplied by a second data matrix.
- the elements of the second data matrix are coefficients which are present after the inverse channel coding, that is to say quantized transformation coding coefficients which are referred to below as quantized coefficients.
- FIG. 5 shows a further development of the method for quantization shown in FIG. 3, in which at the beginning of the quantization a first quantization result memory for storing result values of the quantization is reset to the value 0 501.
- the corresponding multiplication of the elements of the first intermediate matrix Y1 is carried out 303 with the elements of the first data matrix.
- the value of the corresponding element of the first intermediate matrix Y1 will simply be transferred to a result matrix. In this case, further multiplication operations do not have to be carried out, which leads to a considerable saving in computing time.
- the values of the quantized transformation coding coefficients are stored in the result matrix.
- FIG. 5 relates only to the method of quantization, the corresponding steps can also be used accordingly for inverse quantization without any fundamental changes.
- a possible reduction in the memory requirement is possible if a first buffer store for storing the elements of the first intermediate matrix and / or a second buffer store for storing the elements of the second intermediate matrix Y2 is configured as a cache memory.
- the cash hit rate can be increased further by refining the cache granularity to the elements of the first intermediate matrix Y1 or the second intermediate matrix Y2 for special, predeterminable elements of the intermediate matrices Y1, Y2.
- a corresponding strategy of the cache memory can considerably reduce the size of the first buffer store and the second buffer store required, as a result of which the costs required for implementation are considerably reduced.
- transformation coding coefficients are formed 601 in the first means.
- the transformation coding coefficients are quantized 602 in the quantization unit Q and the quantized transformation coefficients are subjected to an inverse quantization 603 in the inverse quantization unit IQ.
- an inverse transformation coding is carried out on the inversely quantized transformation coding coefficient, whereby a reconstructed video data stream RVD is formed 604. Furthermore, a motion estimation is performed 605 for the reconstructed video data stream RVD. In a last step the reconstructed video data stream RVD is subtracted from the video data stream VD, so that only the difference between the video data stream VD and the reconstructed video data stream RVD is fed 606 to the first means DCT for transform coding.
- Quantization shown as part of image decoding an inverse quantization of the quantized, inverse channel-coded transformation coding coefficients is carried out 701 in the inverse quantization unit.
- IDCT an inverse transformation coding is carried out on the inversely quantized transformation coding coefficient and the reconstructed video data stream RVD is carried out Formed 702.
- BS a motion estimation is carried out 703 for the reconstructed video data stream RVD.
- Both the arrangement for image coding and the arrangement for image decoding can have further components which are not shown in FIGS. 1 and 2. These components are provided, for example, for the standard implementation of scan methods, inverse scan methods, vector quantization, run-length coding or else one Run-length decoding. These additional components and the resulting additional process steps, which are usually in the z.
- standardized block-based image coding methods described above can be used without restrictions in the method according to the invention and in the arrangements according to the invention. Since these method steps are carried out in the standardized methods, but are not essential for the actual invention, they are not described further here.
- the method was only shown in the context of a block-based image coding method in the exemplary embodiment, but can also be used in any object-based image coding method.
- a first computer RI for example realized by the arrangement for image coding
- an image is encoded in the manner described above.
- the image is recorded, for example, by a camera K.
- the first computer RI is coupled to a second computer R2.
- the first computer RI transmits the coded picture to the second computer R2, where the picture is decoded.
- the decoded picture is now displayed, for example, on a screen BS2 of the second computer R2 to a second viewer B2.
- the coded image is not only transmitted, but also decoded in the first computer RI, which is necessary in any case in the block-based method for determining the difference information actually transmitted, and on a screen BS1 of the first computer RI ei ⁇ a first viewer B1 is shown.
- the following publications were cited in this document:
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
This invention concerns a process for quantization and a process for inverse quantization which are used for image encoding processes. This involves determination (301) of a first intermediate matrix (Y1) by multiplying a quantization matrix by at least one scalar factor. The first intermediate matrix (Y1) is temporarily stored (302) and is multiplied by a first data matrix, the elements of which are given by transform coding coefficients.
Description
Beschreibungdescription
Verfahren zur Quantisierung und Verfahren zur inversen Quan¬ tisierung von Transfσrmationscodierungskoeffizienten eines VideodatenstromsMethod for quantization and method for inverse quantization of transformation coding coefficients of a video data stream
Im Rahmen der heutzutage immer mehr an Bedeutung gewinnenden Telekommunikation, vor allem in dem Bereich Multimedia, kommt auch der Codierung und Kompression von zu übertragenden Da- ten, beispielsweise Bilddaten, immer größere Bedeutung zu. Die Codierung der Daten sollte so durchgeführt werden, daß eine möglichst große Komprimierung der Information unter mög¬ lichst geringem Informationsverlust erreicht wird.In the context of telecommunications, which are becoming increasingly important these days, especially in the field of multimedia, the coding and compression of data to be transmitted, for example image data, is becoming increasingly important. The data should be encoded in such a way that the greatest possible compression of the information is achieved with as little loss of information as possible.
Verschiedene Verfahren zur Codierung eines Videodatenstroms sind bekannt, beispielsweise blockbasierte Bildcodierungsver¬ fahren wie MPEG (MPEG 1 oder MPEG 2) [1], der H.261-Standard [2] oder JPEG [3] . Ferner sind verschiedene sog. objektba¬ sierte Bildcodierungsverfahren bekannt.Various methods for coding a video data stream are known, for example block-based image coding methods such as MPEG (MPEG 1 or MPEG 2) [1], the H.261 standard [2] or JPEG [3]. Various so-called object-based image coding methods are also known.
Bei den Bildcodierungsverfahren wird üblicherweise für Trans- formationscodierungskoeffizienten, die sich aus einer Trans- formationscodierung, die auf das zu codierende Bild angewen¬ det wird, ergeben, eine Quantisierung der Transformationsco- dierungskoeffizienten durchgeführt. Ferner wird zur Rekon¬ struktion des Videodatenstroms auf die quantisierten Koeffi¬ zienten eine inverse Quantisierung angewendet, deren Ergeb¬ niswerte einer inversen Transformationscodierung unterzogen werden zur letztendlichen Rekonstruktion des digitalen Bil- des.In the case of the image coding method, the transformation coding coefficients are usually quantized for transformation coding coefficients which result from a transformation coding which is applied to the image to be coded. Furthermore, an inverse quantization is used for the reconstruction of the video data stream on the quantized coefficients, the result values of which are subjected to an inverse transformation coding for the final reconstruction of the digital image.
Eine effiziente und schnelle Quantisierung bzw. inverse Quan¬ tisierung ist von erheblicher Bedeutung zur Gewährleistung einer hohen Datenrate von zu verarbeitenden digitalen Bil- dern.
Üblicherweise wird insbesondere bei blockbasierten Bildcodie¬ rungsverfahren die Quantisierung in der Weise durchgeführt, daß Elemente einer Datenmatrix, die bei der Quantisierung die Transformationscodierungskoeffizienten und bei der inversen Quantisierung quantisierte Koeffizienten aufweist, mit einem vorgebbaren skalaren Faktor multipliziert werden und in einer Zwischenmatrix zwischengespeichert werden. Die Elemente der Zwischenmatrix werden mit Elementen einer vorgegebenen Quan¬ tisierungsmatrix multipliziert.An efficient and rapid quantization or inverse quantization is of considerable importance in order to ensure a high data rate of digital images to be processed. Usually, particularly in block-based image coding methods, the quantization is carried out in such a way that elements of a data matrix which has the transformation coding coefficients during quantization and coefficients quantized during inverse quantization are multiplied by a predeterminable scalar factor and are temporarily stored in an intermediate matrix. The elements of the intermediate matrix are multiplied by elements of a predetermined quantization matrix.
Diese Vorgehensweise birgt v. a. den Nachteil in sich, daß, wie im weiteren beschrieben wird, obwohl die Elemente der Quantisierungsmatrix und der skalare Faktor für mehrere auf¬ einanderfolgende Blöcke unverändert bleiben, die Multiplika- tionen für jeden Bildblock neu durchgeführt werden. Dies führt zu einer erheblichen Anzahl eigentlich nicht erforder¬ lichen Multiplikationen, was wiederum zu einer erhöhten Ver¬ lustleistung bei der Durchführung des bekannten Verfahrens führt. Ferner wird eine erhöhte Rechenzeit benötigt, als dies bei dem erfindungsgemäßen Verfahren der Fall ist, wie im fol¬ genden beschrieben wird.This procedure hides v. a. the disadvantage in itself that, as will be described in the following, although the elements of the quantization matrix and the scalar factor remain unchanged for several successive blocks, the multiplications are carried out anew for each image block. This leads to a considerable number of multiplications which are actually not necessary, which in turn leads to an increased power loss when the known method is carried out. Furthermore, an increased computing time is required than is the case with the method according to the invention, as will be described in the following.
Der Erfindung liegt somit das Problem zugrunde, ein Verfahren zur Quantisierung und zur inversen Quantisierung von Trans- formationscodierungskoeffizienten anzugeben, wobei weniger Rechenzeitbedarf benötigt wird zur Durchführung der Quanti¬ sierung bzw. zur inversen Quantisierung als bei dem bekannten Verfahren und somit die Verfahren kostengünstiger durchge¬ führt werden können.The invention is therefore based on the problem of specifying a method for quantization and for inverse quantization of transformation coding coefficients, wherein less computing time is required to carry out the quantization or for inverse quantization than in the known method and thus the methods are carried out more cost-effectively can be led.
Das Problem wird durch das Verfahren gemäß Patentanspruch 1 und durch das Verfahren gemäß Patentanspruch 2 gelöst.The problem is solved by the method according to claim 1 and by the method according to claim 2.
Bei dem Verfahren zur Quantisierung von Transformationscodie- rungskoeffizienten eines Videodatenstroms wird eine ersteA first method is used in the method for quantizing transformation coding coefficients of a video data stream
Zwischenmatrix ermittelt, die sich ergibt aus der Multiplika¬ tion der Quantisierungsmatrix mit mindestens einem skalaren
Faktor. Die erste Zwischenmatrix wird temporär zwischenge¬ speichert und mit einer Datenmatrix multipliziert, welche die Transformationscodierungskoeffizienten enthält.Intermediate matrix determined, which results from the multiplication of the quantization matrix by at least one scalar Factor. The first intermediate matrix is temporarily stored and multiplied by a data matrix which contains the transformation coding coefficients.
Da sowohl der mindestens eine skalare Faktor als auch die Elemente der Quantisierungsmatrix über mehrere aufeinander¬ folgende zu quantisierende bzw. invers quantisierende Blöcke bzw. Makroblöcke unverändert bleiben, ist auf diese Weise ge¬ währleistet, daß eine geringere Anzahl von Operationen benö- tigt wird, als dies mit der bekannten Anordnung möglich ist. Dies führt ferner zu einer Einsparung benötigter Verlustlei¬ stung, was ebenso zu einer erheblichen Kosteneinsparung führt.Since both the at least one scalar factor and the elements of the quantization matrix remain unchanged over several successive blocks or macro blocks to be quantized or inversely quantized, this ensures that a smaller number of operations is required, than is possible with the known arrangement. This also leads to a saving of the power loss required, which likewise leads to a considerable cost saving.
Dieselben Vorteile gelten ebenso für das Verfahren zur inver¬ sen Quantisierung, bei dem eine zweite Zwischenmatrix ermit¬ telt wird, die sich aus der Multiplikation einer Quantisie¬ rungsmatrix mit mindestens einem skalaren Faktor ergibt. Die zweite Zwischenmatrix wird ebenfalls temporär zwischengespei- chert und mit einer zweiten Datenmatrix multipliziert, die quantisierte Koeffizienten enthält.The same advantages also apply to the method for inverse quantization, in which a second intermediate matrix is determined, which results from the multiplication of a quantization matrix by at least one scalar factor. The second intermediate matrix is also temporarily stored and multiplied by a second data matrix that contains quantized coefficients.
Vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.Advantageous developments of the invention result from the dependent claims.
Zur weiteren Beschleunigung der Durchführung der erfindungs¬ gemäßen Verfahren sowie zur Reduktion des Speicherbedarfs der Anordnungen ist es vorteilhaft, nur vorgebbare Koeffizienten der ersten Zwischenmatrix und/oder der zweiten Zwischenmatrix zu ermitteln und/oder zwischenzuspeichern. Durch diese Vorge¬ hensweise wird sowohl die benötigte Anzahl von Operationen vermindert, da ja eine geringere Anzahl von Elementen der Zwischenmatrizen nur verarbeitet werden müssen und weiterhin wird der Bedarf an Speicherplatz reduziert, da ja auch nur eine geringere Anzahl von Elementen der Zwischenmatrix ge¬ speichert werden müssen.
In einer Weiterbildung des Verfahrens ist es vorteilhaft, ei¬ nen Quantisierungsergebnisspeicher zur Speicherung von Ergeb¬ niswerten der Quantisierung bzw. der inversen Quantisierung zu Beginn jeder Quantisierung bzw. inversen Quantisierung auf den Wert 0 zurückzusetzen und nur Multiplikationen von Ele¬ menten der Zwischenmatrizen durchzuführen, die den Wert 0 und/oder den Wert 1 aufweisen. Durch diese Vorgehensweise wird eine weitere Reduktion benötigter Verlustleistung und eine weitere Reduktion des Rechenzeitbedarfs zur Quantisie- rung erreicht, da unnötige Multiplikationen mit Matrixelemen¬ ten, die den Wert 0 oder den Wert 1 aufweisen, vermieden wer¬ den.To further accelerate the implementation of the methods according to the invention and to reduce the memory requirement of the arrangements, it is advantageous to determine and / or temporarily store only predeterminable coefficients of the first intermediate matrix and / or the second intermediate matrix. This procedure both reduces the number of operations required, since a smaller number of elements of the intermediate matrices only have to be processed, and furthermore the space requirement is reduced, since only a smaller number of elements of the intermediate matrix are stored Need to become. In a development of the method, it is advantageous to reset a quantization result memory for storing result values of the quantization or the inverse quantization to the value 0 at the beginning of each quantization or inverse quantization and only to carry out multiplications of elements of the intermediate matrices, which have the value 0 and / or the value 1. This procedure results in a further reduction in the power loss required and a further reduction in the computing time required for quantization, since unnecessary multiplications with matrix elements which have the value 0 or the value 1 are avoided.
Das Verfahren kann ohne weiteres in jedem blockbasierten Bildcodierungsverfahren, beispielsweise bei einem der oben genannten Verfahren zur Bildcodierung verwendet werden.The method can easily be used in any block-based image coding method, for example in one of the methods for image coding mentioned above.
Ein Ausfuhrungsbeispiel der Erfindung ist in den Figuren dar¬ gestellt und wird im weiteren näher erläutert.An exemplary embodiment of the invention is shown in the figures and is explained in more detail below.
Es zeigenShow it
Fig. 1 ein Blockdiagramm, mit dem eine Anordnung zur Bild¬ codierung dargestellt ist;1 is a block diagram showing an arrangement for image coding;
Fig. 2 ein Blockdiagramm, in dem eine Skizze derFig. 2 is a block diagram in which a sketch of the
Anordnung zur Bilddecodierung dargestellt ist;Arrangement for image decoding is shown;
Fig. 3 ein Ablaufdiagramm, in dem die Verfahrensschritte zur Quantisierung dargestellt sind;3 shows a flow diagram in which the method steps for quantization are shown;
Fig. 4 ein Ablaufdiagramm, in dem die Verfahrensschritte des Verfahrens zur inversen Quantisierung darge¬ stellt sind;4 shows a flow chart in which the method steps of the method for inverse quantization are shown;
Fig. 5 ein Ablaufdiagramm, in dem das Verfahren zurFig. 5 is a flowchart in which the method for
Quantisierung mit einigen Weiterbildungen des Ver-
fahrens dargestellt sind;Quantization with some further training of the driving are shown;
Fig. 6 ein Ablaufdiagramm, in dem die Verwendung des Verfahrens zur Quantisierung und/oder zur in- versen Quantisierung im Rahmen der Bildcodierung dargestellt ist;6 shows a flow chart in which the use of the method for quantization and / or for inverse quantization in the context of the image coding is shown;
Fig. 7 ein Ablaufdiagramm, in dem die Verwendung der erfindungsgemäßen Verfahren im Rahmen der Bild- decodierung eines Videodatenstroms dargestellt ist;7 shows a flow chart in which the use of the method according to the invention in the context of image decoding of a video data stream is shown;
Fig. 8 eine Skizze, in der zwei Rechner dargestellt sind, wobei in einem ersten Rechner von einer Kamera aufgenommene Bilder codiert werden und zu einem zweiten Rechner übertragen werden, wo sie decodiert werden.Fig. 8 is a sketch showing two computers, images recorded by a camera are encoded in a first computer and transmitted to a second computer, where they are decoded.
In Fig. 1 ist ein Blockdiagramm dargestellt, in dem eine An- Ordnung zur Bildcodierung beschrieben ist.1 shows a block diagram in which an arrangement for image coding is described.
Die Anordnung weist mindestens folgende Komponenten auf: Ein erstes Mittel DCT zur Durchführung einer Trans¬ formationscodierung, beispielsweise einer diskreten Cosinustransformation; eine Quantisierungseinheit Q; eine inverse Quantisierungseinheit IQ; ein zweites Mittel IDCT zur Durchführung einer in¬ versen Transformatinscodierung; - eine Additionseinheit AE; einen Speicher SP; ein drittes Mittel BS zur Durchführung einer Be¬ wegungsschätzung; eine Subtraktionseinheit SE.The arrangement has at least the following components: a first means DCT for performing a transformation coding, for example a discrete cosine transformation; a quantization unit Q; an inverse quantization unit IQ; a second means IDCT for performing inverse transform coding; - an addition unit AE; a memory SP; a third means BS for carrying out a motion estimation; a subtraction unit SE.
Hierbei bilden das erste Mittel DCT und die Quantisierungs¬ einheit Q einen Vorwärtspfad VP. Die inverse Quantisierungs-
einheit IQ sowie das zweite Mittel IDCT bilden einen Rück¬ wärtspfad RP.Here, the first means DCT and the quantization unit Q form a forward path VP. The inverse quantization Unit IQ and the second means IDCT form a backward path RP.
Weiterhin ist ein viertes Mittel VLC zur Durchführung einer Kanalcodierung der quantisierten Transformationskoeffizienten möglicherweise mit einer zusätzlichen Einheit zur Fehlerer¬ kennung und/oder Fehlerkorrektur von Bit-Fehlern, vorgesehen.Furthermore, a fourth means VLC is provided for performing channel coding of the quantized transformation coefficients, possibly with an additional unit for error detection and / or error correction of bit errors.
Ein Ausgang der Subtraktionseinheit SE ist mit einem Eingang des ersten Mittels DCT gekoppelt. Ein Ausgang des ersten Mit¬ tels DCT ist mit einem Eingang der Quantisierungseinheit Q gekoppelt. Ein Ausgang der Quantisierungseinheit Q ist mit einem Eingang der inversen Quantisierungseinheit IQ gekop¬ pelt. Weiterhin ist der Ausgang der Quantisierungseinheit Q mit einem Eingang des vierten Mittels VLC gekoppelt. Ein Aus¬ gang der inversen Quantisierungseinheit IQ ist mit einem Ein¬ gang des zweiten Mittels IDCT gekoppelt. Ein Ausgang des zweiten Mittels IDCT ist mit einem ersten Eingang der Additi¬ onseinheit AE gekoppelt. Ein Ausgang der Additionseinheit AE ist mit einem Eingang des Speichers SP gekoppelt. Ein Ausgang des Speichers SP ist mit einem ersten Eingang eines dritten Mittels BS gekoppelt.An output of the subtraction unit SE is coupled to an input of the first means DCT. An output of the first means DCT is coupled to an input of the quantization unit Q. An output of the quantization unit Q is coupled to an input of the inverse quantization unit IQ. Furthermore, the output of the quantization unit Q is coupled to an input of the fourth means VLC. An output of the inverse quantization unit IQ is coupled to an input of the second means IDCT. An output of the second means IDCT is coupled to a first input of the addition unit AE. An output of the addition unit AE is coupled to an input of the memory SP. An output of the memory SP is coupled to a first input of a third means BS.
Ein erster Ausgang des dritten Mittels BS ist mit einem zwei- ten Eingang des Speichers SP gekoppelt. Mit dieser Kopplung werden Speicheradressen ADR von dem dritten Mittel BS an den Speicher SP übertragen. Die Speicheradressen ADR geben die von dem dritten Mittel BS zur Durchführung der Bewegungs¬ schätzung benötigten Speicheradressen ADR an.A first output of the third means BS is coupled to a second input of the memory SP. With this coupling, memory addresses ADR are transferred from the third means BS to the memory SP. The memory addresses ADR indicate the memory addresses ADR required by the third means BS to carry out the motion estimation.
Ferner ist ein zweiter Ausgang des Speichers SP mit einem zweiten Eingang der Subtraktionseinheit SE und mit einem zweiten Eingang der Additionseinheit AE gekoppelt. Ein zu co¬ dierender Videodatenstrom VD, der bei blockbasierten Bildco- dierungsverfahren einzelne Bildblöcke aufweist, wird an den ersten Eingang der Subtraktionseinheit SE gelegt.
Der zu codierende Videodatenstrom VD wird außerdem an das dritte Mittel BS gelegt, wo der Videodatenstrom VD im Rahmen einer Bewegungschätzung verwendet wird.Furthermore, a second output of the memory SP is coupled to a second input of the subtraction unit SE and to a second input of the addition unit AE. A video data stream VD to be coded, which in the case of block-based image coding methods has individual image blocks, is applied to the first input of the subtraction unit SE. The video data stream VD to be encoded is also applied to the third means BS, where the video data stream VD is used in the context of a motion estimation.
Die Ausgestaltung der Quantisierungseinheit Q und/oder der inversen Quantisierungseinheit Q wird im Rahmen der Beschrei¬ bung der Verfahren detailliert erläutert. Die Ausgestaltung der Quantisierungseinheit Q bzw. der inversen Quantisierungs¬ einheit IQ ist derart, daß das im weiteren beschriebene Ver- fahren zur Quantisierung bzw. das Verfahren zur inversen Quantisierung durchgeführt werden kann.The configuration of the quantization unit Q and / or the inverse quantization unit Q is explained in detail in the course of the description of the methods. The design of the quantization unit Q or the inverse quantization unit IQ is such that the method for quantization described below or the method for inverse quantization can be carried out.
In Fig. 2 ist eine Anordnung zur Bilddecodierung dargestellt. Die Anordnung zur Bilddecodierung weist mindestens folgende Komponenten auf:2 shows an arrangement for image decoding. The arrangement for image decoding has at least the following components:
Ein fünftes Mittel VLD zur Durchführung einer inversen Kanalcodierung quantisierter Transformationsco¬ dierungskoeffizienten; die inverse Quantisierungseinheit IQ; - das zweite Mittel IDCT zur Durchführung der inversen TransformationsCodierung; die Additionseinheit AE; den Speicher SP; das dritte Mittel BS zur Bewegungsschätzung.A fifth means VLD for performing an inverse channel coding of quantized transformation coding coefficients; the inverse quantization unit IQ; - The second means IDCT for performing the inverse transformation coding; the addition unit AE; the memory SP; the third means BS for motion estimation.
Ein zu rekonstruierender Videodatenstrom ZVD, der quantisier- te, kanalcodierte Transformationscodierungskoeffizienten auf¬ weist, wird dem fünften Mittel VLD zur inversen Kanalcodie¬ rung zugeführt.A video data stream ZVD to be reconstructed, which has quantized, channel-coded transformation coding coefficients, is fed to the fifth means VLD for inverse channel coding.
Nach Durchführung der inversen Kanalcodierung VLD, werden die quantisierten Transformationscodierungskoeffizienten der in¬ versen Quantisierungseinheit IQ, die mit dem fünften Mittel VLD gekoppelt ist, zugeführt. Nach der inversen Quantisierung IQ werden die invers quantisierten Transformationscodierungs¬ koeffizienten dem zweiten Mittel IDCT zugeführt, deren Ein¬ gang mit dem Ausgang der inversen Quantisierungseinheit IQ
gekoppelt ist. Ein Ausgang des zweiten Mittels IDCT ist mit einem ersten Eingang der Additionseinheit AE gekoppelt. Mit einem zweiten Eingang AE ist ein Ausgang des Speichers SP ge¬ koppelt. An den zweiten Eingang der Additionseinheit AE wird ein zeitlich vorangegangenes, rekonstruiertes Bild des rekon¬ struierten Videodatenstroms RVD angelegt. Ein Ausgang der Ad¬ ditionseinheit AE ist mit einem Eingang des Speichers SP ge¬ koppelt. Ferner ist ein Ausgang des Speichers SP mit einem Eingang des dritten Mittels BS gekoppelt. Ein zweiter Eingang des dritten Mittels BS zur Bewegungsschätzung ist mit einem Ausgang des Speichers SP gekoppelt, über den zeitlich voran¬ gegangene, in dem Speicher SP gespeicherte, rekonstruierte Bilder zur Durchführung einer Bewegungsschätzung im dritten Mittel BS zugeführt werden.After the inverse channel coding VLD has been carried out, the quantized transformation coding coefficients are fed to the inverse quantization unit IQ, which is coupled to the fifth means VLD. After the inverse quantization IQ, the inverse quantized transformation coding coefficients are fed to the second means IDCT, the input of which with the output of the inverse quantization unit IQ is coupled. An output of the second means IDCT is coupled to a first input of the addition unit AE. An output of the memory SP is coupled to a second input AE. A temporally preceding, reconstructed image of the reconstructed video data stream RVD is applied to the second input of the addition unit AE. An output of the addition unit AE is coupled to an input of the memory SP. Furthermore, an output of the memory SP is coupled to an input of the third means BS. A second input of the third means BS for motion estimation is coupled to an output of the memory SP, via which the reconstructed images which have preceded the time and are stored in the memory SP are fed in to carry out a motion estimation in the third means BS.
Die Ausgestaltung der inversen Quantisierungseinheit IQ wird im Zusammenhang mit dem erfindungsgemäßen Verfahren zur in¬ versen Quantisierung detailliert dargestellt.The configuration of the inverse quantization unit IQ is shown in detail in connection with the method according to the invention for inverse quantization.
In einem ersten Schritt 300 des Verfahrens zur Quantisierung vor jeder Quantisierung überprüft, ob sich mindestens ein skalarer Faktor, der mit einer Quantisierungsmatrix multipli¬ ziert wird, oder die Quantisierungsmatrix geändert hat.In a first step 300 of the method for quantization before each quantization, it is checked whether at least one scalar factor, which is multiplied by a quantization matrix, or the quantization matrix has changed.
Hat sich der skalare Faktor und/oder die Quantisierungsmatrix geändert, so wird eine erste Zwischenmatrix Yl ermittelt 301.If the scalar factor and / or the quantization matrix has changed, a first intermediate matrix Y1 is determined 301.
Dies geschieht durch Multiplikation der Quantisierungsmatrix, deren Aufbau beispielsweise aus den Dokumenten [1], [2], [3],This is done by multiplying the quantization matrix, the structure of which, for example, from documents [1], [2], [3],
[4] bekannt ist, mit mindestens dem einen skalaren Faktor er- gibt (vgl. Figur 3) .[4] is known, with at least one scalar factor (cf. FIG. 3).
Die erste Zwischenmatrix Yl wird temporär zwischengespeichert 302. Die erste Zwischenmatrix Yl bleibt solange unverändert zwischengespeichert, bis sich entweder der mindestens eine skalare Faktor oder die Quantisierungsmatrix ändert. Es hat sich herausgestellt, daß die Quantisierungsmatrix und der mindestens eine skalare Faktor für durchschnittlich 10 bis 20
aufeinanderfolgende Bildblocke unverändert beibehalten werden kann.The first intermediate matrix Y1 is temporarily stored 302. The first intermediate matrix Yl remains unchanged until either the at least one scalar factor or the quantization matrix changes. It has been found that the quantization matrix and the at least one scalar factor for an average of 10 to 20 successive image blocks can be kept unchanged.
Ergibt die Prüfung in dem ersten Verfahrensschritt 300 zur Quantisierung, daß sowohl der mindestens eine skalare Faktor als auch die Quantisierungsmatrix unverändert geblieben sind, die für die zuletzt durchgeführte Quantisierung ermittelte erste Zwischenmatrix Yl direkt für den im weiteren beschrie¬ benen Verfahrensschritt verwendet.If the check in the first method step 300 for quantization shows that both the at least one scalar factor and the quantization matrix have remained unchanged, the first intermediate matrix Y1 determined for the last quantization used is used directly for the method step described below.
In einem dritten Schritt 303 wird die erste Zwischenmatrix Yl mit einer ersten Datenmatrix multipliziert, die die Transfor¬ mationscodierungskoeffizienten enthalt. Die Transformation¬ scodierungskoeffizienten werden durch eine Transformationsco- dierung, die auf den zu codierenden Videodatenstrom angewen¬ det wird, gebildet.In a third step 303, the first intermediate matrix Y1 is multiplied by a first data matrix which contains the transformation coding coefficients. The transformation coding coefficients are formed by a transformation coding which is applied to the video data stream to be coded.
In Fig. 4 ist ein Ablaufdiagramm dargestellt, welches die einzelnen Verfahrensschritte des Verfahrens zur inversen Quantisierung beschreibt.4 shows a flowchart which describes the individual method steps of the method for inverse quantization.
Bei der inversen Quantisierung von quantisierten Transforma¬ tionscodierungskoeffizienten des zu rekonstruierenden Video- datenstroms ZVD wird in einem ersten Schritt 400 vor jeder Quantisierung überprüft, ob sich mindestens ein skalarer Fak¬ tor, der mit einer Quantisierungsmatrix multipliziert wird, oder die Quantisierungsmatrix geändert hat.In the inverse quantization of quantized transformation coding coefficients of the video data stream ZVD to be reconstructed, in a first step 400 it is checked before each quantization whether at least one scalar factor, which is multiplied by a quantization matrix, or the quantization matrix has changed.
Hat sich der skalare Faktor und/oder die Quantisierungsmatrix geändert, so wird eine zweite Zwischenmatrix Y2 ermittelt 401. Die zweite Zwischenmatrix ergibt sich auf die gleiche Weise wie die erste Zwischenmatrix Yl, also aus der Multipli¬ kation der Quantisierungsmatrix mit mindestens einem skalaren Faktor.If the scalar factor and / or the quantization matrix has changed, a second intermediate matrix Y2 is determined 401. The second intermediate matrix results in the same way as the first intermediate matrix Y1, that is to say from the multiplication of the quantization matrix by at least one scalar factor.
In einem zweiten Schritt 402 wird die zweite Zwischenmatrix Y2 temporar zwischengespeichert. Die oben getroffenen Aussa-
gen zur Dauer, während der die Quantisierungsmatrix und der skalare Faktor durchschnittlich unverändert bleiben, gelten auch bei diesem Verfahren.In a second step 402, the second intermediate matrix Y2 is temporarily stored. The statements made above The duration during which the quantization matrix and the scalar factor remain unchanged on average also apply to this method.
In einem letzten Schritt 403 wird die zweite Zwischenmatrix Y2 mit einer zweiten Datenmatrix multipliziert. Die Elemente der zweiten Datenmatrix sind Koeffizienten, die nach der in¬ versen Kanalcodierung vorliegen, also quantisierte Transfor¬ mationscodierungskoeffizienten, die im weiteren als quanti- sierte Koeffizienten bezeichnet werden.In a last step 403, the second intermediate matrix Y2 is multiplied by a second data matrix. The elements of the second data matrix are coefficients which are present after the inverse channel coding, that is to say quantized transformation coding coefficients which are referred to below as quantized coefficients.
In Fig. 5 ist eine Weiterbildung des in Fig. 3 dargestellten Verfahrens zur Quantisierung dargestellt, bei der zu Beginn der Quantisierung ein erster Quantisierungsergebnisspeicher zur Speicherung von Ergebniswerten der Quantisierung auf den Wert 0 zurückgesetzt wird 501.FIG. 5 shows a further development of the method for quantization shown in FIG. 3, in which at the beginning of the quantization a first quantization result memory for storing result values of the quantization is reset to the value 0 501.
Da der erste Quantisierungsergebnisspeicher zurückgesetzt wurde, müssen bei dieser Weiterbildung lediglich Operationen für Elemente der ersten Datenmatrix durchgeführt werden, die einen Wert ungleich Null aufweisen.Since the first quantization result memory has been reset, only operations for elements of the first data matrix that have a non-zero value have to be carried out in this development.
Nach der Speicherung 302 der ersten Zwischenmatrix Yl wird in einer weiteren Ausgestaltung des Verfahrens für jedes Element der ersten Datenmatrix überprüft, ob das Element den Wert 1 aufweist 502.After the storage 302 of the first intermediate matrix Y1, in a further embodiment of the method it is checked for each element of the first data matrix whether the element has the value 1 502.
Ist dies nicht der Fall, wird die entsprechende Multiplikati¬ on der Elemente der ersten Zwischenmatrix Yl mit den Elemen- ten der ersten Datenmatrix durchgeführt 303.If this is not the case, the corresponding multiplication of the elements of the first intermediate matrix Y1 is carried out 303 with the elements of the first data matrix.
Ist dies jedoch der Fall, so wird der Wert des entsprechenden Elements der ersten Zwischenmatrix Yl einfach in eine Ergeb¬ nismatrix übernommen werden. Weitere Multiplikationsoperatio- nen müssen in diesem Fall nicht durchgeführt werden, was zu einer erheblichen Rechenzeiteinsparung führt.
In der Ergebnismatrix werden die Werte der quantisierten Transformationscodierungskoeffizienten gespeichert.If this is the case, however, the value of the corresponding element of the first intermediate matrix Y1 will simply be transferred to a result matrix. In this case, further multiplication operations do not have to be carried out, which leads to a considerable saving in computing time. The values of the quantized transformation coding coefficients are stored in the result matrix.
Obwohl die Weiterbildung in Fig. 5 sich nur auf das Verfahren der Quantisierung bezieht, können die entsprechenden Schritte ohne prinzipielle Änderungen entsprechend für die inverse Quantisierung ebenso eingesetzt werden.Although the development in FIG. 5 relates only to the method of quantization, the corresponding steps can also be used accordingly for inverse quantization without any fundamental changes.
Ferner ist es in einer Weiterbildung des Verfahrens zur Quan- tisierung und des Verfahrens zur inversen Quantisierung vor¬ gesehen, nur vorgebbare Koeffizienten der ersten Zwischenma¬ trix Yl und/oder der zweiten Zwischenmatrix Y2 zu ermitteln und/oder zwischenzuspeichern.Furthermore, in a further development of the method for quantization and the method for inverse quantization, it is provided that only predeterminable coefficients of the first intermediate matrix Y1 and / or the second intermediate matrix Y2 are determined and / or buffered.
Dies ist vorteilhaft, da es sich herausgestellt hat, daß nur im Durchschnitt ungefähr 10 bis 15 % aller Elemente der er¬ sten Datenmatrix und/oder der zweite Datenmatrix Y2 einen Wert aufweisen, der ungleich Null ist. Dadurch, daß nur ein Teil aller Elemente der ersten Zwischenmatrix Yl bzw. der zweiten Zwischenmatrix Y2 berücksichtigt werden, wird dieThis is advantageous since it has been found that only on average approximately 10 to 15% of all elements of the first data matrix and / or the second data matrix Y2 have a value that is not equal to zero. The fact that only a part of all elements of the first intermediate matrix Y1 or the second intermediate matrix Y2 is taken into account, the
Durchführung der Verfahren erheblich beschleunigt. Ferner ist eine mögliche Reduktion des Speicherbedarfs möglich, wenn ein erster Zwischenspeicher zur Speicherung der Elemente der er¬ sten Zwischenmatrix und/oder ein zweiter Zwischenspeicher zur Speicherung der Elemente der zweiten Zwischenmatrix Y2 als ein Cache-Speicher ausgestaltet ist. Durch Verfeinerung der Cache-Granularität auf die Elemente der ersten Zwischenmatrix Yl oder der zweiten Zwischenmatrix Y2 für spezielle, vorgeb¬ bare Elemente der Zwischenmatrizen Yl, Y2 kann die Cash-Hit- Rate weiter erhöht werden. Durch eine entsprechende Strategie des Cache-Speichers kann die Größe des benötigten ersten Zwi¬ schenspeichers und des zweiten Zwischenspeichers erheblich reduziert werden, wodurch die benötigten Kosten zur Realisie¬ rung erheblich reduziert werden.Implementation of the procedures accelerated considerably. Furthermore, a possible reduction in the memory requirement is possible if a first buffer store for storing the elements of the first intermediate matrix and / or a second buffer store for storing the elements of the second intermediate matrix Y2 is configured as a cache memory. The cash hit rate can be increased further by refining the cache granularity to the elements of the first intermediate matrix Y1 or the second intermediate matrix Y2 for special, predeterminable elements of the intermediate matrices Y1, Y2. A corresponding strategy of the cache memory can considerably reduce the size of the first buffer store and the second buffer store required, as a result of which the costs required for implementation are considerably reduced.
In Fig. 6 ist in einem Ablaufdiagramm die Verwendung der Ver¬ fahren in einem Verfahren zur Bildcodierung dargestellt. Da-
bei werden in dem ersten Mittel DCT Transformationscodie¬ rungskoeffizienten gebildet 601. Die Transformationscodie¬ rungskoeffizienten werden in der Quantisierungseinheit Q quantisiert 602 und die quantisierten Transformationkoeffizi- enten werden in der inversen Quantisierungseinheit IQ einer inversen Quantisierung unterzogen 603.6 shows the use of the methods in a method for image coding in a flow chart. There- at DCT, transformation coding coefficients are formed 601 in the first means. The transformation coding coefficients are quantized 602 in the quantization unit Q and the quantized transformation coefficients are subjected to an inverse quantization 603 in the inverse quantization unit IQ.
In dem zweiten Mittel IDCT wird eine inverse Transformation¬ scodierung auf den invers quantisierten Transformationscodie- rungskoeffizienten durchgeführt, wodurch ein rekonstruierter Videodatenstrom RVD gebildet wird 604. Ferner wird für den rekonstruierten Videodatenstrom RVD eine Bewegungsschätzung in dem dritten Mittel BS durchgeführt 605. In einem letzten Schritt wird der rekonstruierte Videodatenstrom RVD von dem Videodatenstrom VD subtrahiert, so daß nur die Differenz des Videodatenstrom VD und des rekonstruierten Videodatenstroms RVD dem ersten Mittel DCT zur Transformationscodierung zuge¬ führt wird 606.In the second means IDCT, an inverse transformation coding is carried out on the inversely quantized transformation coding coefficient, whereby a reconstructed video data stream RVD is formed 604. Furthermore, a motion estimation is performed 605 for the reconstructed video data stream RVD. In a last step the reconstructed video data stream RVD is subtracted from the video data stream VD, so that only the difference between the video data stream VD and the reconstructed video data stream RVD is fed 606 to the first means DCT for transform coding.
In Fig. 7 ist die Verwendung des Verfahrens zur inversenIn Fig. 7 is the use of the inverse method
Quantisierung im Rahmen der Bilddecodierung dargestellt. Da¬ bei wird in der inversen Quantisierungseinheit eine inverse Quantisierung der quantisierten, invers kanalcodierten Trans¬ formationscodierungskoeffizienten durchgeführt 701. In dem zweiten Mittel IDCT wird auf den invers quantisierten Trans¬ formationscodierungskoeffizienten eine inverse Transformati¬ onscodierung durchgeführt und es wird der rekonstruierte Vi¬ deodatenstrom RVD gebildet 702. In dem dritten Mittel BS wird eine Bewegungsschätzung für den rekonstruierten Videodaten- ström RVD durchgeführt 703.Quantization shown as part of image decoding. In this case, an inverse quantization of the quantized, inverse channel-coded transformation coding coefficients is carried out 701 in the inverse quantization unit. In the second means IDCT, an inverse transformation coding is carried out on the inversely quantized transformation coding coefficient and the reconstructed video data stream RVD is carried out Formed 702. In the third means BS, a motion estimation is carried out 703 for the reconstructed video data stream RVD.
Sowohl die Anordnung zur Bildcodierung als auch die Anordnung zur Bilddecodierung können weitere Komponenten aufweisen, die in den Fig. 1 und 2 nicht dargestellt sind. Diese Komponenten sind beispielsweise vorgesehen zur standardmäßigen Durchfüh¬ rung von Scan-Verfahren, inversen Scan-Verfahren, einer Vek¬ torquantisierung, einer Run-Length-Codierung oder auch einer
Run-Length-Decodierung. Diese zusätzlichen Komponenten und die dadurch zusätzlich entstandenen Verfahrensschritte, die üblicherweise in den z. Z. standardisierten, oben beschriebe¬ nen blockbasierten Bildcodierungsverfahren eingesetzt werden, können selbstverständlich ohne Einschränkungen m dem erfin¬ dungsgemaßen Verfahren und in den erfindungsgemaßen Anordnun¬ gen verwendet werden. Da diese Verfahrensschritte zwar in den standardisierten Verfahren durchgeführt werden, aber für die eigentliche Erfindung nicht wesentlich sind, werden sie hier nicht weiter beschrieben.Both the arrangement for image coding and the arrangement for image decoding can have further components which are not shown in FIGS. 1 and 2. These components are provided, for example, for the standard implementation of scan methods, inverse scan methods, vector quantization, run-length coding or else one Run-length decoding. These additional components and the resulting additional process steps, which are usually in the z. For example, standardized block-based image coding methods described above can be used without restrictions in the method according to the invention and in the arrangements according to the invention. Since these method steps are carried out in the standardized methods, but are not essential for the actual invention, they are not described further here.
Das Verfahren wurde zwar in dem Ausfuhrungsbeispiel lediglich im Rahmen eines blockbasierten Bildcodierungsverfahren darge¬ stellt, kann aber ohne weiteres in jedem objektbasierten Bildcodierungsverfahren ebenso eingesetzt werden.The method was only shown in the context of a block-based image coding method in the exemplary embodiment, but can also be used in any object-based image coding method.
In Fig. 8 ist eine Anordnung dargestellt, in der die Verfah¬ ren verwendet werden. In einem ersten Rechner RI, beispiels¬ weise durch die Anordnung zur Bildcodierung realisiert, wird ein Bild auf die im vorigen beschriebene Weise codiert. Das Bild wird beispielsweise von einer Kamera K aufgenommen. Der erste Rechner RI ist mit einem zweiten Rechner R2 gekoppelt. Der erste Rechner RI übertragt das codierte Bild an den zwei¬ ten Rechner R2, wo das Bild decodiert wird. Das decodierte Bild wird nun beispielsweise auf einem Bildschirm BS2 des zweiten Rechners R2 einem zweiten Betrachter B2 dargestellt. Es ist ferner vorgesehen, daß das codierte Bild nicht nur übertragen, sondern auch m dem ersten Rechner RI decodiert wird, was bei den blockbasierten Verfahren ohnehin notig ist zur Ermittlung der eigentlich übertragenen Differenzinforma¬ tion, und auf einem Bildschirm BS1 des ersten Rechners RI ei¬ nem ersten Betrachter Bl dargestellt wird.
In diesem Dokument wurden folgende Veröffentlichungen zi¬ tiert:8 shows an arrangement in which the methods are used. In a first computer RI, for example realized by the arrangement for image coding, an image is encoded in the manner described above. The image is recorded, for example, by a camera K. The first computer RI is coupled to a second computer R2. The first computer RI transmits the coded picture to the second computer R2, where the picture is decoded. The decoded picture is now displayed, for example, on a screen BS2 of the second computer R2 to a second viewer B2. It is further provided that the coded image is not only transmitted, but also decoded in the first computer RI, which is necessary in any case in the block-based method for determining the difference information actually transmitted, and on a screen BS1 of the first computer RI ei ¬ a first viewer B1 is shown. The following publications were cited in this document:
[1] D. Le Gall, A Video Compression Standard for Multimedia Applications, Communications of the ACM, Vol. 34, No. 4, S. 47 - 58, April 1991[1] D. Le Gall, A Video Compression Standard for Multimedia Applications, Communications of the ACM, Vol. 34, No. 4, pp. 47-58, April 1991
[2] Ming Liou, Overview of the px64 kbit/s Video Coding Standard, Communications of the ACM, Vol. 34, No. 4, S. 60 - 63, April 1991[2] Ming Liou, Overview of the px64 kbit / s Video Coding Standard, Communications of the ACM, Vol. 34, No. 4, pp. 60-63, April 1991
[3] G. Wallace, The JPEG Still Picture Compression Standard, Communications of the ACM, Vol. 34, No. 4, S. 31 - 44, April 1991
[3] G. Wallace, The JPEG Still Picture Compression Standard, Communications of the ACM, vol. 34, no. 4, pp. 31-44, April 1991
Claims
1. Verfahren zur Quantisierung von Transformationsodierungs- koeffizienten eines Videodatenstroms,1. Method for quantizing transform coding coefficients of a video data stream,
- bei dem eine erste Zwischenmatrix (Yl) , welche sich ergibt aus der Multiplikation einer Quantisierungsmatrix und min¬ destens einem skalaren Faktor, ermittelt wird (301),a first intermediate matrix (Y1), which results from the multiplication of a quantization matrix and at least one scalar factor, is determined (301),
- bei dem die erste Zwischenmatrix (Yl) temporär zwischenge- speichert wird (302), und- in which the first intermediate matrix (Yl) is temporarily stored (302), and
- bei dem die erste Zwischenmatrix (Yl) mit einer ersten Da¬ tenmatrix multipliziert wird, welche die Transformationsco¬ dierungskoeffizienten enthalt (303) .- in which the first intermediate matrix (Y1) is multiplied by a first data matrix which contains the transformation coding coefficients (303).
2. Verfahren zur inversen Quantisierung von quantisierten Ko- reffizienten eines zu rekonstruierenden Videodatenstroms,2. Method for inverse quantization of quantized coefficients of a video data stream to be reconstructed,
- bei dem eine zweite Zwischenmatrix (Y2), welche sich ergibt aus der Multiplikation einer Quantisierungsmatrix und min¬ destens einem skalaren Faktor, ermittelt wird (401), - bei dem die zweite Zwischenmatrix (Y2) temporar zwischenge¬ speichert wird (402), und- in which a second intermediate matrix (Y2), which results from the multiplication of a quantization matrix and at least one scalar factor, is determined (401), - in which the second intermediate matrix (Y2) is temporarily stored (402), and
- bei dem die zweite Zwischenmatrix (Y2) mit einer zweiten Datenmatrix multipliziert wird, welche die quantisierten Koeffizienten enthalt (403) .- in which the second intermediate matrix (Y2) is multiplied by a second data matrix which contains the quantized coefficients (403).
3. Verfahren nach Anspruch 1 oder 2, bei dem nur vorgebbare Koeffizienten der ersten Zwischenma¬ trix (Yl) und/oder der zweiten Zwischenmatrix (Y2) ermittelt werden und/oder zwischengespeichert werden.3. The method according to claim 1 or 2, in which only predeterminable coefficients of the first intermediate matrix (Yl) and / or the second intermediate matrix (Y2) are determined and / or temporarily stored.
4. Verfahren nach einem der Ansprüche 1 bis 3, bei dem ein erster Quantisierungsergebnisspeicher zur Spei¬ cherung von Ergebniswerten der Quantisierung und/oder ein zweiter Quantisierungsergebnisspeicher zur Speicherung von Ergebniswerten der inversen Quantisierung zu Beginn jeder4. The method according to claim 1, wherein a first quantization result memory for storing result values of the quantization and / or a second quantization result memory for storing result values of the inverse quantization at the beginning of each
Quantisierung bzw. inversen Quantisierung auf den Wert Null zurückgesetzt wird und nur Multiplikationen von Elementen der ersten Datenmatrix bzw. der zweiten Datenmatrix (Y2), die nicht den Wert Null und/oder den Wert Eins aufweisen, mit Elementen der ersten Zwischenmatrix (Yl) bzw. der zweiten Zwischenmatrix (Yl) durchgeführt werden.Quantization or inverse quantization is reset to zero and only multiplication of elements of the first data matrix or the second data matrix (Y2), which do not have the value zero and / or the value one, are carried out with elements of the first intermediate matrix (Yl) or the second intermediate matrix (Yl).
5. Verwendung des Verfahrens nach einem der Ansprüche 1 bis 4 zur Bildcodierung,5. Use of the method according to one of claims 1 to 4 for image coding,
- bei dem in einem ersten Mittel (DCT) Transformationsodie- rungskoeffizienten gebildet werden (601), - bei dem in einer Quantisierungseinheit (Q) die Transforma- tionsodierungskoeffizienten quanitisiert werden (602),- in which transformation coding coefficients are formed in a first means (DCT), - in which the transformation coding coefficients are quantized (602) in a quantization unit (Q),
- bei dem in einer inversen Quantisierungseinheit (IQ) die quantisierten Transformationsodierungskoeffizienten einer inversen Quantisierung unterzogen werden (603), - bei dem in einem zweiten Mittel (IDCT) eine inverse Trans¬ formationscodierung (IDCT) auf den invers quantisierten Transformationsodierungskoeffizienten ein rekonstruierter Videodatenstrom (RVD) gebildet wird (604),- in which the quantized transformation coding coefficients are subjected to inverse quantization (603) in an inverse quantization unit (IQ), - in which, in a second means (IDCT), an inverse transformation coding (IDCT) on the inverse quantized transformation coding coefficient a reconstructed video data stream (RVD ) is formed (604),
- bei dem in einem dritten Mittel (BS) eine Bewegungsschät- zung auf den rekonstruierten Videodatenstrom (RVD) durchge¬ führt wird (605) ,in which a movement estimation on the reconstructed video data stream (RVD) is carried out in a third means (BS) (605),
- bei dem der rekonstruierte Videodatenstrom (RVD) von dem Videodatenstrom subtrahiert wird, so daß nur die Differenz des Videodatenstroms und des rekonstruierten Videodaten- Stroms (RVD) der Transformationscodierung zugeführt wird (606) .- In which the reconstructed video data stream (RVD) is subtracted from the video data stream, so that only the difference between the video data stream and the reconstructed video data stream (RVD) is fed to the transformation coding (606).
6. Verwendung des Verfahrens nach einem der Ansprüche 1 bis 4 zur Bilddecodierung, - bei dem in einer inversen Quantisierungseinheit (IQ) quan¬ tisierten Transformationsodierungskoeffizienten einer in¬ versen Quantisierung unterzogen werden (602), wobei6. Use of the method according to one of claims 1 to 4 for image decoding, - in which in an inverse quantization unit (IQ) quantized transformation coding coefficients are subjected to an inverse quantization (602), wherein
- bei dem in einem zweiten Mittel (IDCT) eine inverse Trans- formationscodierung (IDCT) auf den invers quantisierten Transformationsodierungskoeffizienten ein rekonstruierter Videodatenstrom (RVD) gebildet wird (604), - bei dem in einem dritten Mittel (BS) eine Bewegungsschät¬ zung auf den rekonstruierten Videodatenstrom (RVD) durchge¬ führt wird (605) ,a reconstructed video data stream (RVD) is formed in a second means (IDCT) of an inverse transformation coding (IDCT) on the inversely quantized transformation coding coefficient (604), in which a movement estimation on the reconstructed video data stream (RVD) is carried out in a third means (BS) (605),
- bei dem der rekonstruierte Videodatenstrom (RVD) von dem Videodatenstrom subtrahiert wird, so daß nur die Differenz des Videodatenstroms und des rekonstruierten Videodaten¬ stroms (RVD) der Transformationscodierung zugeführt wird (606) . - In which the reconstructed video data stream (RVD) is subtracted from the video data stream, so that only the difference between the video data stream and the reconstructed video data stream (RVD) is fed to the transformation coding (606).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19618117A DE19618117C1 (en) | 1996-05-06 | 1996-05-06 | Method for quantization and method for inverse quantization of transformation coding coefficients of a video data storm |
DE19618117.8 | 1996-05-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1997042767A1 true WO1997042767A1 (en) | 1997-11-13 |
Family
ID=7793459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/DE1997/000859 WO1997042767A1 (en) | 1996-05-06 | 1997-04-28 | Process for quantization and a process for inverse quantization of transform coding coefficients of a video data stream |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE19618117C1 (en) |
WO (1) | WO1997042767A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100441466B1 (en) * | 1997-12-19 | 2004-07-23 | 인피니언 테크놀로지스 아게 | Device for multiplying with constant factors and use of said device for video compression (mpeg) |
KR20020001760A (en) * | 2000-01-12 | 2002-01-09 | 요트.게.아. 롤페즈 | Image data compression |
KR101619972B1 (en) * | 2008-10-02 | 2016-05-11 | 한국전자통신연구원 | Apparatus and method for coding/decoding image selectivly using descrete cosine/sine transtorm |
SG10201400975QA (en) | 2011-02-10 | 2014-07-30 | Sony Corp | Image Processing Device And Image Processing Method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0366435A2 (en) * | 1988-10-27 | 1990-05-02 | Matsushita Electric Industrial Co., Ltd. | Orthogonal and inverse orthogonal transform apparatus |
EP0469855A2 (en) * | 1990-07-31 | 1992-02-05 | Fujitsu Limited | Image data processing method and apparatus |
EP0500077A2 (en) * | 1991-02-21 | 1992-08-26 | Nec Corporation | Motion image data compression coding apparatus and image data compression coding method |
US5430556A (en) * | 1992-12-22 | 1995-07-04 | Fuji Photo Film Co., Ltd. | Quantizing and dequantizing circuitry for an image data companding device |
EP0735771A2 (en) * | 1995-03-27 | 1996-10-02 | Hewlett-Packard Company | Text and image sharpening of JPEG compressed images in the frequency domain |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5654760A (en) * | 1994-03-30 | 1997-08-05 | Sony Corporation | Selection of quantization step size in accordance with predicted quantization noise |
EP0677968B1 (en) * | 1994-04-13 | 2001-10-24 | Matsushita Electric Industrial Co., Ltd. | Quantization estimating method and circuit for data compressing |
-
1996
- 1996-05-06 DE DE19618117A patent/DE19618117C1/en not_active Expired - Fee Related
-
1997
- 1997-04-28 WO PCT/DE1997/000859 patent/WO1997042767A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0366435A2 (en) * | 1988-10-27 | 1990-05-02 | Matsushita Electric Industrial Co., Ltd. | Orthogonal and inverse orthogonal transform apparatus |
EP0469855A2 (en) * | 1990-07-31 | 1992-02-05 | Fujitsu Limited | Image data processing method and apparatus |
EP0500077A2 (en) * | 1991-02-21 | 1992-08-26 | Nec Corporation | Motion image data compression coding apparatus and image data compression coding method |
US5430556A (en) * | 1992-12-22 | 1995-07-04 | Fuji Photo Film Co., Ltd. | Quantizing and dequantizing circuitry for an image data companding device |
EP0735771A2 (en) * | 1995-03-27 | 1996-10-02 | Hewlett-Packard Company | Text and image sharpening of JPEG compressed images in the frequency domain |
Non-Patent Citations (2)
Title |
---|
ACHHAMMER J ET AL: "VIDEOPHONE AND AUDIOVISUAL WORKSTATION WITH P X 64 KBIT/S FOR NEW APPLICATIONS", PHILIPS TELECOMMUNICATION REVIEW, vol. 49, no. 3, 1 September 1991 (1991-09-01), HILVERSUM, NL, pages 52 - 57, XP000262488 * |
COPPISETTI N ET AL: "PERFORMANCE ANALYSIS OF THE ADVANCED DIGITAL HDTV VIDEO CODING SYSTEM", IEEE TRANSACTIONS ON CONSUMER ELECTRONICS, vol. 39, no. 4, 1 November 1993 (1993-11-01), NEW YORK, US, pages 779 - 788, XP000423064 * |
Also Published As
Publication number | Publication date |
---|---|
DE19618117C1 (en) | 1997-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69834959T2 (en) | Predictive image decoding method | |
DE69716037T2 (en) | METHOD FOR CODING AND DECODING DIGITAL IMAGES | |
DE69637335T2 (en) | IMAGE SIGNAL CODING METHOD AND DEVICE | |
DE69323156T2 (en) | Image data compression / decompression system | |
DE69521238T2 (en) | Image data quantization in image compression | |
DE69324960T2 (en) | Coding and decoding | |
DE69726042T2 (en) | Downsampling over fast DCT domains and inverse motion compensation | |
EP2222086A1 (en) | Method and device for avoiding rounding errors after carrying out an inverse discrete orthogonal transformation | |
DE20222025U1 (en) | Improved block transform decoder for image or video decoding and related devices and handheld computer devices | |
DE19541457C1 (en) | Method for coding a video data stream of a video sequence consisting of picture blocks | |
DE4442643B4 (en) | Method for estimating motion in a moving image | |
DE69932429T2 (en) | METHOD AND DEVICE FOR INVERSE QUANTIZATION OF MPEG-4 VIDEO | |
DE69416662T2 (en) | Moving picture encoder | |
DE69915843T2 (en) | PART BAND CODING / decoding | |
EP1472888B1 (en) | Context-sensitive encoding and decoding of a video data stream | |
DE69528853T2 (en) | System and method for editing moving images | |
DE69326586T2 (en) | Image communication device and method | |
WO2017162835A1 (en) | Data compression by means of adaptive subsampling | |
EP0956703A1 (en) | Method and device for coding and decoding a digitized image | |
DE10218541A1 (en) | Context-adaptive binary arithmetic video coding, e.g. for prediction error matrix spectral coefficients, uses specifically matched context sets based on previously encoded level values | |
WO1997042767A1 (en) | Process for quantization and a process for inverse quantization of transform coding coefficients of a video data stream | |
EP1279291B1 (en) | Method and device for storing and processing image information of temporally successive images | |
DE69509421T2 (en) | Shift stage for a decoder of variable length digital codes | |
EP0752788A2 (en) | Video coder and decoder | |
EP0981910B1 (en) | Method and device for coding a digitized image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
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 | ||
NENP | Non-entry into the national phase |
Ref country code: JP Ref document number: 97539422 Format of ref document f/p: F |
|
122 | Ep: pct application non-entry in european phase |