WO1997028651A1 - Anordnung und verfahren zur codierung und decodierung von mit einem blockbasierten codierungsverfahren codierten bildern - Google Patents
Anordnung und verfahren zur codierung und decodierung von mit einem blockbasierten codierungsverfahren codierten bildern Download PDFInfo
- Publication number
- WO1997028651A1 WO1997028651A1 PCT/DE1996/002464 DE9602464W WO9728651A1 WO 1997028651 A1 WO1997028651 A1 WO 1997028651A1 DE 9602464 W DE9602464 W DE 9602464W WO 9728651 A1 WO9728651 A1 WO 9728651A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- macroblock
- uncoded
- image
- block
- carried out
- 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/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
Definitions
- the invention relates to a method which is used in the context of movement compensation in block-based coding methods.
- image processing methods an image is divided into macroblocks which have a predeterminable number of image blocks.
- the picture areas of the macroblocks or picture blocks are usually subjected to a coding transformation, for example a discreet cosine transformation (DCT).
- DCT discreet cosine transformation
- the transformation coefficients thus formed are then quantized in a quantization stage and subjected to a scan process, for example the so-called Zig-Zag scan process or the so-called alternate scan process.
- a run length coding RLC
- VLC variable length coding
- image blocks When encoding an image, image blocks are usually provided which have both luminance information (luminance blocks) and chrominance information (chrominance blocks) about the encoded image area.
- VLD variable length decoding
- RLD run length decoding
- IS scan method
- IDCT inverse coding transformation
- the principle of prediction and a so-called motion compensation and motion estimation are used in the above-mentioned methods.
- the entire image information is not always encoded, but sometimes only the difference information.
- I-images Images whose image information is completely encoded are called support images (I-images).
- P-pictures So-called prediction pictures (P-pictures) are coded between such I-pictures, only the difference information to the temporally preceding coded picture, which is reconstructed in the coding unit, being coded in each case.
- interpolation pictures which are predirected bidirectionally from pictures which are preceding in time and pictures which follow in time, are encoded in these methods.
- the application of the method is in no way restricted to a specific coding transformation, for example the Discrete Cosine Transformation (DCT), or to specific special methods in the further method steps described above.
- DCT Discrete Cosine Transformation
- the decoding unit usually recognizes these uncoded macroblocks (skipped macroblocks) by determining the difference between the address of the current macroblock and the previous macroblock. If this difference is greater than zero, there is a number of uncoded macroblocks corresponding to the difference between the current macroblock and the previous macroblock.
- the uncoded macroblocks are treated differently.
- the motion vectors which are assigned to the uncoded macroblocks are assigned the value zero.
- the motion vector of the macroblock preceding the uncoded macroblock is assigned the value zero and the prediction is based on this.
- the type of prediction from the previous macroblock is adopted in the MPEG 1 method and the MPEG 2 method.
- the so-called differential motion vector is set to the value zero.
- the value of the motion vector is predicted from the value of a parameter “predictor”, which predicts the motion vector value of the last coded macroblock.
- a sequence of macroblocks is supplied with variable length decoding (VLD) when the images are reconstructed, that is to say during decoding. If there are no uncoded macroblocks in the sequence, then both the inverse quantization (IQ) and the inverse coding tion transformation (IDCT) as well as the motion compensation (MC) processed in sequence. However, if the sequence has an uncoded macroblock, the uncoded macroblock is processed like encoded macroblocks in the motion compensation. This means that a zero block is added to the reference block.
- VLD variable length decoding
- the invention is based on the problem of specifying an arrangement and a method for coding and decoding in a block-based coding method which avoids the disadvantages of the known method described above.
- the current macroblock is coded or uncoded. If it is coded, the usual procedure for reconstructing the macroblock is carried out. However, if the macroblock is uncoded, a reference macroblock, which is to be understood as the corresponding macroblock of the previous image, is simply adopted as the current macroblock by copying the reference macroblock to the corresponding location in the image memory provided. This can be done in parallel to the processing of coded macroblocks, which saves a considerable amount of time compared to the known method. This time saving in the decoding is of particular importance, since only a predetermined time is available for decoding an image to guarantee certain real-time conditions.
- the known method In the event that some macroblocks are processed at the beginning of an image and then a series of macroblocks which require increased effort to decode the macroblocks, the known method, the sequential processing of all macroblocks, may not have enough time for decoding the macro blocks essential for image reconstruction. This leads to a considerable loss of information, which is caused by the known method. To avoid this problem, considerably more expensive and complex hardware would be necessary to ensure the real-time condition that no loss of information occurs.
- the new method and the new arrangement alleviate the problem of timing when decoding the images.
- the dimensioning of the decoding unit or the coding unit is significantly improved.
- the decoding unit or the coding unit can, for example, be dimensioned for the processing of a macro block line or also for the processing of an entire image or a field. Dimensioning the decoding unit or the coding unit to process an entire image results in less design effort for the decoding unit or the coding unit. This also reduces the costs for the decoding unit or coding unit required to carry out the method. This is achieved by the time saved by the method according to the invention and the thereby lower demands placed on the hardware of the decoding unit or the coding unit.
- the current macroblock is encoded or uncoded. If it is encoded, the usual procedure for reconstructing the macro block is carried out. However, if the macroblock is uncoded, the macroblock is marked as uncoded. The actual processing, that is to say the copying of the reference block into the image memory, takes place only after the processing of a predeterminable number of macroblocks.
- FIG. 1 is a sketch showing the known method of the prior art
- FIG. 2 shows a sketch in which the principle of the method according to the invention is described
- FIG. 3 shows an arrangement which is used to carry out the method
- FIG. 4 shows a sketch in which method steps are described which are carried out in the copying module
- FIG. 5 shows a sketch in which an arrangement is described which is used to carry out the method according to patent claim 2;
- FIG. 6 shows a flow diagram in which the individual procedural steps of the method according to claim 1 are shown
- FIG. 7 shows a flow chart in which the individual procedural steps of the method according to claim 2 are shown
- FIG. 8 shows a flow diagram in which the development of the method is described, in which it is additionally checked whether the picture blocks of the current macro block are coded or uncoded;
- FIG. 9 shows a sketch in which two computers are shown, images being encoded in a first computer and transmitted to a second computer, where they are decoded.
- FIGS. 1 to 9 The methods according to the invention are further explained on the basis of FIGS. 1 to 9.
- the known method is shown in FIG. 1 using a sketch.
- an image to be encoded or decoded is divided into macro blocks MB which have a predeterminable number of image blocks BB.
- the methods according to the invention are necessarily carried out by a computer or special hardware with which a coding unit or a decoding unit can be implemented.
- two types of image blocks are distinguished, luminance image blocks Y TM and chrominance image blocks C m , C TM.
- a macro block identifier m which is a natural number, uniquely designates each macro block MB of a sequence of macro blocks MB. Depending on the block-based method used, different formats are used.
- a natural number n uniquely identifies each luminance image block Y TM within a macro block.
- a sequence of three macroblocks MB, a first macroblock, a second macroblock and a third macroblock is assumed to simplify the illustration.
- Image areas of the images to be encoded are combined into image blocks and several image blocks into macro blocks in a coding unit.
- the picture blocks have several picture elements of the picture, the information of which, for example luminance information, mation or color information (chrominance information).
- An image block has, for example, a size of 8 x 8 or 16 x 16 pixels.
- a coding transformation DCT for example a Discrete Cosine Transformation (DCT)
- DCT Discrete Cosine Transformation
- the resulting transformation coefficients are quantized in a quantization stage Q.
- the quantized transformation coefficients are subjected to a scan process SV, for example the so-called Zig-Zag scan process or the so-called alternative scan process. Then run length coding and variable length coding are carried out on the scanned transformation coefficients.
- the coded transformation coefficients and thus the coded picture blocks BB or macro blocks MB are transmitted to a decoding unit via a channel, where the macro blocks are decoded and the coded picture is reconstructed.
- a reconstruction is also provided in the coding unit itself, since only differential information is coded. For this it is necessary to reconstruct the encoded image in the encoding unit as well.
- the luminance picture blocks Y TM and the chrominance picture blocks C m , C ⁇ are fed to the decoding unit.
- Method steps are now carried out in the decoding unit which are inverse to the method steps of the coding.
- the decoding is a variable length decoding
- VLD a run length decoding RLD, an inverse scan method IS, an inverse quantization IQ and an inverse Coding transformation IDCT performed. Furthermore, a motion compensation MC is carried out using an image memory FM for the reconstruction of the encoded image.
- the method steps for decoding described above are also carried out, except for the variable length decoding VLD and the run length decoding RLD.
- the luminance image blocks Y TM and the chrominance image blocks C m , C are processed sequentially in the known method. This has the consequence that in the event that the sequence of macroblocks MB. has an uncoded macro block UMB or an uncoded image block UBB, the encoded macro blocks are already processed in the inverse coding transformation IDCT, although the uncoded macro blocks UMB are still processed in the motion compensation MC.
- This restriction means that the inverse coding transformation IDCT is only started with the processing of a coded macro block following the uncoded macro block UMB if the respective current data from the inverse coding transformation IDCT can also be processed with the motion compensation MC.
- the inverse coding transformation IDCT is interrupted so that the motion compensation MC can be carried out for the uncoded macro block UMB or the uncoded image block UBB.
- each vertical time slot t 1 an image block BB is fed to a means shown in FIG. 1 for carrying out the method steps described above, and an image block BB is also removed.
- Macroblock is uncoded UMB and that a second luminance
- 3 block Y j is an uncoded picture block UBB.
- Waiting period steps Wt j _ are shown in Figure 1 for in the unit for performing the inverse quantization IQ and IDCT inverse Co ⁇ d iststransformation.
- FIG. 1 The solution principle of the method according to the invention is outlined in FIG.
- an additional composing module KM is provided.
- the copying module KM in the case of uncoded macro blocks UMB or uncoded picture blocks UBB, simply reference macro blocks RMB or reference picture blocks RBB from the temporally preceding picture, which are stored in the picture memory FM, are simply copied.
- FIG. 3 shows what information is used to check whether a macroblock MB is coded or uncoded and what information is used to reconstruct the image blocks BB.
- These parameters P are contained for each picture block BB or macro block MB and are transmitted together with this. This means that these parameters P can be Coding can be used.
- the parameters P are, for example, a so-called Coded_Block_Pattern CBP, a macro block address ADR, an image type TYP, and movement information MI.
- the Coded_Block_Pattern CBP specifies whether the respective image block BB or macroblock MB is coded or uncoded.
- the macro block address ADR indicates the address of the macro block MB within the image.
- the TYPE picture type indicates whether the coded picture is an I picture, a P picture or a B picture.
- the macroblocks MB After the macroblocks MB have been received (when using the methods in the decoding unit) or immediately after they have been subjected to the variable length coding VLC 600, the macroblocks MB are fed 601 to the variable length decoding VLD (cf. Figure 6).
- the macro block MB is subjected to the method steps described above for decoding the macro block MB: the run length decoding RLD 603, the inverse scan method IS 604, the inverse quantization IQ 605, the inverse coding transformation IDCT 606 and the motion compensation MC 607.
- the required address information of the reference macro block RMB of the previous image is fed 608 to the copying module KM, in which the reference macro block RMB is copied from the image memory FM, again into the image memory RMB, but this time as the ac current macroblock MB. This can be done in parallel with the processing of the encoded macroblocks.
- the image to be decoded is reconstructed using the decoded macroblocks MB and the copied macroblocks.
- each macro block MB is assigned a motion vector MV which is specified in the header of the respective macro block MB.
- An uncoded macro block UMB is assigned the value zero for the motion vector MV. Therefore, no coding transformation coefficients are formed and transmitted for the uncoded macro block UMB.
- the number of directly consecutive uncoded macro blocks UMB is determined by the difference in the addresses of two consecutive encoded macro blocks.
- the motion vector MV for the current macroblock MB is determined in a header evaluation HA. This is done in a manner known to those skilled in the art.
- the value of the motion vector MV is stored, for example, in a vector FIFO memory MVS.
- the value of the motion vector MV is stored in an address FIFO memory AS, the address of the macroblock MB, which indicates the number of the current macroblock MB within the image.
- the address of the respective macro block MB and the value of the motion vector MV are clearly assigned to one another.
- the physical address of the macro block MB is formed in the image memory FM in an address generator AG, depending on the Image type, that is, depending on whether the bid to be decoded is an I-image, a P-image or a B-image.
- the address generator AG determines the address of the macroblock MB in the new one
- the address generator AG determines the address of the macro block MB of the reference macro block RMB in the previous picture, since the difference information is transmitted in this picture type.
- the Motion vector of the macro block MB of the B-picture determined by interpolation. Furthermore, the pixel information (luminance and chrominance of the respective pixel) is also interpolated.
- the reference macroblocks RMB which are stored at the determined address in the picture memory FM, are copied into a buffer memory and possibly subjected to half-pixel filtering .
- the data now determined for the current macroblock MB are then stored in the image memory FM at the address of the current macroblock MB. This is not necessary for an I-picture, since in this case the address determined by the address generator AG already represents the address of the current macro block MB.
- the copying actions are not carried out parallel to the decoding of the encoded macroblocks MB.
- the uncoded macro blocks UMB are marked 701 and reconstruction data of the uncoded macro blocks UMB are stored in a reconstruction memory RS.
- the value of the motion vector MV is stored, for example, in the vector FIFO memory MVS. However, this only occurs with B-pictures to be decoded.
- the value of the motion vector MV is stored in an address FIFO memory AS, the address of the macroblock MB, which indicates the number of the current macroblock MB within the image.
- the address of the respective macro block MB and the value of the motion vector MV are clearly assigned to one another in the case of B-pictures.
- the copying of the reference macro blocks RMB can also be carried out in the means for motion estimation MC.
- the remaining method steps correspond to the steps of the first exemplary embodiment.
- FIG. 8 A further development of the method is shown in FIG. 8 using the example of the first exemplary embodiment.
- it is checked for coded macroblocks MB whether individual picture blocks of the current macroblock MB are not coded 801. If uncoded picture blocks UBB exist, the picture blocks for the uncoded picture blocks UBB become the uncoded ones just like in the previous one Macro blocks UMB in the copying module KM are formed from the corresponding reference picture block RBB of the previous picture.
- FIG. 9 shows an arrangement in which the methods are used.
- a first computer R1 the coding unit, an image is encoded in the manner described above.
- the image is recorded, for example, by a camera K.
- the first computer R1 is coupled to a second computer R2.
- the first computer R1 transmits the encoded 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 R1, 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 R1 ⁇ a first viewer 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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Bei dem vorgeschlagenen Verfahren werden die Schritte zur Decodierung uncodierter Makroblöcke (UMB) parallel zur Decodierung codierter Makroblöcke (MB) durchgeführt. Hierdurch wird eine erhebliche Zeiteinsparung bei der Decodierung erreicht.
Description
Beschreibung
Anordnung und Verfahren zur Codierung und Decodierung von mit einem blockbasierten Codierungsverfahren codierten Bildern
Die Erfindung betrifft ein Verfahren, das im Rahmen der Bewe¬ gungskompensation bei blockbasierten Codierungsverfahren ein¬ gesetzt wird. Bei diesen Verfahren der Bildverarbeitung wird ein Bild in Makroblöcke aufgeteilt, die eine vorgebbare An¬ zahl von Bildblöcken aufweist. Bei der Codierung werden die Bildbereiche der Makroblöcke bzw. Bildblöcke üblicherweise einer Codierungstransformation, beispielsweise einer Diskre¬ ten Cosinus Transformation (DCT) unterzogen. Die dadurch ge- bildeten Transformationskoeffizienten werden anschließend in einer Quantisierungsstufe quantisiert und einem Scan Verfah¬ ren unterzogen, beispielsweise dem sogenannten Zig-Zag-Scan- Verfahren oder auch dem sogenannten Alternate Scan-Verfahren. Weiterhin wird nach dem Scan-Verfahren eine Run Length Codie- rung (RLC) durchgeführt und anschließend eine Variable Length Codierung {VLC) .
Eine in keinster Weise abschließend zu verstehende Aufzählung von blockbasierten Codierungsverfahren ist : - MPEG 1, beschrieben in [1] ,
- MPEG 2 , beschrieben in [2] ,
- H.261-Standard, und
- JPEG, beschrieben in [3] .
Üblicherweise werden bei der Codierung eines Bildes Bildblök- ke vorgesehen, die sowohl Luminanzinformation (Luminanzblöcke) als auch Chrominanzinformation (Chrominanzblöcke) über den codierten Bildbereich aufweisen.
Die nunmehr codierten Koeffizienten müssen zur Rekonstruktion des jeweils codierten Bildes den zu den vorigen Codierungs¬ schritten inversen Verfahrensschritten unterzogen werden.
Dies bedeutet die Anwendung einer Variable Length Decodierung (VLD) auf die codierten Koeffizienten und einer anschließen¬ den sogenannten Run Length Decodierung (RLD) .
Nach der Durchführung eines zu dem zur Codierung verwendeten Scan-Verfahren inversen Scan-Verfahren (IS) wird eine zu der zur Codierung verwendeten Quantisierung inverse Quantisierung sowie eine inverse Codierungstransformation (IDCT) durchge- führt.
Um eine Einsparung benötigter Übertragungskapazität zu errei¬ chen, wird bei den oben genannten Verfahren das Prinzip der Prädiktion und eine sogenannte Bewegungskompensation und Be- wegungsSchätzung angewendet. Hierbei wird bei der Codierung eines Bildes nicht immer die gesamte Bildinformation codiert, sondern teilweise nur noch die Differenzinformation.
Bilder, deren Bildinformation komplett codiert wird, werden als Stützbilder (I-Bilder) bezeichnet.
Zwischen solchen I-Bildern werden sogenannte Prädiktionsbil¬ der (P-Bilder) codiert, wobei jeweils nur die Differenzinfor¬ mation zu dem zeitlich vorangegangenen codierten Bild codiert wird, welches in der Codiereinheit rekonstruiert wird.
Weiterhin werden auch sogenannte Interpolationsbilder (B- Bilder) , die bidirektional aus zeitlich vorangegangenen Bil¬ dern und zeitlich folgenden Bildern prädiziert werden, bei diesen Verfahren codiert.
Das Verfahren ist in seiner Anwendung in keinster Weise auf eine bestimmte Codierungstransformation, beispielsweise der Diskreten Cosinus Transformation (DCT) , oder auf bestimmte spezielle Verfahren in den weiteren oberen beschriebenen Ver¬ fahrensschritten, beschränkt.
Bei der Codierung kommt es vor, daß ganze Makroblöcke, denen jeweils eine Adresse zugeordnet wird, an der sich der Makro¬ block innerhalb des codierten Bildes befindet, oder auch nur einzelne Bildblδcke nicht codiert werden. Diese uncodierten Makroblöcke (skipped macroblocks) erkennt die Decodiereinheit üblicherweise, indem sie die Differenz der Adresse des aktu¬ ellen Makroblocks und dem vorangegangenen Makroblock ermit¬ telt. Ist diese Differenz größer als Null, so liegt eine der Differenz entsprechende Anzahl uncodierter Makroblöcke zwi- sehen dem aktuellen Makroblock und dem vorangegangenen Makro¬ block.
Je nach verwendetem blockbasierten Codierungsverfahren werden die uncodierten Makroblöcke unterschiedlich behandelt.
Beispielsweise werden bei dem MPEG 1 Verfahren sowie dem MPEG 2 Verfahren in P-Bildern den Bewegungsvektoren, die den uncodierten Makroblöcken zugeordnet werden, der Wert Null zu¬ gewiesen. Bei dem H.261-Standard wird jedoch dem Bewegungs- vektor des dem uncodierten Makroblock vorangegangenen Makro¬ blocks der Wert Null zugewiesen und darauf aufbauend wird die Prädiktion durchgeführt.
Bei B-Bildem wird bei dem MPEG 1 Verfahren sowie dem MPEG 2 Verfahren die Art der Prädiktion von dem vorangegangenen Ma¬ kroblock übernommen. Dabei wird bei dem MPEG 1 Verfahren der sogenannte Differenzbewegungsvektor auf den Wert Null ge¬ setzt. Bei dem MPEG 2 Verfahren wird der Wert des Bewegungs¬ vektors aus dem Wert eines Parameters „predictor", der den Bewegungsvektorwert des letzten codierten Makroblock, prädi¬ ziert.
Bei den bekannten Verfahren werden bei der Rekonstruktion der Bilder, also bei der Decodierung eine Folge von Makroblöcken der Variable Length Decodierung (VLD) zugeführt. Existieren in der Folge keine uncodierten Makroblöcke, so wird sowohl die inverse Quantisierung (IQ) und die inverse Codie-
rungstransformation (IDCT) als auch die Bewegunskompensation (MC) der Reihe nach verarbeitet. Weist die Folge jedoch einen uncodierten Makroblock auf, so wird bei der Bewegungskompen¬ sation der uncodierte Makroblock wie codierte Makroblöcke verarbeitet. Dies bedeutet, daß ein Null-Block zu dem Refe¬ renzblock hinzuaddiert wird.
Ein Nachteil in dieser Vorgehensweise ist darin zu sehen, daß diese unnötigen Additionen unnötige Verlustleistung kostet.
Ein weiterer Nachteil liegt darin, daß diese Vorgehensweise erheblich längere Zeit dauert als das erfindungsgemäße Ver¬ fahren, wie im weiteren noch beschrieben wird.
Der Erfindung liegt das Problem zugrunde, eine Anordnung und ein Verfahren zur Codierung und Decodierung bei einem block¬ basierten Codierungsverfahren anzugeben, das die im vorigen beschriebenen Nachteile des bekannten Verfahrens vermeidet.
Das Problem wird durch die Anordnungen gemäß Patentanspruch 1 und Patentanspruch 2 sowie die Verfahren gemäß Patentanspruch 3 und Patentanspruch 4 gelöst.
Bei dem Verfahren gemäß Patentanspruch 3 wird geprüft, ob der aktuelle Makroblock codiert oder uncodiert ist. Ist er co¬ diert, so wird die übliche Vorgehensweise zur Rekonstruktion des Makroblocks durchgeführt. Ist der Makroblock jedoch unco¬ diert, wird ein Referenzmakroblock, darunter ist der entspre¬ chende Makroblock des zeitlich vorangegangenen Bildes zu ver- stehen, einfach als aktueller Makroblock übernommen, indem der Referenzmakroblock an die entsprechende Stelle des vorge¬ sehenen Bildspeichers kopiert wird. Dies kann parallel zu der Bearbeitung codierter Makroblöcke erfolgen, womit eine erheb¬ liche Zeiteinsparung gegenüber dem bekannten Verfahren er- reicht wird.
Diese Zeiteinsparung bei der Decodierung ist von besonderer Bedeutung, da für die Decodierung eines Bildes zur Gewährlei¬ stung bestimmter Echtzeitbedingungen nur eine vorgegebene Zeit zur Verfügung steht.
Für den Fall, daß am Anfang eines Bildes einige Makroblöcke verarbeitet werden und dann eine Reihe von Makroblöcken, die zur Decodierung der Makroblöcke erhöhten Aufwand benötigen, bleibt möglicherweise bei dem bekannten Verfahren, der se- quentiellen Verarbeitung alle Makroblöcke, nicht mehr genü¬ gend Zeit zur Decodierung der für die Bildrekonstruktion we¬ sentlichen Makroblöcke. Dies führt zu einem erheblichen In¬ formationsverlust, der durch das bekannte Verfahren verur¬ sacht wird. Zur Vermeidung dieses Problems wäre eine erheb- lieh teurere und aufwendigere Hardware nötig, um die Echt- zeitbedingung zu gewährleisten, daß kein Informationsverlust auftritt. Durch das neue Verfahren bzw. die neue Anordnung wird das Problem des Timings bei der Decodierung der Bilder entschärft.
Weiterhin werden die zusätzlichen unnötigen Additionen ver¬ mieden und eine erhebliche Einsparung benötigter Verlustlei¬ stung zur Durchführung des Verfahrens erreicht.
Weiterhin wird die Dimensionierung der Decodiereinheit bzw. der Codiereinheit wesentlich verbessert. Die Decodiereinheit bzw. die Codiereinheit kann beispielsweise auf die Verarbei¬ tung einer Makroblockzeile dimensioniert werden oder auch auf die Verarbeitung eines ganzen Bildes oder eines Halbbildes. Eine Dimensionierung der Decodiereinheit bzw. der Codierein¬ heit auf die Verarbeitung eines ganzen Bildes hat einen ge¬ ringeren Designaufwand für die Decodiereinheit bzw. die Co¬ diereinheit zur Folge. Dadurch werden auch die Kosten für die zur Durchführung des Verfahrens benötigte Decodiereinheit bzw. Codiereinheit reduziert. Dies wird erreicht durch die durch das erfindungsgemäße Verfahren erzielte Zeiteinsparung
und die dadurch geringeren Anforderungen, die an die Hardware der Decodiereinheit bzw. der Codiereinheit gestellt werden.
Diese Vorteile gelten ebenso für das Verfahren gemäß Patent- anspruch 3.
Hierbei wird wiederum geprüft, ob der aktuelle Makroblock co¬ diert oder uncodiert ist. Ist er codiert, so wird die übliche Vorgehensweise zur Rekonstruktion des Makroblocks durchge- führt. Ist der Makroblock jedoch uncodiert, so wird der Ma¬ kroblock als uncodiert gekennzeichnet. Die eigentliche Verar¬ beitung, also das Kopieren des Referenzblocks in den Bildspeicher erfolgt erst nach der Bearbeitung einer vorgeb¬ baren Anzahl von Makroblöcken.
Für die Anordnungen gemäß Patentanspruch 1 und gemäß Patent¬ anspruch 1 gelten ebenfalls die oben beschriebenen Vorteile der Verfahren.
Vorteilhafte Weiterbildungen ergeben sich aus den abhängigen Ansprüchen.
Weitere Zeiteinsparung sowie Einsparung benötigter Verlust¬ leistung wird durch die Weiterbildung des Verfahrens er- reicht, bei der auch innerhalb jedes Makroblocks für jeden Bildblock des Makroblocks geprüft wird, ob der Bildblock co¬ diert oder uncodiert ist. Für einen uncodierten Bildblock wird eine Kopie des Referenzbildblocks des uncodierten Bild¬ blocks in dem Bildspeicher abgelegt.
Zwei Ausführungsbeispiele darstellende Zeichnungen werden im folgenden näher erläutert .
Es zeigen
Figur 1 eine Skizze, in der das bekannte Verfahren des Standes der Technik dargestellt ist;
Figur 2 eine Skizze, in der das Prinzip der erfindungsge¬ mäßen Verfahren beschrieben ist;
Figur 3 eine Anordnung, die zur Durchführung der Verfahren eingesetzt wird;
Figur 4 eine Skizze, in der detailliert Verfahrensschritte beschrieben sind, die in dem Kopiermodul durch- geführt werden;
Figur 5 eine Skizze, in der eine Anordnung beschrieben ist, die zur Durchführung des Verfahrens gemäß Patentan¬ spruch 2 verwendet wird;
Figur 6 ein Ablaufdiagramm, in dem die einzelnen Verfah¬ rensschritte des Verfahrens gemäß Patentanspruch 1 dargestellt sind;
Figur 7 ein Abiaufdiagramm, in dem die einzelnen Verfah¬ rensschritte des Verfahrens gemäß Patentanspruch 2 dargestellt sind;
Figur 8 ein Ablaufdiagramm, in dem die Weiterbildung der Verfahren beschrieben ist, bei dem zusätzlich geprüft wird, ob die Bildblöcke des aktuellen Makroblocks codiert oder uncodiert sind;
Figur 9 eine Skizze, in der zwei Rechner dargestellt sind, wobei in einem ersten Rechner Bilder codiert werden und zu einem zweiten Rechner übertragen werden, wo sie decodiert werden.
Anhand der Figuren 1 bis 9 werden die erfindungsgemäßen Ver- fahren weiter erläutert.
In Figur 1 ist anhand einer Skizze das bekannte Verfahren dargestellt .
Hierbei ist ein zu codierendes bzw. zu decodierendes Bild eingeteilt in Makroblöcke MB, die eine vorgebbare Anzahl Bildblöcke BB aufweisen.
Die erfindungsgemäßen Verfahren werden notwendigerweise von einem Rechner oder einer speziellen Hardware durchgeführt, mit der eine Codiereinheit bzw. eine Decodiereinheit reali¬ siert werden.
In den zwei Ausführungsbeispielen werden zwei Arten von Bild¬ blöcken unterschieden, Luminanzbildblöcke Y™ und Chrominanz- bildblδcke Cm, C™. Hierbei bezeichnet eine Makroblockkenn¬ zeichnung m, die eine natürliche Zahl ist, jeden Makroblock MB einer Folge von Makroblöcken MB eindeutig. Es werden ab¬ hängig von dem verwendeten blockbasierten Verfahren unter¬ schiedliche Formate verwendet. Eine natürliche Zahl n kenn- zeichnet jeden Luminanzbildblock Y™ innerhalb eines Makro¬ blocks eindeutig.
Dies bedeutet eine unterschiedliche Aufteilung von Bildblök¬ ken BB innerhalb eines Makroblocks MB.
In den Ausführungsbeispielen wird zur einfacheren Darstellung von einer Folge von drei Makroblöcken MB ausgegangen, einem ersten Makroblock, einem zweiten Makroblock und einem dritten Makroblock.
Dies schränkt jedoch die Allgemeingültigekeit in keinster Weise ein.
In einer Codiereinheit werden Bildbereiche der zu codierenden Bilder zu Bildblöcken und mehrere Bildblδcke zu Makroblöcken zusammengefaßt. Die Bildblöcke weisen mehrere Bildpunkte des Bildes auf, deren Information, beispielsweise Luminanzinfor-
mation oder Farbinformation {Chrominanzinformation) , codiert wird. Ein Bildblock weist beispielsweise eine Größe von 8 x 8 oder 16 x 16 Bildpunkten auf.
Auf die einzelnen Makroblöcke MB wird eine Codierungstrans¬ formation DCT angewendet, beispielsweise eine Diskrete Cosi¬ nus Transformation (DCT) . Die daraus resultierenden Transfor¬ mationskoeffizienten werden in einer Quantisierungsstufe Q quantisiert . Die quantisierten Transformationskoeffizienten werden einem Scan-Verfahren SV unterzogen, beispielsweise dem sogenannten Zig-Zag-Scan-Verfahren oder dem sogenannten Al- ternate Scan-Verfahren. Anschließend wird auf die gescannten Transformationskoeffizienten eine Run Length Codierung und eine Variable Length Codierung durchgeführt.
Die codierten Transformationskoeffizienten und somit die co¬ dierten Bildblöcke BB bzw. Makroblöcke MB werden zu einer De¬ codiereinheit über einen Kanal übertragen, wo die Makroblöcke decodiert werden und das codierte Bild rekonstruiert wird. Es ist aber auch eine Rekonstruktion in der Codiereinheit selbst vorgesehen, da nur Differenzinformation codiert wird. Hierzu ist es notwendig, auch in der Codiereinheit das codierte Bild zu rekonstruieren.
Hieraus wird deutlich, daß die erfindungsgemäßen Verfahren sowohl in der Codiereinheit als auch in der Decodiereinheit eingesetzt werden kann.
Es werden bei der Decodierung die Luminanzbildblöcke Y™ so- wie die Chrominanzbildblöcke Cm, C^ der Decodiereinheit zu¬ geführt . In der Decodiereinheit werden nun Verfahrensschritte durchgeführt, die zu den Verfahrensschritten der Codierung invers sind.
Es wird bei der Decodierung eine Variable Length Decodierung
VLD, eine Run Length Decodierung RLD, ein inverses Scan- Verfahren IS, eine inverse Quantisierung IQ und eine inverse
Codierungstransformation IDCT durchgeführt. Weiterhin wird zur Rekonstruktion des codierten Bildes eine Bewegungskompen¬ sation MC unter Verwendung eines Bildspeichers FM durchge¬ führt.
Bei der Rekonstruktion der codierten Bilder in einem Rück¬ wärtspfad in der Codiereinheit werden ebenfalls die im vori¬ gen beschriebenen Verfahrensschritte zur Decodierung durchge¬ führt, bis auf die Variable Length Decodierung VLD und die Run Length Decodierung RLD.
Die Luminanzbildblöcke Y™ sowie die Chrominanzbildblöcke Cm, C werden bei dem bekannten Verfahren sequentiell bearbei¬ tet. Dies hat zur Folge, daß für den Fall, daß die Folge von Makroblöcken MB. einen uncodierten Makroblock UMB oder auch einen uncodierten Bildblock UBB aufweist, die codierten Ma¬ kroblöcke in der inversen Codierungstransformation IDCT be¬ reits bearbeitet werden, obwohl bei der Bewegungskompensation MC zunächst noch die uncodierten Makroblöcke UMB bearbeitet werden. Diese Beschränkung bedeutet, daß die inverse Codie¬ rungstransformation IDCT erst mit der Verarbeitung eines dem uncodierten Makroblock UMB folgenden codierten Makroblocks begonnen wird, wenn bei der Bewegungskompensation MC die je¬ weils aktuellen Daten aus der inversen Codierungstransforma- tion IDCT auch verarbeitet werden können. Infolgedessen wird bei Auftreten eines uncodierten Makroblocks UMB oder einem uncodierten Bildblock UBB die inverse Codierungstransformati¬ on IDCT unterbrochen, damit die Bewegungskompensation MC für den uncodierten Makroblock UMB oder den uncodierten Bildblock UBB durchgeführt werden kann.
In jedem senkrechten Zeitschlitz t^ wird jeweils ein Bild¬ block BB einem in Figur 1 dargestellten Mittel zur Durchfüh¬ rung der im vorigen beschriebenen Verfahrensschritte zuge- führt sowie ebenso ein Bildblock BB abgeführt. Während jedes Zeitschlitzes tj_ wird jeweils in diesem Ausführungsbeispiel
in der Einheit zur Durchführung der Variable Length Decodie¬ rung maximal ein Bildblock BB, in der Einheit zur Durchfüh¬ rung der inversen Quantisierung IQ und inversen Codie¬ rungstransformation IDCT zwei Bildblöcke BB und in der Ein¬ heit zur Durchführung der Bewegungskompensation MC sechs Bildblöcke BB verarbeitet.
Die Verarbeitung ist jedoch abhängig von der Implementierung, die jedem Fachmann geläufig ist.
In dem Ausführungsbeispiel wird angenommen, daß der zweite
Makroblock uncodiert UMB ist und daß ein zweiter Luminanz-
3 block Yj ein uncodierter Bildblock UBB ist.
Wartezeitschritte Wtj_ sind in Figur 1 für in der Einheit zur Durchführung der inversen Quantisierung IQ und inversen Co¬ dierungstransformation IDCT dargestellt.
In Figur 2 ist das Lösungsprinzip der erfindungsgemäßen Ver- fahren skizziert. Hierbei ist ein zusätzliches Kompiermodul KM vorgesehen. Mit Hilfe des Kopiermoduls KM werden bei unco¬ dierten Makroblöcken UMB bzw. uncodierten Bildblöcken UBB einfach Referenzmakroblöcke RMB bzw. Referenzbildblöcke RBB aus dem zeitlich vorangegangenen Bild, die in dem Bildspei- eher FM gespeichert sind, kopiert. Durch dieses Kopieren und somit das Weglassen der expliziten Berechnung der „neuen" Bildblδcke BB, das parallel zur Decodierung codierter Makro¬ blöcke MB bzw. Bildblöcke BB durchgeführt wird, werden die Wartezeitschritte Wt^, die in Figur 1 dargestellt sind, ver- mieden.
In Figur 3 ist dargestellt, anhand welcher Information über¬ prüft wird, ob ein Makroblock MB codiert oder uncodiert ist sowie anhand welcher Information die Bildblöcke BB rekonstru- iert werden. Diese Parameter P sind für jeden Bildblock BB bzw. Makroblock MB enthalten und werden mit diesem zusammen übertragen. Somit können diese Parameter P direkt bei der De-
Codierung verwertet werden. Die Parameter P sind beispiels¬ weise ein sogenannter Coded_Block_Pattern CBP, eine Makro¬ blockadresse ADR, ein Bildtyp TYP, sowie Bewegungsinformation MI. Mit dem Coded_Block_Pattern CBP wird angegeben ob der je¬ weilige Bildblock BB bzw. Makroblock MB codiert oder unco¬ diert ist. Die Makroblockadresse ADR gibt die Adresse des Ma¬ kroblocks MB innerhalb des Bildes an. Mit dem Bildtyp TYP wird angegeben, ob es sich bei dem codierten Bild um ein I- Bild, ein P-Bild oder ein B-Bild handelt.
Nachdem die Makroblöcke MB also empfangen wurden (bei Verwen¬ dung der Verfahren in der Decodiereinheit) bzw. direkt nach¬ dem sie der Variable Length Codierung VLC unterzogen wurden 600, werden die Makroblöcke MB der Variable Length Decodie- rung VLD zugeführt 601 (vgl. Figur 6) .
Anschließend wird beispielsweise anhand einer Adressendiffe¬ renz, die gebildet wird zwischen den Makroblockadressen zwei¬ er aufeinanderfolgenden codierten Makroblöcken MB oder auch anhand des Coded_Block_Pattern CBP oder anhand eines anderen Parameters P mit änlichem Informationsgehalt, je nach verwen¬ deten Verfahren, überprüft, ob es sich bei dem Makroblock MB um einen uncodierten Makroblock UMB oder um einen codierten Makroblock handelt 602.
Ist der Makroblock MB codiert, so wird der Makroblock MB den im vorigen beschriebenen Verfahrensschritten zur Decodierung des Makroblocks MB unterzogen: der Run Length Decodierung RLD 603, dem inversen Scan-Verfahren IS 604, der inversen Quanti- sierung IQ 605, der inversen Codierungstransformation IDCT 606 und der Bewegungskompensation MC 607.
Ist der Makroblock MB jedoch uncodiert, so wird die benötigte Adresseninformation des Referenzmakroblocks RMB des vorange- gangenen Bildes dem Kopiermodul KM zugeführt 608, in dem der Referenzmakroblock RMB aus dem Bildspeicher FM kopiert wird wiederum in den Bildspeicher RMB, diesmal jedoch als der ak-
tuelle Makroblock MB. Dies kann parallel zu der Bearbeitung der codierten Makroblöcke erfolgen.
Anhand der decodierten Makroblöcke MB und der kopierten Ma¬ kroblöcke wird in einem letzten Schritt 609 das zu decodie¬ rende Bild rekonstruiert.
Diese im vorigen beschriebene Vorgehensweise ist in Figur 4 für das MPEG 1 Verfahrens dargestellt.
Bei dem MPEG 1 Verfahren ist jedem Makroblock MB ein Bewe¬ gungsvektor MV zugewiesen, der in dem Kopf (Header) des je¬ weiligen Makroblocka MB angegeben ist.
Einem uncodierten Makroblock UMB wird dem Bewegungsvektor MV der Wert Null zugewiesen. Es werden daher für den uncodierten Makroblock UMB keine Codierungstransformationskoeffizienten gebildet und übertragen. Die Anzahl direkt aufeinanderfolgen¬ der uncodierter Makroblöcke UMB wird durch die Differenz in den Adressen zweier aufeinanderfolgender codierter Makroblök- ke festgelegt.
In einer Kopfauswertung HA wird der Bewegungsvektor MV für den aktuellen Makroblock MB ermittelt. Dies erfolgt auf eine für den Fachmann bekannte Weise.
Der Wert des Bewegungsvektors MV wird beispielsweise in einem Vektor-FIFO-Speicher MVS abgespeichert. Dem Wert des Bewe¬ gungsvektors MV wird in einem Adreß-FIFO-Speicher AS die Adresse des Makroblocks MB gespeichert, die innerhalb des Bildes die Nummer des aktuellen Makroblocks MB angibt. Die Adresse des jeweiligen Makroblocks MB und der Wert des Bewe¬ gungsvektors MV werden eindeutig einander zugeordnet.
Anhand einer Adressenliste AL der Makroblöcke MB wird in ei¬ nem Adressen-Generator AG die physikalische Adresse des Ma¬ kroblocks MB in dem Bildspeicher FM gebildet, abhängig vom
Bild-Typ, also abhängig davon, ob es sich bei dem zu decodie¬ renden Bid um ein I-Bild, ein P-Bild oder ein B-Bild handelt.
Handelt es sich um ein I-Bild, so ermittelt der Adressen- Generator AG die Adresse des Makroblocks MB in dem neuen
(aktuellen) Bild, da bei diesem Bild-Typ die gesamte Bildin¬ formation codiert wurde.
Handelt es sich um ein P-Bild, so ermittelt der Adressen- Generator AG die Adresse des Makroblocks MB des Referenzma¬ kroblocks RMB in dem zeitlich vorangegangenen Bild, da bei diesem Bild-Typ die Differenzinformation übertragen wird.
Handelt es sich um ein B-Bild, so wird in einer Zwischenstufe ZS abhängig von den Werten der Bewegungsvektoren MV der ent¬ sprechenden Referenzblöcke RMB zweier aufeinanderfolgender I- Bilder bzw. P-Bilder, die zur Rekonstruktion des B-Bildes verwendet werden, der Bewegungsvektor des Makroblocks MB des B-Bildes durch Interpolation bestimmt. Weiterhin wird die Pi- xelinformation (Luminanz und Chrominanz des jeweiligen Pi¬ xels) ebenso interpoliert.
Das detaillierte Vorgehen hierbei ist wiederum abhängig von dem verwendeten Codierungsverfahren und ist dem Fachmann aus dem jeweiligen bekannten Codierungsverfahren bekannt.
Für die Fälle, daß entweder ein P-Bild oder ein B-Bild deco¬ diert wird, werden die Referenzmakroblöcke RMB, die unter der ermittelten Adresse in dem Bildspeicher FM gespeichert sind, in einen Zwischenspeicher kopiert und eventuell einer Halb- Pixel-Filterung unterzogen. Anschließend werden die nun er¬ mittelten Daten des aktuellen Makroblocks MB in dem Bildspei¬ cher FM gespeichert an der Adresse des aktuellen Makroblocks MB.
Dies ist für ein I-Bild nicht notwendig, da in diesem Fall die von dem Adressen-Generator AG ermittelte Adresse schon die Adresse des aktuellen Makroblocks MB darstellt .
Ein zweites Ausführungsbeispiel ist in den Figuren 5 und 7 dargestellt .
Hierbei werden die Kopieraktionen nicht parallel zur Decodie¬ rung der codierten Makroblöcke MB durchgeführt. Die uncodier- ten Makroblöcke UMB werden markiert 701 und Rekonstruktions- daten der uncodierten Makroblöcke UMB werden in einem Rekon¬ struktionsspeicher RS gespeichert.
Hierbei wird der Wert des Bewegungsvektors MV beispielsweise in dem Vektor-FIFO-Speicher MVS abgespeichert. Dies erfolgt jedoch nur bei zu decodierenden B-Bildern. Dem Wert des Bewe¬ gungsvektors MV wird in einem Adreß-FIFO-Speicher AS die Adresse des Makroblocks MB gespeichert, die innerhalb des Bildes die Nummer des aktuellen Makroblocks MB angibt. Die Adresse des jeweiligen Makroblocks MB und der Wert des Bewe¬ gungsvektors MV werden bei B-Bildern eindeutig einander zuge¬ ordnet.
Erst nachdem die codierten Makroblöcke MB decodiert wurden, werden die als nicht codiert gekennzeichneten Makroblöcke UMB bearbeitet. Die Bearbeitung selbst erfolgt wiederum in dem Kopiermodul KM 608 auf die im vorigen beschriebene Weise.
Ber der seriellen Verarbeitung kann das Kopieren der Refe- renzmakroblöcke RMB auch in dem Mittel zur BewegungsSchätzung MC durchgeführt werden.
Die restlichen Verfahrensschritte entsprechen den Schritten des ersten Ausführungsbeispiels.
Mischformen zwischen diesen zwei „Extremfällen" der paralle¬ len Bearbeitung und der streng getrennten Bearbeitung der co-
dierten Makroblöcke MB und der uncodierten Makroblöcke UMB sind in Varianten des erfindungsgemäßen Verfahrens vorgese¬ hen.
Eine Weiterbildung der Verfahren ist in Figur 8 am Beispiel des ersten Ausführungsbeipiels dargestellt. Dabei wird in ei¬ nem weiteren Schritt für codierte Makroblöcke MB überprüft, ob einzelne Bildblöcke des aktuellen Makroblocks MB nicht co¬ diert sind 801. Existieren uncodierte Bildblöcke UBB, so wer- den die Bildblöcke für die uncodierten Bildblöcke UBB ebenso wie im vorigen die uncodierten Makroblöcke UMB in dem Kopier¬ modul KM aus dem entsprechenden Referenzbildblock RBB des vorangegangenen Bildes gebildet.
In Figur 9 ist eine Anordnung dargestellt, in der die Verfah¬ ren eingesetzt werden. In einem ersten Rechner Rl, der Co¬ diereinheit, wird ein Bild auf die im vorigen beschriebene Weise codiert . Das Bild wird beispielsweise von einer Kamera K aufgenommen.
Der erste Rechner Rl ist mit einem zweiten Rechner R2 gekop¬ pelt. Der erste Rechner Rl überträgt das codierte Bild an den zweiten Rechner R2, wo das Bild decodiert wird. Das decodier¬ te Bild wird nun beispielsweise auf einem Bildschirm BS2 des zweiten Rechners R2 einem zweiten Betrachter B2 dargestellt.
Es ist ebenso vorgesehen, daß das codierte Bild nicht nur übertragen, sondern auch in dem ersten Rechner Rl decodiert wird, was bei den blockbasierten Verfahren ohnehin nötig ist zur Ermittlung der eigentlich übertragenen Differenzinforma¬ tion, und auf einem Bildschirm BS1 des ersten Rechners Rl ei¬ nem ersten Betrachter dargestellt wird.
In diesem Dokument wurden folgende Veröffentlichungen zi¬ tiert :
[1] D. Le Gall, The Video Compression Standard for Multime- dia Applications, Communications of the ACM, Vol. 34, No. 4, S. 47-58, April 1991, 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, 1991
[3] G. Wallace, The JPEG Still Picture Compression Standard, Communications of the ACM, Vol. 34, No. 4, S. 31-44, April 1991, 1991
Claims
1. Decodierer zur Decodierung von mit einem blockbasierten Codierungsverfahren codierten Bildern,
- bei dem ein erstes Mittel vorgesehen ist zur Durchführung einer Variable Lenght Decodierung (VLD) eines Makroblocks (MB) eines Bildes (600) , der eine vorgebbare Anzahl von Bild¬ blöcken (BB) aufweist, - bei dem ein Steuermittel (HA) vorgesehen ist zur Prüfung, ob der Makroblock (MB) uncodiert (UMB) ist,
- bei dem ein Kopiermodul (KM) vorgesehen ist,
- bei dem ein zweites Mittel vorgesehen ist zur Durchführung einer Run Length Decodierung (RLD) , - bei dem ein drittes Mittel vorgesehen ist zur Durchführung eines inversen Scan-Verfahrens (IS) ,
- bei dem ein viertes Mittel vorgesehen ist zur Durchführung einer inversen Quantisierung (IQ) ,
- bei dem ein fünftes Mittel vorgesehen ist zur Durchführung einer inversen Codierungstransformation (IDCT) ,
- bei dem ein sechstes Mittel vorgesehen ist zur Durchführung einer Bewegungskompensation (MC) , und
- bei dem ein Bildspeicher (FM) vorgesehen ist.
2. Codierer zur Decodierung von mit einem blockbasierten Co¬ dierungsverfahren codierten Bildern,
- bei dem eine Transformationseinheit vorgesehen ist zur Durchführung einer Codierungstransformation (DCT) ,
- bei dem eine Quantisierungseinheit vorgesehen ist zur Durchführung einer Quantisierung (Q) ,
- bei dem eine Scaneinheit vorgesehen ist zur Durchführung eines Scan-Verfahrens (SV) ,
- bei dem ein Steuermittel (HA) vorgesehen ist zur Prüfung, ob der Makroblock (MB) uncodiert (UMB) ist, - bei dem ein Kopiermodul (KM) vorgesehen ist,
- bei dem ein drittes Mittel vorgesehen ist zur Durchführung eines inversen Scan-Verfahrens (IS) , - bei dem ein viertes Mittel vorgesehen ist zur Durchführung einer inversen Quantisierung (IQ) ,
- bei dem ein fünftes Mittel vorgesehen ist zur Durchführung einer inversen Codierungstransformation (IDCT) , - bei dem ein sechstes Mittel vorgesehen ist zur Durchführung einer Bewegungskompensation (MC) , und
- bei dem ein Bildspeicher (FM) vorgesehen ist.
3. Verfahren zur Decodierung von mit einem blockbasierten Co- dierungsverfahren codierten Bildern,
- bei dem für einen Makroblock (MB) eines Bildes (600) , der eine vorgebbare Anzahl von Bildblöcken (BB) aufweist, eine Variable Lenght Decodierung durchgeführt (VLD) (601) ,
- bei dem geprüft wird, ob der Makroblock (MB) uncodiert (SMB) ist (602) ,
- bei dem für den Fall, daß der Makroblock (MB) codiert ist, folgende Schritte vorgesehen werden:
-- für den Makroblock (MB) wird eine Run Length Decodierung (RLD) durchgeführt (603), -- für den Makroblock (MB) wird ein inverses Scan-Verfahren
(IS) durchgeführt (604) ,
-- für den Makroblock (MB) wird eine inverse Quantisierung (IQ) durchgeführt (605) ,
-- für den Makroblock (MB) wird eine inverse Codierungstrans- formation (IDCT) durchgeführt (606) ,
-- für den Makroblock (MB) wird eine Bewegungskompensation
(MC) durchgeführt (607),
-- bei dem der Makroblock (MB) gespeichert wird, und
- bei dem für den Fall, daß der Makroblock (MB) uncodiert ist, eine Kopie eines Referenzmakroblocks (RM) des uncodier¬ ten Makroblocks (MB) in einem Bildspeicher (FM) gespeichert wird (608) , und
- bei dem der decodierte Makroblock (MB) oder die Kopie des Referenzmakroblocks (RM) einen rekonstruierten Makroblock (RMB) darstellen (609) .
4. Verfahren zur Decodierung von mit einem blockbasierten Co¬ dierungsverfahren codierten Bildern,
- bei dem für einen Makroblock (MB) eines Bildes (600) , der eine vorgebbare Anzahl von Bildblöcken (BB) aufweist, eine Variable Lenght Decodierung durchgeführt (VLD) (601) ,
- bei dem geprüft wird, ob der Makroblock (MB) uncodiert (SMB) ist (602),
- bei dem für den Fall, daß der Makroblock (MB) codiert ist, folgende Schritte vorgesehen werden: -- für den Makroblock (MB) wird eine Run Length Decodierung
(RLD) durchgeführt (603) ,
-- für den Makroblock (MB) wird ein inverses Scan-Verfahren
(IS) durchgeführt (604),
-- für den Makroblock (MB) wird eine inverse Quantisierung (IQ) durchgeführt (605),
-- für den Makroblock (MB) wird eine inverse Codierungεtrans- formation (IDCT) durchgeführt (606),
-- für den Makroblock (MB) wird eine Bewegungskompensation
(MC) durchgeführt (607) , -- bei dem der Makroblock (MB) gespeichert wird, und
- bei dem für den Fall, daß der Makroblock (MB) uncodiert ist, der Makroblock (MB) als uncodiert gekennzeichnet wird (701) ,
- bei dem nach der Decodierung einer vorgebbaren Anzahl von Makroblöcken (MB) für die als uncodiert gekennzeichneten Ma¬ kroblöcken (MB) jeweils eine Kopie eines Referenzmakroblocks (RM) des jeweiligen uncodierten Makroblocks (MB) in einem Bildspeicher (FM) gespeichert wird (608) , und
- bei dem der decodierte Makroblock (MB) oder die Kopie des Referenzmakroblocks (RM) einen rekonstruierten Makroblock
(RMB) darstellen (609) .
5. Verfahren nach Anspruch 3 oder 4,
- bei dem für jeden Bildblock (BB) des Makroblocks (MB) ge- prüft wird, ob ein Bildblock (BB) uncodiert ist, und - bei dem für den Fall, daß der Bildblock (BB) uncodiert ist, eine Kopie eines Referenzbildblocks (RB) des uncodierten Bildblocks (BB) in dem Bildspeicher (FM) gespeichert wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19603808.1 | 1996-02-02 | ||
DE19603808A DE19603808C1 (de) | 1996-02-02 | 1996-02-02 | Anordnung und Verfahren zur Codierung und Decodierung von mit einem blockbasierten Codierungsverfahren codierten Bildern |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1997028651A1 true WO1997028651A1 (de) | 1997-08-07 |
Family
ID=7784366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/DE1996/002464 WO1997028651A1 (de) | 1996-02-02 | 1996-12-19 | Anordnung und verfahren zur codierung und decodierung von mit einem blockbasierten codierungsverfahren codierten bildern |
Country Status (3)
Country | Link |
---|---|
DE (1) | DE19603808C1 (de) |
TW (1) | TW346610B (de) |
WO (1) | WO1997028651A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1306823C (zh) * | 2004-07-30 | 2007-03-21 | 联合信源数字音视频技术(北京)有限公司 | 一种并行处理行程解码、反扫描和反量化的方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4796087A (en) * | 1986-05-29 | 1989-01-03 | Jacques Guichard | Process for coding by transformation for the transmission of picture signals |
US5021879A (en) * | 1987-05-06 | 1991-06-04 | U.S. Philips Corporation | System for transmitting video pictures |
EP0447269A2 (de) * | 1990-03-16 | 1991-09-18 | Fujitsu Limited | System zur Verarbeitung von Bilddaten |
EP0469855A2 (de) * | 1990-07-31 | 1992-02-05 | Fujitsu Limited | Verfahren und Gerät zur Bilddatenverarbeitung |
EP0537932A2 (de) * | 1991-10-15 | 1993-04-21 | International Business Machines Corporation | Bildkompression |
EP0588653A2 (de) * | 1992-09-16 | 1994-03-23 | Fujitsu Limited | Verfahren und Vorrichtung zur Kodierung und Wiederherstellung von Bilddaten |
EP0651574A1 (de) * | 1993-03-24 | 1995-05-03 | Sony Corporation | Verfahren und vorrichtung zur kodierung/dekodierung von bewegungsvektoren, und verfahren und vorrichtung zur kodierung/dekodierung von bildsignalen |
US5442400A (en) * | 1993-04-29 | 1995-08-15 | Rca Thomson Licensing Corporation | Error concealment apparatus for MPEG-like video data |
US5455629A (en) * | 1991-02-27 | 1995-10-03 | Rca Thomson Licensing Corporation | Apparatus for concealing errors in a digital video processing system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5367629A (en) * | 1992-12-18 | 1994-11-22 | Sharevision Technology, Inc. | Digital video compression system utilizing vector adaptive transform |
-
1996
- 1996-02-02 DE DE19603808A patent/DE19603808C1/de not_active Expired - Fee Related
- 1996-12-19 WO PCT/DE1996/002464 patent/WO1997028651A1/de active Application Filing
-
1997
- 1997-01-06 TW TW086100069A patent/TW346610B/zh active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4796087A (en) * | 1986-05-29 | 1989-01-03 | Jacques Guichard | Process for coding by transformation for the transmission of picture signals |
US5021879A (en) * | 1987-05-06 | 1991-06-04 | U.S. Philips Corporation | System for transmitting video pictures |
EP0447269A2 (de) * | 1990-03-16 | 1991-09-18 | Fujitsu Limited | System zur Verarbeitung von Bilddaten |
EP0469855A2 (de) * | 1990-07-31 | 1992-02-05 | Fujitsu Limited | Verfahren und Gerät zur Bilddatenverarbeitung |
US5455629A (en) * | 1991-02-27 | 1995-10-03 | Rca Thomson Licensing Corporation | Apparatus for concealing errors in a digital video processing system |
EP0537932A2 (de) * | 1991-10-15 | 1993-04-21 | International Business Machines Corporation | Bildkompression |
EP0588653A2 (de) * | 1992-09-16 | 1994-03-23 | Fujitsu Limited | Verfahren und Vorrichtung zur Kodierung und Wiederherstellung von Bilddaten |
EP0651574A1 (de) * | 1993-03-24 | 1995-05-03 | Sony Corporation | Verfahren und vorrichtung zur kodierung/dekodierung von bewegungsvektoren, und verfahren und vorrichtung zur kodierung/dekodierung von bildsignalen |
US5442400A (en) * | 1993-04-29 | 1995-08-15 | Rca Thomson Licensing Corporation | Error concealment apparatus for MPEG-like video data |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1306823C (zh) * | 2004-07-30 | 2007-03-21 | 联合信源数字音视频技术(北京)有限公司 | 一种并行处理行程解码、反扫描和反量化的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
DE19603808C1 (de) | 1997-04-17 |
TW346610B (en) | 1998-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69522861T2 (de) | Verfahren und Einrichtung zur Codeumwandlung von codiertem Datenstrom | |
DE60220106T2 (de) | Verfahren und Vorrichtung zur Reduzierung von Störungen in dekodierten Bildern mit Nachfilterung | |
DE69512548T2 (de) | Verfahren und Vorrichtung zur Vermeidung von wiederholenden Zufallsfehlern in Transformationskoeffizienten von Bewegtbildsignalen | |
DE69116869T2 (de) | Digitale bildkodierung mit einer zufallsabtastung der bilder | |
DE69320152T2 (de) | Dekodierer und Methode für digitales komprimiertes Fernsehsignal, der einen gemeinsamen Speicher benutzt zur Dekodierung und zur 2/3 Umwandlung | |
DE69330620T2 (de) | Verfahren und Einrichtung zur Bildkodierung | |
DE69418372T2 (de) | Übertragung und Dekodierung von Bildsignalen | |
DE69227185T2 (de) | Bilddatenkodier/dekodierverfahren und -vorrichtung | |
DE69229229T2 (de) | Bildsignalkodierungsverfahren mit hoher wirkungsgrad | |
EP0956539B1 (de) | Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes | |
EP1025708A1 (de) | Verfahren und vorrichtung zur verarbeitung eines digitalisierten bildes | |
EP0821531B1 (de) | Codierung und Decodierung von Trickfilmen | |
EP0836785B1 (de) | Verfahren zur dekodierung und kodierung eines komprimierten videodatenstroms mit reduziertem speicherbedarf | |
DE69616850T2 (de) | Videodecodersystem | |
EP1110407B1 (de) | Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes mit anwendung eines gesamtbewegungsvektors | |
DE19603808C1 (de) | Anordnung und Verfahren zur Codierung und Decodierung von mit einem blockbasierten Codierungsverfahren codierten Bildern | |
DE10022262A1 (de) | Verfahren und eine Anordnung zur Codierung bzw. Decodierung einer Folge von Bildern | |
EP0981910B1 (de) | Verfahren und vorrichtung zur codierung eines digitalisierten bildes | |
DE19717453C2 (de) | Verfahren zum Einblenden eines neuen Bildabschnittes an einer vorbestimmten Stelle eines datenreduzierten Video-Datenstromes | |
WO2001049038A1 (de) | Verfahren, anordnung und computerprogrammerzeugnis zur prädiktion bei der codierung eines in bildblöcke unterteilten bildes | |
DE19617171C2 (de) | Videodecoder und entsprechendes Verfahren | |
DE10007171A1 (de) | Verfahren und Anordnung zur Codierung bzw. zur Codierung und Decodierung einer Zahlenfolge | |
EP0981909A1 (de) | Verfahren und vorrichtung zur codierung und decodierung eines digitalisierten bildes | |
DE19701942C1 (de) | Verfahren zur Codierung von Bilddaten | |
DE69615133T2 (de) | Verfahren und Vorrichtung zur Feinbestimmung eines Bewegungsvektors für digitale Videobilder |
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: 97527224 Format of ref document f/p: F |
|
122 | Ep: pct application non-entry in european phase |