DE10008055A1 - Verfahren zur Kompression von Daten - Google Patents
Verfahren zur Kompression von DatenInfo
- Publication number
- DE10008055A1 DE10008055A1 DE10008055A DE10008055A DE10008055A1 DE 10008055 A1 DE10008055 A1 DE 10008055A1 DE 10008055 A DE10008055 A DE 10008055A DE 10008055 A DE10008055 A DE 10008055A DE 10008055 A1 DE10008055 A1 DE 10008055A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- wavelet
- coefficients
- calculation
- pyramid
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
- H04N19/64—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
- H04N19/647—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Kompression von Bilddaten, wobei eine Unterscheidung zwischen wichtigen und weniger wichtigen Daten erfolgt. DOLLAR A Erfindungsgemäß zeichnet sich das Verfahren dadurch aus, dass eine Berechnung einer Signifikanz von Daten in einem separaten Verfahrensschritt erfolgt.
Description
Die Erfindung betrifft ein Verfahren zur Kompression von Daten.
Bei verschiedenen Anwendungen der Speicherung oder Übertragung
von Digitalbildern ist eine Kompression der Bilddaten notwen
dig, um Speicherplatz, beziehungsweise Übertragungsbandbreite
zu reduzieren. Hierbei ist zu unterscheiden zwischen Bewegtbil
dern (zum Beispiel Video) und Einzel- oder Standbildern. Bei
ersteren lassen sich aus dem Umstand, dass sich aufeinander
folgende Bilder in vielen Regionen nur wenig unterscheiden, be
sonders hohe Kompressionsfaktoren erzielen, indem lediglich die
Bilddifferenzen gespeichert, beziehungsweise übertragen werden.
Bei Einzelbildern dagegen ist jedes Bild isoliert zu betrach
ten, wobei zwischen verlustlosen und verlustbehafteten Verfah
ren der Datenreduktion zu unterscheiden ist.
Verlustlose Verfahren setzen auf eine möglichst weitgehende
Elimination von Redundanz durch geeignete Transformationen (zum
Beispiel Diskrete Cosinus Transformation DCT oder Wavelet-
Transformation) und Codierungen (zum Beispiel Entropie-
Codierung). Der Kompressionsfaktor kann weiter erhöht werden,
indem - unter mehr oder weniger hohen Qualitätsverlusten -
"unwichtige" Informationen unterdrückt werden (z. B. Quantisie
rung der Daten oder Weglassen von niedrigwertigen Datenbits).
Zum Preis eines höheren Rechenaufwands sind Transformationen,
die es gestatten, bei der nachfolgenden Codierung statistische
Zusammenhänge höherer Ordnung auszunutzen (zu diesen gehören
die Wavelet-Transformationen), den einfacheren Transformationen
(wie etwa DCT) hinsichtlich des Verhältnisses von Bildqualität
zu verbleibender Datenmenge überlegen.
Im Stand der Technik sind eine Vielzahl von Kompressionsverfahren
bekannt. Die bekannten Kompressionsverfahren ermöglichen
entweder hohe Kompressionsfaktoren oder eine gute Bildqualität.
Der Erfindung liegt die Aufgabe zugrunde, ein Kompressionsver
fahren zu schaffen, das hohe Kompressionsfaktoren mit einer gu
ten Bildqualität vereinigt. Vorzugsweise soll das Kompressions
verfahren möglichst schnell durchführbar sein.
Erfindungsgemäß wird diese Aufgabe dadurch gelöst, dass eine
Berechnung einer Signifikanz von Daten, insbesondere von Bild
daten, in einem separaten Verfahrensschritt erfolgt.
Aus der internationalen Patentanmeldung WO 97/26603 ist eine
Matrixanordnung von Prozessoreinheiten bekannt, wobei jede Pro
zessoreinheit neben einer arithmetisch-logischen Einheit und
einer Ergebnisregisterbank noch eine weitere arithmetisch-
logische Einheit, eine Multiplizier/Addier-Einheit, einen Teil
speicher eines vorteilhaften Bildschirmausschnittspeichers und
einen lokalen Allzweckspeicher aufweist. Ein die Matrixanord
nung der Prozessoreinheiten enthaltender Prozessor zeichnet
sich durch eine hohe Bearbeitungsgeschwindigkeit aus.
Aus der internationalen Patentanmeldung WO 99/42923 ist eine
Vorrichtung mit einer Vielzahl von Steuermodulen bekannt, wobei
den Steuermodulen eine Vielzahl von Bearbeitungsmodulen zur An
steuerung zugeordnet sind. Hierbei werden die separaten Steuer
module durch eine übergeordnete Steuerung angesteuert und durch
eine gemeinsame Synchronisiereinheit synchronisiert. Durch die
se Vorrichtung wird eine Übertragungsbandbreite zwischen einem
externen Befehlsspeicher und einem hochintegrierten System re
duziert.
Die vorliegende Erfindung dient dazu, Einzelbilder zu kompri
mieren, wobei durch eine aufeinander abgestimmte Kombination
von Hardware und Software bezüglich Datenmenge, beziehungsweise
Bildqualität und Durchsatz, beziehungsweise Zeitaufwand der
Kompression bessere Leistungsdaten erzielt werden als mit her
kömmlichen Implementierungen. Ein weiterer Aspekt des Verfah
rens ist die nachträgliche - verlustbehaftete - Reduktion der
Datenmenge bereits komprimierter Bilder, um beispielsweise auf
einem in seiner Kapazität ausgeschöpften Speichermedium Platz
für weitere Bilder zu schaffen.
Das implementierte Verfahren gestattet eine sehr einfache und
schnelle nachträgliche Datenreduktion.
Eine weitere Verbesserung der Qualität der rekonstruierten Da
ten, insbesondere der Bildqualität, läßt sich über eine verfei
nerte Bewertung der Wichtigkeit einzelner Datenbestandteile er
zielen. Letzteres ist vorteilhaft über eine Kodierung in Wave
let-Koeffizienten zu erreichen.
Eine Beschleunigung des Kompressionsverfahrens kann vorteilhaf
terweise dadurch erzielt werden, dass eine Berechnung von Si
gnifikanzparametern der Wavelet-Koeffizienten in einem separa
ten Verfahrensschritt erfolgt.
Es ist besonders zweckmäßig, das Verfahren so durchzuführen,
dass der separate Verfahrensschritt in einem separaten Prozes
sorelement erfolgt.
Die Erfindung ist in vielfältigen Technologiebereichen einsetz
bar. Bei einer Vielzahl von Anwendungen besteht ein Bedürfnis,
große Datenmengen zu komprimieren.
Nachfolgend wird die Erfindung am Beispiel von Bilddaten erläu
tert. Hierdurch sind die Vorteile der erfindungsgemäßen Daten
kompression besonders deutlich darstellbar. Die Erfindung ist
jedoch nicht auf die Komprimierung von Bilddaten beschränkt.
Vielmehr eignet sich die Erfindung für alle Anwendungsgebiete,
bei denen aus einer großen Menge kontinuierlicher Daten beson
ders wichtige Informationen gewonnen werden sollen. Mögliche
weitere Anwendungen sind daher eine Kompression von Audiodaten,
Spracherkennung oder Auswertungen von Messergebnissen, die über
Datenübertragungskanäle mit einer im Verhältnis zur Datenmenge
geringen Bandbreite übertragen werden sollen.
Damit eine digitale Kamera eine Auflösung aufweist, die mit ei
ner herkömmlichen analogen Kamera vergleichbar ist, insbesonde
re bezüglich der Auflösungsreserve für nachträgliche Vergröße
rungen, sind hierbei mehr als eine Million Bildpunkte (Pixel)
je Einzelbild vorzusehen. Bei einer Datenspeicherung in einem
unkomprimierten Zustand sind hierfür zwischen 1 und 3 Byte je
Pixel erforderlich. Eine Datenreduktion ist notwendig, um ei
nerseits in dem in der Kamera befindlichen Speicher, zum Bei
spiel ein Flash Memory, möglichst viele Bilder unterzubringen
und andererseits die Übertragungsdauer je Bild, zum Beispiel in
ein elektronisches "Fotoalbum" auf der Festplatte des heimi
schen PCs, niedrig zu halten: tags Fotografieren (fordert Spei
cherkapazität), nachts - wenn die Kommunikationsgebühren nied
rig sind - Fernübertragung der Bilder nach Hause, zum Beispiel
mit einem mobilen Datenübertragungsterminal, zum Beispiel einem
Mobiltelefon.
Herkömmliche Analogkameras bieten vielfach die Möglichkeit von
Bildserien. Um hiermit konkurrieren zu können, darf eine Digi
talkamera für die Kompression eines Bildes nur einen Bruchteil
einer Sekunde benötigen (Größenordnung 5 Bilder pro Sekunde).
Zu einer Datenkompression sind verschiedene Verfahren bekannt.
Eines der eingesetzten Verfahren einer Einzelbildkompression
ist der Standard nach "JPEG" mit der Abfolge DCT, Quantisierung
(verlustbehaftet) und Huffman-Codierung. Wegen des relativ ge
ringen Rechenaufwands kann JPEG wie auch andere DCT-basierte
Verfahren gut auf Standard-Prozessoren implementiert werden.
Auch Wavelet-basierte Implementierungen auf Standard-
Prozessoren sind bekannt, wobei die Echtzeit-Bedingung für
Bildserien nicht erfüllt wird. Zum Beispiel benötigt ein Penti
um-Prozessor mit 333 MHz bei Anwendung des unten beschriebenen
Verfahrens ungefähr 1/3 Sekunde je Bild bei verlustbehafteter
Kompression um Faktoren größer 16 für ein 512 × 512-Bild mit
256 Graustufen. Für 1024 × 1024-Bilder sind es ungefähr 1,5 Se
kunden.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur
Kompression von Daten, insbesondere von Bilddaten, zu schaffen,
wobei das Verfahren mit möglichst geringem Rechenaufwand in
möglichst geringer Zeit und bei möglichst hoher Zuverlässig
keit, insbesondere mit einer möglichst hohen Wiedergabeähnlich
keit, durchgeführt werden soll.
Um hohe Kompressionsfaktoren bei gleichzeitig guter Bildquali
tät zu erzielen, kommt ein Verfahren auf der Basis von Wavelets
zum Einsatz. Die Codierung der Wavelet-Koeffizienten generiert
dabei einen sogenannten "eingebetteten Code (embedded code)",
das heißt, die Informationen werden in der Reihenfolge von
"wichtig" zu "unwichtig" codiert und übertragen, beziehungswei
se abgespeichert. Der Datenstrom kann somit jederzeit abgebro
chen werden, beziehungsweise der letzte Teil eines gespeicher
ten komprimierten Bildes einfach gelöscht werden, in der Gewiß
heit, nur Informationen zu unterdrücken, die unwichtiger sind
als die schon übertragenen, beziehungsweise im Speicher ver
bleibenden.
Es ist besonders zweckmässig, das Verfahren auf geeigneten Pro
zessoren durchzuführen. Der Begriff Prozessor ist dabei in kei
ner Weise einschränkend zu verstehen. Es kann sich hierbei um
eine beliebige zur Durchführung von Berechnungen geeignete Ein
heit handeln. Es ist möglich, dass der Prozessor aus mehreren
Einzelprozessoren besteht, die vorzugsweise zu einer geeigneten
Prozessoreinheit zusammengefasst sind. Im Sinne der vorliegen
den Erfindung kann ferner jede zur Durchführung von Berechnungen
geeignete Schaltung eingesetzt werden. Zweckmäßigerweise
wird die Schaltung in einen Computer oder in einen Logikbau
stein eingebaut.
Dabei reicht eine Variante der skalierbaren Prozessor-Architek
tur mit einem einzigen Prozessorelement (PE) aus, wobei es sich
bei dem Prozessor vorzugsweise um einen Vision Instruction Pro
zessor (VIP) handelt. Sie erlaubt die Kompression von mehreren
Bildern pro Sekunde.
Die Analyse von Wavelet-basierten Kompressionsverfahren zeigt,
dass der Rechenaufwand von der Wavelet-Transformation dominiert
wird. Dieser Engpaß wird durch die Implementierung auf dem VIP
beseitigt, da die Architektur des VIP für Algorithmen wie
1- oder 2-dimensionale Faltungen, auf denen die Wavelet-Transfor
mationen beruhen, optimiert ist.
Die eingebettete Codierung der Wavelet-Koeffizienten könnte
durch eine direkte Modellierung der statistischen Abhängigkei
ten zwischen den Wavelet-Koeffizienten erfolgen. Dazu ist eine
arithmetische Kodierung erforderlich, die jedoch eine skalare
Rechenleistung erfordert, also durch eine Parallelisierung
nicht zu beschleunigen ist. Deshalb kommen erfindungsgemäß ins
besondere solche Codierverfahren zum Einsatz, die arithmetische
Codierung benötigen.
Das Codierverfahren wird so angepasst, dass der rechenintensive
Anteil parallelisierbar und somit durch den VIP zu beschleuni
gen ist.
Vorzugsweise wird ein Wavelet-Algorithmus eingesetzt. Er zählt
zur Gruppe der "Zerotree-Verfahren" und stellt eine Variante
des von Said & Pearlman vorgeschlagenen Verfahrens dar(Artikel
Amir Said and William A. Pearlman: A new fast and efficient
image codec based on set partitioning in hierarchical trees,
IEEE Transactions on Circuits an Systems for Video Technlology,
6: 243-250, June 1996). Neu sind die Verschiebung der Berechnung
der sogenannten Signifikanzpyramide in einen Vorverarbeitungs
schritt, was besonders günstig für eine Implementierung auf dem
VIP ist, sowie ein effizientes Scanning (eine Umsortierung) der
Wavelet-Pyramide bei der Datenübertragung.
In einem ersten vorverarbeitenden Schritt werden die Bilddaten
Wavelet-transformiert:
C = W(B).
Hier sind B = {bij} die Bilddaten und C = {cij} die Koeffizienten
einer L-stufigen Wavelet-Pyramide. In Fig. 1 wird als Beispiel
eine 3-stufige Wavelet-Pyramide gezeigt. Abgebildet ist auch
die Zuordnung von Vater-Koeffizienten zu Sohn-Koeffizienten auf
niedrigeren Stufen.
Allgemein seien ε(l) alle Koeffizienten einer Stufe l. Für den
Index (i, j) eines Koeffizienten cij ∈ε(l) wird definiert:
- - Die Menge D(i, j) der Indizes aller Abkommen auf Stufen 0 ≦ k ≦ 1 - 1.
- - Die Menge O(i, j) der Indizes aller direkten Abkommen auf Stufe k = l - 1.
- - Die Menge L(i, j) der Indizes aller indirekten Abkommen auf Stufen 0 ≦ k ≦ l - 2.
Es kommt für das Erreichen hoher Kompressionsraten darauf an,
die Wavelet-Koeffizienten nach ihrer Größe zu ordnen, um mög
lichst lange Sequenzen insignifikanter Werte zu erhalten. Dabei
soll die statistische Abhängigkeit der Koeffizienten ausgenutzt
werden: ist ein Koeffizient cij insignifikant, sind es wahr
scheinlich auch seine Abkommen (mit Index in D(i, j)). Dabei bedeutet
"insignifikant": kleiner als eine Schranke θ, die
schrittweise verfeinert wird, bis die gewünschte Bitrate er
reicht ist. Insignifikante Koeffizienten werden effizient mit
tels sogenannter "Zerotrees" kodiert. cij heißt Wurzel eines
- - Typ-A-Zerotrees, wenn cij und alle Abkommen aus D(i, j) insi gnifikant sind
- - Typ-E-Zerotrees, wenn cij und alle Abkommen aus L(i, j) insi gnifikant sind.
Zur Bestimmung von Zerotrees wird ein zweiter Vorverarbeitungs
schritt ausgeführt: die Berechnung der sogenannten Signifikanz
pyramide Z, die für jede Position (i, j) einen Wert zij enthält.
Dieser besteht aus drei Teilen:
- - dem Wavelet-Koeffizienten cij
- - dem Wert aij: = max{|ckl|; (k, l) ∈D(i, j)}
- - dem Wett βij: = max{|ckl|; (k, l) ∈L(i, j)}
Führt man Hilfsgrößen γij ein, so läßt sich die Berechnung der
Werte aij und βij als Folge (nichtlinearer) Filterungen über die
verschiedenen Stufen der Wavelet-Pyramide formulieren. In pseu
do-programmiersprachlicher Notation:
Die Erstellung der Signifikanzpyramide inklusive der Berechnung
der Wavelet-Koeffizienten bildet den weitaus rechenintensivsten
Teil des gesamten Verfahrens. Sie läßt sich aber sehr effizient
auf dem VIP implementieren, wie unten noch näher ausgeführt.
Die Koeffizienten werden nach ihrer Signifikanz behandelt - es
können nur soviele berücksichtigt werden - wie die eingestellte
Bitrate erlaubt. Dabei werden die binären Darstellungen der
Koeffizienten betrachtet und zunächst nur auf ein most signifi
cant bit untersucht, das heißt solche Koeffizienten werden eru
iert, deren Betrag größer als ein vorgegebener geeigneter
Schwellwert θo: = θmax ist. Dann wird sukzessive der Schwellwert
halbiert (θt+1: = θt/2) und der Vorgang wiederholt (t = 0, 1, . . .).
Dies entspricht einer Bit für Bit schrittweise verfeinerten
Quantisierung der Wavelet-Koeffizienten und ist als Bitplane-
Technik bekannt. Wichtig für die Effizienz des Verfahrens ist
das Scanning der Koeffizienten, das einer Sortierung ent
spricht. Für jede Bitplane kommt es darauf an, möglichst en
bloc insignifikante Koeffizienten zu detektieren (solche, die
kleiner als der aktuelle Schwellwert θt sind). Zu diesem Zweck
werden folgende Listen von Knoten eingeführt, die mit dem Fort
schreiten des Verfahrens (bei zunehmender Feinheit der Quanti
sierung) zweckmäßigerweise modifiziert werden.
- - LIP, die Liste der Koeffizienten, die insignifikant, aber nicht Teil eines Zerotrees sind,
- - LZ, die Liste der Koeffizienten, die Wurzel eines Zerotrees sind und
- - LSP, die Liste der Koeffizienten, die (bereits) signifikant sind.
Folgende Abkürzungen vereinfachen die Notation:
- - Zt(ij): = true genau dann, wenn βij < θt, das heißt wenn Wurzel eines Zerotrees ist.
- - At(Zij): = true genau dann, wenn aij < θt, das heißt wenn cij Wurzel eines Typ - A - Zerotrees ist.
- - St(Zij): = true genau dann, wenn |cij| < θt, das heißt wenn cij signifikant ist.
- - P(Zij): = true genau dann, wenn cij < 0
- - Gt(Zij): = true genau dann, wenn cij < c (t)|ij, wobei
- - c(t) = {c (t)|ij}, die rekonstruierte Pyramide, in die die bis zum Zeitpunkt t übertragenen Koeffizienten eingefügt wurden.
Das gesamte Kodierverfahren besteht aus einer Vorverarbeitung,
einer Initialisierung und einer Kodierschleife:
c(0)
: = 0, t: = 0, θo
: = θmax
Initialisieren von LSP, LZ, LIP als leere Listen
für alle cij
∈ε(L)
füge (i, j) in LIP ein sowie in LZ als Wurzel eines Typ-A-Zerotrees
füge (i, j) in LIP ein sowie in LZ als Wurzel eines Typ-A-Zerotrees
Fortfahren, bis die eingestellt Bitrate erreicht ist
Sortierphase (Scanning der Signifikanzpyramide)
Verfeinerungsphase
t: = t + 1, θt: = θt-1/2.
t: = t + 1, θt: = θt-1/2.
Die Verfeinerungsphase dient einer Verfeinerung der Quantisie
rung der übertragenen Wavelet-Koeffizienten:
Für die Kodierung von n × n-Bildern ergeben Performance-
Abschätzungen folgende Werte für die Anzahl benötigter arithme
tischer Operationen:
- - Wavelet-Pyramide: 8/3 n2(kT+kH), wobei die Hälfte dieser Opera tionen auf Multiplikationen entfallen, die andere Hälfte auf Akkumulationen
- - Rest der Signifikanzpyramide: 5/2 n2
- - Kodierschleife: 8 n2/c (ohne Entropiekodierung der übertrage nen Koeffizienten)
Zweckmäßigerweise wird hier eine vorzugsweise biorthogonale Wa
velet-Transformation mit separierbaren konjugierten Spiegelfilterkernen
(Conjugate Mirror Filters) vorgenommen. Dabei sind kT
die Länge des Kerns für die Tiefpaß-Filterung, kH die Länge des
Kerns für die Hochpaß-Filterung und C der zu erreichende Kom
pressionsfaktor (entsprechend der Bitrate). Typisch sind Kerne
der Länge 7 und 9, mit denen sich für die parallelisierbare
Vorverarbeitung ein Rechenaufwand von circa 43 n2 Operationen
ergibt. Das Verhältnis von parallelisierbarem und sequentiellem
Anteil in puncto Rechenaufwand ist damit theoretisch ungefähr
wie 6 C zu 1, wenn von einer Entropie-Kodierung der zu spei
chernden Wavelet-Koeffizienten abgesehen wird.
Für die Implementierung auf dem VIP wird unterstellt, die Bild
werte seien mit 256 Graustufen gegeben (also 8-Bit-Daten), die
Kernelemente dagegen mit 16 Bit Genauigkeit. Da jedoch bei der
Berechnung der Wavelet-Transformation nach der ersten horizon
talen (oder vertikalen) Tief- und Hochpaß-Filterung nur noch
"in der Pyramide" weitergerechnet wird und diese mit 16 Bit Ge
nauigkeit darzustellen ist, sei von Anfang an eine Genauigkeit
von 16 Bit für alle Daten angenommen.
In Fig. 2 wird die Verarbeitungspipeline des VIP skizziert. Da
tenquellen des Prozessorelements (PE) sind die Speicher ISB
(image section buffer), GPM (general purpose memory) und TMP
(temporal data register), Datensenke ist eines der RER (result
register). Von dort werden die Daten in einen output buffer ge
schrieben.
Die ALU 1 des PE-Elements vermag bei der gegebenen Datengenau
igkeit von 16 Bit pro Takt je 4 Bild- und 4 Kern-Elemente aus
den Speichern ISB und GPM des VIP aufzunehmen, elementweise zu
multiplizieren, und die Ergebnisse in einem Register zu akkumu
lieren. Die Berechnung von 2 Ergebnispixeln kann zusammengefaßt
werden, und es dauert bei Kernen der Länge 7 dann 4 Takte bis
diese produziert sind. Bei Kernen der Länge 9 dauert dies 8
Takte, im Mittel also 6 Takte. 6 Takte sind für die abschlie
ßende Akkumulation der Segmente des Ergebnisregisters anzusetzen
sowie 4 Takte für den Abtransport der Ergebnispixel. Die
Kernelemente im GPM können wiederverwendet werden, der ISB er
laubt eine taktgenaue Versorgung des PE-Elements mit Bilddaten.
Demnach sind es im Mittel 16 n2 (2 × 2) Takte, um eine eindimen
sionale (1D)-Faltung abzuschließen. Für die Bandpass- und Tief
pass-Filterungeinrichtung werden also zusammen 8 n2 Takte benö
tigt. Werden zusätzlich noch beide Faltungen in der jeweils an
deren (horizontalen oder vertikalen) Richtung berücksichtigt,
ergeben sich 16 n2 Takte. Fortsetzung des Verfahrens über belie
big viele Auflösungsstufen der Pyramide hinweg bringt einen zu
sätzlichen Faktor 4/3 ins Spiel, so dass insgesamt für die Er
stellung der Wavelet-Pyramide 22 n2 Takte angesetzt werden kön
nen. Bei einer Taktrate von 200 MHz und für n = 1024 (Fotoqua
lität) ergibt sich also ein Zeitbedarf von circa 115 ms für die
Berechnung der Wavelet-Transformation.
Dazu kommt die Berechnung der Werte aij und βij der Signifikanz
pyramide nach dem oben skizzierten Schema. Die Zwischenwerte γij
werden temporär in einem Register gespeichert. Für die Berech
nung eines Werts βij werden angesetzt: 4 Takte für das Zuführen
der 4 Werte akl aus einem der beiden ISB-Speicher (im letzten
dieser Takte wird der ISB durch einen Doppelshift in die näch
ste Position gebracht, so dass eine taktgenaue Datenversorgung
des PEs sichergestellt ist) und 10 Takte zur Berechnung des
Werts βij (2"mima"-Befehle der ALU 2 mit 2 Wartetakten). Die
Berechnung eines Werts γij dauert genauso lang, da die Berech
nung von Betragswerten en passant in der ALU 1 erledigt werden
kann und keine zusätzliche Rechenzeit in Anspruch nimmt (es
wird der zweite ISB zum Einlesen der Daten benutzt). Anschlie
ßend muß in weiteren 4 Takten (mit einem ALU 2-Befehl) aij als
Maximum von βij und γij berechnet werden. Zum Runden und Ab
transportieren von aij und βij fallen jeweils noch einmal 4 Tak
te an. Insgesamt sind das 40 Takte zur Berechnung pro Tupel
(aij, βij). Im ersten Schritt des Algorithmus (1 = 1) werden lediglich
die Werte aij berechnet, das sind jeweils 18 Takte.
Für die Stufe l = 1 der Signifikanzpyramide ist damit ein Aufwand
von
Takten zu erwarten, für die Stufe l = 2 ein Aufwand
von
Takten, für l = 3 ein Aufwand von
Takten usw. Insgesamt sind das weniger als 6 n2 Takte, bei einem
auf 200 MHz getakteten PE also circa 32 ms für n = 1024.
Insgesamt ergibt sich im Beispiel ein Zeitbedarf von circa 150 ms
für die Erstellung der Signifikanzpyramide inklusive der Be
rechnung der Wavelet-Koeffizienten auf dem VIP, bei 512 × 512-
Bildern sind es entsprechend weniger als 50 ms.
Hierbei ist allerdings noch kein Overhead berücksichtigt wie
etwa Berechnungszeiten für die Parameter der Controller-
Programme, Initialisierungszeiten beim Anfahren der VIP-
Controller oder Wartezeiten für Synchronisationen der Control
ler.
In Tabelle 1 werden die Werte mit denen verglichen, die bei der
Berechnung einer 6-stufigen Signifikanzpyramide (inklusive Wa
velet-Koeffizienten) für einen Pentium-Prozessor mit 333 MHz
bei optimaler Implementierung zu erwarten sind.
Die Kodierschleife ist sequentiell abzuarbeiten und kann auf
dem VIP nicht beschleunigt implementiert werden. Die auf dem
Pentium-Prozessor gemessenen Werte für eine nicht optimale Im
plementierung ergaben die in Tabelle 2 aufgelisteten Werte. Es
sind dies die Werte für eine Kodierschleife ohne Entropiekodie
rung der übertragenen Symbole.
Um zu dokumentieren, dass das Kodier-Verfahren zweckmäßig ist,
werden schließlich in Tabelle 3 noch die PSNR-Fehlermaße für
die rekonstruierten Bilder bei verschiedenen Bitraten für das
Standard-Bild "Lenna" im Format 512 × 512 angegeben. Auch hier
wieder die Werte ohne Entropiekodierung. Mit Entropiekodierung
ist jeweils eine Verbesserung um etwa 0.5 dB zu erwarten.
Claims (4)
1. Verfahren zur Kompression von Daten, wobei eine Unter
scheidung zwischen wichtigen und weniger wichtigen Daten
erfolgt, dadurch gekennzeichnet, dass
eine Berechnung einer Signifikanz von Daten in einem sepa
raten Verfahrensschritt erfolgt.
2. Verfahren nach Ansprüch 1, dadurch
gekennzeichnet, dass eine Berechnung der
Wichtigkeit der Daten über eine Kodierung in Wavelet-
Koeffizienten erfolgt.
3. Verfahren nach Anspruch 2, dadurch
gekennzeichnet, dass eine Berechnung von Si
gnifikanzparametern der Wavelet-Koeffizienten in einem se
paraten Verfahrensschritt erfolgt.
4. Verfahren nach Anspruch 3, dadurch
gekennzeichnet, dass der separate Verfahrens
schritt in einem separaten Prozessorelement erfolgt.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10008055A DE10008055A1 (de) | 2000-02-22 | 2000-02-22 | Verfahren zur Kompression von Daten |
PCT/EP2001/001713 WO2001063934A1 (de) | 2000-02-22 | 2001-02-15 | Verfahren zur kompression von daten |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10008055A DE10008055A1 (de) | 2000-02-22 | 2000-02-22 | Verfahren zur Kompression von Daten |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10008055A1 true DE10008055A1 (de) | 2001-08-30 |
Family
ID=7631840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10008055A Ceased DE10008055A1 (de) | 2000-02-22 | 2000-02-22 | Verfahren zur Kompression von Daten |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE10008055A1 (de) |
WO (1) | WO2001063934A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10230809B4 (de) * | 2002-07-08 | 2008-09-11 | T-Mobile Deutschland Gmbh | Verfahren zur Übertragung von Audiosignalen nach dem Verfahren der priorisierenden Pixelübertragung |
DE10142953B4 (de) * | 2001-09-01 | 2010-08-05 | Harry-H. Evers | Verfahren zur Ortung mit einem mobilen Endgerät |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2503697A1 (de) * | 2011-03-22 | 2012-09-26 | Pii Limited | Verfahren und Vorrichtung zur Datenkomprimierung |
CA2988401C (en) | 2015-07-28 | 2020-04-28 | Halliburton Energy Services, Inc. | Sensor data compression for downhole telemetry applications |
CN117097810B (zh) * | 2023-10-18 | 2024-01-02 | 深圳市互盟科技股份有限公司 | 基于云计算的数据中心传输优化方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3930760A1 (de) * | 1989-09-14 | 1991-03-28 | Bosch Gmbh Robert | Transformationscodierungssystem |
DE19819405A1 (de) * | 1997-05-01 | 1998-11-26 | Ricoh Kk | Implementation eines reversiblen eingebetteten Wavelet-Systems |
EP0680643B1 (de) * | 1993-01-22 | 1999-11-17 | Sarnoff Corporation | Geraet und verfahren zur datenkompression |
-
2000
- 2000-02-22 DE DE10008055A patent/DE10008055A1/de not_active Ceased
-
2001
- 2001-02-15 WO PCT/EP2001/001713 patent/WO2001063934A1/de not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3930760A1 (de) * | 1989-09-14 | 1991-03-28 | Bosch Gmbh Robert | Transformationscodierungssystem |
EP0680643B1 (de) * | 1993-01-22 | 1999-11-17 | Sarnoff Corporation | Geraet und verfahren zur datenkompression |
DE19819405A1 (de) * | 1997-05-01 | 1998-11-26 | Ricoh Kk | Implementation eines reversiblen eingebetteten Wavelet-Systems |
Non-Patent Citations (7)
Title |
---|
AMIR S., PEARLMAN W.: "A New Fast and Efficient Image Codec based on Set Patritioning in Hircharchical Trees", IEEE Transaction on Circuitsand Systems vor Video Technology, 6, Juni 1996, * |
BRANDT A.: Teilbandcodierung von Bewegtbild- Sequenzen mit 2 Mbit/s. in: Frequenz 40 (1986) 8, S. 190-197 * |
JP 10-3 02 052 A, Patent abstracts of Japan, 1999,JPO * |
JP 11-0 32 334 A, Patent abstracts of Japan, 1999,JPO * |
SIETMANN R.: Komprimierung mit Wavelet, in: Funkschau, 16, 1998, S. 60-63 * |
SIMMERT O., THIERSCHMANN M., RÖSEL R.: Prioritätscodiertes Verfahren zur Datenkomprimierung, in: IK Berlin 47 (1997) 2, S. 39-42 * |
STRUTZ T., SCHWARZ H., MÜLLER E.: Bildcodierung durch hierarchische Prädikation im Wavelet- Bereich, in: Frequenz 51 (1997) 3-4, S. 106-115 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10142953B4 (de) * | 2001-09-01 | 2010-08-05 | Harry-H. Evers | Verfahren zur Ortung mit einem mobilen Endgerät |
DE10230809B4 (de) * | 2002-07-08 | 2008-09-11 | T-Mobile Deutschland Gmbh | Verfahren zur Übertragung von Audiosignalen nach dem Verfahren der priorisierenden Pixelübertragung |
Also Published As
Publication number | Publication date |
---|---|
WO2001063934A1 (de) | 2001-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69722601T2 (de) | Datenkompression mit hybrider verlustloser entropiekodierung von run-length codes | |
DE69930886T2 (de) | Datenverarbeitungsgerät und -verfahren sowie Speichermedium | |
DE69620963T2 (de) | Verfahren und Vorrichtung zur Bilddatenkomprimierung | |
DE4034535C2 (de) | Vorrichtung und Verfahren zur Codierung von Bilddaten, sowie hiermit ausgestattete elektronische Stehbildkamera | |
DE19626615C2 (de) | Verfahren und Apparat zur Kompression, das bzw. der reversible Wavelet-Transformationen und einen eingebetteten Kodestrom verwendet | |
DE69633129T2 (de) | Waveletbaum-bildcoder mit überlappenden bildblöcken | |
DE19983253B4 (de) | Die Kompression von Farbbildern auf der Grundlage einer zweidimensionalen diskreten Wavelet-Transformation, die ein scheinbar verlustloses Bild hervorbringt | |
DE19626600C2 (de) | Kodierer und Verfahren zum Kodieren | |
DE69836432T2 (de) | Bildcoder und -decoder | |
DE69434862T2 (de) | Segmentierungs-basiertes entfernen von artefakten aus einem jpeg-bild | |
DE69929430T2 (de) | Verfahren und vorrichtung zur codierung von video-information | |
DE69738264T2 (de) | Videokodierungs- und Videodekodierungsvorrichtung | |
DE69421690T2 (de) | Geraet und verfahren zur datenkompression | |
DE69836696T2 (de) | Verfahren und vorrichtung zur durchführung einer hierarchischen bewegungsschätzung unter verwendung einer nicht-linearen pyramide | |
DE19758761B4 (de) | Verfahren zum Intrakodieren eines von einer Pixelmatrix gebildeten Bildes | |
DE69330620T2 (de) | Verfahren und Einrichtung zur Bildkodierung | |
DE69614675T2 (de) | MPEG-2 Dekodierung mit reduziertem RAM Bedürfnis durch ADPCM Rekomprimierung vor der Speicherung von dekomprimierten MPEG-2 Daten, wahlweise nach einem Unterabtastungsalgorithmus | |
DE19919600A1 (de) | Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist | |
DE19534730A1 (de) | Verfahren zum Codieren und Decodieren von Daten | |
DE19634600A1 (de) | Bildsignalkodiervorrichtung und zugehöriges Verfahren | |
DE69421795T2 (de) | Vorrichtung und verfahren zur kodierung von bildern | |
DE102010030973B4 (de) | Videocodierer und Verfahren zum Decodieren einer Sequenz von Bildern | |
DE102018122297A1 (de) | Verfahren zur Kompression und Dekompression von Bilddaten | |
EP1472888B1 (de) | Kontextsensitive kodierung und dekodierung eines videodatenstroms | |
DE4408522C2 (de) | Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |