DE69019119T2 - Verfahren und Einrichtung zur Bewegtbilddecodierung. - Google Patents
Verfahren und Einrichtung zur Bewegtbilddecodierung.Info
- Publication number
- DE69019119T2 DE69019119T2 DE69019119T DE69019119T DE69019119T2 DE 69019119 T2 DE69019119 T2 DE 69019119T2 DE 69019119 T DE69019119 T DE 69019119T DE 69019119 T DE69019119 T DE 69019119T DE 69019119 T2 DE69019119 T2 DE 69019119T2
- Authority
- DE
- Germany
- Prior art keywords
- image
- images
- decoding
- memory
- generation
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 27
- 230000015654 memory Effects 0.000 claims description 63
- 239000000872 buffer Substances 0.000 claims description 11
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001154 acute effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Image Processing (AREA)
Description
- Die vorliegende Erfindung betrifft ein Verfahren zur Bewegtbilddecodierung, bei dem ein Decoder zur Decodierung bildbezogener, in komprimierter Form codierter digitaler Daten verwendet wird, in Verbindung mit einem Prozessor zur Erzeugung von Bildern aus decodierten Daten, die Farbart- und Helligkeitsinformationen darstellen, mit einem Speicher zur Speicherung der genannten Informationen, wobei bei dem Verfahren die Erzeugung bestimmter Bilder durch Interpolation von Pixeln eines vorangegangenen und eines nachfolgenden Bildes erfolgt, wobei die Position der Pixel im vorangegangenen oder nachfolgenden Bild grundsätzlich beliebig sein kann.
- Ein solches Verfahren wird vor allem bei Bildübertragungssystemen angewandt, bei denen vor allem eine mäßige Datenrate erforderlich ist, beispielsweise einem System zur Darstellung bewegter Bilder, die auf einer Compact Disc oder einem mit "Digital Audio Tape" bezeichneten digitalen Magnetbandgerät, einem Kanal mit 1 Mb/s, einem Bildtelefon aufgenommen sind.
- Bei der Codierung werden beispielsweise aus dem Bereich der Bildkompression bekannte algorithmische Funktionen verwendet: diskrete Cosinustransformation, adaptive Quantisierung, Codierung mit variabler Länge.
- Außerdem kann man beispielsweise auch die Bewegungsinformationen lediglich eines von zwei Teilbildern übertragen, wobei die anderen durch symmetrische Bewegungskompensation bezüglich der Teilbilder (N-1) und (N+1) wiederhergestellt werden.
- Auf die auf bekannte Weise durchgeführte Decodierung folgt die Wiederherstellung eines von zwei Teilbildern durch Interpolation (bekannt als "frame skip") mit symmetrischer Bewegungskompensation.
- Eine solche Decodierung von stark komprimierten bewegten Bildern in Echtzeit erfordert sowohl eine hohe Verarbeitungsleistung als auch umfangreichen Speicherplatz zur Speicherung eines oder mehrerer Bilder. Der Speicherumfang ist von relativ großer Bedeutung und kann nicht mittels einer einzigen im operativen Teil des Decoders integrierten Schaltung verwirklicht werden. Es ergeben sich somit Probleme hinsichtlich des Zugriffs auf diesen externen Speicher, da der Datenaustauschtakt eine beträchtliche Geschwindigkeit haben muß. Das Problem zeigt sich in vollem Umfang bei Decodern, die Zwischenbildcodierungsalgorithmen und Algorithmen zur Wiederherstellung von Bildern durch Interpolation verwenden. Zur Erzeugung eines Punktes eines Bildes muß nämlich auf Punkte in anderen Bildern zugegriffen werden und müssen daher mehrere vollständige Bilder im Speicher gespeichert werden. Wegen der Bewegungskompensation wird für gewöhnlich mit quadratischen oder rechteckigen Blöcken gearbeitet anstatt mit Zeilen, und die zu verarbeitenden Blöcke in zwei verschiedenen Bildern können zueinander einen Abstand haben, der gleich der Amplitude der zu kompensierenden Bewegung ist. Darum können die Positionen der betreffenden Pixel im vorangegangenen oder nachfolgenden Bild grundsätzlich beliebig sein. Es sei auch darauf hingewiesen, daß es bei der eigentlichen Decodierung ebenfalls notwendig ist, auf die decodierten Pixel eines anderen Bildes zuzugreifen, da die codierten Daten Daten bezüglich einer Differenz zwischen zwei Bildern sein können.
- Eine Decodierungsvorrichtung, bei der diese Art von Operationen durchgeführt wird, ist in "IEEE Journal on selected areas in communications", Band 6, Nr. 3, April 1988, S. 513, 519, beschrieben. Diese Vorrichtung verwendet eine Vielzahl von parallelen Prozessoren und wenigstens vier Speicher (MEM1 bis MEM4, Figur 3).
- Derartige Decoder sollen in nicht-professionellen Produkten verwendet werden, bei denen geringe Kosten und eine beschränkte Anzahl Einheiten von zentraler Bedeutung sind. Einen beträchtlichen Teil der Kosten eines solchen Decoders stellt der Speicher dar. Aufgabe der Erfindung ist es daher, eine Schaltung zu verschaffen, die mit einer beschränkten Anzahl Speichereinheiten funktionieren kann.
- Der Erfindung liegt die Einsicht zugrunde, daß, indem bei der Interpolation darauf verzichtet wird, auf sämtliche Positionen eines vorangegangen Bildes zugreifen zu können (was bedeutet, daß bei der Bewegungskompensation die maximal zulässige Länge eines Bewegungsvektors beschränkt wird) und unter der Bedingung, daß die Interpolation hinsichtlich der Decodierung synchronisiert wird, eher damit begonnen werden kann, einen Bildspeicher mit einem neuen Bild zu füllen, und daher Speicherkapazität eingespart werden kann.
- Dazu ist das erfindungsgemäße Verfahren dadurch gekennzeichnet, daß die genannte Interpolation, die die Pixel eines Bildes erzeugt, vor dem Ende der Decodierung der Daten des nachfolgenden Bildes beginnt.
- Daher kann die Speicherkapazität für ein ganzes Teilbild eingespart werden.
- In dem Arikel von P. Frencken "Two integrated progessive scan converters" in der Zeitschrift "IEEE Transactions on Consumer Electronics", August 1986, wird in Figur 8 ein Prozeß dargestellt, bei dem die Kompression der Daten des Teilbildes B zur Erzeugung des Teilbildes B' vor dem Ende desselben Teilbildes B beginnt. Das gelöste technische Problem in diesem Dokument unterscheidet sich jedoch völlig von dem hier gelösten Problem, und die eingesetzten Mittel sind ebenfalls andere: Erstens werden in dem betreffenden Dokument zum Vergleich drei vertikal benachbarte Pixel anstelle von Pixeln beliebiger Position verwendet, und zweitens geht es nicht um Decodierung und daher auch nicht um eine zeitliche Beziehung zwischen der Decodierung und der Interpolation.
- In der Praxis beginnt die Interpolation vorteilhafterweise nach Decodierung der Hälfte der Daten des nachfolgenden Bildes. Mit dem Ersetzen der Informationen eines Bildes mit der Rangstufe N durch jene eines Bildes mit der Rangstufe N+4 kann daher im Speicher begonnen werden, sobald die Erzeugung des Bildes mit der Rangstufe N+1 zur Hälfte durchgeführt worden ist.
- Es ist vorteilhaft zwischen dem Beginn der Erzeugung eines Bildes und dem Beginn der Decodierung der digitalen Daten eines anderen Bildes eine festgelegte Verzögerung vorzusehen. In der Praxis bedeutet dies, daß beim Beginn der Erzeugung eines interpolierten Bildes eine Zeitzählung einsetzt und die Decodierung eines neuen Bildes nach einer festgelegten Zeit autorisiert wird.
- Um weitere Speicherkapazität einzusparen, ist es außerdem vorteilhaft, wenn mit der Wiedergabe eines Bildes begonnen wird, bevor die Erzeugung des genannten Bildes beendet ist.
- Die Vorrichtung zur Decodierung bewegter Bilder ist dadurch gekennzeichnet, daß ihr Bildspeicher organisiert ist in:
- - zwei Teile, die jeweils zwei Helligkeits-Teilbilder enthalten, die einen zeitlichen Abstand von 80 ms zueinander haben,
- - zwei andere Teile, die jeweils zwei Farbart-Teilbilder enhalten, die einen zeitlichen Abstand von 40 ms zueinander haben, falls die Erfindung lediglich auf Helligkeitsdaten angewandt wird, oder einen zeitlichen Abstand von 80 ms zueinander haben, falls die Erfindung auch auf Farbartdaten angewandt wird,
- - und einen Teil, der als Steuerpuffer dient, entsprechend dem FIFO-Prinzip organisiert ist, und die Codes eines Paares komprimierter Bilder enthält.
- Zum besseren Verständnis sind Ausführungsbeispiele der Erfindung in der Zeichnung dargestellt und werden im folgenden näher erläutert. Es zeigen:
- Figur 1 ein Schema eines Systems, das einen Decoder enthält, in dem die Erfindung ausgeführt werden kann,
- Figur 2 ein Ablaufplan der Decodierung, Figur 3 ein Diagramm zur Erklärung der Zugriffszeiten für die verschiedenen im Speicher enthaltenen Bilder,
- Figur 4 ein Schema eines Decoders und eines Speichers zur Durchführung des erfindungsgemäßen Verfahrens,
- Figur 5 und 6 Zeitdiagramme, die die Synchronisation zwischen der Decodierung und der Erzeugung der Bilder zeigen.
- Bei dem vorliegenden Beispiel wird eine auf Compact Disc gespeicherte Datenbank verwendet, wobei die Daten in digitaler Form aufgezeichnet sind und Informationen verschiedener Art darstellen:
- - durch den Mikroprozessor des Systems auszuführendes Programm
- - alphanumerische Daten
- - auf einem dem Fernsehen entsprechenden Bildschirmtyp wiedergebbare Grafiken
- - natürliche stehende Bilder
- - bewegte Sequenzen aus natürlichen Bildern
- - Klang oder Sprache
- Das System zur Nutzung dieser Datenbank besteht aus einem Lesegerät für die digitale Compact Disc, das mit einem in Figur 1 dargestellten System zur Verarbeitung der Informationen verbunden ist, das um einen Mikroprozessor und seinen dazugehörigen Bus angeordnet ist. Eine spezialisierte Schaltung 22 (Videosteuerung) dient als Schnittstelle für die Wiedergabevorrichtung 24 in Form eines Fernsehbildschirms. Diese Schaltung 22 steuert das Lesen aus einem Wiedergabespeicher 23, der die wiederzugebenden Bilder enthält und dafür sorgt, daß das Lesen der Pixel so erfolgt, daß sie auf dem Schirm mit der Fernsehbildabtastfrequenz ausgegeben werden. Das System umfaßt außerdem einen Decoder 21, in dem die vorliegende Erfindung ausgeführt wird und dessen Aufgabe darin besteht, die Informationen der bewegten Bilder im Wiedergabespeicher 23 in einem Takt auszulesen, der ausreicht, um der Schaltung 22 zu ermöglichen, sie zu lesen und zu visualisieren.
- Die Codierung erfolgt entsprechend einem Algorithmus, der die aufeinanderfolgenden Bilder, mit IM(N), IM(N+1), IM(N+2)... bezeichnet, sequentiell mit einem Takt von 25 Hz codiert. Ein Bild IM(N) setzt sich zusammen aus einem mit Y(N) bezeichneten Helligkeits-Teilbild und einem mit C(N) bezeichneten Farbart- Teilbild, das die mit U(N) und V(N) bezeichneten Farbunterschiedkomponenten darstellt.
- Die Farbart aller Teilbilder und die Helligkeit eines von zwei Teilbildern, beispielsweise des geradzahligen Teilbildes, wird codiert. Für diese Codierungen werden aus dem Bereich der Bildkompression bekannte algorithmische Funktion verwandt: diskrete Cosinustransformation (DCT = Discret Cosinus Transform) mit Bewegungskompensation bezüglich des vorangegangenen Teilbildes, adaptive Quantisierung, Codierung mit variabler Länge (VLC = Variable Length Coding). Übertragen wird lediglich die Bewegungsinformation der ungeradzahligen Helligkeits-Teilbilder Y(N), die bei der Decodierung durch symmetrische Bewegungskompensation bezüglich der Teilbilder Y(N-1) und Y(N+1) wiederghergestellt worden sind.
- Der Decodierungsalgorithmus erfordert wenigstens zwei Helligkeits- Teilbildspeicher und zwei Farbart-Teilbildspeicher. Zur Decodierung eines codierten Teilbildes muß nämlich das vorangegangene Teilbild verfügbar sein, und zur Wiederherstellung der interpolierten Helligkeits-Teilbilder Y(N) müssen im Speicher zur symmetrischen Bewegungskompensation notwendige Informationen in Y(N-1) und Y(N+1) verfügbar sein.
- Der gesamte vom Decoder 21 ausgeführte Algorithmus kann in einen eigentlichen Decodierungsvorgang (DEC) und einen Bilderzeugungsvorgang (GEN) getrennt werden. Die eigentliche Decodierung besteht aus der Decodierung von Codes mit variabler Länge, gefolgt von einer inversen Quantisierung, dann von einer diskreten Cosinustransformation mit Bewegungskompensation, wobei all diese Operationen dem Fachmann bekannt sein dürften. Die Bilderzeugung besteht aus:
- - der Interpolation des fehlenden Helligkeits-Teilbildes auf der Basis der Positionsveränderungsinformation,
- - der erneuten Abtastung der Farbart
- - der Formatierung des Bildes in das Format YUV oder DYUV
- In Figur 2 ist der Algorithmus anhand seiner wesentlichen Operationen schematisch dargestellt. Die zu decodierenden Codes werden auf dem Bussystem 9 angeboten. Das Modul 10 führt den Regelvorgang für die Lieferung der Codes durch, die mit variabler Länge auf dem Bus 9 eintreffen. Die Codes werden danach im Modul 4 verarbeitet, das die eigentliche Decodierung vornimmt, das heißt die inverse Quantisierung und die inverse DCT. Die decodierten Daten werden von dem Modul 5 aufgenommen, das die Bilderzeugung durchführt.
- Zwei auch mit MEM1 und MEM2 bezeichnete Speicher 7 und 8 werden auf eine durch die Pfeile 1, 2, 3 symbolisierte Art und Weise abwechselnd verwendet: Der Pfeil 1 symbolisiert das Schreiben eines decodierten Blocks, der Pfeil 2 symbolisiert das Lesen eines bewegungskompensierten Blocks im vorangegangenen Teilbild und der Pfeil 3 symbolisiert das Lesen eines decodierten Blocks mit oder ohne Bewegungskompensation.
- Dem Modul 22 (das die Schnittstelle für die Wiedergabe bildet) wird schließlich durch das Bilderzeugungsmodul 5 mit Hilfe der Speicher 7 und 8 ein wiedergabefähiges Bild zugeführt.
- In Figur 3 ist angegeben, auf welche Weise sich die verschiedenen Speicherzugriffe im Zeitverlauf überlappen. Eine mit DEC bezeichnete Gruppe von Linien bezieht sich auf die Speicherzugriffe, die der eigentlichen Decodierung entsprechen, und eine mit GEN bezeichnete Gruppe von Linien bezieht sich auf die Speicherzugriffe, die der eigentlichen Bilderzeugung entsprechen. Bei jeder dieser Gruppen enthält ein mit S bezeichnetes Signal Synchronimpulse (absteigende aktive Flanke), und mit Y(N), Y(N+2), C(N), C(N+1) bezeichnete Linien geben mit fett gezeichneten Abschnitten die Perioden an, bei denen Speicherübertragungen stattfinden, die jeweils die Helligkeit eines Bildes mit der Rangstufe N (geradzahlig), die Helligkeit des Bildes mit der Rangstufe N+2 (also die Helligkeit des nach dem Bild mit der Rangstufe N übertragenen Bildes), die Farbart eines Bildes mit der Rangstufe N und die Farbart des Bildes mit der Rangstufe N+1 (also die Farbart des folgenden Bildes) betreffen. Die Figur berücksichtigt die zeitliche Übereinstimmung der Signale zwischen den Gruppen DEC und GEN, und jede Linie Y oder C entspricht einer unterschiedlichen physischen Position im Speicher.
- Der Teil DEC ist leicht verständlich: Die Farbartinformationen eines Bildes werden aufgrund der räumlichen Unterabtastung der Farbart und der zeitlichen Unterabtastung der Helligkeit zwei mal schneller verarbeitet als die Helligkeitsinformationen des gleichen Bildes. Während ein Helligkeits-Bild verarbeitet wird, werden also zwei Farbart-Bilder verarbeitet. Die Farbartdaten der Bilder mit der Rangstufe N und N-1 werden in der gleichen Zeit verarbeitet wie die Helligkeitsdaten des Bildes mit der Rangstufe N. Beispielsweise werden die Farbartdaten C&sub2; und C&sub1; in der gleichen Zeit verarbeitet wie die Helligkeitsdaten Y&sub2;, die Farbartdaten C&sub4; und C&sub3; werden in der gleichen Zeit verarbeitet wie die Helligkeitsdaten Y&sub4;, usw.. Die Daten Y&sub4; ersetzen im Speicher die Daten Y&sub0;, die Daten C&sub2; ersetzen die Daten C&sub0;, und in gleicher Weise jedesmal, wenn Daten in der gleichen Zeile dargestellt sind wie andere Daten.
- In dem Teil GEN sind die Perioden IN&sub0; bis IM&sub6; angegeben, wobei deren Indices jeweils die Rangstufe des Bildes im Laufe der Erzeugung darstellen, und zwar bezüglich der Rangstufe N (beispielsweise bezieht sich IM&sub1; auf ein Bild mit der Rangstufe N+1, IM&sub2; auf ein Bild mit der Rangstufe N+2, usw.). Bei der Erzeugung der Farbart für das Bild IM&sub0; (mit der Rangstufe N), die ohne Interpolation erfolgt, betreffen die Speicherübertragungen die Helligkeit und die Farbart des Bildes mit der Rangstufe N, was mit einem fetten Strich auf den Linien Y(N) und C(N) angegeben ist. Bei der Erzeugung der Helligkeit für das Bild IM&sub1;, die durch Interpolation zwischen den Bildern N und N+2 erfolgt, betreffen die Speicherübertragungen diese zwei Bilder, was mit einem fetten Strich auf den Linien Y(N) und Y(N+2) angegeben ist. Es sei darauf hingewiesen, daß die Erzeugung eines ungeradzahligen Bildes (helligkeitsinterpoliert) doppelt so lange dauert wie die Erzeugung eines geradzahligen Bildes, da zwei Helligkeits-Teilbilder gelesen werden müssen, um daraus eines zu erzeugen. Bei der Farbart erfolgt die Erzeugung des Bildes IM&sub1;, da keine Interpolation stattfindet, durch Zugriff auf die Farbart mit der Rangstufe N+1, was mit einem fetten Strich auf der Linie C(N+1) angegeben ist, und danach auf gleiche Weise.
- Die Erzeugung des ungeradzahligen Teilbildes IM&sub1; durch Interpolation beginnt zu dem durch eine vertikale Linie G dargestellten Zeitpunkt vor dem Ende der Decodierung der Helligkeitsdaten des nachfolgenden Teilbildes Y&sub2; (in der Gruppe DEC) und genauer gesagt nach der Decodierung der Hälfte dieser Daten, dargestellt durch die vertikale Linie D. Außerdem werden die Helligkeitsdaten eines Teilbildes mit der Rangstufe N im Speicher durch solche des Teilbildes mit der Rangstufe N+4 ersetzt, sobald die Erzeugung der Helligkeit des Teilbildes mit der Rangstufe N+1 zur Hälfte durchgeführt worden ist, beispielsweise beginnt Y&sub8;, Y&sub4; vor dem Ende von IMS zu ersetzen, genauer gesagt, wenn die Hälfte von IM- erzeugt worden ist. Diese zwei Grenzbedingungen liefern den Wert, der der festgelegten Verzögerung zwischen dem Erzeugungsvorgang und dem Decodierungsvorgang gegeben werden muß. Diese Verzögerung zwischen dem Beginn der Erzeugung eines Bildes IM&sub3; und dem Beginn der Decodierung Y&sub6;, C&sub5; eines anderen Bildes ist durch D dargestellt. Selbstverständlich macht es aufgrund der Festlegung der Dauer jedes Vorgangs keinen Unterschied, ob man sagt, daß eine Verzögerung von Y&sub6; gegenüber IM&sub8; oder eine Verzögerung von IM&sub4; oder IM&sub5; gegenüber Y&sub6; besteht.
- Die Erzeugung eines nicht-interpolierten (geradzahligen) Bildes beginnt nach dem Ende der Decodierung der Helligkeits- und Farbartdaten dieses Teilbildes, und die Erzeugung eines interpolierten Bildes beginnt nach dem Ende der Decodierung der Farbartdaten dieses Teilbildes. Beispielsweise beginnt die Erzeugung von IM&sub2; nach dem Ende der Decodierung der Helligkeitsdaten Y&sub2; und der Farbartdaten C&sub2;, und die Erzeugung eines interpolierten Bildes IM&sub1; beginnt nach dem Ende der Decodierung C&sub1;.
- Die Bilderzeugung erfolgt daher synchron mit der Decodierung der Bilder, wodurch die Verwendung der zur Erzeugung der Bilder notwendigen Puffer sowohl zum Lesen als auch zum Schreiben möglich ist. Somit wird die Speicherung eines Helligkeits-Teilbildes und eines Farbart-Teilbildes eingespart. Da die Interpolation der Helligkeits-Teilbilder relativ zur Erzeugung des ungeradzahligen Teilbildes "unmittelbar" erfolgt, ist es nicht notwendig, dieses Teilbild zu speichern, wodurch sich ein Speichergewinn von einem vollständigen Bild ergibt.
- Dank der besonderen obenbeschriebenen Organisation der Abfolge der Decodierung und der Erzeugung der Bilder, kann man sich bei dem Decodierer mit einer zwei Bildern entsprechenden Speicherkapazität begnügen, wobei das erzeugte Bild direkt in den Wiedergabespeicher übertragen wird. Diese Reduktion der Speicherkapazität ermöglicht eine Ausführung mit einer geringen Anzahl Einheiten. Eine Konsequenz dieser Tatsache ist, daß die Größe des Datenbusses reduziert wird: Der Bus hat nämlich eine Größe, die höchstens gleich der Anzahl Einheiten multipliziert mit der Anzahl Bits ist, auf die in einer Einheit parallel zugegriffen werden kann. Dies bestimmt die maximale Datenrate zwischen dem Decodierer und seinem Speicher.
- Da der Decodierungsalgorithmus differentiell ist, wird Y(N+2) aus Y(N) decodiert, und C(N+2) aus C(N+1) decodiert; die Organisation des Speichers in zwei Helligkeits-Puffern und zwei Farbartpuffern erlaubt die Durchführung einer Decodierung (inverse VLC, inverse Quantisierung, invere DCT mit Bewegungskompensation) entsprechend der in Figur 3 angegebenen Reihenfolge.
- In bezug auf die Helligkeit impliziert die Wiederherstellung des Teilbildes Y(N) durch symmetrische Bewegungskompensation, daß die vertikalen Positionsveränderungen die Hälfte der vertikalen Abmessung des Bildes in 40 ms nicht überschreiten. Man wird feststellen, das die vertikalen Positionsveränderungen kaum 32 Pixel pro 40 ms überschreiten, mit anderen Worten, die algorithmische Grenze wird bei den Standardbildformaten (beispielsweise 256 x 352 Pixel) nie erreicht.
- Die preiswertesten Speicher sind dynamische Speicher. Der Nachteil solcher Speicher ist ihre lange Zugriffszeit bei Betrieb mit wahlfreiem Zugriff, was an der Multiplexierung der Adressen in zwei Feldern (Zeilen und Spalten) liegt. Um diese Nachteil auszugleichen, sind die Verarbeitungsoperationen so organisiert, daß die Zugriffe auf den Speicher größtenteils in Datenketten aus aufeinanderfolgenden Adreßwörtern erfolgen, die zu einer gleichen Zeile gehören ("Seitenmodus"). Innerhalb der Schaltung sind Pufferspeicher hinzugefügt, die die Bildung dieser Datenketten ermöglichen. Dieser Verabeitungsmodus ermöglicht einen Zugriff auf den dynamischen Speicher im Seitenmodus, bei dem für jedes Wort nur die Adreßspalte spezifiert wird und der eine beträchtliche Datenrate ermöglicht, die typischerweise höher ist als die von statischen Speichern mit äquivalentem Umfang. Sämtliche notwendigen Übertragungen können somit über einen Bus geleitet werden, der jedesmal ein einziges Pixel überträgt, und mit der obenerwähnten geringen Busgröße vereinbar ist. Die Kombination dieser Maßnahmen (Zugriff in Datenketten und Reduktion der Anzhl Zwischenbilder) führt zu einer besonders ökonomischen Lösung.
- Das Blockschema des Decoders und seines zugehörigen Speichers zur Durchführung des Verfahrens ist in Figur 4 dargestellt. Eine Automatik 14 empfängt zu Beginn einer zu decodierenden Bildsequenz von einem nicht dargestellten Steuersystem Informationen, die ihr die Anzahl NH horizontaler Blöcke des Bildes und die Anzahl NV vertikaler Blöcke des Bildes liefert. Von diesen Parametern ausgehend, zählt sie alle T/2 Zeiteinheiten (der Wert von T wird später erläutert) weiter und erzeugt Freigabesignale AG und AD für die Erzeugungmodule 13 beziehungsweise die Decodierungsmodule 12 sowie ein Autorisierungsignal AEBD zum Schreiben eines Codes in den Steuerpufferspeicher 15 mit einer Kapazität von einigen Kilobyte.
- Die Daten werden zwischen dem Pufferspeicher 15, den Erzeugungsmodulen 13 und den Decodierungsmodulen 12 und einem Speicher 18 über einen Datenbus 16 mit Hilfe eines Adreßbusses 17 ausgetauscht.
- Das System ist um einen einzelnen Speicher 18 herum aufgebaut, der das Äquivalent zweier Zwischenbilder enthält und in dem der Decoder die Werte der zu diesen Bildern gehörigen Pixel liest und schreibt. Dieser Speicher enthält:
- - zwei Helligkeits-Teilbilder mit einem zeitlichen Abstand von 80 ms zueinander, bezeichnet mit YN und YN+2
- - zwei Farbart-Teilbilder mit einem zeitlichen Abstand von 40 ms zueinander, bezeichnet mit CN+1 und CN+2
- - den Steuerpufferspeicher, der entsprechend dem FIFO-Prinzip organisiert ist und den Code eines Paares aus komprimierten Bildern enthält.
- Der Decoder muß in der Lage sein, der Wiedergabevorrichtung ein Bildpaar in weniger als 80 ms zu liefern. Soll diese Vorrichtung jedoch Bilder mit einer Frequenz von weniger als 25 Bildern pro Sekunde wiedergeben, kann der Decoder unter Steuerung des Steuersystems die Erzeugung von Bildern und damit die Decodierung anhalten.
- Das Steuersystem sendet der Automatik 14 ein Startsignal für die Erzeugung eines Bildpaares P2I ("bereit für 2 Bilder"). Dieses Signal wechselt mit einer Perioczität größer oder gleich 80 ms in den Zustand "high". Anläßlich dieses Signals erzeugt der Decoder intern die Signale mit der Bezeichnung:
- - AGB (warte auf Erzeugung eines geradzahligen Bildes)
- - AGI (warte auf Erzeugung eines ungeradzahligen Bildes)
- - AD (warte auf Decodierung)
- - AEBD (warte auf Schreiben des Decoder-Pufferspeichers)
- Die Signale P2I, AGI, AGP, AD und AEBD sind in den Figuren 5 und 6 dargestellt, die die Synchronisation des Decodiervorganges und des Bilderzeugungsvorganges zeigen. In den Figuren werden die Bezugszeichen (GEN, YN usw.) verwendet, die bereits im vorstehenden verwendet wurden. Die Basiszeit zur Erzeugung eines geradzahligen Bildes ist mit T angegeben. Figur 5 betrifft den Fall, in dem Bilder mit maximalem Umfang und einer Wiedergabefrequenz unter 25 Hz decodiert werden. Figur 6 betrifft den Fall, in dem der Umfang der Bilder geringer ist als der maximal zulässige Umfang. In diesem Fall wird der Vorgang zu einem Zeitpunkt abgebrochen, der durch die absteigende Flanke des Signals ABBD angezeigt wird, und somit vor dem Beginn des folgenden Vorganges eine Wartezeit auftritt.
- Das obenbeschriebene System erfordert, daß die Vorgänge GEN und DEC in einer festgelegten Zeit durchgeführt werden, und der mit einem einzelnen Bus verbundene Speicher 18 muß zwischen diesen beiden Vorgängen aufgeteilt werden. Dies stellt ein Problem dar, das gelöst werden kann, indem die Zeitfenster mit festgelegter Länge für den Speicherzugriff jedem der Vorgänge GEN und DEC zugeteilt werden. Der Umfang und die Wiederholungsfrequenz dieser Fenster müssen in Abhängigkeit von der Anzahl Speicherzugriffe festgelegt werden, die während der jedem Vorgang zugewiesenen Zeit erfolgen sollen, wie in Figur 6 angegeben, sowie in Abhängigkeit der Größe des Busses zur Kommunikation zwischen dem Decoder 18 und seinem Speicher 21 (Figur 4).
- Mit Gesamtleistung des Decodiersystems soll die Rechenleistung des Decoders (maximale Anzahl Blöcke, die in einer Zeiteinheit decodiert werden können) und der Durchlaßbereich der mit dem Decoder kommunizierenden Einheiten (Anzahl Datenaustauschvorgänge pro Zeiteinheit) bezeichnet werden. Die Gesamtleistung des Systems muß gewährleisten, daß T+T/2 (siehe Figuren 5 und 6) niedriger ist als 80 ms, um so zu gewahrleisten, daß die Decodierung eines Bildpaares in weniger als 80 ms erfolgt. Es sei darauf hingewiesen, daß die Gesamtleistungen des Decodiersystems für den maximalen Bildumfang berechnet werden müssen. Wenn das Bildformat reduziert wird, erfolgt die Decodierung wie in Figur 6 gezeigt.
- Die Automatik autorisiert das Schreiben in den Steuerspeicher, wenn sie alle 80 ms das Signal P2I empfängt. Sie zählt intern lang nach dem Eintreffen jedes Signals P2I 80 ms weiter. Wenn sie nach Ablauf von 80 ms kein neues Signal P2I empfängt, blockiert sie bis zum Eintreffen des neuen Signals P2I jeden neuen Schreibvorgang im Steuerspeicher. Bei einem solchen System wird jeder Speicherüberlauf des Steuerspeichers verhindert.
- Bei dem Verfahren und der Vorrichtung wie oben beschrieben wurde lediglich für die Helligkeit ein Interpolationsvorgang verwendet, aber natürlich ist das Verfahren auch auf den Fall anwendbar, in dem es vorgezogen wird, ebenfalls nur eines von zwei Farbart-Teilbildern zu übertragen und somit ein Farbart-Teilbild durch Interpolation wiederherzustellen. In diesem Falle wird der Fachmann leicht die notwendigen Abwandlungen vornehmen können, da es lediglich darum geht, das oben für die Helligkeit Beschriebene auf die Farbart anzuwenden, wobei vor allem in Figur 3 die Linien C(N) und C(N+1) oder C(N-1) durch Linien C(N) und C(N+2) mit aktiven Perioden zu gleichen Zeitpunkten wie für die Linien Y(N) und Y(N+2) ersetzt werden müssen, und in Figur 4 die Angabe CN+1 im Speicher 18 durch die Angabe CN ersetzt werden muß.
Claims (8)
1. Verfahren zur Bewegtbilddecodierung, bei dem ein Decoder zur
Decodierung bildbezogener, in komprimierter Form codierter digitaler Daten verwendet wird, in
Verbindung mit einem Prozessor zur Erzeugung von Bildern aus decodierten Daten, die
Farbart- und Helligkeitsinformationen darstellen, mit einem Speicher zur Speicherung
der genannten Informationen, wobei bei dem Verfahren die Erzeugung bestimmter
Bilder durch Interpolation von Pixeln eines vorangegangenen und eines nachfolgenden
Bildes erfolgt, wobei die Position der Pixel auf im vorangegangenen oder nachfolgenden
Bild grundsätzlich beliebig sein kann, dadurch gekennzeichnet, daß die genannte
Interpolation, die die Pixel eines Bildes erzeugt, vor dem Ende der Decodierung der
Daten des nachfolgenden Bildes beginnt.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die genannte
Interpolation nach der Decodierung der Hälfte der Daten des nachfolgenden Bildes
beginnt.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß mit dem
Ersetzen der Informationen eines Bildes mit der Rangstufe N durch jene des Bildes mit
der Rangstufe N+4 im Speicher begonnen wird, sobald die Erzeugung des Bildes mit
der Rangstufe N+1 zur Hälfte durchgeführt worden ist.
4. Verfahren nach einem der vorstehenden Ansprüche, dadurch
gekennzeichnet, daß zwischen dem Beginn der Erzeugung eines Bildes und dem Beginn der
Decodierung der digitalen Daten eines anderen Bildes eine festgelegte Verzögerung
vorgesehen ist.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß beim Beginn
der Erzeugung eines interpolierten Bildes eine Zeitzhhiung einsetzt und die Decodierung
eines neuen Bildes nach einer festgelegten Zeit autorisiert wird.
6. Verfahren nach einem der vorstehenden Ansprüche, dadurch
gekennzeichnet, daß mit der Wiedergabe eines Bildes begonnen wird, bevor die Erzeugung
dieses Bildes beendet ist.
7. Vorrichtung zur Bewegtbilddecodierung mit einem Decoder zur
Decodierung in komprimierter Form codierter, die Bilder betreffender digitaler Daten, in
Verbindung mit einem Prozessor zur Erzeugung von Bildern aus decodierten Daten, die
Helligkeits- und Farbartinformationen darstellen, und einem Speicher zur Speicherung
der genannten Informationen, wobei die Erzeugung der Bilder durch Interpolation von
Pixeln eines vorangegangenen und eines nachfolgenden Bildes erfolgt, wobei die
Position der Pixel im vorangegangenen oder nachfolgenden Bild unterschiedlich von der
des zu erzeugenden Pixels sein kann, dadurch gekennzeichnet, daß der genannte
Speicher organisiert ist in:
- zwei Teile, die jeweils zwei Helligkeits-Teilbilder enthalten, die einen
zeitlichen Abstand von 80 ms zueinander haben,
- zwei andere Teile, die jeweils zwei Farbart-Teilbilder enhalten, die einen
zeitlichen Abstand von 40 ms zueinander haben
- und einen Teil, der als Steuerpuffer dient, entsprechend dem Fifoprinzip
organisiert ist, und die Codes eines Paares komprimierter Bilder enthält.
8. Vorrichtung zur Bewegtbilddecodierung mit einem Decoder zur
Decodierung in komprimierter Form komprimierter, die Bilder betreffender digitaler Daten, in
Verbindung mit einem Prozessor zur Erzeugung von Bildern aus decodierten Daten, die
Helligkeits- und Farbartinformationen darstellen, und einem Speicher zur Speicherung
der genannten Informationen, wobei die Erzeugung der Bilder durch Interpolation von
Pixeln eines vorangegangenen und eines nachfolgenden Bildes erfolgt, wobei die
Position der Pixel im vorangegangenen oder nachfolgenden Bild unterschiedlich von der
des zu erzeugenden Pixels sein kann, dadurch gekennzeichnet, daß der genannte
Speicher organisiert ist in:
- zwei Teile, die jeweils zwei Helligkeits-Teilbilder enthalten, die einen
zeitlichen Abstand von 80 ms zueinander haben,
- zwei andere Teile, die jeweils zwei Farbart-Teilbilder enhalten, die einen
zeitlichen Abstand von 80 ms zueinander haben
- und einen Teil, der als Steuerpuffer dient, entsprechend dem FIFO-Prinzip
organisiert ist, und die Codes eines Paares komprimierter Bilder enthält.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR8916253A FR2655793A1 (fr) | 1989-12-08 | 1989-12-08 | Procede et dispositif de decodage d'images animees. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69019119D1 DE69019119D1 (de) | 1995-06-08 |
DE69019119T2 true DE69019119T2 (de) | 1995-11-30 |
Family
ID=9388292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69019119T Expired - Fee Related DE69019119T2 (de) | 1989-12-08 | 1990-12-03 | Verfahren und Einrichtung zur Bewegtbilddecodierung. |
Country Status (5)
Country | Link |
---|---|
US (1) | US5113243A (de) |
EP (1) | EP0431699B1 (de) |
JP (1) | JPH0410888A (de) |
DE (1) | DE69019119T2 (de) |
FR (1) | FR2655793A1 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5253275A (en) * | 1991-01-07 | 1993-10-12 | H. Lee Browne | Audio and video transmission and receiving system |
US5510897A (en) * | 1993-02-04 | 1996-04-23 | Matsushita Electric Industrial Co., Ltd. | Digital video signal recording apparatus and method |
JP4900721B2 (ja) * | 2008-03-12 | 2012-03-21 | 株式会社メガチップス | 画像処理装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3233288A1 (de) * | 1982-09-08 | 1984-03-08 | Robert Bosch Gmbh, 7000 Stuttgart | System zur zeitlichen kompression und/oder expansion von elektrischen signalen |
US4602275A (en) * | 1984-03-19 | 1986-07-22 | Rca Corporation | Television memory system |
GB2199461B (en) * | 1986-12-24 | 1991-03-13 | Philips Electronic Associated | Image display apparatus |
US4745462A (en) * | 1987-03-02 | 1988-05-17 | Rca Corporation | Image storage using separately scanned color component variables |
US4758881A (en) * | 1987-06-02 | 1988-07-19 | Eastman Kodak Company | Still video frame store memory |
US4843466A (en) * | 1988-04-27 | 1989-06-27 | Universal Video Communications Corp. | Method and system for decompressing color video slope encoded data |
-
1989
- 1989-12-08 FR FR8916253A patent/FR2655793A1/fr active Pending
-
1990
- 1990-12-03 DE DE69019119T patent/DE69019119T2/de not_active Expired - Fee Related
- 1990-12-03 EP EP90203187A patent/EP0431699B1/de not_active Expired - Lifetime
- 1990-12-06 JP JP2405332A patent/JPH0410888A/ja active Pending
- 1990-12-06 US US07/623,009 patent/US5113243A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
FR2655793A1 (fr) | 1991-06-14 |
JPH0410888A (ja) | 1992-01-16 |
DE69019119D1 (de) | 1995-06-08 |
EP0431699B1 (de) | 1995-05-03 |
US5113243A (en) | 1992-05-12 |
EP0431699A1 (de) | 1991-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69411791T2 (de) | Verfahren und Einrichtung zur Dekodierung von komprimierten Bildern | |
DE69320152T2 (de) | Dekodierer und Methode für digitales komprimiertes Fernsehsignal, der einen gemeinsamen Speicher benutzt zur Dekodierung und zur 2/3 Umwandlung | |
DE69013213T2 (de) | Einrichtung zur Zwischenbild-Vorhersagekodierung eines Videosignals. | |
DE3814627C2 (de) | ||
DE69124050T2 (de) | Videoanzeigegerät mit einer festen zweidimensionalen Matrix von Bildelementen | |
DE69227821T2 (de) | Fernsehsystem mit einem Speicher mit mehrfachem seriellen Zugriff | |
DE69523335T2 (de) | Anwendung eines speichers zur videodekodierung und anzeigegerät mit 3:2 schaltverhältnis | |
DE19521973C2 (de) | Bilddecodiervorrichtung | |
DE69312124T2 (de) | Videocodec, insbesondere für ein Bildtelefon | |
DE69405740T2 (de) | Verfahren und anordnung für bewegungskompensierende interpolation | |
DE19531004C2 (de) | Verfahren und Vorrichtung zur wahrnehmungsoptimierten Übertragung von Video- und Audio-Daten | |
DE69627920T2 (de) | Speichersteuerungsanordnung und Bilddekodierer damit | |
DE69615528T2 (de) | Verfahren und vorrichtung zur dekodierung von digitalen videosignalen | |
DE3885544T2 (de) | Kompressionskodierung/-Dekodierung eines Videosignals. | |
DE69329478T2 (de) | Vorrichtung zur Bildkodierung | |
DE69324549T2 (de) | Bewegtbilddekodierer | |
DE69126525T2 (de) | Digitale bildverarbeitung mit filterung der blockkanten | |
DE69523416T2 (de) | Verfahren zum Dekodieren komprimierter Bilder | |
DE69224650T2 (de) | Verfahren zur Synchronisation der Ablenkung in einem Bildwiedergabeapparat | |
DE19643376A1 (de) | Verfahren zum Speichern von Videorahmendaten in einem Speicher | |
DE69709293T2 (de) | Verfahren und Vorrichtung zur Kodierung und Dekodierung von Bewegtbildern | |
DE69230047T2 (de) | Fernsehsystem zum Übertragen von Bildsignalen in einem digitalen Format | |
DE69419815T2 (de) | Anordnung zur Aufzeichnung und Wiedergabe von datenreduzierter Videoinformation | |
DE69616850T2 (de) | Videodecodersystem | |
DE69019119T2 (de) | Verfahren und Einrichtung zur Bewegtbilddecodierung. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |