Beschreibungdescription
Effiziente Codierung von Videosignalen für skalierbare Simul- cast-Speicherung und -Übertragung sowie zugehöriger CodecEfficient coding of video signals for scalable simulcast storage and transmission as well as the associated codec
Die Erfindung bezieht sich auf ein Verfahren zur skalierbaren Videocodierung, bei dem ein Eingangssignal mit Videobildinformation je einer Mehrzahl von Encodern umfassend Quantisie- rer zugeführt wird, wobei die Encoder das Videosignal auf unterschiedlichen Auflösungsebenen in unterschiedlichen Qualitätsstufen quantisieren und anschließend eine Entropiecodierung durchführen, sowie auf eine korrespondierende Vorrichtung.The invention relates to a method for scalable video coding, in which an input signal with video image information is fed to a plurality of encoders comprising quantizers, the encoders quantize the video signal at different resolution levels in different quality levels and then perform entropy coding, as well as one corresponding device.
Für viele Anwendungen sind heutzutage Videosignale in unterschiedlichen Qualitätsstufen bereitzustellen, denn in immer mehr Anwendungen ist es erforderlich, codierte Videosequenzen so aufzubereiten, dass diese mit Geräten sehr unterschiedlicher Leistungsfähigkeit decodiert werden können. Beispiele dafür sind:For many applications, video signals in different quality levels have to be provided today, because in more and more applications it is necessary to prepare coded video sequences in such a way that they can be decoded with devices of very different capacities. Examples include:
- Digitales TV in mehreren Qualitätsstufen für unterschiedliche Empfänger (Heim-TV-Geräte, PC, Organizer, multimediafähige Mobilfunkendgeräte) ;- Digital TV in several quality levels for different receivers (home TV sets, PC, organizer, multimedia-capable mobile terminals);
- Individuelle Videodienste für unterschiedliche Endgeräte und Zugangsnetze (Breitband-Kabel, xDSL, ISDN, UMTS);- Individual video services for different end devices and access networks (broadband cable, xDSL, ISDN, UMTS);
- Pay-TV und andere Videodienste für unterschiedliche Gebührenklassen;- Pay TV and other video services for different fee classes;
- Verteildienste für Videoinhalte auf unterschiedlichen Endgeräten und Netzen.- Distribution services for video content on different devices and networks.
AnwendungsSzenarien sind im Besonderen mobile Endgeräte, auf denen Bildsequenzen, die eigentlich für Desktop-Applikationen codiert wurden, wiedergebbar sein sollen. Auch Videokonferenzen zwischen Teilnehmern mit Desktop und mobilen Endgeräten erfordern eine geschickte Anpassung der Qualitätsstufen. Hierbei ist die Information, dass ein Teilnehmer ein mobiler Teilnehmer ist, der insbesondere nicht die gleiche Leistungsfähigkeit wie ein fester Teilnehmer aufweist, dem Sender / Initiator nicht notwendigerweise bekannt.Application scenarios are, in particular, mobile devices on which image sequences that were actually coded for desktop applications should be reproducible. Video conferences between participants with desktop and mobile devices also require skillful adjustment of the quality levels. Here is the information that a participant is a mobile The sender / initiator is not necessarily aware of a subscriber who, in particular, does not have the same capability as a fixed subscriber.
Darüber hinaus ist es bei variabler Netzgüte (Bandbreite, Fehlerrate etc.) hilfreich, mehrere Datenraten für Videoanwendungen bereitzustellen, damit bei reduzierter Netzgüte die Qualität nur graduell abnimmt und wenigstens eine Min- destbildqualität eingehalten werden kann. Aus technischer Sicht muss in einem solchen Szenario deshalb eine schnelle Adaption der generierten bzw. übertragenen Bitrate an sehr unterschiedliche Übertragungsbandbreiten (z.B. Übertragung im Festnetz im Gegensatz zu drahtloser Übertragung) möglich sein.In addition, with variable network quality (bandwidth, error rate, etc.), it is helpful to provide several data rates for video applications, so that with reduced network quality, the quality only gradually decreases and at least a minimum image quality can be maintained. From a technical point of view, it must therefore be possible to quickly adapt the generated or transmitted bit rate to very different transmission bandwidths (e.g. transmission in the fixed network as opposed to wireless transmission).
Ein zunehmend wichtiges Szenario stellen sogenannte Streaming-Applikationen dar (sowohl im Festnetz als auch im drahtlosen Netz) . Hierbei stellt ein Service-Provider (der auch eine private Einzelperson sein kann) Videomaterial zum Abruf bereit. Ein Client fordert die komprimierten Videodaten an, während das decodierte Bildmaterial bereits dargestellt wird. Auch hierbei muss der Provider sehr unterschiedlichen Kundenanforderungen Rechnung tragen.An increasingly important scenario is the so-called streaming application (both in the fixed network and in the wireless network). A service provider (who can also be a private individual) provides video material for retrieval. A client requests the compressed video data while the decoded image material is already being displayed. Here, too, the provider has to take very different customer requirements into account.
Prinzipiell erfordern solche Problemstellungen skalierbare Codierverfahren. Solche Verfahren finden sich beispielsweise in:In principle, such problems require scalable coding methods. Such processes can be found, for example, in:
- ITU-T Rec. H.263λVideo Coding for low bit rate com unica- tion", Annex 0: * Temporal, SNR, and spatial scalability" .- ITU-T Rec. H.263λ Video Coding for low bit rate com unification ", Annex 0: * Temporal, SNR, and spatial scalability".
- ISO/IEC JTC1/5C29/WG11,Generic coding of moving pictures and associated audio", ISO/IEC 13818-2 Draft International Standard.- ISO / IEC JTC1 / 5C29 / WG11, Generic coding of moving pictures and associated audio ", ISO / IEC 13818-2 Draft International Standard.
Bei skalierbaren Codierverfahren wird senderseitig (server- seitig) nur ein einziger Bitstrom generiert, aus dem auch Bildsequenzen geringerer Qualität und / oder Auflösung decodiert werden können. Damit kann der Client (Empfänger) für Streaming-Applikationen entscheiden, mit welcher Auflösungsqualität er die Applikation dargestellt haben möchte. Im Fall variierender Terminaleigenschaften decodiert der Client nur den relevanten Teil, der darstellbar ist. Im Bereich mobiler Applikationen mit zeitlich stark schwankenden Kanaleigenschaften ergibt sich die Möglichkeit einer sehr schnellen A- daption des Senders, bzw. eine elegante Schnittstelle für UEP (unequal error protection) .With scalable coding methods, only a single bit stream is generated on the transmitter side (server side), from which also Image sequences of lower quality and / or resolution can be decoded. This allows the client (recipient) for streaming applications to decide with which resolution quality they would like the application to be displayed. In the case of varying terminal properties, the client decodes only the relevant part that can be displayed. In the area of mobile applications with time-fluctuating channel properties, there is the possibility of a very fast adaptation of the transmitter or an elegant interface for UEP (unequal error protection).
Grundsätzlich kann zwischen SNR (signal-to-noise ratio) , örtlicher und zeitlicher Skalierbarkeit unterschieden werden. Allen Verfahren gemeinsam ist, dass durch Variation bestimmter Codierparameter die gleiche Bildsequenz bei verschiedenen Bitraten codiert wird. Im Fall der SNR-Skalierung werden durch Va: ation der Quantisierung unterschiedliche Qualitätsstufen und Bitraten erzielt. Örtliche Skalierbarkeit beschreibt Verfahren, die die Bildsequenz mit unterschiedlichen Ortsauflösungen (Bildgrößen) codieren. Eine zeitliche Skalierbarkeit schließlich stellt die Bildsequenzen mit unterschiedlichen Bildfrequenzen zur Verfügung. Es sei darauf hingewiesen, dass durchaus beliebige Kombinationen der drei Arten möglich sind.A basic distinction can be made between SNR (signal-to-noise ratio), local and temporal scalability. Common to all methods is that by varying certain coding parameters, the same picture sequence is coded at different bit rates. In the case of SNR scaling, different quality levels and bit rates are achieved by varying the quantization. Local scalability describes methods that code the image sequence with different spatial resolutions (image sizes). Finally, the image sequences with different image frequencies are scalable over time. It should be noted that any combination of the three types is possible.
Bisher erfolgt die Bereitstellung der Videoinhalte dadurch, dass entweder die Videodaten in einem skalierbaren Format codiert werden oder dass für jede Qualitätsstufe ein eigener Datenstrom bereitgehalten wird (Simulstore) bzw. ausgesendet wird (Simulcast) .So far, the video content has been provided either by encoding the video data in a scalable format or by keeping a separate data stream available for each quality level (simulstore) or sending it out (simulcast).
Eine sogenannte Simulcast-Codierung, bei der die gewünschten Bitströme mit unterschiedlich parametrisierten parallelen und unabhängig voneinander arbeitenden Codecs generiert werden, erreicht bisher eine bessere Qualität bei gleicher Bitrate. Im Fall des Si ulcast-Codierverfahrens bleibt eine nicht unerhebliche Redundanz zwischen den einzelnen Bitströmen erhalten. Dieses Verfahren geht nämlich sehr verschwenderisch mit Netzressourcen um. Werden z.B. drei Qualitätsstufen benötigt, die Datenraten von 48kbit/s, 64kbit/s und 128kbit/s entsprechen, so beträgt die erforderliche Netzkapazität bei gleich¬ zeitiger Übertragung aller Ströme 240 kbit/s. Außerdem ist die erforderliche Speicherkapazität für die unterschiedlichen Ströme wesentlich größer. Deutlich effizienter sind deshalb skalierbare Codierverfahren.So-called simulcast coding, in which the desired bit streams are generated with differently parameterized parallel and independently operating codecs, has so far achieved better quality at the same bit rate. In the case of the Si ulcast coding method, a not inconsiderable redundancy between the individual bit streams is retained. This is because this process is very wasteful of network resources. Example you will need three quality levels, data rates of 48kbit / s, 64 kbit / s and / s correspond 128kbit, the required network capacity while at the same time transfer¬ is all currents 240 kbit / s. In addition, the required storage capacity for the different currents is much larger. Scalable coding methods are therefore significantly more efficient.
Skalierbare Videocodierverfahren wurden in der wissenschaftlichen Literatur bereits vielfach untersucht, allerdings häufig mit einer Ausrichtung auf bestehende oder in der Entwicklung befindliche Standards (MPEG-2, MPEG-4, H.263, H.26L). Auch wenn die Verfahren Eingang in die Standards gefunden haben, so finden diese Verfahren bislang keine breite Anwendung, da deren Performance (erzielbares peak signal-to-noise ratio (PSNR) bei gegebener Bitrate) sehr unbefriedigend ist.Scalable video coding methods have already been extensively examined in the scientific literature, but often with an orientation towards existing or developing standards (MPEG-2, MPEG-4, H.263, H.26L). Even if the methods have found their way into the standards, so far these methods have not been widely used, since their performance (peak signal-to-noise ratio (PSNR) that can be achieved at a given bit rate) is very unsatisfactory.
Hierbei wird bei niedriger Datenrate im Basislayer eine Mindestqualität bereitgestellt, mit dem Empfang und Decodierung der Enhance ent-Layer kann die Bildqualität stufenweise verbessert werden. Besonders effizient ist in diesem Zusammenhang ein Verfahren zur optimalen SNR-Skalierbarkeit wie es von der Anmelderin in der deutschen Patentanmeldung 10121259.3 vorgeschlagen worden ist. Weitere Verfahren existieren zur feingranularen Skalierbarkeit, die zwar die Möglichkeit zu einer feinstufigen Einstellung der Qualität bieten, jedoch ist allen diesen bekannten Verfahren zueigen, dass diese noch relativ ineffizient bzgl. der Kompressionseigenschaften sind.With a low data rate, a minimum quality is provided in the base layer, with the reception and decoding of the enhancement ent-layer, the image quality can be gradually improved. In this context, a method for optimal SNR scalability as proposed by the applicant in German patent application 10121259.3 is particularly efficient. There are other methods for fine-granular scalability, which offer the possibility of a fine adjustment of the quality, but all of these known methods have the inherent fact that they are still relatively inefficient with regard to the compression properties.
Aufgabe der vorliegenden Erfindung ist es daher, eine effizientere Codierung von Videosignalen für skalierbare Simul- cast-Speicherung und -Übertragung zu schaffen. Eine weitere Aufgabe besteht in der effizienten Decodierung solcher Signale.The object of the present invention is therefore to create a more efficient coding of video signals for scalable simulcast storage and transmission. Another The task is to efficiently decode such signals.
Diese Aufgabe wird gemäß den Merkmalen der unabhängigen Patentansprüche gelöst. Weiterbildungen der Erfindung ergeben sich auch aus den abhängigen Ansprüchen.This object is achieved in accordance with the features of the independent claims. Further developments of the invention also result from the dependent claims.
Gemäß der Erfindung wird das Eingangs genannte Verfahren dadurch weitergebildet wird, dass die Encoder untereinander derart verkoppelt sind, dass in einem oder in mehreren Encodern anstelle einer Entropiecodierung von quantisierten Transformationssignalen quantisierte Differenzsignale von Transformationssignalen einer Entropiecodierung unterzogen werden, wodurch auf den unterschiedlichen Au lösungsebenen quantisierte AusgangsSignale erhalten werden.According to the invention, the method named input is further developed in that the encoders are coupled to one another in such a way that in one or more encoders, instead of entropy coding of quantized transformation signals, quantized difference signals from transformation signals are subjected to entropy coding, as a result of which output signals quantized at the different resolution levels be preserved.
Dies lässt sich in einer ersten Ausführungsform der Erfindung auf besonders vorteilhafte Weise erreichen, indem eine Quantisierung und eine Entropiecodierung der Differenz aus einem Transfor ationssignal vor der zugeordneten Quantisierung und einem Transformationssignal einer niedrigeren Qualitätsstufe nach zugeordneter Quantisierung und inverser Quantisierung erfolgt. Dies gilt vor allem dann, wenn die Quantisierer ineinander eingebettet sind.In a first embodiment of the invention, this can be achieved in a particularly advantageous manner by quantization and entropy coding of the difference between a transformation signal before the assigned quantization and a transformation signal of a lower quality level after assigned quantization and inverse quantization. This is especially true when the quantizers are embedded in one another.
Wie in der detaillierten Beschreibung der Anmeldung noch gezeigt wird, ist es für die Umsetzung der- ersten Ausführungsform der Erfindung vorteilhaft, wenn die Quantisierungsparameter von aufeinander folgenden Qualitätsstufen ein bestimmtes Verhältnis aufweisen. Insbesondere muss das Verhältnis des Quantisierungsparameters einer ersten Qualitätsstufe zu einem Quantisierungsparameter einer zweiten, darauf folgenden Qualitätsstufe eine natürliche Zahl sein. Hier und im Folgenden ist unter einem Quantisierungsparameter die Stufenhöhe eines Quantisierers zu verstehen. Um eine Beschränkung der Quantisierungen in den Encodern zu umgehen, wird in einer zweiten Ausführungsform der Erfindung eine Entropiecodierung der Differenz aus einem ersten Transformationssignal und einem zweiten Transformationssignal durchgeführt, wobei das erste Transformationssignal das Transformationssignal nach der zugeordneten Quantisierung ist und das zweite Transformationssignal durch eine Prädiktion des ersten Transformationssignals erhalten wird. Vorzugsweise wird die Prädiktion mit Hilfe des Transformationssignals einer niedrigeren Qualitätsstufe nach zugeordneter Quantisierung durchgeführt. Es wird somit der Prädiktionsfehler einer Prädiktion eines quantisierten Transformationssignals einer Entropiecodierung unterzogen.As will be shown in the detailed description of the application, it is advantageous for the implementation of the first embodiment of the invention if the quantization parameters of successive quality levels have a certain ratio. In particular, the ratio of the quantization parameter of a first quality level to a quantization parameter of a second, subsequent quality level must be a natural number. Here and below, a quantization parameter is to be understood as the step height of a quantizer. In order to circumvent a limitation of the quantizations in the encoders, entropy coding of the difference between a first transformation signal and a second transformation signal is carried out in a second embodiment of the invention, the first transformation signal being the transformation signal after the assigned quantization and the second transformation signal by prediction of the first transformation signal is obtained. The prediction is preferably carried out with the aid of the transformation signal of a lower quality level after assigned quantization. The prediction error of a prediction of a quantized transformation signal is thus subjected to entropy coding.
Das zweite Transformationssignal wird hierbei vorzugsweise durch die Multiplikation des Transformationssignals der niedrigeren Qualitätsstufe nach zugeordneter Quantisierung mit einem Faktor zur Anpassung des Transformationssignals der niedrigeren Qualitätsstufe nach zugeordneter Quantisierung an das erste Transformationssignal erhalten. Der Faktor ist insbesondere der Quotient aus den Quantisierungsparametern der niedrigeren und der für das erste Transformationsignal verwendeten Qualitätsstufe. Hierdurch kann auf einfache Weise ein Wert für das erste Transformationssignal prädiziert werden.The second transformation signal is preferably obtained by multiplying the transformation signal of the lower quality level after assigned quantization by a factor for adapting the transformation signal of the lower quality level after assigned quantization to the first transformation signal. The factor is in particular the quotient of the quantization parameters of the lower and the quality level used for the first transformation signal. In this way, a value for the first transformation signal can be predicted in a simple manner.
Da bei der Decodierung der codierten Signale ebenfalls wieder eine Prädiktion durchgeführt wird, sollte sichergestellt werden, dass die Multiplikation des Transformationssignals der niedrigeren Qualitätsstufe mit dem Faktor mit einer vorgegebenen Genauigkeit erfolgt. Dies wird durch die Verwendung von Festkommaarithmetik erreicht. Die Multiplikation erfolgt insbesondere gemäß folgender Gleichung:Since a prediction is also carried out again when the coded signals are decoded, it should be ensured that the multiplication of the transformation signal of the lower quality level takes place with the factor with a predetermined accuracy. This is achieved through the use of fixed point arithmetic. The multiplication takes place in particular according to the following equation:
mit Mt = [2n x at ] , wobei n eine natürliche Zahl ist, i der Index für die Qualitätsstufe ist, oti der Faktor zur Anpassung des Transformationssignals der niedrigeren Qualitätsstufe i-1 an das Transformationssignal der Qualitätsstufe i ist,With Mt = [2n xat ], where n is a natural number, i is the index for the quality level, oti is the factor for adapting the transformation signal of the lower quality level i-1 to the transformation signal of quality level i,
Li' das zweite Transformationssignal ist ,Li 'is the second transformation signal
Li-i das Transformationssignal der niedrigeren Qualitätsstufe i-1 ist, sign(x) die Signumfunktion ist, und [x] der Integerteil von x ist, d.h. die größte ganzeLi-i is the lower quality level transformation signal i-1, sign (x) is the signum function, and [x] is the integer part of x, i.e. the biggest whole
Zahl, die kleiner gleich x ist.Number that is less than or equal to x.
Nach einer weiteren vorteilhaften Ausgestaltung arbeiten die Encoder synchronisiert. Zur Synchronisierung arbeitet vorzugsweise ein Encoder als Master, dem die übrigen Encoder als Slaves folgen, indem für den Master-Encoder ein optimaler Codiermodus ermittelt wird, der auf die Slave-Encoder übertragen wird.According to a further advantageous embodiment, the encoders work synchronized. For synchronization, an encoder preferably works as a master, followed by the other encoders as slaves, by determining an optimal coding mode for the master encoder, which is transmitted to the slave encoders.
Weitere Vorteile ergeben sich, wenn in jedem Encoder eine Bewegungskompensation durchgeführt wird aufgrund von Bewegungs- vektσren, die durch eine Bewegungsschätzung ermittelt werden. Vorzugsweise findet eine Bewegungsschätzung auf einer mittleren oder der höchsten Qualitätsstufe statt .Further advantages result if motion compensation is carried out in each encoder on the basis of motion vectors which are determined by a motion estimation. A motion estimation is preferably carried out at a medium or the highest quality level.
Dabei hat es sich als vorteilhaft erwiesen, wenn zur Bewegungskompensation auf allen Auflösungsebenen dieselben geschätzten Bewegungsvektoren verwendet werden.It has proven to be advantageous if the same estimated motion vectors are used for motion compensation on all resolution levels.
Weitere Vorteile ergeben sich, wenn die Bewegungsschätzung beim Master-Encoder stattfindet und für diesen optimale Bewegungsvektoren ermittelt werden, die im Rahmen der Synchronisierung auf die Slave-Encoder übertragen werden. Dabei besteht ein großer Vorteil des Verfahrens nach der vorliegenden Erfindung in der Möglichkeit, eine Auswahl des Master-Encoders anwendungsbezogen anhand der besten Codierparameter vorzunehmen.Further advantages result if the motion estimation takes place at the master encoder and optimal motion vectors are determined for it, which are transmitted to the slave encoders as part of the synchronization. A major advantage of the method according to the present invention is the possibility of making a selection of the master encoder based on the application using the best coding parameters.
Eine Decodierung von auf diese Weise codierten Videosignalen erfolgt vorzugsweise, indem die codierten Eingangssignale mit auf den unterschiedlichen Auflösungsebenen quantisierten Videosignalen jeweils einem Verarbeitungsschrit't umfassend eine separate Entropiedecodierung und inverse Quantisierung unterzogen werden.A decoding of encoded video signals in this manner is preferably accomplished by the encoded input signals with quantized at different resolution levels video signals each having a Verarbeitungsschrit't comprising a separate entropy decoding and inverse quantization are subjected.
Zur Decodierung von Videosignalen, die gemäß der ersten Aus- führungsform der erfindungsgemäßen Codierverfahrens codiert wurden, wird insbesondere ein Verfahren eingesetzt, bei dem die nach dem Verarbeitungsschritt erhaltenen Signale verknüpft werden und das resultierende Gesamtsignal einer gemeinsamen inversen Transformation unterzogen wird. Vorzugsweise erfolgt die Verknüpfung der durch jeweils den Verarbeitungsschritt erhaltenen Signale durch Summierung.For the decoding of video signals which have been coded in accordance with the first embodiment of the coding method according to the invention, a method is used in particular in which the signals obtained after the processing step are combined and the resulting overall signal is subjected to a common inverse transformation. The signals obtained by the respective processing step are preferably linked by summation.
Wenn Videosignale gemäß der zweiten Ausführungsform des erfindungsgemäßen Codierverfahrens codiert wurden, wird insbesondere ein Verfahren eingesetzt, bei dem der Verarbeitungsschritt derart abläuft, dass in allen außer der niedrigsten Auflösungsebene jeweils das nach der separaten Entropiedecodierung erhaltene Signal zu einem Prädiktionssignal addiert wird, welches durch eine Prädiktion des im entsprechenden Encoder quantisierten Transformationssignals erhalten wird, und die addierten Signale einer inversen Quantisierung zugeführt werden. Die Prädiktion wird hierbei vorzugsweise mit Hilfe des der inversen Quantisierung zugeführten Signals einer niedrigeren Auflösungsebene durchgeführt. Um eine ordnungsgemäße Decodierung zu gewährleisten, läuft die Prädiktion analog zu der bei der Codierung durchgeführten Prädiktion ab, wobei das erste Transformationssignal nunmehr das im entsprechenden Encoder quantisierte Transformationssignal ist und das zweite Transformationssignal das der inversen Quantisierung zugeführte Signal einer niedrigeren Auflösungsebene ist. In einer besonders bevorzugten Ausgestaltung wird ferner aus den jeweils nach dem Verarbeitungsschritt erhaltenen Signalen ein Signal ausgewählt, und das ausgewählte Signal einer inversen Transformation unterzogen wird.If video signals have been encoded in accordance with the second embodiment of the coding method according to the invention, a method is used in particular in which the processing step proceeds in such a way that in all but the lowest resolution level, the signal obtained after the separate entropy decoding is added to a prediction signal which is predicted of the transformation signal quantized in the corresponding encoder is obtained, and the added signals are fed to an inverse quantization. The prediction is preferably carried out with the aid of the signal of the lower resolution level supplied to the inverse quantization. In order to ensure correct decoding, the prediction proceeds analogously to the prediction carried out during coding, the first transformation signal now being the transformation signal quantized in the corresponding encoder and the second transformation signal is the signal of a lower resolution level supplied to the inverse quantization. In a particularly preferred embodiment, a signal is also selected from the signals obtained after the processing step, and the selected signal is subjected to an inverse transformation.
In einer weiteren Ausgestaltung der Erfindung wird das erfindungsgemäße Codierverfahren mit dem erfindungsgemäßen Deco- dierverfahren zu einem gemeinsamen Verfahren kombiniert.In a further embodiment of the invention, the coding method according to the invention is combined with the decoding method according to the invention to form a common method.
Die Erfindung betrifft neben den oben beschriebenen Verfahren auch eine Vorrichtung zur skalierbaren Videocodierung mit einer Mehrzahl von Encodern umfassend Quantisierer, denen jeweils ein Eingangssignal mit Videobildinformation zugeführt wird, und durch die das Videosignal auf unterschiedlichen Auflösungsebenen in unterschiedlichen Qualitätsstufen quanti- sierbar ist, wobei mit der Vorrichtung das erfindungsgemäße Verfahren zur skalierbaren Videocodierung durchführbar ist.In addition to the methods described above, the invention also relates to a device for scalable video coding with a plurality of encoders comprising quantizers, each of which is supplied with an input signal with video image information and by means of which the video signal can be quantified at different resolution levels in different quality levels, with the Device the inventive method for scalable video coding can be carried out.
Ferner umfasst die Erfindung eine Vorrichtung zur Decodierung von nach dem erfindungsgemäßen Codierverfahren codierten Videosignalen, mit der das erfindungsgemäße Decodierverfahren durchführbar ist.Furthermore, the invention comprises a device for decoding video signals coded according to the coding method according to the invention, with which the decoding method according to the invention can be carried out.
Darüber hinaus betrifft die Erfindung einen Codec zur skalierbaren Videocodierung und Videodecodierung mit einer Mehrzahl von Encodern umfassend Quantisierer, denen jeweils Videobildinformation als Eingangssignal dient, und durch die das Videosignal auf unterschiedlichen Auflösungsebenen in unterschiedlichen Qualitätsstufen unter Verwendung von Quantisierungsparametern quantisierbar und anschließend Entropiecodierbar ist, wobei der Codec derart ausgestaltet ist, dass die erfindungsgemäßen Verfahren zur Codierung und Decodierung von Videosignalen durchführbar sind. Wesentliche Vorteile der Erfindung ergeben sich somit aus den folgenden Maßnahmen:Furthermore, the invention relates to a codec for scalable video coding and video decoding with a plurality of encoders comprising quantizers, each of which uses video image information as an input signal, and by means of which the video signal can be quantized at different resolution levels in different quality levels using quantization parameters and subsequently entropy coded, the Codec is designed in such a way that the methods according to the invention for coding and decoding video signals can be carried out. Significant advantages of the invention thus result from the following measures:
- Verkopplung von mehreren Videoencodern für die Entropiecodierung der quantisierten Transformationskoeffizienten- Coupling of several video encoders for the entropy coding of the quantized transformation coefficients
- Anwendung von eingebetteten Quantisierern- Use of embedded quantizers
- Verwendung eines einfachen Decoders für mehrere Qualitätsstufen- Use of a simple decoder for several quality levels
- Die Encoder unterliegen keinen Beschränkungen hinsichtlich der Wahl der Quantisierungsparameter- The encoders are not subject to any restrictions regarding the choice of the quantization parameters
- Synchronisation von mehreren Encodern nach dem Master-- Synchronization of several encoders after the master
Slave-PrinzipSlave principle
- Anwendungsspezifische Auswahl des Master-Encoders- Application-specific selection of the master encoder
Insbesondere die Synchronisation und Verkopplung von mehreren Videoencodern führt zu einer erheblichen Reduktion der Ge- samtdatenrate .In particular, the synchronization and coupling of several video encoders leads to a significant reduction in the overall data rate.
Weitere Vorteile und Details der Erfindung ergeben sich anhand von im Folgenden beschriebenen vorteilhaften Ausführungsbeispielen und in Verbindung mit den Figuren. Dabei sind Elemente mit gleicher Funktionalität mit den gleichen Bezugszeichen gekennzeichnet. Es zeigt jeweils in Prinzipdarstellung:Further advantages and details of the invention result from the advantageous exemplary embodiments described below and in connection with the figures. Elements with the same functionality are identified with the same reference symbols. In principle, it shows:
FIG 1 ein vereinfachtes Blockschaltbild eines hybriden Video-Encoders und -Decoders nach dem Stand der Technik,1 shows a simplified block diagram of a hybrid video encoder and decoder according to the prior art,
FIG 2 ein Blockschaltbild einer ersten Ausführungs orm der erfindungsgemäßen Vorrichtung (Codec) aus drei Encodern und Decodern,2 shows a block diagram of a first embodiment of the device according to the invention (codec) comprising three encoders and decoders,
FIG 3 ein Blockschaltbild einer zweiten Ausführungsform der erfindungsgemäßen Vorrichtung (Codec) aus drei Encodern und Decodern FIG 4 eine Prinzipskizze zur Synchronisierung mehrerer Encoder gemäß der Erfindung.3 shows a block diagram of a second embodiment of the device according to the invention (codec) comprising three encoders and decoders 4 shows a schematic diagram for the synchronization of several encoders according to the invention.
Bevor näher auf das Ausführungsbeispiel eingegangen wird, sei hier noch kurz erwähnt, was unter dem Ausdruck Codec zu verstehen ist: Ein „Codec", in der Literatur auch als Coder/Decoder oder als Kompressions- und Dekompressionsalgo- rithmus bezeichnet, codiert (synonym komprimiert) und decodiert (synonym dekomprimiert) verschiedene Arten von Daten. Solche Codierung/Decodierung ist besonders im Zusammenhang mit Daten notwendig, die ansonsten sehr viel Speicherplatz und/oder Transmissionsbandbreite beanspruchen würden, wie zum Beispiel Video- und Audiodaten. Allgemein gebräuchliche Codecs sind solche, die digitale oder digitalisierte analoge Videosignale in komprimierte Videodaten (z.B. MPEG) oder digitalisierte analoge oder digitale Audiosignale in komprimierte Audiodaten (z.B. MP3, RealAudio) umwandeln. Grundsätzlich können Codecs in Echtzeit (z.B. Kommunikation) oder auf Grundlage von Speicherdateien (z.B. Streaming) verwendet werden.Before going into more detail on the exemplary embodiment, it should be briefly mentioned here what is meant by the term codec: a “codec”, also referred to in the literature as a coder / decoder or as a compression and decompression algorithm, coded (synonymously compressed) ) and decodes (synonymously decompressed) different types of data. Such coding / decoding is particularly necessary in connection with data that would otherwise require a large amount of storage space and / or transmission bandwidth, such as video and audio data. Commonly used codecs are such which convert digital or digitized analog video signals into compressed video data (e.g. MPEG) or digitized analog or digital audio signals into compressed audio data (e.g. MP3, RealAudio) In principle, codecs can be used in real time (e.g. communication) or based on storage files (e.g. streaming) ,
Die im Folgenden detailliert dargestellten Verfahren gemäß der Erfindung lehnen sich an ein Verfahren zur optimalen SNR- Skalierbarkeit an, können jedoch auch auf andere existierende Codierschemata angewendet werden. Unterschiede beziehen sich im wesentlichen auf die Gestaltung der Quantisierer. Der Vorteil gegenüber den herkömmlichen Simulcastverfahren ist eine deutliche Reduktion der erforderlichen Datenrate durch Verkopplung der Entropiecodierung der Transformationskoeffizienten.The methods according to the invention detailed below are based on a method for optimal SNR scalability, but can also be applied to other existing coding schemes. Differences essentially relate to the design of the quantizers. The advantage over conventional simulcast methods is a significant reduction in the required data rate by coupling the entropy coding of the transformation coefficients.
Dieser Vorteil gilt insbesondere dann, wenn die Quantisierer wie bei der optimalen SNR-Skalierbarkeit in der deutschen Patentanmeldung 10121259.3 vorgeschlagen ineinander eingebettet sind. Prinzipiell könnten einige Codierschemata auch ohne Modifizierung der Quantisierer eingesetzt werden, jedoch ergibt sich dann nicht mehr unbedingt eine deutliche Reduktion der Datenrate.This advantage applies in particular if the quantizers are embedded in one another, as proposed for optimal SNR scalability in German patent application 10121259.3. In principle, some coding schemes could also be used without Modification of the quantizers can be used, but this does not necessarily result in a significant reduction in the data rate.
Das Verfahren zeichnet sich dadurch aus, dass es auf dem hybriden Coderkonzept aufbaut, und damit grundsätzlich kompatibel zu existierenden Standards zur Videocodierung ist. Der oft gemachte Einwurf, dass neue Verfahren nicht kompatibel zu existierenden Verfahren sind, trifft hier nicht zu.The process is characterized by the fact that it is based on the hybrid coder concept and is therefore fundamentally compatible with existing standards for video coding. The objection often made that new processes are not compatible with existing processes does not apply here.
Die Darstellung gemäß FIG 1 zeigt ein vereinfachtes Blockschaltbild eines hybriden Videocoders.The illustration according to FIG. 1 shows a simplified block diagram of a hybrid video encoder.
Beim herkömmlichen Simulcastverfahren mit n Qualitätsstufen werden n solche Coder mit entsprechenden Quantisierungsparametern bzw. anderweitigen Parametern benötigt. In FIG 1 bedeuten:In the conventional simulcast method with n quality levels, n such encoders with corresponding quantization parameters or other parameters are required. In FIG 1 mean:
T: Transformationseinheit (z.B. DCT, Integer-T: transformation unit (e.g. DCT, integer
Transformation)Transformation)
IT: Einheit zur Durchführung der inversen TransformationIT: Unit for performing the inverse transformation
Q: QuantisiererQ: quantizer
IQ: Einheit zur Durchführung der inversen QuantisierungIQ: unit for performing inverse quantization
EC: EntropiecoderEC: entropy encoder
ED: EntropiedecoderED: entropy decoder
Sp: BildspeicherSp: image memory
MV: BewegungsvektorenMV: motion vectors
MS: Bewegungsschätzer.MS: motion estimator.
Das Grundprinzip des hybriden Coderkonzepts besteht in der Codierung eines Prädiktionsfehlersignals, welches sich aus der Differenz zwischen Eingangssignal und (quantisierter) be- wegungskompensierter Rekonstruktion des vorherigen Bildes ergibt. Im Bezug auf die Berechnung der Prädiktion gibt es sehr viele Varianten, denen allen die zeitliche Prädiktion gemeinsam ist. Es ist allerdings auch möglich, dass von bereits co- dierten Bildteilen innerhalb des selben Bildes prädiziert wird.The basic principle of the hybrid coder concept is the coding of a prediction error signal, which results from the difference between the input signal and (quantized) motion-compensated reconstruction of the previous picture. With regard to the calculation of the prediction, there are very many variants that all have the temporal prediction in common. However, it is also possible that already co- predicted parts of the picture within the same picture is predicted.
Darüber hinaus erfolgt die Codierung des Prädiktionsfehlers vielfach nach Ausführung einer Transformation zur Dekorrelation (Ausnutzen örtlicher statistischer Abhängigkeiten) . Um die für eine Videoübertragung erforderlichen Kompressionsraten zu erzielen, werden entweder die Intensitäten des Prädik- tionsfehlersignals direkt im Ortsbereich oder aber die Transformationskoeffizienten quantisiert und anschließend über eine Entropiecodierung verlustlos komprimiert, sowie auf ein. binäres Signal abgebildet.In addition, the prediction error is often coded after a transformation for decorrelation (exploitation of local statistical dependencies) has been carried out. In order to achieve the compression rates required for a video transmission, either the intensities of the prediction error signal are quantized directly in the spatial region or else the transformation coefficients are quantified and then compressed losslessly via entropy coding, and onto one. binary signal mapped.
Die Darstellung nach FIG 1 zeigt in diesem Zusammenhang auf der linken Seite der gestrichelten Linie einen solchen Encoder, auf der rechten Seite den zugehörigen Decoder. Dem Encoder eingangsseitig beaufschlagte Videodaten durchlaufen eine Transformation T und eine Quantisierung Q. Dieses Signal wird zum einen einem Entropiecodierer EC zugeführt, der einen komprimierten Videodatenstrom bereitstellt. Zum anderen erfolgt Encoder intern eine inverse Quantisierung IQ und eine anschließende inverse Transformation IT. Dieses Signal gelangt in einen Bildspeicher Sp, dessen Ausgang einmal auf den Eingang rückgekoppelt ist, zum anderen negativ auf den Eingang der Transformation T gelangt.1 shows such an encoder on the left side of the dashed line and the associated decoder on the right side. Video data applied to the encoder on the input side undergo a transformation T and a quantization Q. On the one hand, this signal is fed to an entropy encoder EC, which provides a compressed video data stream. On the other hand, the encoder internally performs an inverse quantization IQ and a subsequent inverse transformation IT. This signal arrives in an image memory Sp, the output of which is fed back to the input and, on the other hand, reaches the input of the transformation T negatively.
Der Bildspeicher Sp steuert einen Bewegungsschätzer MS, der seinerseits eingangsseitig mit den Videoeingangsdaten beaufschlagt wird und Bewegungsvektoren MV bereitstellt zur An- steuerung des Bildspeichers SP im Encoder. Außerdem werden diese Bewegungsvektoren auch zum Decoder übertragen und dienen dort ebenfalls zur Ansteuerung eines decoderseitigen Bildspeichers Sp.The image memory Sp controls a motion estimator MS, which in turn receives the video input data on the input side and provides motion vectors MV to control the image memory SP in the encoder. In addition, these motion vectors are also transmitted to the decoder and are also used there to control a decoder-side image memory Sp.
Decoderseitig erfolgt zunächst eine Entropiedecodierung ED der komprimierten Videodaten, anschließend eine inverse Quantisierung IQ und eine inverse Transformation IT. Die so er- mittelten decodierten Videodaten addiert mit den Daten des Bildspeichers stellen den Ausgang des Decoders dar. Dieses Summensignal wird außerdem dem decoderseitigen Bildspeicher Sp zugeführt, dessen Ausgang auf den Eingang des Addierers zurückgeführt ist.On the decoder side, entropy decoding ED of the compressed video data is carried out, followed by inverse quantization IQ and inverse transformation IT. The so average decoded video data added to the data of the image memory represent the output of the decoder. This sum signal is also fed to the image memory Sp on the decoder side, the output of which is fed back to the input of the adder.
Die Darstellung nach FIG 2 zeigt nun eine neue Anordnung gemäß einer ersten Ausführungsform der Erfindung, welche aus drei Encodern- und Decodern besteht, deren Signale miteinander verknüpft sind. Die Anzahl der Encoder und damit auch die Anzahl der Decoder kann allerdings variiert werden. Die drei Encoder, die auf der linken Seite des Blockschaltbildes übereinander angeordnet sind, erzeugen drei Datenströme Dl, D2 und D3, die zum Decoder übertragen werden.The illustration according to FIG. 2 now shows a new arrangement according to a first embodiment of the invention, which consists of three encoders and decoders, the signals of which are linked to one another. However, the number of encoders and thus the number of decoders can be varied. The three encoders, which are arranged one above the other on the left side of the block diagram, generate three data streams D1, D2 and D3, which are transmitted to the decoder.
Encoder 1 codiert die Videodaten in einer niedrigen Quali- tätsstufe, Encoder 2 in mittlerer Qualitätsstufe und Encoder 3 in hoher Qualitätsstufe.Encoder 1 encodes the video data in a low quality level, encoder 2 in a medium quality level and encoder 3 in a high quality level.
Die Signale in FIG 2 bedeuten:The signals in FIG. 2 mean:
X: EingangsbildsignalX: input image signal
Xj.: Transformationssignal vor der Quantisierung, i=l;2;3Xj .: transformation signal before quantization, i = 1; 2; 3
Lj.: Repräsentant des quantisierten Transformationssignals, i=l;2;3Lj .: Representative of the quantized transformation signal, i = 1; 2; 3
Xif: Transformationssignal nach Quantisierung und inverserXif : transformation signal after quantization and inverse
Quantisierung, i=l;2;3Quantization, i = 1; 2; 3
ΔXj.: Differenz aus X± und X^ ' mit i=2;3ΔXj .: difference between X± and X ^ 'with i = 2; 3
ΔXi ' : Signal nach Quantisierung und inverser QuantisierungΔXi ': signal after quantization and inverse quantization
XDi: Summe der Signale ΔXi'und XDI-I- i=2;3XDi : Sum of the signals ΔXi 'and XDI -I - i = 2; 3
Das Eingangsbildsignal X wird allen drei Encodern zugeleitet. In jedem Encoder erfolgt eine Transformation T, woraus Xi als Transformationssignal vor der Quantisierung Q erhalten wird. Aus der Quantisierung erhält man Li, welches nur bei Encoder 1 (niedrige Qualitätsstufe) direkt einer Entropiecodierung ECi zugeführt wird, aus der der erste komprimierte Datenstrom Dj. resultiert.The input image signal X is fed to all three encoders. A transformation T takes place in each encoder, from which Xi is obtained as a transformation signal before the quantization Q. Li is obtained from the quantization, which is directly entropy encoded only with encoder 1 (low quality level) ECi is supplied, from which the first compressed data stream Dj. results.
Im übrigen erfolgt für Encoder 1 eine Rückführung von Li über eine inverse Quantisierung IQi und inverse Transformation IT und einen Bildspeicher Sp auf den Eingang von Encoder 1 wie in FIG 1 gezeigt. Eine solche negative Rückkopplung erfolgt auch bei den weiteren Encodern.Moreover, for encoder 1, Li is returned via an inverse quantization IQi and inverse transformation IT and an image memory Sp to the input of encoder 1, as shown in FIG. 1. Such negative feedback also occurs with the other encoders.
Das ausgangsseitige Signal Xi' der inversen Quantisierung IQi von Encoder 1 dient nun aber zusätzlich einer Verknüpfung mit dem Transformationssignal vor der Quantisierung X2 von Encoder 2. Das Signal Xχf wird negativ mit X2 verknüpft zu ΔX2 als der Differenz aus Xj. und Xi-i' für i=2. Anders als bei Encoder 1 erfolgt eine Entropiecodierung dieses Differenzsignales ΔX2 nach vorheriger Quantisierung Q2 zum komprimierten Ausgangssignal D2. Für den dritten Encoder erfolgt die Codierung analog zum Encoder 2, wobei auf die entsprechenden Signale von Encoder 2 zugegriffen wird.The output-side signal Xi 'of the inverse quantization IQi from encoder 1 now additionally serves to link the transformation signal before the quantization X2 from encoder 2. The signal Xχf is negatively linked to X2 to ΔX2 as the difference from Xj. and Xi-i 'for i = 2. In contrast to encoder 1, this difference signal ΔX2 is entropy encoded after prior quantization Q2 to the compressed output signal D2 . The coding for the third encoder is analogous to encoder 2, with the corresponding signals from encoder 2 being accessed.
Decoderseitig (rechte Seite in FIG 2) wird nun der Datenstrom Di einer Entropiedecodierung EDi und einer darauffolgenden inversen Quantisierung IQα unterzogen, woraus ein Signal XDι wiedergewonnen wird.On the decoder side (right side in FIG. 2), the data stream Di is now subjected to entropy decoding EDi and a subsequent inverse quantization IQα , from which a signal XD ι is recovered.
Für die Encoder 2 und 3 erfolgt ebenfalls jeweils eine Entropiedecodierung EDi und eine darauffolgende inverse Quantisierung IQi für i=2 oder i=3. Daraus erhält man jeweils ΔXi' als Signal nach Quantisierung und inverser Quantisierung von ΔXi. Das Signal ΔX2' wird zu XD1 addiert, woraus XD2 resultiert, welches seinerseits mit dem Signal Δx3' addiert das Signal XD3 ergibt. Decoderseitig erfolgt nun besonders einfach und damit sehr effektiv eine inverse Transformation ausschließlich des Signals XD3, welches das decodierte Ausgangssignal ergibt. Dieses durchläuft im Fall einer Bewegungskompensation einen decoderseitigen Bildspeicher Sp, indem es diesem zu- sätzlich als Eingangssignal dient, dessen Ausgang dem Signal XD3 hinzuaddiert wird.For encoders 2 and 3, entropy decoding EDi and a subsequent inverse quantization IQi for i = 2 or i = 3 are also carried out. From this, ΔXi 'is obtained as a signal after quantization and inverse quantization of ΔXi. The signal ΔX2 'is added to XD1 , which results in XD2 , which in turn together with the signal Δx3 ' gives the signal XD3 . On the decoder side, an inverse transformation exclusively of the signal XD3 , which results in the decoded output signal, is now carried out particularly easily and thus very effectively. In the case of motion compensation, this passes through an image memory Sp on the decoder side by additionally serves as an input signal, the output of which is added to the signal XD3 .
Aus FIG 2 ist ersichtlich, dass gilt; ferner lässt sich im Folgenden zeigen, dass Xoι= i ' , i=2;3 gilt. In den folgenden Gleichungen bedeutet die rechteckige Klammer angewandt auf eine gebrochene Zahl die Schneideoperation auf die nächst niedrige ganze Zahl, also z.B. [2,9] = 2 und [-2,1] = -3.From FIG 2 it can be seen that applies; it can also be shown below that Xoι = i ', i = 2; 3 applies. In the following equations, the square brackets applied to a fractional number means the cutting operation to the next lowest integer, for example, [2.9] = 2 and [-2.1] = -3.
Ein Quantisierungsprozess (Quantisierung und nachfolgende inverse Quantisierung) lässt sich allgemein durchA quantization process (quantization and subsequent inverse quantization) can be carried out in general
beschreiben . describe.
Hierbei ist Qx vorzugsweise ganzzahlig und stellt die Stufenhöhe des j eweiligen Quantisierers dar und die α^ sind quanti- siererabhängige Rundungsparameter mit 0 ≤ a < 1 . Für AX2 undHere, Qx is preferably an integer and represents the step height of the respective quantizer and the α^ are quantizer-dependent rounding parameters with 0 ≤ a <1. For AX2 and
AX2 ' erhält man :AX2 'gives:
M Mii +t- H d oerτr , N = Menge der na- türlichen Zahlen, folgt :M Mii + t- H d oerτr, N = amount of na- natural numbers, follows:
Daraus folgtIt follows
X2'=2' -X,X2 '=2 ' -X,
Daraus lässt sich nun wie folgt bestimmen :This can now be determined as follows:
Analog dazu, ergibt sich auch, dass XD3=X3' gilt.Analogously, it also follows that XD 3 = X3 'applies.
Aufgrund dieser Eigenschaften ist es möglich, mit einem einfachen Decoder aus dem Empfang des Datenstroms Di das Videosignal der untersten Qualitätsstufe zu decodieren, beim Empfang der Datenströme Di und D2 das Videosignal der mittleren Qualitätsstufe zu decodieren und bei Empfang der Datenströme Di, D2 und D3 das Videosignal der oberen Qualitätsstufe zu decodieren.Due to these properties, it is possible to decode the video signal of the lowest quality level from the reception of the data stream Di with a simple decoder, to decode the video signal of the medium quality level when receiving the data streams Di and D2 and when receiving the data streams Di, D2 and D3 to decode the video signal of the upper quality level.
Bemerkenswert ist, dass der Decoder nur eine Einheit zur Durchführung der inversen Transformation IT und nur einen Bildspeicher SP benötigt. Lediglich Entropiedecodierung EDi und inverse Quantisierung IQi müssen für jeden Datenstrom separat durchgeführt werden.It is noteworthy that the decoder only requires one unit for carrying out the inverse transformation IT and only one image memory SP. Only entropy decoding EDi and inverse quantization IQi have to be carried out separately for each data stream.
Wie oben gezeigt wurde, unterliegen die Stufenhöhen der jeweiligen Quantisierer- er ersten Ausführungsform der Erfindung einer Beschränkung dahingehend, dass das Verhältnis von aufeinanderfolgenden Stufenhöhen eine natürliche Zahl ist. In der nachfolgend beschriebenen zweiten Ausführungsform der Erfindung sind die Quantisierer nicht mehr hinsichtlich ihrer Stufenhöhen beschränkt. Die Figur 3 zeigt die zweite Ausführungsform der- Erfindung, wobei Bausteine und Signale, die den Bausteinen bzw. Signalen der Figur 2 entsprechen, mit gleichen Bezeichnungen versehen sind.As shown above, the step heights of the respective quantizers of the first embodiment of the invention are limited in that the ratio of successive step heights is a natural number. In the second embodiment of the invention described below, the quantizers are no longer limited in their step heights. FIG. 3 shows the second embodiment of the invention, modules and signals which correspond to the modules or signals of FIG. 2 being given the same designations.
Zusätzlich in Figur 3 bedeuten:In addition, in FIG. 3:
a^: die Faktoren, mit denen die Transformationssignale Lj_ multipliziert werden, i = 2; 3a ^: the factors by which the transformation signals Lj_ are multiplied, i = 2; 3
Lj_': die Transformationssignale multipliziert mit den Faktoren a , i = 2; 3Lj_ ': the transformation signals multiplied by the factors a, i = 2; 3
D_': die jeweiligen der Entropiecodierung zugeführten Signale bzw. die decodierten Signale nach Durchführung der Entropiedecodierung .D_ ': the respective signals supplied to the entropy coding or the decoded signals after the entropy decoding has been carried out.
Es sind drei Encoder gezeigt, die jeweils mit dem gleichen Eingangssignal X umfassend Videodaten beaufschlagt werden. Die Daten durchlaufen jeweils eine Transformation T und Quantisierungen Q_. Das nach der Quantisierung erhaltene Signal wird zum einen an eine Entropiecodierung EC_ weitergeleitet und zum anderen einer inversen Quantisierung IQj_ mit anschließender inverser Transformation IT unterworfen. Das nach der inversen Transformation erhaltene Signal gelangt dann ü- ber jeweilige Speicher Spj_ negativ auf den Eingang der Transformation T und wird ferner nochmals positiv an den Eingang des Speichers Sp^ rückgekoppelt. In den Speichern wird die Bewegungskompensation mit Hilfe von Bewegungsvektoren MV durchgeführt, die bei der Bewegungsschätzung ermittelt wurden.Three encoders are shown, each of which is supplied with the same input signal X comprising video data. The data each undergo a transformation T and quantizations Q_. The signal obtained after the quantization is on the one hand forwarded to an entropy coding EC_ and on the other hand subjected to an inverse quantization IQj_ with a subsequent inverse transformation IT. The signal obtained after the inverse transformation then arrives negatively at the input of the transformation T via respective memories Spj_ and is also fed back again positively to the input of the memory Sp ^. The movement compensation is carried out in the memories with the aid of movement vectors MV, which were determined during the movement estimation.
Im Unterschied zur Ausführungsform der Figur 2 werden die quantisierten Transformationsignale L_ zu einer Prädiktion verwendet, bei der das quantisierte Transformationssignal der nächsthöheren Auflösungsebene prädiziert wird. Hierzu wird das Signal L]_ bzw. L2 mit dem Faktor a2 bzw. a3 multipliziert, wobei dieser Faktor vorzugsweise das Verhältnis der Stufenhöhen des Quantisierungen Q]_ und Q2 bzw. Q2 und Q3 ist. Es werden somit Prädiktionssignale L2 ' bzw. L31 erzeugt, die dann mit den Signalen L2 bzw. L3 verknüpft werden. Die Verknüpfung besteht darin, dass die Differenz D ' bzw. 03" zwischen L2 und L2 ' bzw. L3 und L31 gebildet wird. Diese Differenz wird dann den Entropiecodierungen EC2 bzw. EC3 unterworfen. Da das Differenzsignal eine geringere Entropie als die quantisierten Transformationssignale aufweist, ergibt sich eine gegenüber dem Stand der Technik effizientere Codierung. Ferner sind die Quantisierer der unterschiedlichen Qualitätsstufen keiner Beschränkung mehr unterworfen.In contrast to the embodiment in FIG. 2, the quantized transformation signals L_ are used for a prediction in which the quantized transformation signal of the next higher resolution level is predicted. For this purpose, the signal L] _ or L2 is multiplied by the factor a2 or a3, this factor preferably being the ratio of the step heights of the quantizations Q] _ and Q2 or Q2 and Q3. Prediction signals L2 'or L31 are thus generated, which are then linked to the signals L2 or L3. The link is that the difference D 'or 03 "is formed between L2 and L2' or L3 and L31. This difference is then subjected to the entropy codes EC2 or EC3. Since the difference signal has a lower entropy than the quantized transformation signals the coding is more efficient compared to the prior art, and the quantizers of the different quality levels are no longer subject to any restrictions.
Bei der Multiplikation von T->±-i mit dem Faktor ai werden die Transformationssignale vorzugsweise mit einer Integerzahl multipliziert und einer nachfolgenden Rechtsschiebeoperation unterworfen. Diese Multiplikation mit anschließender Rechts- verschiebung wird auch decoderseitig eingesetzt, wodurch Driftprobleme zwischen Encoder und Decoder vermieden werden.-When T->± -i is multiplied by the factor ai, the transformation signals are preferably multiplied by an integer and subjected to a subsequent right shift operation. This multiplication with subsequent shift to the right is also used on the decoder side, thereby avoiding drift problems between the encoder and decoder.
Rechts der in Figur 3 dargestellten strichpunktierten Linie ist der Decoder dargestellt. Diesem Decoder werden die im Encoder codierten Signale Dj_ zugeführt. Diese Signale werden jeweils Entropiedecodierungen ED_ unterworfen, so dass aus- gangsseitig der Entropiedecodierungen die decodierten Signale L_, D2 ' bzw. D3 ' erhalten werden. Anschließend wird das Signal L]_ einer inversen Quantisierung IQ]_ unterworfen, wohingegen zu den Differenzsignalen D2 ' bzw. 03' wieder ein Prädiktionssignal L2 ' bzw. L31 hinzuaddiert wird, welches analog zur Encoderseite durch Multiplikation des Signals L^ bzw. L2 mit den Faktoren a2 bzw. a3 erhalten wurde. Als Ergebnis werden wiederum die quantisierten Transformationskoeffizienten Lj_ erhalten, die anschließend jeweils einer inversen Quantisierung IQ_ unterworfen werden. Schließlich werden die resultierenden Signale XD1, XD2 und XD3 einem Schalter S zugeführt, über welchen die erwünschte Qualitätsstufe für das decodierte Signal ausgewählt wird. Das ausgewählte Signale wird dann einer inversen Transformation IT unterworfen, und anschließend wird eine Bewegungskompensation in einer decoderseitigen Prädiktionsschleife mit Bildspeicher SP durchgeführt.The decoder is shown to the right of the dash-dotted line shown in FIG. The signals Dj_ encoded in the encoder are fed to this decoder. These signals are each subjected to entropy decodings ED_, so that the decoded signals L_, D2 'and D3' are obtained on the output side of the entropy decodings. The signal L] _ is then subjected to an inverse quantization IQ] _, whereas a prediction signal L2 'or L31 is again added to the difference signals D2' or 03 ', which is analogous to the encoder side by multiplying the signal L ^ or L2 was obtained with the factors a2 and a3. As a result, the quantized transformation coefficients Lj_ are again obtained, which are then each subjected to an inverse quantization IQ_. Finally, the resulting signals XD1 , XD2 and XD3 are fed to a switch S, via which the desired quality level for the decoded signal is selected. The selected signal is then subjected to an inverse transformation IT, and then motion compensation is carried out in a decoder-side prediction loop with image memory SP.
Der Vorteil der Datenratenersparnis ergibt sich nun daraus, dass nicht mehr wie bei dem herkömmlichen Simulcastverfahren die quantisierten- Transformationskoeffizienten Xi, die durch „Level" L repräsentiert werden, einer Entropiecodierung unterzogen werden, sondern statt dessen die quantisierten Dif- terenzsignale ΔXi bzw.-Dj.1, die eine geringere Entropie aufweisen als die Level Li .The advantage of the data rate saving now arises from the fact that the quantized transformation coefficients Xi, which are represented by “level” L, are no longer subjected to entropy coding, as in the conventional simulcast method, but instead the quantized difference signals ΔXi or -Dj.1 , which have a lower entropy than the level Li.
Die Datenratenersparnis kommt vor allem dann zur Wirkung, wenn alle Encoder synchronisiert die gleichen Codiermodi (z.B. Prädiktionsmodi bei der Intra-Codierung, Makroblockzerlegung bei der Inter-Codierung) und die gleichen Bewegungsvektoren verwenden. Für eine effiziente Codierung werden diese vielfach nach einem Rate-Distortion-Kriterium ausgewählt. Ohne Synchronisierung ergeben sich aber bei unterschiedlichen Qualitätsstufen auch unterschiedliche Codiermodi und Bewegungsvektoren.The data rate saving is particularly effective when all encoders synchronized use the same coding modes (e.g. prediction modes for intra-coding, macroblock decomposition for inter-coding) and the same motion vectors. For efficient coding, these are often selected according to a rate distortion criterion. Without synchronization, however, different coding modes and motion vectors also result in different quality levels.
Dies wird dadurch vermieden, dass die Encoder nach einem sogenannten „Master-Slave-Prinzip" arbeiten, wie es in der FIG 4 dargestellt ist. Hierbei wird von den drei Encodern ein „MasterEncoder" ME bestimmt und es werden bei diesem die optimalen Codiermodi und Bewegungsvektoren ermittelt. Diese Codiermodi und Bewegungsvektoren werden dann auf die übrigen Encoder, die „Slave-Encoder" SE, übertragen. Der Nachteil, dass die Slave-Encoder nun suboptimal arbeiten, wird durch den Vorteil der höheren Datenratenersparnis durch die Synchronisierung mehr als ausgeglichen.This is avoided by the fact that the encoders work according to a so-called “master-slave principle”, as shown in FIG. 4. Here, a “master encoder” ME is determined by the three encoders and the optimum coding modes and Motion vectors determined. These coding modes and motion vectors are then transferred to the other encoders, the “slave encoders” SE. The disadvantage that the slave encoders now work less than optimally is more than offset by the advantage of the higher data rate savings due to the synchronization.
Ein weiterer Vorteil ergibt sich aus der freien Auswahl des Master-Encoders. Die besten Codierparameter können:*anwen- dungsbezogen entweder bei niedriger, mittlerer oder hoher Datenrate ausgewählt werden. Das erfindungsgemäße Verfahren ist kompatibel mit anwendungsspezifischen Videostandards, wie zum Beispiel MPEG2, MPEG-4, H.263 (Quantisierung und Codierung der DCT-Koeffizienten des Prädiktionsfehlersignals) oder Videostandard H.26L (Quantisierung und Codierung der IT-Koeffizienten (Integer- Transform) des Prädiktionsfehlersignals) .Another advantage is the free choice of the master encoder. The best coding parameters can:* be selected depending on the application either at low, medium or high data rate. The method according to the invention is compatible with application-specific video standards, such as MPEG2, MPEG-4, H.263 (quantization and coding of the DCT coefficients of the prediction error signal) or video standard H.26L (quantization and coding of the IT coefficients (integer transform) of the prediction error signal).
Abkürzungsglossar :Abbreviation glossary:
SNR signal-to-noise ratioSNR signal-to-noise ratio
PSNR peak signal-to-noise ratioPSNR peak signal-to-noise ratio
UEP unequal error protectionUEP unequal error protection
VLC variable length codeVLC variable length code
MPEG moving picture experts groupMPEG moving picture experts group
ME motion esti ation unitME motion esti ation unit
MC motion compensationMC motion compensation
DCT diskrete Cosinus-TransformationDCT discrete cosine transformation
IT Integer TransformIT integer transform
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| DE10145377 | 2001-09-14 | ||
| DE10145377.9 | 2001-09-14 | ||
| DE10146220.4 | 2001-09-19 | ||
| DE10146220 | 2001-09-19 | ||
| DE10200901ADE10200901B4 (en) | 2001-09-14 | 2002-01-11 | Efficient coding of video signals for scalable simul-cast storage and transmission as well as the associated codec | 
| DE10200901.5 | 2002-01-11 | 
| Publication Number | Publication Date | 
|---|---|
| WO2003026310A2true WO2003026310A2 (en) | 2003-03-27 | 
| WO2003026310A3 WO2003026310A3 (en) | 2003-12-18 | 
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| PCT/DE2002/003454WO2003026310A2 (en) | 2001-09-14 | 2002-09-16 | Efficient video coding for simultaneous scalable simulcast storage and transmission | 
| Country | Link | 
|---|---|
| WO (1) | WO2003026310A2 (en) | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| WO2006056529A1 (en)* | 2004-11-23 | 2006-06-01 | Siemens Aktiengesellschaft | Encoding and decoding method and encoding and decoding device | 
| US8270470B2 (en) | 2004-11-23 | 2012-09-18 | Siemens Aktiengesellschaft | Transcoding method and device | 
| US11272181B2 (en)* | 2012-05-14 | 2022-03-08 | V-Nova International Limited | Decomposition of residual data during signal encoding, decoding and reconstruction in a tiered hierarchy | 
| EP4482146A1 (en)* | 2023-06-21 | 2024-12-25 | MK Systems USA Inc. | Systems and methods for scalable hybrid video encoding | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| CA2127151A1 (en)* | 1993-09-21 | 1995-03-22 | Atul Puri | Spatially scalable video encoding and decoding | 
| US6233283B1 (en)* | 1998-06-23 | 2001-05-15 | Lucent Technologies Inc. | Layered video coding using perceptual coding criteria for error resilience in packet networks | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| WO2006056529A1 (en)* | 2004-11-23 | 2006-06-01 | Siemens Aktiengesellschaft | Encoding and decoding method and encoding and decoding device | 
| CN102438138A (en)* | 2004-11-23 | 2012-05-02 | 西门子公司 | Encoding method, decoding method, encoding device, and decoding device | 
| US8270470B2 (en) | 2004-11-23 | 2012-09-18 | Siemens Aktiengesellschaft | Transcoding method and device | 
| KR101227579B1 (en) | 2004-11-23 | 2013-01-29 | 지멘스 악티엔게젤샤프트 | Encoding and decoding method and encoding and decoding device | 
| US9462284B2 (en) | 2004-11-23 | 2016-10-04 | Siemens Aktiengesellschaft | Encoding and decoding method and encoding and decoding device | 
| US11272181B2 (en)* | 2012-05-14 | 2022-03-08 | V-Nova International Limited | Decomposition of residual data during signal encoding, decoding and reconstruction in a tiered hierarchy | 
| US12155834B2 (en) | 2012-05-14 | 2024-11-26 | V-Nova International Limited | Motion compensation and motion estimation leveraging a continuous coordinate system | 
| US12166987B2 (en) | 2012-05-14 | 2024-12-10 | V-Nova International Limited | Decomposition of residual data during signal encoding, decoding and reconstruction in a tiered hierarchy | 
| EP4482146A1 (en)* | 2023-06-21 | 2024-12-25 | MK Systems USA Inc. | Systems and methods for scalable hybrid video encoding | 
| Publication number | Publication date | 
|---|---|
| WO2003026310A3 (en) | 2003-12-18 | 
| Publication | Publication Date | Title | 
|---|---|---|
| DE69432142T2 (en) | METHOD AND DEVICE FOR EFFICIENT TRANSCODING | |
| DE69524141T2 (en) | Adaptive image encoder with dynamic bit allocation | |
| DE10190285B4 (en) | Method and system for processing compressed video signals | |
| DE60031230T2 (en) | SCALABLE VIDEO CODING SYSTEM AND METHOD | |
| EP0201679B1 (en) | Method for reducing the image data of digital television signals | |
| DE69320719T2 (en) | Efficient, frequency-scalable video coding with coefficient selection | |
| DE69605117T2 (en) | METHOD FOR DIVIDING AND ENCODING DATA | |
| DE60109423T2 (en) | VIDEO CODING WITH PREDICTIVE BITEBENDER CODING AND PROGRESSIVE FINE GRANULARITY SCALING (PFGS) | |
| DE69811394T2 (en) | ADAPTIVE ENTROPY CODING UNDER ADAPTIVE QUANTIZATION FOR VIDEO SIGNAL ENCODING SYSTEMS AND METHODS | |
| DE60009159T2 (en) | VIDEO COMPRESSION FOR MULTIPLE TRANSMITTER DISTRIBUTIONS USING SPATIAL SCALABILITY AND SAME-WAVE RADIO CODING | |
| DE69322079T2 (en) | VIDEO CODE WITH TWO LAYERS | |
| DE69329637T2 (en) | System with at least one encoder for encoding a digital signal and with at least one decoder for decoding an encoded digital signal | |
| DE102016125353A1 (en) | CODING RATE CONTROL OF REAL-TIME VIDEOS USING A DYNAMIC RESOLUTION SWITCHING | |
| EP1025708B1 (en) | Method and device for processing a digitized image | |
| DE69515997T2 (en) | TRANSCODER | |
| DE69321924T2 (en) | METHOD FOR TWO-STANDARD ENCODING OF IMAGES, WITH A VERY LOW DATA RATE, AND CODER / DECODER FOR IMPLEMENTING THIS METHOD | |
| WO2006056531A1 (en) | Transcoding method and device | |
| DE3889939T2 (en) | Method and means for coding and decoding an image signal. | |
| DE10200901B4 (en) | Efficient coding of video signals for scalable simul-cast storage and transmission as well as the associated codec | |
| EP1285537B1 (en) | Method and an arrangement for the coding and decoding of a series of images | |
| WO2003026310A2 (en) | Efficient video coding for simultaneous scalable simulcast storage and transmission | |
| WO2011157399A1 (en) | Method and device for mixing video streams at the macroblock level | |
| EP1413142A2 (en) | Optimal snr scalable video coding | |
| DE10121259C2 (en) | Optimal SNR scalable video coding | |
| DE10219640B4 (en) | Method for coding and decoding video sequences and computer program product | 
| Date | Code | Title | Description | 
|---|---|---|---|
| AK | Designated states | Kind code of ref document:A2 Designated state(s):JP | |
| AL | Designated countries for regional patents | Kind code of ref document:A2 Designated state(s):AT BE BG CH CY CZ DE DK EE ES FR GB GR IE IT LU MC NL PT SE SK TR | |
| DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| 122 | Ep: pct application non-entry in european phase | ||
| NENP | Non-entry into the national phase | Ref country code:JP | |
| WWW | Wipo information: withdrawn in national office | Country of ref document:JP |