DE4419678A1 - Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern - Google Patents

Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern

Info

Publication number
DE4419678A1
DE4419678A1 DE4419678A DE4419678A DE4419678A1 DE 4419678 A1 DE4419678 A1 DE 4419678A1 DE 4419678 A DE4419678 A DE 4419678A DE 4419678 A DE4419678 A DE 4419678A DE 4419678 A1 DE4419678 A1 DE 4419678A1
Authority
DE
Germany
Prior art keywords
memory
image
data
dct
compressed
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.)
Withdrawn
Application number
DE4419678A
Other languages
English (en)
Inventor
Christian Von Dr Reventlow
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sci Worx GmbH
Original Assignee
SICAN GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SICAN GmbH filed Critical SICAN GmbH
Priority to DE4419678A priority Critical patent/DE4419678A1/de
Priority to AT95108497T priority patent/ATE246864T1/de
Priority to EP95108497A priority patent/EP0687111B1/de
Priority to DE59510756T priority patent/DE59510756D1/de
Priority to CA002151023A priority patent/CA2151023A1/en
Publication of DE4419678A1 publication Critical patent/DE4419678A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/926Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation
    • H04N5/9261Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation involving data reduction
    • H04N5/9264Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation involving data reduction using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

Voraussetzungen
Generell wird hier ein spezieller technischer Aspekt für die Speichereinsparung für Bildverarbeitungsalgorithmen betreffend MPEG1 (Standard ISO/IEC 11 172) und MPEG2 (ISO/IEC 13818) und artverwandter Standards beschrieben. Dazu sind die jetzigen gültigen Standards für JPEG, MPEG1 und MPEG2 mit ihren Algorithmen als Grundlage und als dem Leser bekannt anzusehen.
2. Einführung
In Abb. 1 ist ein MPEG-Encoderblockschaltbild dargestellt. Für die Bearbeitung der Bilddaten benötigt man zwei Bildspeicher (Bildspeicher A, B), wobei der erste (A) dem Umsortieren (reordering) der einlaufenden Bilder dient, der zweite (B) dem Zwischenspeichern von benötigten Bildern zur Vermeidung der Fehlerfortpflanzung, wie er auch in jedem MPEG-Dekoder eingebaut sein muß.
Je nach zu verarbeitenden Bildformaten und Normen besitzen diese Speicher Größen zwischen ca. 300 kByte (1/4 TV Bild) und mehr als 4 MByte (HDTV Bild). An dieser Stelle greift das hier vorgestellte Verfahren zur Speicherminimierung an, mit dem es möglich ist, diese Speicherkapazität drastisch zu reduzieren.
Beispielhaft sei hier die Reduktion der Speichergröße (B) für einen MPEG2-Dekoder aufgeführt:
Ohne Speicherminimierung: Größe zweier CCIR 601 Norm · Bilder, bei 4 : 2 : 0 Chromaformat: 10 MBlt=2 Bilder × 720 Bildspalten × 288 Bildzeilen × 2 interlaced Bilder × (8 Bit (Luminanz) + 4 Bit (Chrominanz)) im Vergleich zu maximal ca. 4 MBlt je nach gewünschter Bildqualität mit Speicherminimierung.
Prinzipiell kann man die Speicherkapazität für komprimierte Datenmengen wie folgt verkleinern:
Spk=Spn/k (1)
Spk: Speicherkapazität für komprimierte Datenmenge
Spn: Speicherkapazität für unkompromierte Datenmenge
k: Kompressionsfaktor
Der Kompressionsfaktor (k) ist abhängig vom gewählten Kompressionsverfahren und der gewünschten (Bild-)Qualität der zu speichernden Daten.
3. Verfahren zur komprimierten Ab- und Zwischenspeicherung von Bild-, Video- und Filminformation in Halbleiterspeichern 3.1. Spezielle Verfahren
Anstelle des unkomprimierten Abspeicherns der Original-Bilddaten in den Speicher werden diese einer zweidimensionalen diskreten Cosinustransformation (DCT) unterzogen und anschließend mittels einer Quantisierungsstufe (Q) und einer besonderen Huffmankodierung (VLC) komprimiert im Speicher abgelegt (siehe Abb. 2). Die Steuerung der Quantisierung übernimmt die Quantisierungssteuerung (Q-ST).
Beim Auslesen der komprimierten Daten werden diese Schritte dann mittels der entsprechenden inversen Operationen rückgängig gemacht (VLD, Q-1, IDCT).
Dieses JPEG-ähnliche Verfahren weist dabei einige Besonderheiten auf:
  • a) Bilder werden nur intra-kodiert
  • b) Bilder werden auf eine feste Größe komprimiert unabhängig von der Bildkomplexität
  • c) Die Quantisierungssteuerung (Q-St) arbeitet prädikativ, d. h. sie berücksichtigt während der Bildkompression auch die noch zu erwartenden Datenmessungen des noch nicht bearbeiteten Bildrests.
  • d) je nach im Anwendungsfall gewünschter Kompressionsraten werden speziell angepaßte Huffman-Tabellen verwendet.
  • e) falls ein unkodierter Block (8×8 Pixel) weniger Daten umfaßt als ein kodierter, wird er unkodiert abgespeichert.
3.1. Komponenten für das Verfahren zur Speicherminimierung 3.1.1. Diskrete Cosinustransformation (DCT)
Es kann eine beliebige Architektur verwendet werden, die die Anforderungen an die Genauigkeit gemäß MPEG bzw. H. 261 Norm erfüllt.
3.1.2. Quantisierung (Q)
Die Quantisierung arbeitet in ihren Grundzügen analog zu JPEG und besitzt auch denselben zweistufigen Aufbau. Als Quantisierungstabelle wird die MPEG oder JPEG-Tabelle benutzt. Dies zusammen mit 3.1.3. und 3.1.4. legt praktisch den Kompressionsfaktor (k) fest.
3.1.3. Huffman-Kodierung (VLC)
Der VLC (Abb. 3) liest die quantisierten Daten im Zigzag-Scan aus RAM 1 und schreibt dabei den ersten Wert (DC-Komponente im Frequenzbereich) unkodiert in den Ausgangsspeicher (RAM 2). Die nachfolgenden AC-Werte werden analog zu MPEG runlength kodiert (bezüglich Null) und die dadurch entstandenen Runlength/Level Paare dann mittels Huffman-Tabelle in einen Bitkode variabler Länge transformiert. Falls der kodierte Block mehr Daten enthält als der unkodierte (dies erkennt man am Überlauf von RAM 2), wird der Block zwar DCT-transformiert aber nicht komprimiert ausgegeben.
Am Ausgang des VLC erscheint also ein Bitstrom mit kodierten bzw. teilweise auch unkodierten Daten, die entsprechend der Wortbreite des Speichers parallelisiert und abgespeichert werden. In einem weiteren Speicher muß für jeden Block noch ein Flag (unkodierter/kodierter Block) und der zum Block zugehörige Quantisierungsfaktor q abgelegt werden.
Dies zusammen mit 3.1.2. und 3.1.4. legt praktisch den Kompressionsfaktor (k) fest.
3.1.4. Quantisierungssteuerung (Q-ST)
Die Quantisierungssteuerung regelt den Quantisierungsfaktor (q) blockweise nach. Dies geschieht in Abhängigkeit folgender Parameter:
a) Füllstand des Bildspeichers
b) zu erwartende Komplexität des Bildes
Durch geeignete Algorithmen wird sichergestellt, daß der Bildspeicher immer voll ausgenutzt wird, so daß sich ein Optimum zwischen Bildqualität und Speicherbedarf einstellt.
Dies zusammen mit 3.1.2. und 3.1.3. legt praktisch den Kompressionsfaktor (k) fest.
3.1.5. Huffman Dekodierung (VLD)
Die Dekodierung der Bildspeicherdaten nach inversem Verfahren erfolgt zum VLC, wobei natürlich das Flag für kodierte bzw. unkodierte Blöcke ausgewertet werden muß.
3.1.6. Dequantisierung (Q-1)
Arbeitet analog zur Quantisierung und erzeugt die 12 Bit breiten Eingangsdaten für die inverse DCT.
3.1.7. Inverse diskrete Cosinustransformation (IDCT)
Auch hier kann jede Hardware, die die Anforderungen der o. g. Standards unterstützt, verwendet werden.
3.2. Generelle Verfahren
Man kann die zu speichernden Bildaten auch mit Hilfe anderer Kompressionsarten abspeichern.
3.2.1. Verfahren ohne Transformationen
Man kann generell die Bilddaten, ohne sie vorher mittels DCT/IDCT oder anderen speziellen Transformationen in den Frequenzbereich transformiert zu haben, auch mittels des Entropietheorems von Shannon im Ortsbereich komprimieren.
Dies kann wie folgt gemacht werden. Man errechnet zuerst eine optimale Huffmantabelle der Daten im Ortsraum (entweder on line pro Bildausschnitt, oder fest Vorberechnete) und nutzt so die Häufigkeitsverteilung der Helligkeits- bzw. Chrominanzwerte im Ortsbereich. Der Vorteil dieses Verfahrens liegt in einer geringeren Komplexität der Kompression. Um eine feste Ausgangsdatenrate zu garantieren, muß dieses Verfahren um eine geeignete Quantisierungsstufe erweitert werden.
Eine weitere Möglichkeit der Kompression besteht in einer Kodierung der Differenzen der Helligkeits- und Chrominanzwerte z. B. nach dem DPCM-Verfahren. Dort wird eine nichtlineare Zuordnung zwischen Differenzwert und Ausgabewert errechnet und abgespeichert.
3.3. Mögliche andere Einsatzgebiete des Verfahrens außer für MPEG, JPEG bzw. Bildverarbeitung
Prinzipiell kann man auch Audio- oder andere Daten komprimiert in Halbleiterspeichern abspeichern. Dazu kann man das o. g. Verfahren mit seinen u. g. Varianten ebenfalls benutzen.
Das geschilderte Verfahren kann auch benutzt werden, um Daten z. B. aus der Meß- oder Audiotechnik in einem Halbleiterspeicher abzuspeichern. Dabei kann man nicht nur die Speicherkapazität, sondern auch die Speicherbandbreite reduzieren.
Wenn man z. B. hinter einem Analog-Digitalumsetzer (ADC) einen Datenstrom erhält, der die Speicherzugriffszeit eines hinter den ADC geschalteten Halbleiterspeichers übersteigt, so kann man mit Hilfe des Verfahrens durch die Kompression die Zufgriffszeit auf den Speicher reduzieren.
4. Varianten des Verfahrens 4.1. Besonders hohe Datenkompression
Falls eine noch höhere Datenkompression als beim Verfahren unter 3.1. gewünscht wird, aber dieselben hohen Anforderungen an die Bildqualität gestellt werden, muß eine für einen festzulegenden Bildausschnitt optimale Huffman-Tabelle gefunden werden. Hierzu ist dann in den VLC ein kompletter Huffman-Encoder zu implementieren und jeweils für den gewählten Bildausschnitt eine Tabelle im Speicher abzulegen.
4.2. Verhinderung der Fehlerfortpflanzung
Bei der Anwendung des Verfahrens laut 3. auf den Speicher in der Prädiktionsschleife (Bildspeicher B) bei En- oder Dekoder erhält man im Normalfall ein Aufaddieren der durch diese Kompression entstandenen Fehler bis zum nächsten I-Bild. Falls dies nicht erwünscht ist, kann die Fehlerfortpflanzung auf die aufeinanderfolgenden B-Bilder mit folgendem Verfahren begrenzt werden (siehe Abb. 4).
Zuerst wird ein I- oder P-Bild unkomprimiert in den Speicher geschrieben, das danach einlaufende I- oder P-Bild wird die für die ersten 64 Zeilen (bedingt durch die maximale Länge des Bewegungsvektors) ebenfalls unkomprimiert abgelegt und mit dem unkomprimierten I-/P-Bild dekompensiert. Nun wird gleichzeitig damit begonnen, das I-Bild auszulesen, analog zum Verfahren 3. zu komprimieren und an andere Stelle wieder in den Speicher zu schreiben.
Der Speicheraufwand beträgt also 1 Bild + x Zeilen (x=max. Länge des Bewegungsvektors vertikal), sowie ein Bild komprimiert.
4.3. Wahlfreier Speicherzugriff
Durch das Abspeichern eines Bitstroms mit Kodes variabler Länge ist es nach 3. nicht möglich, wahlfrei auf einzelne (Bild-)Blöcke, Pixel, Datenelemente o. ä. zuzugreifen. Für die Anwendung des Verfahrens beim Bildspeicher (B) in der Prädiktionsschleife des Enkoders oder beim Zwischenspeicher beim Dekoder ist dies aber unabdingbar, da für die Bewegungs-Dekompensation je nach Bewegungsvektoren verschiedenste Bildbereiche ausgelesen werden müssen.
Durch die Verwendung einer blockbasierten DCT/IDCT (i. a. Transformation und variabler Längenkodierung) ist das kleinste wahlfrei zugreifbare Element der 8×8 Pixel große Block (bei MPEG). Um diesen wahlfreien Zugriff zu ermöglichen, speichert man die Adresse des ersten Bits eines jeden Blockes zusammen mit dem unter 3.1.3. genannten Flag und Quantisierungsfaktor in einem Adreßspeicher ab.
Beim Auslesen beliebiger Bildteile aus dem Bildspeicher mittels indirekter Adressierung über den Adreßspeicher müssen dann u. U. neben der gewünschten Nutzinformation auch Teile mitgelesen werden, die eigentlich nicht benötigt werden (siehe Abb. 5). Dies erhöht evtl. die benötigte Speicherbandbreite gegenüber der normalerweise benötigten (s. 5.1.).
5. Beschreibung des Verfahrens für einen MPEG 2 Dekoder
Die laut MPEG 2 Standard umgeordneten (reordered) und kodierten Bilddaten eines Bildes t (Abb. 6) werden zum Dekodieren vom MPEG-Dekoder (Abb. 7) eingelesen.
Im Dekoder wird der Bitstrom bildweise über einen sog. Video Buffering Verifier (VBV), den Variable Length Decoder (VLD), den Dequantizierer (Q-1) und die zweidimensionale inverse diskrete Cosinustransformation (IDCT) laut MPEG 2-Norm dekodiert und der Dekompensationsstufe zugeführt. In der Dekompensationsstufe werden die Bilddaten - wenn es sich um P- oder B-Bilder handelt - passend, mit den im Speicher liegenden Bilddaten eines (I- oder P-)Bildes t-2 (oder t-1 und t-2 bei B-Bildern) verrechnet.
Die zur Dekompensation benötigten Daten aus dem Bildspeicher werden normalerweise mittels der vom Variable Length Dekoder (VLD) aus Abb. 7 kommenden Vektoren adressiert. Dabei wird durch diese Vektoren makroblockweise eine Verschiebungsposition eines Makroblockes aus Bild t zur Position eines Makroblockes aus Bild t-2 (bei B-Bildern auch t-1 möglich) angegeben. Die in der Dekompensationsstufe sich befindenden Blöcke aus Bild t benötigen für die Dekompensation noch die zugehörigen Blöcke bzw. Pixel aus dem Speicher (Bild t-1, t-2). Dazu werden über den Memorykontroller die im Bildspeicher komprimiert abgelegten Daten wieder dekomprimiert (laut 3.) und der Dekompensationsstufe zugeführt. I-Bilder werden ohne Informationen aus dem Speicher direkt dekompensiert. Die so dekompensierten Bilddaten für Bild t entsprechen wieder einem dekodierten normalem Bild mit Luminanz und Chrominanzwerten laut CCIR Norm.
Die dekodierten Bilddaten werden nun, wenn es sich um I- oder P-Bilder handelt durch den Memorykontroller komprimiert und in den Bildspeicher geschrieben, um für ein zukünftiges zu dekodierendes P- bzw. B-Bild zur Verfügung zu stehen. Auf diese Weise werden im Bildspeicher immer die letzten beiden P-Bilder (t-1) und (t-2) bzw. ein I- (t-2) und ein P-Bild (t-1) komprimiert gehalten.
Die B-Bilder werden von der Dekompensationsstufe direkt an die Ausgabeeinheit weitergereicht und nicht zwischengespeichert. Die nachfolgende Einheit muß dazu in der Lage sein, die Bilddaten blockweise und nicht wie für Monitore nötig zeilenweise entgegenzunehmen. Ein beispielhaftes Timing ist in Abb. 8 dargestellt.
5.1. Bild- und Adreßspeicher für MPEG 2-Dekoder 5.1.1 Speicherbandbreite
Da die Bilddaten nach dem Verfahren aus 3. speziell kodierter Bitstrom in den Speicher geschrieben werden, ist es, wie unter 4.3. erwähnt, nicht möglich, wahlfrei auf einzelne pixeladressierte Bildbereiche zuzugreifen.
Für das Auslesen eines makroblockgroßen Bereiches eines Bildes in der CCIR 601 (4 : 2 : 0) Norm (4 Blöcke Luminanz und zweimal ein Block Chrominanz) muß das 17/6fache der "Nutzinformation" aus dem Bildspeicher ausgelesen werden (s. Abb. 5). Dies führt dann beim Auslesen eines Bildes nach CCIR 601 4 : 2 : 0 PAL Norm im worst case Fall zu einer Speicherbandbreite des Bildspeichers von:
720 (Bildspalten) × 288 (Bildzeilen) × (8 + 4 Bit pro Pixel) × 17/6 × 50 (Hz) = ca. 352 MBit/s, was ca. 44 MByte/s entspricht.
Unter Berücksichtigung des in Abb. 8 angegebenen Timings und der Aufteilung des Bilddatenspeichers in zwei Teilbildspeicher zu je zwei Speicherbänken errechnet sich bei einer Wortbreite des Speichers von 36 Bit die erforderliche Bandbreite wie folgt:
720 (Bildspalten) × 288 (Bildzeilen) × (8 + 4 Bit pro Pixel) × (17/6 (Auslesen zur Dekompensation) + 6/6 (Auslesen zur Ausgabe des Bildes)) × 50 (Hz) = ca. 477 MBit/s, was ca. 60 MByte/s entspricht, also einer Speicherzugriffszeit von 67 ns.
Wählt man für höchste Bildqualität einen Kompressionsfaktor (k) für die Bildspeicherdaten von k=3, werden über 1/50 s gemittelt allerdings nur 44/3 MBytes = 14,7 MByte/s übertragen.
5.1.2. Datenspeichergröße
Dies bedeutet für die Speichergröße des Bildspeichers für komprimierte Abspeicherung der Daten (s. Formel 1) für o. g. Fall mit k=3:
720 (Bildspalten) × 288 (Bildzeilen) × (8+4 Bit pro Pixel) × 4 (Speicherbänke, 2 I- und 2 P-Bilder)/k=ca. 10/k MBit=ca. 3.3 MBit.
5.1.3. Adreßspeicher
Wie in 4.3. ausgeführt müssen für jeden Block die Startadressen (bstadr) zusammen mit dem Quantisierungsfaktor (q) und dem Flag (f) für kodierte oder unkodierte Daten in einem Adreßspeicher abgelegt werden. Unter den oben gemachten Voraussetzungen ergibt sich eine Wortbreite der Adresse für den Bildspeicher von:
5 Bit (q) + 1 Bit (f) + 20 Bit (bstadr) = 26 Bit pro Block.
Die Anzahl der benötigten Einträge des Adreßspeichers richtet sich nach der Blockanzahl (-größe) und der Norm des Bildes:
720 (Bildspalten)/8 (horizontale Blockgröße) × 288 (Bildzeilen)/8 (vertikale Blockgröße) × 1,5 (Luma & Chroma) = 4860 Blöcke pro Speicherbank.
Daraus folgt eine Gesamtzahl von 19 440 Einträgen a 26 Bit, d. h. ca. 505 kBit für den Adreßspeicher.
5.1.4. Gesamtspeicherbedarf
Insgesamt ergibt sich also für einen MPEG 2-Dekoder für den Bildspeicher ein Speicherbedarf von 3,3 MBit (Datenspeicher) + 0,5 MBit (Adreßspeicher) = ca. 3,8 MBit gegenüber 10 MBit für das unkomprimierte Abspeichern der Bilder bei CCIR 601, 4 : 2 : 0.
6. Vergleich für Hardwareaufwand für einen MPEG 2-Dekoder mit/ohne Speicherminimierung
Für die spezielle Ansteuerung des Bildspeichers im MPEG 2-Dekoder wird ein Mehraufwand an Hardware von einer zweidimensionalen DCT, eines Quantisierers (Q) und eines Huffmankoders (VLC) inkl. Quantisierungssteuerung (Q-ST) zum Beschreiben der Teilspeicherbereiche benötigt, der per Multiplexer auf eine der zwei Bereiche geschaltet werden kann (siehe Abb. 7).
Zum Auslesen aus dem Bildspeicher werden pro Teilspeicher eine IDCT, ein Dequantisierer (Q-1) und ein Huffmandekoder (VLD) benötigt.
Der abgeschätzte Hardwareaufwand mit und ohne Speicherminimierung ist im folgenden im Vergleich stellvertretend für einen MPEG 2-Dekoder, für Bildverarbeitung von CCIR 601 Bildern, im 4 : 2 : 0 Format, wie nach 5. beschrieben, aufgeführt.
Zusätzlicher abgeschätzter Hardwareaufwand für "basic functionality"
Evtl. könnte bei einem Timemultiplexbetrieb von einzelnen Modulen (z. B. DCT's, Q's) bei Verwendung schneller Technologien der Hardwareaufwand noch reduziert werden. Dies kann nur im einzelnen Anwendungsfall (Grenzfrequenz der Technologie gegenüber der zu verarbeitenden normabhängigen Datenmengen) untersucht werden. Die grundsätzlich zu patentierende Idee ist davon unabhängig.

Claims (3)

1. Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern, dadurch gekennzeichnet, daß die Bilddaten komprimiert im Speicher abgelegt und beim Auslesen wieder dekomprimiert werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Bilddaten einer zweidimensionalen diskreten Cosinustransformation (DCT) unterzogen, anschließend mittels einer Quantisierungsstufe (Q) und einer Huffmankodierung (VLC) komprimiert im Speicher abgelegt und beim Auslesen mittels der entsprechenden inversen Operationen (VLD, Q-1, DCT) wieder dekomprimiert werden.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Quantisierungsstufe (Q) durch eine prädiktiv arbeitende Quantisierungssteuerung (Q-ST) gesteuert wird.
DE4419678A 1994-06-06 1994-06-06 Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern Withdrawn DE4419678A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE4419678A DE4419678A1 (de) 1994-06-06 1994-06-06 Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern
AT95108497T ATE246864T1 (de) 1994-06-06 1995-06-02 Verfahren zur codierung/decodierung eines datenstroms
EP95108497A EP0687111B1 (de) 1994-06-06 1995-06-02 Verfahren zur Codierung/Decodierung eines Datenstroms
DE59510756T DE59510756D1 (de) 1994-06-06 1995-06-02 Verfahren zur Codierung/Decodierung eines Datenstroms
CA002151023A CA2151023A1 (en) 1994-06-06 1995-06-05 Method of coding/decoding of a data stream

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE4419678A DE4419678A1 (de) 1994-06-06 1994-06-06 Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern

Publications (1)

Publication Number Publication Date
DE4419678A1 true DE4419678A1 (de) 1995-12-07

Family

ID=6519871

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4419678A Withdrawn DE4419678A1 (de) 1994-06-06 1994-06-06 Verfahren zur Speicherung von Bild-, Video- und Filminformation in Halbleiterspeichern

Country Status (1)

Country Link
DE (1) DE4419678A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794673A2 (de) * 1996-03-04 1997-09-10 Mitsubishi Denki Kabushiki Kaisha Vorrichtung zur Dekodierung von digitalen Bildern
DE19645724C1 (de) * 1996-11-06 1998-05-07 Sican Gmbh Verfahren und Vorrichtung zur DPCM-Codierung
EP0847203A2 (de) * 1996-12-03 1998-06-10 STMicroelectronics, Inc. Verfahren zur Reduzierung des Speicherbedarfes fur Videodatendekompression

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794673A2 (de) * 1996-03-04 1997-09-10 Mitsubishi Denki Kabushiki Kaisha Vorrichtung zur Dekodierung von digitalen Bildern
EP0794673A3 (de) * 1996-03-04 2000-07-19 Mitsubishi Denki Kabushiki Kaisha Vorrichtung zur Dekodierung von digitalen Bildern
DE19645724C1 (de) * 1996-11-06 1998-05-07 Sican Gmbh Verfahren und Vorrichtung zur DPCM-Codierung
EP0847203A2 (de) * 1996-12-03 1998-06-10 STMicroelectronics, Inc. Verfahren zur Reduzierung des Speicherbedarfes fur Videodatendekompression
EP0847203A3 (de) * 1996-12-03 2000-03-08 STMicroelectronics, Inc. Verfahren zur Reduzierung des Speicherbedarfes fur Videodatendekompression
US6668019B1 (en) 1996-12-03 2003-12-23 Stmicroelectronics, Inc. Reducing the memory required for decompression by storing compressed information using DCT based techniques

Similar Documents

Publication Publication Date Title
EP0687111B1 (de) Verfahren zur Codierung/Decodierung eines Datenstroms
DE69813911T2 (de) VERFAHREN ZUR BESTIMMUNG VON BEWEGUNGSVEKTORFELDERN MIT LOKALER BEWEGUNGSSCHäTZUNG
DE69735402T2 (de) System und Methode zur Bewegungskompensation mit Hilfe eines Schrägziegelspeicherformats für verbesserte Effizienz
DE69735028T2 (de) Videokodierungs- und Videodekodierungsvorrichtung
DE60125301T2 (de) Videosignaltranskodierung
CA2130479C (en) Lower resolution hdtv receivers
DE69116869T2 (de) Digitale bildkodierung mit einer zufallsabtastung der bilder
DE69838729T2 (de) Verfahren und vorrichtung zur verringerung des benötigten speicherplatzes zur speicherung von referenzbildern in einem videodekoder
KR100253931B1 (ko) 디지탈 영상 시퀀스의 디코딩 방법 및 장치
DE69535228T2 (de) Bildumsetzungsvorrichtung
US6650708B1 (en) Video signal encoding apparatus
DE60309375T2 (de) Parametrisierung für verlauf-kompensation
US8009740B2 (en) Method and system for a parametrized multi-standard deblocking filter for video compression systems
EP1292154B1 (de) Verfahren und Vorrichtung zum Speichern in reduziertem Modus für hochauflösendes Fernsehen
DE69633815T2 (de) Vorrichtung zur Codierung und Decodierung eines digitalen Bildsignales
US20040264580A1 (en) Decoder and method of decoding using pseudo two pass decoding and one pass encoding
JPH09247673A (ja) 符号化動画像再生装置
EP0862138A2 (de) Bildverarbeitungsverfahren und -vorrichtung
WO1996006506A1 (de) Verfahren zur decodierung komprimierter video-daten mit reduziertem speicherbedarf
US5694172A (en) Method and apparatus for reproducing picture data
DE69126525T2 (de) Digitale bildverarbeitung mit filterung der blockkanten
JP2001204037A (ja) 動き補償適応型画像処理方法及びその装置
DE112015001531T5 (de) Datenkodierung und Dekodierung
DE19524688C1 (de) Verfahren zur Dekodierung und Kodierung eines komprimierten Videodatenstroms mit reduziertem Speicherbedarf
DE60210757T2 (de) Vorrichtung zur videokodierung und -aufzeichnung

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: SICAN GMBH, 30419 HANNOVER, DE

8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: SCI-WORX GMBH, 30419 HANNOVER, DE

8130 Withdrawal