DE69715239T2 - Videokompressionsmethode und vorrichtung - Google Patents
Videokompressionsmethode und vorrichtungInfo
- Publication number
- DE69715239T2 DE69715239T2 DE69715239T DE69715239T DE69715239T2 DE 69715239 T2 DE69715239 T2 DE 69715239T2 DE 69715239 T DE69715239 T DE 69715239T DE 69715239 T DE69715239 T DE 69715239T DE 69715239 T2 DE69715239 T2 DE 69715239T2
- Authority
- DE
- Germany
- Prior art keywords
- image
- circuit
- blocks
- block
- images
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 20
- 238000007906 compression Methods 0.000 title description 12
- 230000006835 compression Effects 0.000 title description 12
- 230000033001 locomotion Effects 0.000 claims description 97
- 239000013598 vector Substances 0.000 claims description 56
- 238000012545 processing Methods 0.000 claims description 31
- 238000004364 calculation method Methods 0.000 claims description 30
- 230000015572 biosynthetic process Effects 0.000 claims description 20
- 238000000354 decomposition reaction Methods 0.000 claims description 17
- 238000003786 synthesis reaction Methods 0.000 claims description 17
- 238000013139 quantization Methods 0.000 claims description 15
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 13
- 238000006073 displacement reaction Methods 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 6
- 238000009877 rendering Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 7
- 230000002457 bidirectional effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000006872 improvement Effects 0.000 description 5
- 238000013144 data compression Methods 0.000 description 3
- 235000019557 luminance Nutrition 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Die Bildsynthese macht es möglich, mit Hilfe von Informationsvorrichtungen sogenannte virtuelle Bilder zu erzeugen. Sie stammen aus einer abstrakten Beschreibung und aus digitalen Berechnungen. Es handelt sich um die Anwendung eines Satzes von Verfahren über 2D und 3D Graphikbibliotheken, die möglicherweise durch spezielle Hardware-Schaltungen vom Typ mit graphischen Beschleunigungskarten oder über geeignete Schnittstellen vom Typ API (steht für "Application Program Interface") beschleunigt werden.
- Das Verfahren zur Erzeugung dieser Bilder kann in verschiedene Schritte zerlegt werden.
- Es enthält zunächst eine Phase des sogenannten Modeling, d. h. die Auswertung oder Erfassung von ein Beschreibungsmodell benutzenden Objekten, deren Zweck es ist, die konstitutiven Objekte zu beschreiben und sie zur Bildung einer ansehbaren Szene anzuordnen.
- Als Beispiel wird genannt das Modell vom sogenannten Typ Polygonal, wo die Objekte in mehrere Polynome oder Facetten zerlegt werden. Graphische Grundelemente werden für die Definition, die Anordnung und die Änderung dieser elementaren geometrischen Einheiten verwendet.
- Diese Modelle sind interpretierend oder auslegbar: sie können zu Arten von graphischen Geräten gehören, zum Beispiel Kolorierung (oder "shading") von Dreiecken, Antialiasing des Textes usw. Sie haben Kapazitäten, d. h. Eigenschaften oder Fähigkeiten, die beide verhaltensbedingt oder behavioristisch sind wie Bewegung, Explosion, ... und auch virsuell, wie Text, Farbe, Spiegeleffekte... Sie sind in der Lage, mit ihrer Umgebung bei der Bildung eines Szenarios, zum Beispiel mit Lichtern, mit den anderen Objekten zusammenzuwirken. Es gibt somit sekundär die Bildung einer bewegten Szene, die die Modelle im Laufe der Zeit bestimmt (hier genommen in dem Sinne der Zeit zur Durchführung einer bestimmten Anwendung), d. h. die Definition einer Szene oder einer Animation.
- Schließlich, abhängig von den Anwendungen (CAO, Herstellung von Bildern, Simulation usw.), besteht der endgültige Schritt in der Bildung von digitalen Bildern aus diesem Szenario. Dieser letzte Schritt wird in der englischen Sprache mit "rendering" oder "rendition"-Verfahren bezeichnet, dessen Zweck es ist, die Szene so realistisch wie möglich zu gestalten. Diese kann hinsichtlich der Berechnungszeit kostenintensiv sein und große Speicherkapazitäten für die benutzten Modelle und für die Daten für die beteiligten Programme erfordern. Zum Beispiel ermöglichen sogenannte "rendition"-Verfahren wie die Radiosität oder effektive Strahlung, qualitative Bilder zu bekommen, jedoch mit noch höheren Kosten, da die angewendeten Algorithmen komplex sind.
- Die Veröffentlichung von GUENTER B. K. et al. "Motion compensated compression of Computer animation frames", COMPUTER GRAPHICS PRODEEDINGS, PROCEEDINGS OF SIGGRAPH 20th ANNUAL INTERNATIONAL CONFERENCE ON COMPUTER GRAPHICS AND INTERACTIVE TECHNIQUES, 1-6 AUGUST 1993, Seiten 297-304, zeigt ein Verfahren zur Komprimierung von digitalen Daten mit Anwendung eines Drehbuchs (script). Ein Halbbild der Folge von Bildern wird aus den mathematischen Daten des Synthesedrehbuchs oder Syntheseskripts und aus mehreren vorangehenden Bildern Pixel für Pixel vorausgesagt. Dieses Verfahren führt somit zu einer Komprimierung von geometrischen Daten für jedes Pixel (Tiefe und Nummer des Objektes) und verringert die Speicherprobleme.
- Der durch die digitalen Bilder dargestellte Informationsumfang hat zu der Entwicklung von verschiedenen Komprimiernormen geführt, wie JPEG, H.263, MPEG-1, MPEG-2, und bald danach MPEG-4, die es ermöglichen, zu manipulieren, ob die Informationsmengen, die mit der aktuellen Technologie kompatibel sind, für die Speicherung oder die Übertragung sind. Die Norm MPEG-2, die heute gebräuchlicher ist, ermöglicht alle bestehenden Formate von Bildern mittels unterschiedlicher Profile und Werte zu komprimieren, die in der Norm MPEG definiert sind (in der englischen Sprache bezeichnet mit "profiles and levels"), von denen der am meisten bekannte das MP@ML ("Main Profile at Main Level") für Bilder in dem konventionellen Fernsehformat. Die Struktur der Koder, derartige Komprimierungen von Bildern durchführen, gemäß dem Stand der Technik, beruhen auf zwei unterschiedlichen Bildtypen: Intra Vorausgesagt oder Bidirektional (I, P bzw. B), deren Hauptunterschied der Modus der zeitlichen Voraussage ist. Der Kern der Kodierung ist konventionell mit einer Frequenzzerlegung auf der Grundlage der sogenannten DCT ("Discrete Cosine Transform"), gefolgt von einer Quantisierung und entropischen Kodierung, um am Ausgang des Koders eine binäre Kette zu bekommen, die die Norm erfüllen muß, d. h. eine spezielle Syntax.
- Die zeitliche Voraussage erfolgt durch eine Schätzung der Bewegung zwischen zeitlich beabstandeten Bildern, zum Beispiel auf der Grundlage von Bildblöcken mit der Größe von 16 · 16 Pixeln. Die Bewegung wird aus einer Korrelation zwischen dem laufenden Bildblock und einem Block eines Untersuchungsfensters eines vorangehenden oder folgenden Bildes abgeleitet. Danach wird jeder Block mit einer Größe von 8 · 8 Pixeln des Bildes mit dem berechneten Verschiebevektor vorausgesagt, und nur der Fehler zwischen der Schätzung und dem Original wird kodiert.
- Die Komprimierung der Daten, ob von konventionellen Bilder oder synthetischen Bildern, verwendet daher bekannte Vorgänge wie eine Bewegungsschätzung. Die Schaltungen, die derartige Berechnungen ausführen, und die zugehörigen Schaltungen sind komplex, und die Kosten eines derartigen Ausbaus sind hoch. Zum Beispiel betragen die Schaltungen für die Bewegungsschätzung und die bewegungskompensierte Interpolation möglicherweise die Hälfte der Komplexität eines Koders vom Typ MPEG-2.
- Die Bewegungsinformationen, immer gemäß den konventionellen Verfahren, entsprechen nicht immer der tatsächlichen Bewegung. Es handelt sich einfach um Korrelationen, im allgemeinen für die Luminanzinformationen. Die Tatsache, daß das Vektorfeld, das die Bewegungsvektoren eines Bildes darstellt, ermöglicht keine optimale Komprimierung der Daten, insbesondere in dem Fall der differentiellen Kodierung von Vektoren. Das ist der Fall, weil für Makroblöcke, die Bereiche mit einer gleichmäßigen Bewegung entsprechen, die Kosten für die Übertragung von identischen oder leicht unterschiedlichen Vektoren in einer differentiellen Kodierung geringer sind als die Kosten der Übertragung von Zufallsvektoren.
- Außerdem gibt die Tatsache, daß die Bewegungsvektoren, die nach dem konventionellen Verfahren der "Block-Anpassung" (block matching) gewonnen werden, nicht unbedingt die tatsächliche Bewegung wiedergibt, keine Auswertung des Vektorfeldes zu Durchführung von Interpolationen oder Extrapolationen von Bildern mit guter Qualität, zum Beispiel bei Frequenzumsetzungen, Langsamlauf (slow motion modes) eines digitalen Videorekorders wieder, usw.
- Ein falsches Feld von Bewegungsvektoren ermöglicht außerdem keine Anwendung von neuen Lösungen der Kodierung unter Anwendung von Konturinformationen für ein Bild und nicht die Makroblöcke. Das ist der Fall, weil die Komprimierung von Daten gemäß diesen Lösungen auf einer Bildsegmentierung und der tatsächlichen Verschiebung dieser die gleichmäßigen Bereiche definierenden "Segmente" beruht.
- Somit ermöglicht der Mangel an Zuverlässigkeit der Bewegungsschätzung keine Optimierung der Leistungsfähigkeit des Koders hinsichtlich der Komprimierung oder der Bildqualität für eine bestimmte Bitrate oder die effektive Ausnutzung dieser Bewegungsinformationen beim Dekoder.
- Es ist eine Aufgabe der Erfindung, die obigen Nachteile bei einer Kodierung von synthetischen Bildern zu vermeiden.
- Zu diesem Zweck betrifft die Erfindung ein Verfahren zur Komprimierung von digitalen Daten einer Folge von synthetischen Bilder, die eine Szene beschreiben, die Gegenstand eines Skripts ist, mit einem Verarbeitungsschritt für die Modellierung der Szene aus mathematischen Daten, dem Schritt der der Bildwiedergabe für die Erzeugung eines synthetischen Bildes aus dieser Modellierung und einer Zerlegung des synthetischen Bildes in Bildblöcke, einer differenziellen Kodierung des laufenden Bildblocks aus einem Block wenigstens eines synthetischen Bildes, eine differentielle Kodierung des laufenden Bildblocks aus einem Block wenigstens eines synthetischen Bildes, das aus wenigstens einem Bewegungsvektor definiert ist, um einen Restblock zu bilden, dadurch gekennzeichnet, daß der Bewegungsvektor aus mathematischen Daten berechnet wird, die aus dem Synthese-Skript hervorgehen und die erkennbare Bewegung der verschiedenen Objekte bilden, die die Szene darstellen, die Gegenstand der Folge ist.
- Gegenstand der Erfindung ist außerdem eine Vorrichtung zur Komprimierung von digitalen Daten einer Folge von Synthesebildern, die eine Szene beschreiben, die einem Skript unterworfen ist, mit einer Verarbeitungsschaltung zur Modellierung der Szene, deren Bilder durch die mathematischen Daten synthetisch hergestellt werden sollen, eine Zerlegung zur Bildwiedergabe und zur Aufteilung des Bildes in Blöcke, die die Informationen von der Verarbeitungsschaltung erhalten, zur Bildung eines Synthesebildes und zur Zerlegung des gewonnenen Bildes in Bildblöcke, einer Schaltung zur Kompensation der Bewegung von Bildblöcken, die die Informationen von der Verarbeitungsschaltung erhält und vorausgesagte Blöcke liefert, einer Subtrahierstufe zur Bildung der Differenz zwischen dem laufenden Block von der Schaltung für die Bildwiedergabe und zur Zerlegung in Bildblöcke und dem vorausgesagten Block aus der Schaltung zur Bewegungskompensation zur Bildung eines Restblocks, einer Schaltung zur diskreten Cosinustransformation für die Bildblöcke von der Schaltung zur Bildwiedergabe und zur Zerlegung in Bildblöcke oder Restblöcke von der Subtrahierstufe, wobei die Wahl durch eine Modus-Auswahlschaltung in Abhängigkeit von Energiekriterien erfolgt, einer Schaltung zur Quantisierung der transformierten Koeffizienten, dadurch gekennzeichnet, daß die Schaltung zur Bewegungskompensation die mathematischen Daten benutzt, die durch die Verarbeitungsschaltung geliefert werden und die Verschiebung der modellierten Objekte darstellen, die die Szene bilden, zur Berechnung der Bewegungsvektoren für den laufenden Block und Bildung des vorausgesagten Blocks.
- Gemäß einem anderen Ausführungsmodus betrifft die Erfindung eine Vorrichtung zur Komprimierung von digitalen Daten einer Folge von Synthesebildern, die eine Szene beschreiben, die Gegenstand eines Skripts ist, mit einer Verarbeitungsschaltung für die Modellierung der Szene, deren Bilder aus mathematischen Daten zu synthetisieren sind, einer Schaltung zur Wiedergabe des Bildes und zur Zerlegung des Bildes in Bildblöcke, die die Informationen der Verarbeitungsschaltung empfängt, für die Bildung eines Synthesebildes und die Zerlegung des gewonnenen Bildes in Bildblöcke, einer Schaltung zur Bewegungskompensation der Bildblöcke, die die Informationen der Verarbeitungsschaltung empfängt, dadurch gekennzeichnet, daß sie im Intra- Modus ein Bild unter N Bildern der Folge überträgt, wobei N eine vorbestimmte Zahl ist, dieses Bild N dasjenige der Berechnung der Wiedergabe durch die Berechnungsschaltung und der Zerlegung in Bildblöcke ist, und daß die anderen Bilder im Inter-Modus durch die Restblöcke übertragen werden, die die Differenz zwischen einem laufenden Block und einem vorausgesagten Block darstellen, und daß die Restblöcke null und durch den einzigen Bewegungsvektor definiert sind, der aus den mathematischen Daten berechnet wird.
- Die Lösungen der Bildwiedergabe bestehen im allgemeinen in der Darstellung eines "Objekt"-orientierten Szenarios als Bilder. Nun enthält das Skript, d. h. das Szenario, alle möglichen Informationen für die Objekte in der Szene und ebenso ihre verschiedenen Eigenschaften. In dem Fall einer Bildsynthese gibt ein Skript 2D oder 3D die genaue Verschiebung der Objekte über die Zeit an. Dieses Skript dient dann zur Erzeugung der endgültigen digitalen Videobilder (Wiedergabe). Somit werden anstelle der Verwendung der Informationen aus den Pixeln, die ein sichtbares Bild ergeben, d. h. ein nicht modelliertes Pixel, zur Bewegungsschätzung, Modelliervorrichtungen benutzt, um die tatsächliche Bewegung in der Bildfolge zu berechnen. Außer der Verringerung der Komplexität ermöglicht die Tatsache der Anwendung der tatsächlichen Bewegung und nicht der geschätzten Bewegung eine Verbesserung der Qualität der Voraussage und der Gesamtleistungsfähigkeit des Koders.
- Weitere Merkmale und Vorteile der Erfindung ergeben sich deutlicher aus der folgenden Beschreibung anhand eines nicht-einschränkenden Beispiels und anhand der beigefügten Figuren. In den Figuren zeigen:
- - Fig. 1 den Aufbau einer Vorrichtung zur Videokomprimierung gemäß der Erfindung,
- - Fig. 2 einen vereinfachten Ausbau einer derartigen Vorrichtung.
- Fig. 1 liefert eine Beschreibung einer ersten Version der Vorrichtung gemäß der Erfindung.
- Wie vorangehend erläutert, haben die Berechnungen für die Bildsynthese eine große Komplexität und werden im allgemeinen durch besonders dafür vorgesehene Bearbeitungsstationen durchgeführt. Es ist eine derartige Station, hier als die Verarbeitungsschaltung 1 bezeichnet, die eine Modellierung einer Szene bewirkt, die vorher aufgrund eines Skripts für den Zweck der Bildung dieser Synthesebilder definiert wurde, mit dem Zweck, Synthesebilder zu schaffen, die die Szene darstellen, die Gegenstand des Skriptes ist. Die derart von der Verarbeitungsschaltung gelieferten Informationen werden parallel zu einer "Wiedergabe"-Schaltung 2 und zu einer Schnittstellenschaltung 6 übertragen. Der Ausgang der Wiedergabeschaltung ist parallel mit dem Eingang einer Schaltung 3 zur Zerlegung in Bildblöcke und mit einem ersten Eingang einer Schaltung 7 zur Bewegungskompensation verbunden.
- Ein erster Ausgang der Zerlegungsschaltung ist direkt mit einem ersten Eingang einer Modus-Wahlschaltung 5 verbunden.
- Ein zweiter Ausgang i unter n Ausgängen der Zerlegungsschaltung ist mit einem ersten Eingang einer Subtrahierstufe 4i unter h Eingängen verbunden, Der Ausgang der Subtrahierstufe 4i ist mit einem zweiten Eingang 1 unter n Eingängen der Modus- Wahlschaltung 5 verbunden.
- Der Ausgang der Schnittstellenschaltung 6 ist seinerseits mit einem zweiten Eingang der Schaltung 7 zur Bewegungskompensation verbunden. Ein Ausgang i unter n Ausgängen dieser Stufe ist mit einem zweiten Eingang der Subtrahierstufe 4i verbunden.
- Der Ausgang der Modus-Wahlschaltung 5 ist mit dem Ausgang der Vorrichtung über eine Schaltung 8 zur Berechnung einer diskreten Cosinustransformation, einer Quantisierschaltung 9 und einer Schaltung 10 zur Kodierung mit variabler Länge verbunden, die in Reihe liegen. Der Ausgang der Kodierschaltung mit variabler Länge, der der Ausgang der Vorrichtung ist, ist außerdem mit einem zweiten Eingang der Qiuantisierschaltung 9 verbunden (einschließlich der Regelung der Bitrate). Ein anderer Ausgang der Schaltung 7 zur Bewegungskompensation ist mit einem zweiten Eingang der Kodierschaltung 10 mit variabler Länge verbunden, In diesem Beispiel erfolgt die Bewegungskompensation 7 in den vorangehenden dekodierten Bildern, d. h. den rekonstruierten Bildern. Probleme bei der Akkumulation der Voraussagefehler bekannt unter dem Ausdruck "Drift" (Abweichung), können dann auftreten. Um diesen Vorgang zu verbessern, ist es möglich, eine Schleife mit einer negativen Rückkopplung oder Gegenkopplung mit inverser Quantisierung, eine inverse DCT zu benutzen, die der Kompensationsschaltung 7 die vorausgesagten, dekodierten Bilder zuführt.
- Die Verarbeitungsschaltung 1 symbolisiert daher die für die mathematische Formulierung eines Szenarios benötigten Informationsmittel. Ihre Aufgabe dient, wie oben erläutert, zur Modellierung einer Szene in drei Dimensionen, d. h. zur Bildung der mathematischen Gleichungen der Objekte, die die Szene bilden, und ihrer durch das Skript definierten Bewegungen. Diese mathematischen Daten zur Modellierung können auch von Informationsaufzeichnungen kommen, zu denen die Verarbeitungsschaltung einen Zugriff hat, und die zum Beispiel vorbestimmte Modelle speichern.
- Die Rolle der Bildwiedergabeschaltung besteht darin, die Synthesebilder zu erzeugen. Sie bewirkt die Umsetzung in Pixel aus der modellierten Szene. Die digitalen Informationen der Luminanz und der Chrominanz des gewonnenen Bildes werden zu der Zerlegungsschaltung 3 übertragen, die eine Zerlegung jedes Bildes in Makroblöcke bewirkt, Blöcke mit einer Größe von 16 · 16 Pixeln, enthaltend vier Bildblöcke mit 8 · 8 Pixeln, entsprechend der Norm MPEG-2.
- Die Rolle der Schnittstellenschaltung 6 besteht darin, die durch die Anwendung vorgegebenen Verschiebeinformationen umzusetzen, hier das Synthesebild, in einem Bewegungsfeld, das zu der Schaltung 7 zur Bewegungskompensation übertragen wird. Jedem Makroblock ist wenigstens ein Bewegungsvektor zugeordnet, der durch diese Schnittstellenschaltung aus den mathematischen Daten für die Modellierung der Szene berechnet wird, die von der Verarbeitungsschaltung 1 empfangen werden. Die mathematischen Transformationen, wie die Translation, die Rotation, die Homothetie usw. sind als zweidimensionale Vektoren für jeden Makroblock dargestellt.
- Die Bewegungsvektoren stellen natürlich die erkennbare Bewegung der Objekte dar und berücksichtigen zum Beispiel die Verschiebung des Betrachtungs-Standpunktes der Szene.
- Diese Umkehr der Verschiebung erfolgt in der folgenden Weise:
- Es sei angenommen, daß die Verschiebung eine Translation eines durch einen dreidimensionalen Vektor gebildet ist, dessen Projektion in der Ebene des Bildes einen Vektor von Koordinaten in der Ebene (Dx, Dy) bildet. Allen Makroblöcken der vollständigen Bilder, die einen Teil dieses Objektes darstellen, ist derselbe Vektor zugeordnet, der als der Bewegungsvektor (Dx, Dy) angesehen wird, wie er in der MPEG- Norm definiert ist.
- Es verbleiben Sonderfälle, wie Makroblöcke an den Grenzen der Objekte, bedeckte oder unbedeckte Bereiche.
- Was die Grenzblöcke betrifft, besteht die einfachste Lösung darin, den Hauptblock in dem Makroblock zu verwenden, das heißt der Vektor der der größten Zahl von Pixeln in dem Makroblock entspricht, wie ein einem Makroblock zugeordneter Bewegungsvektor. Es ist auch denkbar, den Vektor zu wählen, der dem Objekt entspricht, und nicht dem des Hintergrunds. Diese Wahl ist nicht entscheidend, da die beschriebene Vorrichtung eine Schaltung zur Moduswahl enthält, die den am besten geeigneten Modus wählt, zum Beispiel der Intra-Modus, wenn die Rekonstruktion (somit die geschätzte Bewegung) nicht gut ist.
- Was die bedeckten/unbedeckten Makroblöcke betrifft, besteht die einfachste Lösung darin, dem Makroblock eine Nullbewegung zuzuordnen, mit der Kenntnis, daß die diesem bedeckten oder unbedeckten Makroblock entsprechenden Bereiche schlecht rekonstruiert werden. Eine verfeinerte Lösung wird durch die MPEG-2-Syntax gebildet, die Vorwärts- und Rückwärtsvektoren für die Bilder B (Bidirektional) liefert. Diese beiden Typen von Vektoren werden dann durch die Bewegungs-Schnittstellenschaltung 6 aus den durch die Verarbeitungsschaltung 1 gelieferten Daten berechnet und werden daher als Vorwärts- und Rückwärts-Bewegungsvektoren für den verarbeiteten Makroblock angesehen. Dann wird ein unbedeckter Bereich mit der (zeitlich) vorwärtsgerichteten Bewegung, ein bedeckter Bereich durch die rückwärtsgerichtete Bewegung rekonstruiert. Die Wahl des Modus der Kodierung erfolgt auch hierdurch die Schaltung zur Moduswahl.
- Die MPEG-Norm ermöglicht, einem Makroblock verschiedene Typen von Vektoren zuzuordnen:
- - die Vektoren vom monodirektionalen Typ "Vor" oder "Hinter" (vorwärts oder rückwärts in der MPEG-Norm) berücksichtigen jeweils ein Bild vor und ein Bild hinter dem entsprechenden, verarbeiteten Makroblock,
- - Die Vektoren vom bidirektionalen Typ, die in dem Fall benutzt werden, wo die Schaltung zur Wahl des Modus den bidirektionalen Voraussagemodus wählt. Es handelt sich tatsächlich um zwei einem Makroblock zugeordnete Vektoren, wobei der verarbeitete Makroblock durch einen Vorwärtsvektor und einen Rückwärtsvektor an einen Makroblock angepaßt wird, der ein Mittelwert der beiden Makroblöcke ist, wobei diese Mittelwertbildung eine Funktion der Luminanzen der angepaßten Pixel und der Zeitabstände des verarbeiteten Makroblocks ist. Diese Vektoren können dieselben sein wie die oben definierten:
- Die Schaltung 7 zur Bewegungskompensation bildet aus den Feldern der Bewegungsvektoren und den vorangehenden Bildern (und den folgenden), die durch die Wiedergabeberechnungsschaltung übertragen werden, die Berechnungen der vorausgesagten Bilder, d. h. der bewegungskompensierten Bilder, sowie die Zerlegung der so gewonnenen Bilder in Makroblöcke.
- Der laufende, durch die Zerlegungsschaltung 3 übertragene Makroblock wird an dem positiven Eingang der Subtrahierstufe 4 empfangen, der entsprechende Makroblock des vorausgesagten Bildes, der durch die Kompensationsschaltung 7 übertragen wird, wird an dem negativen Eingang der Subtrahierstufe empfangen. Die an ihrem Ausgang verfügbaren "Reste", ein Makroblock entsprechend der Differenz bei jedem Pixel wird zu der Modus-Wahlschaltung 5 übertragen.
- Jedem Typ des oben definierten Bewegungsvektors entspricht ein vorausgesagtes Bild, das durch die Kompensationsschaltung berechnet wird. Diese Schaltung hat daher so viele Ausgängen wie Typen von gewählten Vektoren, und jeder Ausgang ist mit einer Subtrahierstufe 4i verbunden, die am anderen Eingang den laufenden Bildblock empfängt. Alle Typen von berechneten Resten werden zu der Modusauswahlschaltung an ihren n Eingängen übertragen, die ebenfalls an dem anderen Eingang den laufenden Makroblock direkt von der Zerlegungsschaltung 3 empfangen.
- Die Modusauswahlschaltung 5 bestimmt den Modus, in dem der Makroblock kodiert wird. Die verfügbaren Kodiermodi sind zum Beispiel:
- - Kodierung mit Bewegungskompensation oder ohne Bewegungskompensation, d. h. mit oder ohne Übertragung eines Bewegungsvektors,
- - Intra- oder Nicht-Intra-Kodierung (Inter-Bild-Kodierung, 1 nter- Halbbild derselben Parität oder mit anderer Parität, Voraussage-Inter oder bidirektionale Voraussagekodierung, usw.),
- - bei einer Nicht-Intra-Kodierung Kodierung des Restes oder nicht (in dem Fall, wo der Rest sehr gering ist).
- Die Moduswahl erfolgt durch die Modusauswahlschaltung durch Bildung einer Berechnung der Energie des Makroblocks in jedem Modus und durch Wahl desjenigen, der die kleinste Energie liefert. In der Mehrzahl der Fälle wird die Energieberechnung durch die Summe der Absolutwerte angenähert.
- Dis gewählten Blöcke unterliegen dann einer diskreten Cosinustranformation, einer Quantisierung und einer Kodierung vom Typ mit variabler Länge. Die Bitrate wird am Ausgang der Vorrichtung entnommen, um zu den Quantisierungen übertragen zu werden, diese Regelschleife wirkt auf den Quantisierschritt durch einen Block zur Regelung der Bitrate, der zur Vereinfachung in der Quantisierschaltung enthalten ist.
- Die einem verarbeiteten Makroblock zugeordneten Vektoren werden durch die Schaltung zur Bewegungskompensation zu der Kodierschaltung 10 mit variabler Länge übertragen, die ein Multipelxing dieser Werte mit den quantisierten Koeffizienten es Makroblocks bewirkt.
- Ist natürlich denkbar, diese Vorrichtung zu vereinfachen, zum Beispiel durch Begrenzung des Typs von zu den Subtrahierstufen übertragenen vorausgesagten Makroblöcken. Die Moduswahl würde dann teilweise vor der Schnittstellenschaltung erfolgen, wenn letztere aus den Informationen, die er besitzt, den Modus ableiten kann, der die beste Korrelation ermöglicht.
- Die Schnittstellenschaltung überträgt dann eine Information des Modus über einen zusätzlichen Eingang der Modusauswahlschaltung 5, um diesen Modus einzuführen. Die Modus-Auswahlschaltung ist dann eine vereinfachte Schaltung.
- Ein weiteres Ausführungsbeispiel wird anhand der Fig. 2 beschrieben.
- Der Ausgang einer Verarbeitungsschaltung 11 ist parallel mit dem Eingang einer Berechnungsschaltung 12 für die Bildwiedergabe und dem Eingang einer Schnittstellenschaltung 13 für die Bewegung verbunden. Eine bidirektionale Strecke verbindet diese beiden letztgenannten Schaltungen. Der Ausgang der Berechnungsschaltung 12 für die Bildwiedergabe ist mit dem Ausgang der Vorrichtung über eine Schaltung zur Berechnung einer diskreten Cosinustransformation 14, einer Quantisierschaltung 15 und einer Kodierschaltung 16 mit variabler Länge verbunden, die in Reihe liegen. Der Ausgang der Schaltung zur Kodierung mit variabler Länge, der den Ausgang der Vorrichtung bildet, ist außerdem zu einem zweiten Eingang der Quantisierschaltung 15 zurückgeführt, um eine Regelschleife zu bilden.
- Der Ausgang, der Bewegungs-Schnittstellenschaltung 13 ist mit einem zweiten Eingang der Schaltung 16 zur Kodierung mit variabler Länge verbunden.
- Die Verarbeitungsschaltung 11 hat dieselben Merkmale und Funktionen wie die in Fig. 1 beschriebene Schaltung.
- Die durch die Schaltung 12 bewirkte Wiedergabeberechnung ist hier anders als die in Fig. 1 beschriebene, in dem Sinne, daß sie durch Abtastung erfolgt, d. h. für ein Bild jedes der N Bilder einer Folge von zu übertragenden Bildern.
- Das durch diese Schaltung konstruierte Bild wird dann in Makroblöcke und Bildblöcke zerlegt. Diese Funktion wird auch durch die Bildwiedergabeschaltung durchgeführt. Die Blöcke werden nacheinander zu der Schaltung 14 zur Berechnung der diskreten Cosinustransformation übertragen, die die Cosinustransformation dieser Blöcke bewirkt, zu der Quantisierschaltung 15, die eine Quantisierung der übertragenen Koeffizienten, eine Wichtung und eine Reihenbildung dieser Koeffizienten bewirkt und schließlich zu einer Schaltung 16 zur Kodierung mit variabler Länge, die eine entropische Kodierung der der serialisierten oder in Reihe gebrachten Daten bewirkt. Die Regelschleife entnimmt die Bitrate an dem Ausgang der Vorrichtung, um sie einer Schaltung zur Regelung der Bitrate zuzuführen, die in dem Quantisierer 15 integriert ist, der auf den Quantisierschritt wirkt, um eine derartige Regelung zu bewirken.
- Die Bewegungs-Schnittstellenschaltung 13 berechnet die Felder der Bewegungsvektoren in einer Weise, die analog ist zu der, die für die Bewegungs- Schnittstellenschaltung 6 der Fig. 1 beschrieben wurde, und überträgt zu der Schaltung für die Kodierung mit variabler Länge den oder die Bewegungsvektoren, die dem laufenden Makroblock zugeordnet sind. Sie liefert außerdem die Infromationen für den Modus entsprechend dem oder den Vektoren, Die Kodierschaltung bewirkt ein Multipelxing des Bewegungsvektors für den laufenden Makroblock mit dem Kodiermodus und den transformierten und quantisierten Daten dieses Makroblocks, um so die Gesamtheit zu dem Ausgang der Vorrichtung zu übertragen.
- Die Verbindung zwischen der Bewegungs-Schnittstellenschaltung 13 und der Wiedergabe-Berechnungsschaltung 12 ermöglicht den Austausch der Informationen für die Zerlegung in Makroblöcke, den zu der DCT-Schaltung übertragenen laufenden Makroblock, den Modus der Kodierung, usw.
- Der Vorgang der Bildwiedergabe, der einen großen Teil an Verarbeitungszeit verbraucht, wird somit hier vereinfacht. Die Idee besteht darin, nur bestimmte synthetische Bilder und die Bewegung zwischen fehlenden Bildern zu benutzen. Die berechneten synthetischen Bilder sind zeitlich beabstandet (d. h. ein Bild alle N-Bildperioden) und stellt im allgemeinen die Bilder dar, die durch den Koder im Intra-Modus kodiert werden. Die sogenannten fehlenden Bilder werden weder berechnet noch übertragen noch gespeichert. Der Dekoder ist für ihre Bildung mittels der Bewegungsinformationen verantwortlich, die dann zu ihm übertragen werden. Dann erfolgt alles so, als wäre der Koder in einem Aufbau, wo die Voraussage der Fehlerbilder null wäre, (die bewegungskompensierte Voraussage ist unterdrückt).
- Der durch die Schaltung 13 übertragene Kodiermodus ist abhängig von den durch die Wiedergabeschaltung verarbeiteten Bildern. Die entsprechend einer Intra- Kodierung berechneten Bilder, die Bewegungsvektoren für diese Bilder werden nicht übertragen. Die Zwischenbilder werden als Bilder angesehen, die im Inter-Modus mit einem Voraussagefehler null kodiert sind (Koeffizienten des Rest-Makroblocks bei null). Dabei ist die durch die Bewegungsvektoren dargestellte Bewegung die tatsächlich berechnete und nicht die geschätzte Bewegung der synthetischen Bilder, die als nicht gestört angenommen werden. Bei dem Dekoder werden diese Inter-Bilder aus dem Intra-Bild und den übertragenen Bewegungsvektoren für jedes Inter-Bild neu gebildet, wie bereits vorangehend erläutert.
- In dieser Anwendung kann die Bewegung je Makroblock (Bewegungsvektor) ungenau sein, die Defekte in den Blockgrenzen werden nicht korrigiert, und die Helligkeit wird als konstant zwischen den Intra-Bildern angenommen. Eine derartige Vorrichtung ist reserviert für Anwendungen, wo die Qualität der Bilder geringer sein kann, wie Videospiele. Die Verarbeitungsgeschwindigkeit, die Datenkomprimierung und die geringen Kosten der Ausbildung sind die Merkmale bei derartigen Vorrichtungen auf Kosten der Bildqualität.
- Bei einer ersten Verbesserung dieser Vorrichtung hinsichtlich der Bildqualität ist der Kodiermodus von dem Typ des verarbeiteten Makroblocks abhängig. Eine Fehler- Schnittstellenschaltung 17, in Fig. 2 punktiert dargestellt, ist zur Durchführung dieser neuen Funktion hinzugefügt.
- Die Schaltung empfängt die Informationen der Verarbeitungsschaltung 11 zum Austausch mit der Schaltung zur Berechnung der Bildwiedergabe 12, wobei die Informationen die Kodierung des laufenden Makroblocks betreffen.
- Ihre Rolle besteht darin, die Fehler zu detektieren, die hauptsächlich bei den Konturen der Objekte in Bewegung auftreten. Es ist eine spezielle Verarbeitung für die betroffenen Makroblöcke vorgesehen. Wenn die zu übertragenden Makroblöcke Grenzblöcke sind, werden die Informationen entweder durch die Schaltung zur Fehlerberechnung aus den Informationen der Verarbeitungsschaltung 11 berechnet oder von der Bewegungs-Schnittstellenschaltung 13 über die Schaltung zur Berechnung der Bildwiedergabe empfangen. Die Fehler-Schnittstellenschaltung bewirkt bei der Berechnungsschaltung für die Bildwiedergabe die Berechnung des Bildes für die Wiedergabe der Randblöcke. Der Modus wird dann für diesen Makroblock in den Intra-Modus gezwungen, die Informationen werden zu der Bewegungs- Schnittstellenschaltung 13 übertragen. Eine vereinfachte Wiedergabeberechnung erfolgt daher durch die Berechnungsschaltung 12 für die Bildwiedergabe für im Inter- Modus kodierte Bilder, für nur diese Bildblöcke.
- Eine zweite Verbesserung der Vorrichtung besteht in der Hinzufügung einer Helligkeitsschnittstelle 18, die in Fig. 2 punktiert dargestellt ist.
- Diese Helligkeitsschnittstelle 18 empfängt die Informationen der Verarbeitungsschaltung 11 zum Austausch mit der Berechnungsschaltung 12 für die Bildwiedergabe, wobei die Informationen die Kodierung des laufenden Makroblocks betreffen.
- Die Aufgabe dieser Schaltung besteht darin, das Helligkeitsmodell in ein Fehlerbild für den Koder umzusetzen. Der Übergang von Objektinformationen zu Informationen für die Kodierung gemäß der MPEG-Norm erfolgt zum Beispiel durch Beachtung der Änderung der Helligkeit von einem Bild zu dem anderen, als wenn es ein Voraussagefehler wäre. Somit überträgt die Helligkeitsschnittstelle 18 zu der Berechnungsschaltung 12 für die Bildwiedergabe die Informationen für die Änderung der Helligkeit des von einem Bild zu dem anderen verarbeiteten Makroblocks, eine Information, die dann durch die Wiedergabeschaltung zu der DCT-Berechnungsschaltung in der Form von Restblöcken übertragen wird, da sie als Voraussagefehler angesehen werden. Die Bewegungsschnittstelle 13 überträgt gleichzeitig den für diesen verarbeiteten Makroblock berechneten Bewegungsvektor und den entsprechenden Modus-Typ. Beim Dekoder ist der rekonstruierte Block derjenige, der dem Bewegungsvektor entspricht, dem der Restblock hinzugefügt wird.
- Eine dritte Verbesserung der Vorrichtung besteht in der Hinzufügung eines Schnittstellenbereichs 19, der die Übertragung der Regionsinformationen zu dem Quantisierer 15 ermöglicht.
- Diese Schnittstellenregion 19 empfängt die Informationen der Verarbeitungsschaltung 11, bewirkt einen Austausch mit der Berechnungsschaltung 12 für die Bildwiedergabe der die Kodierung des laufenden Blocks betreffenden Informationen und überträgt die Regionsinformationen zu dem Quantisierer 15.
- Diese Schnittstelle zerlegt die Bilder in Regionen abhängig von den Informationen der Modellierung von der Verarbeitungsschaltung 11. Ein Label wird jeder Region zugeordnet oder genauer jedem Block in Abhängigkeit von dem Bereich, zu dem er gehört. Die Daten für die blockweise Bildzerlegung stammen von der Berechnungsschaltung 12 für die Bildwiedergabe. Der durch die Quantisierschaltung 15 berechnete Quantisierschritt wird in Abhängigkeit von diesem Label in einer solchen Weise geändert, daß zu dem Dekoder eine Regionsinformation übertragen wird, die durch den Quantisierschritt "getragen" ist. Diese Änderung kann von Merkmalen der Regionen abhängig sein: Verringerung des Quantisierschritts für ungleichmäßige Regionen und/oder Regionen mit geringer Bewegung, Zunahme des Quantisierschritts für stark texturierte Regionen oder Regionen mit starker Bewegung. Auf diese Weise wird die Qualität des dekodierten Bildes für eine bestimmte Bitrate verbessert, unter Berücksichtigung der Tatsache, daß die Defekte der Blöcke für Bereiche mit starker Bewegung oder stark texturierte Bereiche weniger wahrnehmbar sind.
- Dieselben Lösungen wie für die Bewegungsvektoren können für die mehrdeutigen Fälle im Aussehen angewendet werden: ein Block wird als zu der Hauptregion gehörend erklärt, wenn er hauptsächlich in diesem Block liegt (Majoritäts-Modus) oder ein Block wird als zu dem Hauptobjekt des Bildes gehörend erklärt, wenn dieses Objekt wenigstens teilweise einen Teil dieses Blocks bildet (Hauptobjekt-Modus).
- Diese Schnittstelle ermöglicht eine Verbesserung der Leistungsfähigkeit und der möglichen Anwendungen des Koders: zum Beispiel eine subjektive Verbesserung aufgrund der Verringerung des Quantisierschritts für ungleichmäßige Bereiche oder Bereiche mit einer geringen Bewegung, wie bereits erläutert wurde, 2D oder 3D- Anwendungen, Verbesserung der Wechselwirkung für den Dekoder aufgrund von Regionsinformationen.
- Natürlich handelt es sich um Ausführungsbeispiel, und die verschiedenen Alternativen können kombiniert oder getrennt angewendet werden, abhängig von der gewünschten Bildqualität, der gewünschten Anwendung, der Verarbeitungsgeschwindigkeit oder des gewünschten Komprimiermaßes.
- So könnte die Vorrichtung von Fig. 2 ohne weiteres in Funktionen der Vorrichtung von Fig. 1 integriert sein, und umgekehrt. Zum Beispiel können die Berechnungsschaltungen für die Wiedergabe und die Zerlegung des Bildes in Blöcke ebenso die Funktionen der Subtrahierstufen 4i für die Berechnung der verschiedenen Blöcke oder der Restblöcke aus den Informationen der Schaltung 13 zur Bewegungskompensation gebildet werden, sowie die Funktionen der Auswahl des Modus für die Bildung der DCT-Schaltung 14 mit dem Bildblock. Die Anzahl der Betriebsmodi wird somit erhöht, natürlich auf Kosten der Komplexität der Schaltungen.
- Die beschriebenen Verfahren und Vorrichtungen sind vollständig kompatibel mit den Normen der Komprimierung von Daten vom Typ MPEG, und zwar bezüglich der Komprimierung der übertragenen Daten und der Dekodierung.
- Eine Anwendung des vorliegenden Patents ist die Synthese von Bildern, zum Beispiel bei der Herstellung (virtuelles Studio, Karikaturen oder Trickbilder, Videosynthese oder Filme, Trickeffekte) für Videospiele, interaktive Anwendungen oder für Anwendungen mit einer virtuellen Realität.
- Die Erfindung kann in integrierten Einrichtungen (Werkstätten, Spielhallen) eingesetzt werden und dadurch den Wert der durch die Erfindung erzielten Einfachheit zu erreichen.
Claims (13)
1. Verfahren zur Komprimierung von digitalen Daten einer Folge von synthetischen
Bilder, die eine Szene beschreiben, die Gegenstand eines Skripts ist, mit einem
Verarbeitungsschritt (1, 11) für die Modellierung der Szene aus mathematischen
Daten, dem Schritt der der Bildwiedergabe ("rendering") für die Erzeugung eines
synthetischen Bildes aus dieser Modellierung und einer Zerlegung des
synthetischen Bildes (2, 12) in Bildblöcke, einer differentiellen Kodierung des laufenden
Bildblocks aus einem Block wenigstens eines synthetischen Bildes, eine
differenzielle Kodierung des laufenden Bildblocks aus einem Block wenigstens eines
synthetischen Bildes, das aus wenigstens einem Bewegungsvektor definiert ist,
um einen Restblock (4i) zu bilden,
dadurch gekennzeichnet, daß
der Bewegungsvektor aus mathematischen Daten berechnet wird, die aus dem
Synthese-Skript hervorgehen und die erkennbare Bewegung der verschiedenen
Objekte bilden, die die Szene darstellen, die Gegenstand der Folge ist.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Bildwiedergabe
(2, 12) nur für ein Bild von N der Folge erfolgt, wobei N eine vorbestimmte Zahl
ist, daß dieses Bild im Intra-Modus kodiert wird und daß die differentielle
Kodierung (4i) auf Blöcken der Zwischenbilder erfolgt.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß der zu kodierende
laufende Block eines Zwischenbildes identisch ist mit dem Block des
synthetischen Bildes, der durch den Bewegungsvektor so angepaßt ist, daß er einen
Block mit dem Restwert null bildet.
4. Verfahren nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, daß die
Kodierung der Blöcke der Bildkanten eines Bildes im Intra-Modus erfolgt.
5. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die
Helligkeitsinformation für die Berechnung des Synthesebildes durch Berechnung eines
Restblocks (12) für die Inter-Kodierung des laufenden Blocks in Abhängigkeit von
der Disparität in der Luminanz zwischen dem Block des vorangehenden Bildes,
angepaßt an den Bewegungsvektor für den laufenden Block, und dem laufenden
Block erfolgt (18).
6. Verfahren nach einem der vorangehenden Ansprüche, dadurch
gekennzeichnet, daß es eine Segmentierung des Bildes (19) bewirkt, ein Label jedem der
Bildblöcke zuordnet und den Quantisierschritt (15) in Abhängigkeit von dem Label
bildet, um eine Information dieser Region zu übertragen.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß der Quantisierschritt
(15) für die Blöcke erhöht wird, die zu den stark texturierten Regionen gehören
oder eine starke Bewegung aufweisen, und für diejenigen verringert wird, die zu
ungleichmäßigen Regionen oder einer geringeren Bewegung gehören.
8. Vorrichtung zur Komprimierung von digitalen Daten einer Folge von
Synthesebildem, die eine Szene beschreiben, die Gegenstand eines Skripts ist, mit einer
Verarbeitungsschaltung (1, 11) zur Modellierung der Szene, deren Bilder aus den
mathematischen Daten synthetisch hergestellt werden sollen, einer Schaltung zur
Bildwiedergabe und zur Zerlegung des Bildes (2, 12) in Blöcke, die die
Informationen der Verarbeitungsschaltung (1, 11) empfangen, für die Erzeugung eines
Synthesebildes und die Zerlegung des gewonnenen Bildes in Bildblöcke,
gekennzeichnet durch eine Bewegungs-Schnittstellenschaltung (6, 13), die die
mathematischen Daten auswertet, die durch die Verarbeitungsschaltung geliefert
werden und die Verschiebung der modellierten Objekte darstellen, die die Szene
bilden, wenigstens einen Bewegungsvektor für einen Bildblock und einen
vorausgesagten Block zu berechnen, aus dem die Kodierung des Bildblocks erfolgt.
9. Vorrichtung nach Anspruch 8, gekennzeichnet durch eine Schaltung (7) zur
Bewegungskompensation der Bildblöcke, die die Informationen der
Verarbeitungsschaltung (1) und die Bewegungsvektoren der Bewegungs-
Schnittstellenschaltung (6) empfängt, zur Lieferung von vorausgesagten
Blöcken, einer Subtrahierstufe (41) zur Bildung der Differenz zwischen dem
laufenden Block von der Wiedergabeschaltung des Bildes und zur Zerlegung des Bildes
in Blöcke (2) und dem vorausgesagten Block von der Schaltung zur
Bewegungskompensation (7) zur Bildung des Restblocks, einer Schaltung (8) zur diskreten
Cosinustransformation der Bildblöcke von der Schaltung zur Bildwiedergabe und
zur Zerlegung des Bildes in Blöcke (3) oder der Restblöcke von der
Subtrahierstufe (41), wobei die Wahl durch eine Schaltung (5) zur Auswahl des Modus in
Abhängigkeit von Energiekriterien erfolgt.
10. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß sie ein Bild von N
Bilder der Folge im Intra-Modus überträgt, wobei N eine vorbestimmte Zahl ist
und das Bild dasjenige ist, das Gegenstand der Berechnung der Wiedergabe
durch die Berechnungsschaltung und der Zerlegung in Bildblöcke (12) ist, daß die
anderen Bilder oder Teile von Bildern im Inter-Modus nur durch ihre
Bewegungsvektoren übertragen werden, die die vorausgesagten Blöcke bilden und von der
Bewegungs-Schnittstellenschaltung (13) kommen, wobei die Kodierung aus
diesen Blöcken Blöcken mit dem Wert null entspricht.
11. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß sie im Intra-Modus
ein Bild unter N Bildern der Folge überträgt, wobei N eine vorbestimmte Zahl ist
und dieses Bild dasjenige ist, das Gegenstand der Wiedergabe durch die
Berechnungsschaltung und der Zerlegung in Bildblöcke (12) ist, und daß andere
Bilder im Inter-Modus durch Restblöcke übertragen werden, die die Differenz zwischen
einem laufenden Block und einem vorausgesagten Block darstellen, und
die aus einer Helligkeits-Schnittstellenschaltung (18) gewonnen werden, deren
Aufgabe es ist, die Differenz in der Helligkeit zwischen dem laufenden Block und
dem vorausgesagten Block aus den mathematischen Daten zu berechnen.
12. Vorrichtung nach Anspruch 10 oder 11, dadurch gekennzeichnet, daß sie eine
Fehler-Schnittstellenschaltung (19) zur Detektierung des Fehlers zwischen dem
laufenden Block und dem vorausgesagten Block aufweist, um die Kodierung der
laufenden Blöcke in den Intra-Modus zu bringen, wenn der Fehler bei dem
vorausgesagten Block einen bestimmten Schwellwert übersteigt.
13. Vorrichtung nach einem der Ansprüche 9 bis 12, dadurch gekennzeichnet, daß
die digitalen Daten gemäß dem Format MPEG-2 oder einem abgeleiteten Format
komprimiert werden.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9614601A FR2756399B1 (fr) | 1996-11-28 | 1996-11-28 | Procede et dispositif de compression video pour images de synthese |
PCT/FR1997/002118 WO1998024061A1 (fr) | 1996-11-28 | 1997-11-24 | Procede et dispositif de compression video |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69715239D1 DE69715239D1 (de) | 2002-10-10 |
DE69715239T2 true DE69715239T2 (de) | 2003-05-08 |
Family
ID=9498128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69715239T Expired - Lifetime DE69715239T2 (de) | 1996-11-28 | 1997-11-24 | Videokompressionsmethode und vorrichtung |
Country Status (12)
Country | Link |
---|---|
US (1) | US6501796B1 (de) |
EP (1) | EP0941522B1 (de) |
JP (1) | JP4338787B2 (de) |
KR (1) | KR100499057B1 (de) |
CN (1) | CN1099656C (de) |
AU (1) | AU5228798A (de) |
BR (1) | BR9713157A (de) |
DE (1) | DE69715239T2 (de) |
FR (1) | FR2756399B1 (de) |
ID (1) | ID23677A (de) |
RU (1) | RU2209527C2 (de) |
WO (1) | WO1998024061A1 (de) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1061750A3 (de) * | 1999-06-18 | 2010-05-05 | THOMSON multimedia | Bildkompressionsverfahren, insbesondere vom Typ MPEG2 |
US6940912B2 (en) * | 2000-04-21 | 2005-09-06 | Microsoft Corporation | Dynamically adaptive multimedia application program interface and related methods |
US7634011B2 (en) * | 2000-04-21 | 2009-12-15 | Microsoft Corporation | Application program interface (API) facilitating decoder control of accelerator resources |
US7649943B2 (en) * | 2000-04-21 | 2010-01-19 | Microsoft Corporation | Interface and related methods facilitating motion compensation in media processing |
US6891893B2 (en) * | 2000-04-21 | 2005-05-10 | Microsoft Corp. | Extensible multimedia application program interface and related methods |
EP1460377A3 (de) * | 2003-03-21 | 2004-09-29 | Leica Geosystems AG | Verfahren und Vorrichtung zur Bildverarbeitung in einem geodätischen Messgerät |
US20050135481A1 (en) * | 2003-12-17 | 2005-06-23 | Sung Chih-Ta S. | Motion estimation with scalable searching range |
JP4591657B2 (ja) * | 2003-12-22 | 2010-12-01 | キヤノン株式会社 | 動画像符号化装置及びその制御方法、プログラム |
US7983835B2 (en) | 2004-11-03 | 2011-07-19 | Lagassey Paul J | Modular intelligent transportation system |
US8031190B2 (en) | 2004-05-03 | 2011-10-04 | Microsoft Corporation | Translating two-dimensional user input on three-dimensional scene |
CN100357888C (zh) * | 2005-01-05 | 2007-12-26 | 英业达股份有限公司 | 游戏开发***以及方法 |
US8780957B2 (en) | 2005-01-14 | 2014-07-15 | Qualcomm Incorporated | Optimal weights for MMSE space-time equalizer of multicode CDMA system |
TW200704200A (en) | 2005-03-10 | 2007-01-16 | Qualcomm Inc | Content classification for multimedia processing |
US8442118B2 (en) | 2005-05-31 | 2013-05-14 | Entropic Communications, Inc. | Calculating transformation parameters for image processing |
KR100716999B1 (ko) | 2005-06-03 | 2007-05-10 | 삼성전자주식회사 | 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치 |
US8879856B2 (en) | 2005-09-27 | 2014-11-04 | Qualcomm Incorporated | Content driven transcoder that orchestrates multimedia transcoding using content information |
US8654848B2 (en) | 2005-10-17 | 2014-02-18 | Qualcomm Incorporated | Method and apparatus for shot detection in video streaming |
US8948260B2 (en) | 2005-10-17 | 2015-02-03 | Qualcomm Incorporated | Adaptive GOP structure in video streaming |
US9131164B2 (en) | 2006-04-04 | 2015-09-08 | Qualcomm Incorporated | Preprocessor method and apparatus |
US8213732B2 (en) * | 2006-07-07 | 2012-07-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Device and method for simplifying vector graphics |
US20080043832A1 (en) * | 2006-08-16 | 2008-02-21 | Microsoft Corporation | Techniques for variable resolution encoding and decoding of digital video |
US8773494B2 (en) | 2006-08-29 | 2014-07-08 | Microsoft Corporation | Techniques for managing visual compositions for a multimedia conference call |
CN101518090B (zh) | 2006-09-20 | 2011-11-16 | 日本电信电话株式会社 | 图像编码方法及解码方法、图像编码装置及解码装置 |
CA2663084C (en) | 2006-09-20 | 2014-08-12 | Nippon Telegraph And Telephone Corporation | Image encoding method and decoding method, apparatuses therefor, programs therefor, and storage media for storing the programs |
BRPI0717639A2 (pt) | 2006-10-30 | 2013-11-12 | Nippon Telegraph & Telephone | Método de geração de informações de referência preditas, métodos de codificação de decodificação de vídeo, aparelhos destinados aos mesmos, programas destinados aos mesmos, e mídias de armazenamento que armazenam os programas |
JP4826546B2 (ja) * | 2007-06-18 | 2011-11-30 | ソニー株式会社 | 画像処理装置、画像処理方法、及びプログラム |
WO2009153995A1 (ja) * | 2008-06-19 | 2009-12-23 | パナソニック株式会社 | 量子化装置、符号化装置およびこれらの方法 |
JP5577334B2 (ja) * | 2008-07-20 | 2014-08-20 | ドルビー ラボラトリーズ ライセンシング コーポレイション | 立体ビデオ配信システムのエンコーダ最適化 |
JP5169978B2 (ja) * | 2009-04-24 | 2013-03-27 | ソニー株式会社 | 画像処理装置および方法 |
KR101714776B1 (ko) * | 2009-05-18 | 2017-03-09 | 코닌클리케 필립스 엔.브이. | 3d 트릭플레이용 엔트리 포인트들 |
KR101457894B1 (ko) | 2009-10-28 | 2014-11-05 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
KR20120112723A (ko) | 2010-02-09 | 2012-10-11 | 니폰덴신뎅와 가부시키가이샤 | 움직임 벡터 예측 부호화 방법, 움직임 벡터 예측 복호 방법, 동화상 부호화 장치, 동화상 복호 장치 및 그들의 프로그램 |
ES2652337T3 (es) | 2010-02-09 | 2018-02-01 | Nippon Telegraph And Telephone Corporation | Procedimiento de codificación predictiva para vector de movimiento, procedimiento de decodificación predictiva para vector de movimiento, dispositivo de codificación de imagen, dispositivo de decodificación de imagen, y programas para ello |
EP2536149A4 (de) * | 2010-02-09 | 2015-06-24 | Nippon Telegraph & Telephone | Prädiktives kodierverfahren für bewegungsvektoren, prädiktives dekodierverfahren für bewegungsvektoren, videokodierungsvorrichtung, videodekodierungsvorrichtung und programme dafür |
KR101500914B1 (ko) * | 2010-04-09 | 2015-03-10 | 미쓰비시덴키 가부시키가이샤 | 동화상 복호 장치 |
US9135509B2 (en) * | 2010-07-26 | 2015-09-15 | Koninklijke Philips N.V. | Determining representative images for a video |
CN106713930B (zh) * | 2010-09-30 | 2019-09-03 | 三菱电机株式会社 | 运动图像编码装置及其方法、运动图像解码装置及其方法 |
CN102055982B (zh) * | 2011-01-13 | 2012-06-27 | 浙江大学 | 三维视频编解码方法及装置 |
CN102833490A (zh) * | 2011-06-15 | 2012-12-19 | 新诺亚舟科技(深圳)有限公司 | 一种互动视频的编辑播放方法、***及电子学习设备 |
RU2476933C1 (ru) * | 2011-06-16 | 2013-02-27 | Федеральный научно-производственный центр Открытое акционерное общество "Научно-производственное объединение "Марс" | Способ моделирования изображений с изменяющимися корреляционными свойствами |
EP2745211B8 (de) * | 2011-08-19 | 2019-07-17 | General Harmonics International Inc. | Verfahren zur formalisierung und strukturierung von informationen aus mehreren strukturen und zugehörige vorrichtung |
CA2898667C (en) | 2013-08-19 | 2019-01-15 | Huawei Technologies Co., Ltd. | Data object processing method and apparatus |
RU2557449C1 (ru) * | 2014-04-07 | 2015-07-20 | Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства Обороны Российской Федерации (Минобороны России) | Способ кодирования и декодирования видеоинформации на основе трехмерного дискретного косинусного преобразования |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2144253C (en) * | 1994-04-01 | 1999-09-21 | Bruce F. Naylor | System and method of generating compressed video graphics images |
US5486863A (en) * | 1994-04-29 | 1996-01-23 | Motorola, Inc. | Method for determining whether to intra code a video block |
US6157677A (en) * | 1995-03-22 | 2000-12-05 | Idt International Digital Technologies Deutschland Gmbh | Method and apparatus for coordination of motion determination over multiple frames |
-
1996
- 1996-11-28 FR FR9614601A patent/FR2756399B1/fr not_active Expired - Fee Related
-
1997
- 1997-11-24 EP EP97947128A patent/EP0941522B1/de not_active Expired - Lifetime
- 1997-11-24 RU RU99113845/09A patent/RU2209527C2/ru not_active IP Right Cessation
- 1997-11-24 AU AU52287/98A patent/AU5228798A/en not_active Abandoned
- 1997-11-24 BR BR9713157-1A patent/BR9713157A/pt active Search and Examination
- 1997-11-24 KR KR10-1999-7004479A patent/KR100499057B1/ko not_active IP Right Cessation
- 1997-11-24 WO PCT/FR1997/002118 patent/WO1998024061A1/fr active IP Right Grant
- 1997-11-24 DE DE69715239T patent/DE69715239T2/de not_active Expired - Lifetime
- 1997-11-24 JP JP52435798A patent/JP4338787B2/ja not_active Expired - Fee Related
- 1997-11-24 US US09/308,518 patent/US6501796B1/en not_active Expired - Lifetime
- 1997-11-24 CN CN97180123A patent/CN1099656C/zh not_active Expired - Fee Related
- 1997-11-24 ID IDW990439D patent/ID23677A/id unknown
Also Published As
Publication number | Publication date |
---|---|
WO1998024061A1 (fr) | 1998-06-04 |
KR20000057175A (ko) | 2000-09-15 |
CN1099656C (zh) | 2003-01-22 |
EP0941522A1 (de) | 1999-09-15 |
JP2001505381A (ja) | 2001-04-17 |
RU2209527C2 (ru) | 2003-07-27 |
FR2756399B1 (fr) | 1999-06-25 |
FR2756399A1 (fr) | 1998-05-29 |
BR9713157A (pt) | 2000-02-08 |
EP0941522B1 (de) | 2002-09-04 |
CN1253647A (zh) | 2000-05-17 |
DE69715239D1 (de) | 2002-10-10 |
ID23677A (id) | 2000-05-11 |
JP4338787B2 (ja) | 2009-10-07 |
KR100499057B1 (ko) | 2005-07-01 |
US6501796B1 (en) | 2002-12-31 |
AU5228798A (en) | 1998-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69715239T2 (de) | Videokompressionsmethode und vorrichtung | |
DE69518937T2 (de) | System und Verfahren zur Darstellung komprimierter Videografikbilder | |
DE69831961T2 (de) | Bildobjekterzeugungsverfahren für objektbasierte kodierungssysteme unter verwendung von masken und gerundeten mittelwerten | |
DE69233411T2 (de) | Verfahren und Einrichtung zur Kompression von sich bewegenden Videobildern mit adaptiver Bitzuordnung und Quantisierung | |
DE69712676T2 (de) | Verfahren zur Videokodierung | |
DE69839100T2 (de) | Verbesserte Videokodierung unter Verwendung von adaptiven Blockparametern für kodierte/unkodierte Blöcke | |
DE69810670T2 (de) | Verfahren zur rechnerischen Feindegradierung in einem audio-visuellen Kompressionssystem | |
DE69725186T2 (de) | Sprite-gestütztes videocodiersystem | |
CN101888566B (zh) | 立体视频编码率失真性能估计方法 | |
DE19825042A1 (de) | Verfahren zur Bewegungsvektorcodierung bei MPEG-4 | |
DE19739266B4 (de) | Verfahren und Vorrichtung zum Kodieren binärer Formen | |
DE19743202B4 (de) | Verfahren zum Codieren eines Bewegungsvektors | |
DE102013015821B4 (de) | System und Verfahren zur Verbesserung der Videokodierung unter Verwendung von Inhaltsinformation | |
DE69521255T2 (de) | Verfahren zum betrieb eines interaktiven bildanzeigesystems und bildanzeigesystem zur durchführung des verfahrens | |
DE69728757T2 (de) | Verfahren und Vorrichtung zum Kodieren eines Objektes unter Verwendung einer Konturbewegungsschätztechnik | |
EP1371229B1 (de) | Verfahren zur komprimierung und dekomprimierung von videodaten | |
DE112018002110T5 (de) | Systeme und verfahren für spiel-generierte bewegungsvektoren | |
DE19816898B4 (de) | Vorrichtung und Verfahren zum adaptiven Codieren eines Bildsignals | |
DE69126525T2 (de) | Digitale bildverarbeitung mit filterung der blockkanten | |
DE19744859B4 (de) | Verfahren zum Codieren eines binären Formsignals | |
DE112021006478T5 (de) | Verfahren und vorrichtung zum komprimieren von einer szene mit dreidimensionalem volumen repräsentierenden daten im hinblick auf eine echtzeit-dekompression für eine online-betrachtung | |
DE19717608A1 (de) | Wahrnehmungsfehlerbearbeitungsverfahren und Bildkodierungsvorrichtung, welche dieses Verfahren verwendet | |
DE112007001773T5 (de) | Videocodierung | |
DE69835431T2 (de) | Bildkodier-und-dekodierverfahren und-vorrichtung | |
DE19749655B4 (de) | Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
R082 | Change of representative |
Ref document number: 941522 Country of ref document: EP Representative=s name: MANFRED ROSSMANITH, 30974 WENNIGSEN, DE |
|
R084 | Declaration of willingness to licence |
Ref document number: 941522 Country of ref document: EP Effective date: 20111116 |