DE19641157A1 - Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung - Google Patents

Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung

Info

Publication number
DE19641157A1
DE19641157A1 DE19641157A DE19641157A DE19641157A1 DE 19641157 A1 DE19641157 A1 DE 19641157A1 DE 19641157 A DE19641157 A DE 19641157A DE 19641157 A DE19641157 A DE 19641157A DE 19641157 A1 DE19641157 A1 DE 19641157A1
Authority
DE
Germany
Prior art keywords
matrix
transformation
blocks
domain
range
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
DE19641157A
Other languages
English (en)
Inventor
Gerhard Prof Dr Ing Dickopp
Peter Dipl Ing Siepen
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.)
Deutsche Thomson Brandt GmbH
Original Assignee
Deutsche Thomson Brandt 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 Deutsche Thomson Brandt GmbH filed Critical Deutsche Thomson Brandt GmbH
Priority to DE19641157A priority Critical patent/DE19641157A1/de
Priority to EP97116708A priority patent/EP0834833A3/de
Priority to US08/938,090 priority patent/US5978516A/en
Priority to JP9271412A priority patent/JPH10155092A/ja
Priority to CN97120087.4A priority patent/CN1183598A/zh
Publication of DE19641157A1 publication Critical patent/DE19641157A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Description

Die Erfindung betrifft ein Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung.
Stand der Technik
Die Erfindung geht aus von einem Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung nach der Gattung des unabhängigen Anspruchs 1. Es ist schon ein Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung aus dem Artikel von P. Siepen und Prof. G. Dickopp "Zur Konvergenz bei der fraktalen Bildcodierung", Proceedings of the 6. Dortmunder Fernsehseminar, p.p. 133 bis 138, Oktober 1995, bekannt. Darin wird vorgeschlagen, die hochdimensionale Transformationsmatrix nach einem vorgeschlagenen Reduktionsverfahren in ihrer Dimension zu reduzieren und statt der originalen Transformationsmatrix die reduzierte Transformationsmatrix auf Konvergenz zu überprüfen. Aus der Mathematik ergibt sich, daß zur Überprüfung der Konvergenz der Transformationsmatrix oder in diesem Fall der reduzierten Transformationsmatrix die Eigenwerte der zu überprüfenden Matrix ermittelt werden müssen. Konvergenz liegt dann vor, wenn alle Eigenwerte der zu überprüfenden Matrix innerhalb des Einheitskreises der komplexen Ebene liegen. Die Berechnung der Eigenwerte der reduzierten Matrix führt immer noch zu einem immensen Rechenaufwand, da die reduzierte Matrix immer noch sehr hochdimensional ist.
Erfindung
Es ist Aufgabe der Erfindung, das Verfahren zur Überprüfung auf Konvergenz bei der fraktalen Bildcodierung weiter zu vereinfachen, so daß die Berechnung der Eigenwerte zumindest näherungsweise mit deutlich weniger Rechenaufwand möglich wird.
Das erfindungsgemäße Konvergenzüberprüfungsverfahren hat den Vorteil, daß quasi ein hierarchisches Konvergenzüberprüfungsverfahren geschaffen ist, mit dem es relativ einfach möglich ist, die betragsmäßig größten Eigenwerte der zu überprüfenden Transformationsmatrix mit gewünschter Genauigkeit abzuschätzen. In einem ersten Schritt entsprechend Anspruch 1 wird die Zeilensummennorm der reduzierten Matrix überprüft. Dadurch wird schon eine erste Aussage getroffen, welche Domainblöcke bzw. die darin enthaltenen Rangeblöcke für einen zu großen Eigenwert wesentlich verantwortlich sind.
Will man eine genauere Aussage über die Größe der größten Eigenwerte erhalten, so sind in den Ansprüchen 2 bis 5 weitere Maßnahmen angegeben, die eine genauere Abschätzung der größten Eigenwerte ermöglichen. Dabei ist aber zu berücksichtigen, daß jede zusätzliche Maßnahme den Rechenaufwand in die Höhe treibt. Die Entscheidung, wie genau die größten Eigenwerte bestimmt werden sollen, kann je nach zur Verfügung stehender Rechenleistung sowie je nach Anwendung flexibel gewählt werden. Da bei den zusätzlichen Überprüfungsschritten immer größere Untermatrizen der reduzierten Transformationsmatrix auf ihre größten Eigenwerte hin überprüft werden, wird schließlich auch die Lokalisierung der für die Divergenz hauptsächlich verantwortlichen Rangeblöcke immer schlechter. Deshalb empfiehlt es sich, die größten Eigenwerte nur mit bestimmter Genauigkeit zu berechnen und bei relativ großen Eigenwerten eine neue Zuordnung von Domainblöcken zu Rangeblöcken zu wählen bzw. die Transformationsparameter für die Abbildung von Domainblöcken auf die betroffenen Rangeblöcke anzupassen und so Konvergenz der Transformationsmatrix zu erreichen.
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden in der nachfolgenden Beschreibung näher erläutert.
Es zeigen:
Fig. 1 die Häufigkeitsverteilung der Transformationskoeffizienten a für ein codiertes Bild;
Fig. 2 eine Darstellung eines zu codierenden Bildes mit dargestellten Rangeblöcken und einigen Domainblöcken;
Fig. 3 eine vorteilhafte Einteilung eines zu codierenden Bildes in Rangeblöcke und zugehörige Domainblöcke;
Fig. 4 ein grobes Blockschaltbild für eine Codiervorrichtung zur fraktalen Bildcodierung und
Fig. 5 ein Ablaufdiagramm für ein Verfahren zur Konvergenzkontrolle.
Beschreibung der Erfindung
Nachfolgend wird zuerst die mathematische Theorie, die hinter dem erfindungsgemäßen Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung steht, detailliert erläutert. Eine gute Einführung zu dem Thema der fraktalen Bildcodierung ist in dem Artikel von A. E. Jacquin, "Image coding based on fractal theory of iterated contractive image transformations", IEEE Trans. on image processing Vol. 1, pp. 18-30, Januar 1992, gegeben.
Bei der fraktalen Bildcodierung wird ein Originalbild in nicht überlappende sogenannte Rangeblöcke eingeteilt. Außerdem wird das Bild in eine Anzahl von größeren Domainblöcken eingeteilt. Dabei ist es bei den Domainblöcken erlaubt, daß diese gegenseitig überlappen dürfen. Die Anzahl der Bildelemente (Pixels) der Domainblöcke ist Ns-mal größer als die Anzahl von Pixeln der Rangeblöcke. Fig. 2 zeigt beispielhaft ein quadratisches Bild mit einer Einteilung des Bildes in Rangeblöcke 10 sowie einige wenige Domainblöcke 11, 12 und 13, die gestrichelt dargestellt sind. Die Bildelemente (Pixels) sind mit der Bezugszahl 14 versehen.
Während des Codiervorgangs sucht die Encodiervorrichtung nach geeigneten Domainblöcken Dk für jeden Rangeblock Ri. Der geeignete Domainblock wird dann, wenn nötig, transformiert mit der Transformation τi so daß der transformierte Domainblock Dk eine möglichst gute Näherung für den zugehörigen Rangeblock Ri ist:
τi(Dk) = 1i[gi(Dk)] = i ≈ Ri [1]
Die Transformation τi besteht aus einem geometrischen Anteil gi und einem Luminanztransformationsanteil li. Die geometrische Transformation gi reduziert die Größe des Domainblocks Dk auf die Größe des Rangeblocks Ri und kann zusätzlich eine geometrische Manipulation der Art einer Verschiebung bewirken. Die Luminanztransformation li führt eine affine Transformation der Luminanzwerte L des Domainblocks durch:
L' = a . L + b [2].
Wenn jeder einzelne approximierte Rangeblock i des Bildes durch eine Transformation eines Domainblocks dargestellt werden kann, dann handelt es sich um eine Transformation für das komplette zu codierende Bild. Es wird daher eine Transformation W definiert, die das komplette Bild in ein anderes Bild transformiert, wobei KR die Anzahl der Rangeblöcke angibt:
Wenn W eine kontraktive Transformation ist, kann eine Decodiervorrichtung einen sogenannten Fixpunkt konstruieren, und zwar gänzlich aufgrund der Kenntnis von der Transformation W. Der Fixpunkt ist praktisch das decodierte Bild. Das ist aufgrund des Banach'schen Fixpunkt-Theorems sichergestellt. Dieses Theorem gibt an, daß die Sequenz der Iterationen {xk} mit xk+1 = W(xk) für alle beliebigen Anfangsbilder x0 zu dem einen Fixpunkt xf von W konvergiert.
Im allgemeinen ist es möglich nur eine Transformation W zu finden, die einen Fixpunkt xf aufweist, der eine gute Näherung des Originalbildes x ist. Aber für einen vorgegebenen Näherungsfehler d(x,W(x)) gibt das sogenannte Collage-Theorem eine obere Grenze für den rekonstruierten Fehler d(x, xf).
Es ist die Aufgabe der Encodiervorrichtung, diejenige Transformation W zu finden, die den Näherungsfehler möglichst minimiert. Wenn diese gefundene Transformation W durch weniger Bits dargestellt werden kann als das zu codierende Bild selbst, ist das Ziel der Datenkompression erreicht. Deshalb wird die Transformation W auch als fraktaler Code bezeichnet. Aufgrund der Tatsache, daß ein Rangeblock und dessen korrespondierender Domainblock gewöhnlicherweise in verschiedenen Teilen des Bildes lokalisiert sind, wird im Gegensatz zu DCT-basierten Codierungsverfahren in der fraktalen Codierung die Korrelation zwischen voneinander entfernt liegenden Bildteilen zur Redundanzreduktion ausgenutzt. Diese Korrelation zwischen voneinander entfernt liegenden Bildteilen wird auch als Selbstähnlichkeit bezeichnet. Die wichtigste Frage bezüglich der Transformation W ist, ob W eine kontraktive Transformation ist oder nicht. In vielen praktischen Codierungsschemata wird das Kontraktivitätskriterium angewendet, das die Größe aller Transformationskoeffizienten (Parameter) ai der einzelnen Transformationen τi die Bedingung ai < 1 erfüllen müssen. Es hat sich jedoch gezeigt, daß, läßt man auch Werte von ai < 1 zu, das decodierte Bild eine höhere Qualität aufweist.
Läßt man beispielsweise für die Transformationskoef­ fizienten bei der Luminanztransformation Werte im Intervall von 0 bis 2 zu, so zeigt Bild 1 eine mögliche Verteilung der Koeffizienten ai für ein gewöhnliches Beispielbild. An diesem Bild ist deutlich erkennbar, daß eine große Anzahl von Koeffizienten Werte größer als 1 aufweist. Somit wird deutliche, daß eine Beschränkung der Koeffizienten ai zu Werten unterhalb 1 in einer großen Anzahl von nicht optimalen Teiltransformationen τi führt. Somit wird dadurch aber auch die Qualität des rekonstruierten Bildes verschlechtert. Es sollten daher möglichst auch Transformationen τi zugelassen werden mit Koeffizienten ai < 1 um eine höhere Qualität des rekonstruierten Bildes zu erreichen. Wenn dies gemacht wird, müssen jedoch verstärkte Anstrengungen unternommen werden, um die Konvergenz der Transformation auf der Decoderseite sicherzustellen. Es wird also ein geeignetes Konvergenzkriterium gesucht, mit dem die Kontraktivität der Transformation W einfach und schnell überprüft werden kann.
Ein Bild, bestehend aus R.C Bildelementen wird nachfolgend als ein Vektor in einem N = RC-dimensionalen Raum angesehen:
x = (x1, x2,. . ., xM ) T [4]
Mit dem Originalbild, dargestellt durch einen Vektor, kann dann die Transformation W als affine Transformation geschrieben werden:
= W(x) = A . z + b [5]
In der Sprache dieser Gleichung kann die Matrix A zusammen mit dem Vektor b als eine andere Repräsentation des fraktalen Codes angesehen werden. Wenn die Sequenz der Bilder {zk} ausgedrückt durch die Formel
xk+1 = A . xk + b [6]
zu einem Fixpunkt xf konvergiert, dann kann xf als das decodierte Bild angesehen werden.
Nachfolgend wird ein Kontraktivitätskriterium für die Matrix A entwickelt.
Eine notwendige und hinreichende Bedingung dafür, daß die Gleichung [6] konvergiert ist, das alle Eigenwerte λi von A innerhalb des Einheitskreises der komplexen Ebene liegen:
Die Berechnung der größten Eigenwerte direkt von dieser N×N Matrix A ist in einem geeigneten Zeitrahmen praktisch unmöglich, da N die Anzahl der Pixels des Originalbildes darstellt, und deshalb die Matrix eine gewaltige Größe besitzt, z. B. bei einem Fernsehbild nach dem PAL-Standard würde sich eine Größe von 720 . 576 = 414.720-dimensionale Matrix ergeben. Mit folgenden beiden Methoden kann das Problem gelöst werden:
Man kann entweder anhand von allgemeinen Überlegungen Regeln für die Parameter (Koeffizienten) der affinen Transformation [2] bestimmen, oder die Matrix A so zu einer kleineren Matrix reduzieren, daß sie weiterhin den betragsgrößten Eigenwert λmax enthält. Bei der ersten Methode werden vielfach sehr strenge Einschränkungen bezüglich des zu erlaubenden fraktalen Codierschemas gemacht. Zum Beispiel führt das gerade eben zu der Einschränkung, daß die Koeffizienten ai die Bedingung erfüllen müssen ai < 1. Dies kann abgeleitet werden aus der Tatsache, daß die Norm
der Matrix A eine obere Grenze für seine Eigenwerte ist.
Als nächstes wird genauer auf die Struktur der Matrix A eingegangen. Um zu dem gewünschten Reduktionsverfahren zu gelangen, muß die Struktur der Matrix A näher erläutert werden. Dabei müssen auch einige Restriktionen für das zugrundezulegende fraktale Codierschema gemacht werden. Aber diese Restriktionen sind weniger restriktiv als diejenigen, die bei der zuerst erwähnten Methode erforderlich wären. Beispielsweise kann das Reduktionsverfahren, was hier erläutert werden wird, auch bei fraktalen Codierschemata benutzt werden, die auch ein Überlappen der Domainblöcke gestatten.
Die KS verschiedenen und linear unabhängigen Vektoren si beschreiben die Abbildung von NS verschiedenen Pixel eines Domainblocks auf ein Pixel eines Rangeblocks:
Die si werden als Skalierungsblöcke bezeichnet und die Zeilenvektoren von A bestehen aus diesen Vektoren si multipliziert mit einem Faktor. Die KR verschiedenen und linear unabhängigen Vektoren ri beschreiben die Rangeblöcke bestehend aus NR Bildelementen:
Die Vektoren ri können daher als Summe von MR verschiedenen Vektoren si beschrieben werden, wobei MR die Anzahl der Skalierungsblöcke pro Rangeblock angibt. Die KD verschiedenen und linear unabhängigen Vektoren di beschreiben die Domainblöcke bestehend aus ND Bildelementen. Die Domainblöcke wiederum können beschrieben werden als eine Summe von NS Rangeblöcken:
Wenn man dies berücksichtigt, kann die Matrix A ausgedrückt werden als eine Kombination von KR verschiedenen NR×N Untermatrizen Ri. Jede dieser Matrizen Ri beschreibt die Abbildung eines Domainblockes auf einen Rangeblock.
Die KD verschiedenen Matrizen Di bestehen aus NR verschiedenen Vektoren si. Die Summe dieser Vektoren ergibt einen Vektor di. Somit ergeben alle Skalierungsblöcke eines Domainblockes zusammen einen Domainblock:
Die xk,j aus der Gleichung [12] müssen die folgenden Bedingungen erfüllen, wenn ein fraktales Codierschema mit mR ≧ 2 betrachtet wird:
Diese Formel beschränkt die Anordnung der Skalierungsblöcke innerhalb eines Domainblockes.
Die Struktur der Matrix A führt zu einigen Einschränkungen bezüglich der Wahl von Range- und Domainblöcken. Aufgrund der Gleichung [9] wird gefordert, daß nur Rangeblöcke mit einer konstanten Größe erlaubt sind. Aus den Gleichungen [10] und [11] folgt, daß überlappende Domainblöcke erlaubt sind, jedoch mit der Einschränkung, daß die überlappenden Gebiete von 2 benachbarten Domainblöcken jeweils das n-fache der Größe eines Rangeblockes betragen müssen mit n ∈ der natürlichen Zahlen. Die geometrischen Transformationen (Isometrien) in Gleichung [1] sind beschränkt durch die Gleichung [13].
Die im Vorhergehenden beschriebene Matrix A hat eine große Anzahl von Eigenwerten λi = 0 und nur eine geringe Anzahl von Eigenwerten mit λi ≠ 0. Es ist daher sinnvoll, ein Reduktionsverfahren zu entwickeln, das die Dimension der Matrix A reduziert ohne die Eigenwerte λi ≠ 0 zu verändern. Ein derartiges Reduktionsverfahren wird nachfolgend näher erläutert.
Zuerst wird ein allgemeines Reduktionsverfahren entwickelt. Deshalb wird zuerst von einer N×N Matrix C ausgegangen. Wenn wir die Ähnlichkeitstransformation
C' = T . C . T-1 [14]
mit einer nicht-singulären Matrix T auf die Matrix C anwenden, dann wird die resultierende Matrix C' dasselbe charakteristische Polynom haben wie die Matrix C. Damit sind dann aber auch die Eigenwerte von C und C' identisch. Diese Eigenschaft einer Ähnlichkeitstransformation kann ausgenutzt werden, um die Dimension der Matrix zu reduzieren ohne daß die Eigenwerte λi ≠ 0 beeinflußt werden. Die Transformationsmatrix T besteht aus N linear unabhängigen Zeilenvektoren ti:
T = (t1, . . ., ti, . . ., tN)T with ti = (ti,1, . . ., ti,j, . . ., ti,N)T [15]
Alternativ besteht die Matrix T aus N linear unabhängigen Spaltenvektoren ui:
T = (u1, . . ., uj, . . ., uN) with uj = (t1,j, . . ., ti,j, . . . , tN,j)T [16]
T ist eine nicht-singuläre Matrix und die inverse Matrix T-1 existiert mit:
Wenn man jetzt die N×N Matrix C der speziellen Form:
C = (c1.tk(1), . . ., ci.tk(i), . . ., cN.tk(N) T mit k(i) ε {1, . . .M} und M < N [18]
betrachtet, wobei k(i) den Index des Zeilenvektors der Transformationsmatrix T angibt, kann das Produkt der Matrizen C und T-1 geschrieben werden als:
C.T-1 = (y1, . . ., yi, . . ., yN) [19]
Es ist zu beachten, daß nur die ersten M Zeilenvektoren von der Matrix T benutzt werden. Von Gleichung [17] wird für die yi erhalten:
Somit erhält man für die Matrix C' resultierend aus der Ähnlichkeitstransformation nach Gleichung [14], daß sie in Termen von ihren Spaltenvektoren geschrieben werden kann:
C' = T.C.T-1 = (c'1, . . ., c'j, . . ., c'N) with c'j = (c'1,j, . . ., c'i,j, . . ., c'N,j) T [21]
Von Gleichungen [18] und [20] folgt:
c'j = 0 mit j < M [22]
Für die Spaltenvektoren c'j von C' mit j ≦ M ist das Ergebnis:
Damit kann C' in der folgenden Form geschrieben werden:
Und das charakteristische Polynom von C' ergibt sich zu
det(C - λ.I) = det(C'red - λ.I).λN-M = 0 [25]
Damit zeigt sich, daß die reduzierte M×M Matrix C'red alle Eigenwerte λi ≠ 0 besitzt wie die Originalmatrix C.
Im nachfolgenden Abschnitt wird das allgemeine Reduktionsschema angewendet auf die Matrix A0 = A aus Gleichung [10]. A0 besteht aus N Zeilenvektoren:
Die korrespondierende Transformationsmatrix T wird so gewählt, daß die ersten KS Zeilen aus den verschiedenen linear unabhängigen Vektoren si bestehen. Die verbleibenden N - KS Zeilen von T sind beliebige Zeilenvektoren wi, die sicherstellen, daß die resultierende Transformationsmatrix eine nicht singuläre Matrix ist:
T = (s1, . . ., sKs, w1, . . ., wN-Ks)T [27]
Wendet man das vorhergehend beschriebene allgemeine Reduktionsschema an, erhält man eine KS×KS Matrix A1:
A1 = (αi,j) with i,j ε {1, . . ., KS [28]
Die Elemente αi,j haben die folgende Struktur:
Die Matrix A1, resultierend aus dem allgemeinen Reduktionsschema, angewendet auf die Matrix A0 kann als der lineare Teil der affinen Transformation nach Gleichung [5] interpretiert werden mit einem um den Faktor NS unterabgetasteten Bild. Wenn man das allgemeine Reduktionsschema (mR = logNs)-fach auf die Matrix A0 anwendet, erhält man die KR×KR Matrix A' = AmR als Resultat des ersten Reduktionsschrittes.
Nachfolgend wird der zweite Reduktionsschritt beschrieben.
Die Matrix A', erhalten nach dem ersten Reduktionsschritt, hat ein einfachere Struktur verglichen zu der Originalmatrix A0. Für diese reduzierte Matrix können ebenfalls Vektoren angegeben werden, die die Range- und Domainblöcke beschreiben. Die KR verschiedenen linear unabhängigen ri sind von der folgenden Form:
Die KD verschiedenen linear unabhängigen di können als Summe von NS verschiedenen ri geschrieben werden:
Damit kann dann die Matrix A' geschrieben werden als:
A'=(αi.f,, . . ., αi.fi, . . ., αKR.fKR)T with fi ε {d1, . . ., dKD} [32]
Die Transformationsmatrix T', die in dem allgemeinen Reduktionsschema benutzt wird, besteht aus den linear unabhängigen Vektoren di und einigen Vektoren wi. Die Vektoren wi sind beliebige Vektoren. Die einzige Bedingung, die die Vektoren wi erfüllen müssen, ist, daß die resultierende Matrix T' nicht singulär ist.
T' = (d1, . . ., dKD, w1, . . ., wKA-KD)T [33]
Die Anwendung des allgemeinen Reduktionsschemas führt zu der KD×KD Matrix A":
A'' = (αi,j) with i,j = 1, . . ., KD [34]
mit den folgenden Elementen
Damit ergibt sich, daß das hier vorgestellte Reduktionsschema von der Originalen N×N Matrix A zu der reduzierten ND×ND Matrix A'' führt, die ebenfalls alle Eigenwerte λi ≠ 0 der Matrix A besitzt, wobei N die Anzahl der Bildelemente des Originalbildes ist und ND die Anzahl der Domainblöcke angibt.
Im nachhinein betrachtet mit den Ergebnissen der vorhergehenden Abschnitte drängt sich ein Weg auf, um die Konvergenz der Originalmatrix A zu überprüfen, bei dem zuerst die Originalmatrix A aufgestellt wird und dann das vorhergehend beschriebene Reduktionsschema angewendet wird, um die reduzierte Matrix A'' zu erhalten. Aber aufgrund der großen Dimension der Originalmatrix A kann trotzdem noch ein sehr hoher Rechenaufwand für die Bestimmung der Eigenwerte der reduzierten Matrix nötig sein.
Wenn man die Einträge der resultierenden Matrix A'' näher betrachtet, wird deutlich, daß diese Matrix aufgestellt werden kann ohne zuerst die Originalmatrix aufstellen zu müssen. Die folgenden Regeln können angewendet werden, um die reduzierte Matrix A'' aufzustellen:
  • - Die Dimension der reduzierten Matrix A'' ist gleich der Anzahl der Domainblöcke ND des fraktalen Codierschemas.
  • - Die Einträge αi,j der reduzierten Matrix A'' bestehen aus der Summe der Faktoren ak, die die Abbildung des j-ten Domainblockes auf Rangeblöcke, die innerhalb des i-ten Domainblockes liegen, beschreiben.
Mit diesen Regeln ergibt sich ein einfacheres Schema, um die resultierende Matrix A'' zu erzeugen. Aufgrund der drastisch reduzierten Dimension der reduzierten Matrix ist es natürlich viel einfacher, die reduzierte Matrix auszuwerten als die Originalmatrix A. Da die reduzierte Matrix A'' ebenfalls alle Eigenwerte λi ≠ 0 der Originalmatrix A besitzt, kann die reduzierte Matrix A'' anstelle der Originalmatrix A benutzt werden, um die Kontraktivität zu überprüfen.
Obwohl eine drastische Reduzierung des Rechenaufwandes für die Konvergenzkontrolle erreicht ist, kann immer noch ein hoher Aufwand für die Eigenwerteberechnung der reduzierten Matrix A'' erforderlich sein. Ein weiterer Nachteil ist, daß die Berechnung der größten Eigenwerte lediglich eine Information darüber liefert, ob das fraktale Codierschema konvergent ist oder nicht. Man erhält aber keine Information darüber, welcher Rangeblock das Konvergenzproblem verursacht.
Um diese Nachteile zu überwinden, wird nachfolgend ein hierarchisches Konvergenzkontrollverfahren vorgestellt. Mit diesem Schema ist es dann möglich, eine einfache Überprüfung der größten Eigenwerte vorzunehmen, die eine obere Grenze für die größten Eigenwerte angibt. Diese obere Grenze kann Schritt für Schritt genauer berechnet werden. Zu berücksichtigen ist aber, daß durch jeden zusätzlichen Schritt ein erhöhter Rechenaufwand erforderlich wird. Zusätzlich wird aber die Information erhalten, mit der diejenigen Rangeblöcke lokalisiert werden können, die das Konvergenzproblem verursachen.
Das Verfahren wird nachfolgend näher beschrieben. In diesem Abschnitt wird eine n×n Matrix A betrachtet, die bereits eine reduzierte Matrix darstellt.
Nach dem Theorem von Gershgorin existieren n Scheiben in der komplexen Ebene, wobei jede davon zentriert ist um ein Diagonalelement ai,i von A und den folgenden Radius aufweist:
Das Theorem gibt an, daß alle Eigenwerte der Matrix A innerhalb der Vereinigungsmenge dieser n Scheiben liegen.
Wenn man die Matrix A auf die folgende Weise modifiziert, erhält man die modifizierte Matrix Ã
mit
und
Durch diese Modifikation wird das fraktale Codierschema in zwei separate Teile aufgeteilt. Diese Teile sind die Domainblöcke 1, . . ., m und die Domainblöcke m+1, . . ., n. Durch diese Operation bewegen sich die Mittelpunkte der Gershgorin-Scheiben in die äußeren Regionen der komplexen Ebene und ihre Radien schrumpfen. Zusammen mit
ist es plausibel, daß die Eigenwerte der Matrix à kritischer sind als die der Matrix A.
Die Eigenwerte der zwei Untermatrizen
und
können unabhängig voneinander berechnet werden.
Weil die Eigenwerte einer Matrix nicht verändert werden, wenn zwei Reihen k und 1 mit den Spalten k und 1 vertauscht werden, ist es möglich
verschiedene Matrizen B1 aufzustellen. Wenn alle Eigenwerte von diesen verschiedenen Matrizen B1 das Kontraktivitätskriterium erfüllen, dann erfüllt die komplette Matrix A dieses Kriterium ebenfalls.
Wenn m klein ist, wird die Überprüfung des Kontraktivitäts­ kriteriums nur grob durchgeführt und die Abschätzung für die größten Eigenwerte gibt eine grobe obere Grenze an. Je größer der Wert m ist, um so besser wird die Abschätzung für die größten Eigenwerte. Der Rechenaufwand steigt natürlich je größer der Wert m wird. Mit m=1 entspricht das Konvergenzkriterium der Zeilennorm der Matrix A:
Die Ergebnisse der vorhergehenden Abschnitte können dazu benutzt werden um das folgende herarchiesche Konvergenzkontrollschema anzugeben:
Zuerst wird die Zeilennorm (m=1) überprüft. Dies wird dadurch gemacht, daß alle Kontrastfaktoren a von allen Rangeblöcken, die innerhalb eines Domainblocks liegen, aufsummiert werden. Das ist äquivalent mit der Zeilensumme der Matrix A. Wenn diese Summe kleiner als NS ist, ist das Konvergenzkriterium für diesen Domainblock automatisch erfüllt. Das muß für jeden Domainblock überprüft werden. Wenn das Konvergenzkriterium für ein Domainblock nicht erfüllt wird, können entweder die Transformationskoeffizienten der Rangeblöcke, die innerhalb des Domainblocks liegen angepaßt werden oder es wird mit dem zweiten Schritt fortgefahren der nachfolgend erläutert wird.
Jede (m-1)×(m-1) Matrix B1, die das Konvergenzkriterium nicht erfüllt, wird dann kombiniert mit jeder Zeile der verbleibenden n-m+1 Zeilen der Matrix A. Auf diese Weise werden n-m+1 verschiedene Matrizen B'1 der Dimension m erhalten. Es müssen dann all diese Matrizen separat überprüft werden. Wenn einige dieser Matrizen ebenfalls nicht das Konvergenzkriterium erfüllen, werden entweder die Transformationskoeffizienten angepaßt oder es werden die nächst größeren Matrizen mit dieser Matrix aufgestellt und es wird überprüft, ob diese Matrizen das Kriterium erfüllen. Da der Rechenaufwand mit jeder zusätzlichen Dimension der zu überprüfenden Matrix schnell ansteigt, ist es sinnvoll, ein Schema zu verwenden bei dem ab einem bestimmten Dimensionswert m eine Anpassung der Transformationskoeffizienten von allen Rangeblöcken, die innerhalb des kritischen Domainblocks liegen vorgenommen wird. Der Anwender kann mit dem hier vorgestellten Schema flexibel entscheiden wieviel Rechenaufwand er für die Konvergenzkontrolle spendieren will.
Nachfolgend wird das Konvergenzkontrollverfahren anhand der Abb. 3 bis 5 näher erläutert. In Fig. 3 ist im oberen Teil der Figur die Einteilung eines zu codierenden Originalbildes in Rangeblöcke Ri, Ri+1, . . . dargestellt. Es ist nur ein kleines Bild als Beispiel angenommen worden, das quadratisches Format aufweist und in 16 Rangeblöcke eingeteilt ist. Weiterhin sind in Fig. 3 zwei Domainblöcke Dj und Dk dargestellt. Es ist deutlich erkennbar das beide Domainblöcke Dj und Dk sich gegenseitig überlappen. Die Aufteilung des Bildes in Domainblöcke ist dabei an die Bedingung geknöpft, das erstens die Domainblöcke die vierfache Größe von Rangeblöcken aufweisen müssen und zweitens das die Position der Domainblöcke immer nur so gewählt werden darf, daß ein Domainblock vier vollständige Rangeblöcke beinhaltet. Mit diesen Einschränkungen sind sieben Domainblöcke in dem dargestellten Bild in Fig. 3 aufstellbar. In Fig. 3 ist auf der rechten Seite des Bildes das rekonstruierte Bild dargestellt. Dieses ist ebenfalls wieder in Rangeblöcke R'i, Ri+1, etc. Durch Pfeile ist angedeutet, daß der Domainblock Dj den Rangeblock R'i abbildet und der Domainblock Dk den Rangeblock R'i+1 abbildet. Im unteren Teil der Fig. 3 ist die Transformation eines Domainblocks Dj schematisch dargestellt. In einem ersten Schritt, angedeutet durch den ersten Übergangspfeil wird die Größe des Domainblocks auf die Größe eines Rangeblocks verkleinert. Dazu ist die geometrische Transformation gi erforderlich. Vier Bildelementen des Domainblocks Dj wird ein Bildelement des verkleinerten Domainblocks di zugeordnet. Dabei kann z. B. eine Mitteilung der Luminanzwerte der Bildelemente erfolgen. Im zweiten Schritt werden die Luminanzwerte des verkleinerten Domainblocks transformiert. Die zugehörige Transformationsformel ist unterhalb des zweiten Übergangspfeils dargestellt. Die Zahlen ai stellen den Kontrastfaktor dar, mit dem alle Luminanzwerte in dem verkleinerten Domainblock multipliziert werden. Die Zahl bi gibt die Zahl an, die zu jedem Luminanzwert innerhalb des verkleinerten Domainblocks di hinzuaddiert wird. Als Resultat wird so der neue Rangeblock R'i erhalten.
Der Aufbau einer Kodiervorrichtung zur fraktalen Bildkodierung wird nachfolgend anhand der Fig. 4 näher erläutert. Mit der Bezugszahl 20 ist eine Speichereinheit für ein Originalbild bezeichnet. Die Bezugszahl 21 bezeichnet eine Verarbeitungseinheit die das Originalbild in geeignete Rangeblöcke einteilt. Es kann hier z. B. fest vorgegeben sein, daß jeder Rangeblock eine Größe von z. B. 4×4 Bildelementen aufweist. Mit der Bezugszahl 22 ist eine Verarbeitungseinheit bezeichnet die das Originalbild in eine Anzahl von Domainblöcken einteilt. Hier kann z. B. fest vorgegeben sein, daß jeder Domainblock die vierfache Größe eines Rangeblockes aufweisen muß, d. h. ein Domainblock besteht aus 8×8 Bildelementen. Die Einteilung des Bildes in Domainblöcke ist nicht völlig frei, sondern an die Randbedingungen geknüpft, wie bei dem vorhergehenden Bild 3 erläutert.
Mit der Bezugszahl 23 ist eine Rangeblocktabelle bezeichnet. In dieser Tabelle sind die zugehörigen Bildelementwerte zu einem Rangeblock abgespeichert sowie auch die Information welche Position der Rangeblock innerhalb des Originalbildes aufweist. Das kann aber implizit durch die Position des jeweiligen Rangeblocks innerhalb der Tabelle vorgegeben sein.
Die Bezugszahl 25 bezeichnet dementsprechend eine Domainblocktabelle. Hierin sind in entsprechender Weise die Bildelementwerte der jeweiligen Domainblöcke geordnet abgelegt.
Mit der Bezugszahl 24 ist eine Transformationsoperationen aufweisende Tabelle bezeichnet. Zur möglichst guten Nachbildung eines Rangeblocks durch einen Domainblock kann der Domainblock bestimmten Veränderung unterworfen werden. Dazu gehören Drehungen, Spiegelungen, Multiplikationen der Luminanzen (oder Luminanzsignalwerte) der Pixel mit einem Faktor a (Kontrastfaktor) sowie die Verschiebung der Luminanzen (oder Luminanzsignalwerte der Pixel um einen Wert b). Diese Transformationsoperationen sind in der Tabelle 24 abgespeichert.
Mit der Bezugszahl 26 ist eine Auswahleinheit bezeichnet, die einen Rangeblock innerhalb der Rangeblocktabelle auswählen kann.
Mit der Bezugszahl 27 ist eine Auswahl- und Transformationseinheit bezeichnet.
Die Bezugszahl 28 bezeichnet eine weitere Auswahl- und Transformationseinheit für die Domainblocktabelle. Durch die vorgegebene Auswahl eines Rangeblocks von Seiten der Auswahleinheit 26 werden die Luminanzwerte der zugehörigen Pixel sowie der Auswahl und Transformationseinheit 27 als auch der Auswahl- und Transformationseinheit 28 zur Verfügung gestellt. Die Auswahl- und Transformationseinheit 28 sucht aufgrund des ihm zur Verfügung gestellten Rangeblocks einen ähnlichen Domainblock aus seiner Domainblocktabelle 25 aus. Dabei wird sukzessive jeder Domainblock in der Domainblocktabelle 25 auf Rangeblockgröße verkleinert und dann die entstandenen Dominanzwerte mit denjenigen des ausgewählten Rangeblocks verglichen. Wenn auf diese Art und Weise schon ein geeigneter Domainblock gefunden wird, der die Luminanzwerte des ausgewählten Rangeblocks innerhalb erlaubter Toleranzen sehr gut nachbildet, wird dieser Domainblock als zugehöriger Domainblock zu dem ausgewählten Rangeblock festgelegt. In diesem Fall braucht keine weitere Transformation für den Domainblock durchgeführt werden um den ausgewählten Rangeblock abzubilden. Dies wird dann über die Verbindung zwischen der Auswahl- und Transformationseinheit 27 und der Auswahl- und Transformationseinheit 28 mitgeteilt. Häufig wird auf diese Art und Weise jedoch kein geeigneter Domainblock gefunden werden. In diesem Fall muß bei den in Frage kommenden Domainblocken noch eine Transformation durchgeführt werden. Dazu gehören die schon erwähnten Drehungen, Spiegelungen, Multiplikationen der Luminanzen sowie die Verschiebung der Luminanzen. Die Durchführung dieser Transformation wird von der Auswahl- und Transformationseinheit 27 vorgenommen. Die zugehörigen Luminanzwerte des ausgewählen, und verkleinerten Domainblocks werden dabei der Auswahl und Transformationseinheit 27 über die Verbindung von der Auswahl- und Transformationseinheit 28 zur Verfügung gestellt. Die Suche eines geeigneten Domainblocks zu einem Rangeblock ist vom Prinzip her aus dem Stand der Technik bereits bekannt. Eine gute Übersicht über die zur Verfügung stehenden Suchverfahren findet sich in der Literaturstelle: Dietmar Saupe, Raouf Hamzaoui; Complexity reduction method for fractal image compression; E.M.A. Conference proceedings on image processing; Mathematical methods and applications, September 1994, editor J. M. Blockledge, Oxford University Press 1995.
Am Ausgang der Auswahl und Transformationseinheit 27 wird dann die Information bezüglich der nötigen Transformationsoperationen zu der Summationsstelle 29 geliefert. Von der Auswahl und Verkleinerungseinheit 28 wird die Information geliefert, welcher Domainblock zu dem ausgewählten Rangeblock zugehörig ist. Welcher Rangeblock ausgewählt wurde, wird ebenfalls zur Summationsstelle 29 von der Auswahleinheit 26 übertragen. All diese Informationen werden in die Transformationstabelle 30 übertragen. Dabei wird durch die Auswahleinheit 32 vorgegeben, auf welchem Platz der Tabelle die Informationen abgespeichert werden. Die in der Transformationstabelle 30 abgespeicherten Informationen stellen einen vorläufigen fraktalen Code dar. Der erhaltene vorläufige fraktale Code wird in der Konvergenzkontrolleinheit 31 auf Konvergenz überprüft. Die Arbeitsweise der Konvergenzkontrolleinheit 31 wird nachfolgend noch anhand der Fig. 5 erläutert. Mit der Bezugszahl 33 ist eine Anpaßeinheit bezeichnet. Die Konvergenzkontrolleinheit 31 ermittelt die Information, welche Rangeblöcke die Konvergenzprobleme des vorläufigen fraktalen Codes bewirken. Die Anpaßeinheit 33 sorgt dann dafür, daß die zugehörigen Transformationsparameter für diese Rangeblöcke verändert werden, so daß das Konvergenzkriterium erfüllt wird. Der so gewonnene fraktale Code wird in der Kodiereinheit 34 Entropie-codiert. Es entsteht der fertige fraktale Code, der in der Speichereinheit 35 abgespeichert wird. Dieser kann dann beispielsweise über eine Sendestation ausgesendet werden und dann von einer Empfangsstation wiederum decodiert werden.
Die Arbeitsweise der Konvergenzkontrolleinheit 31 wird jetzt anhand des Ablaufdiagramms in Fig. 5 näher erläutert. Mit der Bezugszahl 40 ist der Programmstart bezeichnet. Im Programmschritt 41 wird mit den gewonnenen Informationen hinsichtlich der Range-Domainblockzuordnung und der zugehörigen Transformationskoeffizienten die reduzierte Matrix A'' aufgestellt. Dies geschieht nach der bereits angegebenen Regel, das für einen Eintrag der reduzierten Matrix αi,j die Summe der Faktoren ak berechnet wird, die die Abbildung des "j-ten" Domainblocks auf Rangeblöcke beschreiben, welche innerhalb des I-ten-Domainblocks liegen. Sehr häufig werden die Faktoren ak den Wert Null aufweisen, da zu einem Rangeblock jeweils nur ein einziger zugehöriger Domainblock bestimmt worden ist. Im nächsten Programmschritt 42 wird die Zeilensummennorm ZSNi für jede Zeile der reduzierten Matrix A'' berechnet. Diese so gewonnenen Zeilensummennormen werden dann in Programmschritt 43 daraufhin überprüft, ob sie einen Wert größer als 1 besitzen. Wenn das für keine der Zeilensummennormen der Fall ist, ist der gewonnene fraktale Code konvergent und das Programm wird im Programmschritt 53 beendet. Für diejenigen Zeilen bei denen die Zeilensummennormen größer als 1 erkannt wurden, wird dann mit Programmschritt 44 fortgefahren. In diesem Programmschritt wird die betreffende Zeile jeweils mit allen verbleibenden Zeilen zu einer 2×ND-Matrix kombiniert. Damit ergeben sich dann ND-1 verschiedene 2×N2-Matrizen. Für jede dieser Matrizen wird dann im Programmschritt 45 eine 2×2-Matrix aufgestellt. Dies geht wie folgt von statten:
Wenn die 2×ND-Matrix aus den Zeilen k und 1 der reduzierten Matrix entstanden ist, so bildet man aus der 2×ND-Matrix eine 2×2-Matrix, indem man nur die Spalten k und 1 beibehält. Die Summe der Beträge aller so verloren gegangenen Elemente einer Zeile werden dann dem dieser Zeile zugehörigen Hauptdiagonalenelement der 2×2-Matrix aufaddiert, wenn dieses Hauptdiagonalelement größer oder gleich Null ist bzw. von diesem Hauptdiagonalelement subtrahiert, wenn das Hauptdiagonalelement kleiner als Null ist. Somit werden alle Elemente der 2×ND-Matrix berücksichtigt. Von der jeweiligen so entstandenen 2×2-Matrix wird dann im Programmschritt 46, z. B. nach dem aus der Mathematik bekannten von Mises-Verfahren der betragsgrößte Eigenwert λ|max| bestimmt. Im Programmschritt 47 wird dann überprüft, ob der Betrag des betragsgrößten Eigenwertes größer als 1 ist. Wenn das nicht der Fall ist, dann wird diese 2×2-Matrix nicht weiter betrachtet. Ist der Betrag dieses Eigenwertes größer als 1, so wird im Programmschritt 48 ausgehend von der 2×ND-Matrix eine 3×ND-Matrix aufgestellt. Dabei werden die betreffenden zwei Zeilen, aus denen die betrachtete 2×2-Matrix entstanden ist, mit jeder der verbleibenden ND-2-Zeilen kombiniert. Somit entstehen ND-2 verschiedene 3×ND- Matrizen. Jede dieser Matrizen wird dann mit Hilfe der folgenden Methode zu einer 3×3-Matrix umgewandelt: Das geschieht wie folgt:
Für die beteiligten 3 Zeilen der Matrix werden die zugeordneten Spalten der 3×ND-Matrix in die neue Matrix übernommen. Die Summe der Beträge der nicht übernommenen Spaltenelemente einer Zeile werden zu dem Hauptdiagonalenelement der entsprechenden Zeile hinzuaddiert, wenn dieses größer oder gleich Null ist oder subtrahiert, wenn es kleiner als Null ist. Von jeder dieser 3×3-Matrizen wird jetzt im Programmschritt 50 der betragsgrößte Eigenwert λ|max| bestimmt. Wenn in diesem Fall dann der Betrag kleiner als 1 ist, so muß die betreffende Matrix nicht weiter betrachtet werden, in diesem Fall würde das Programm wiederum im Programmschritt 53 beendet werden. Die Überprüfung des betragsgrößten Eigenwertes wird im Programmschritt 51 durchgeführt. Für den Fall, daß der Betrag des größten Eigenwertes größer als 1 ist, wird in diesem Ausführungsbeispiel im Programmschritt 52 eine Adaption der Transformationsparameter ak durchgeführt. Im Fall der 3×3-Matrix sind 3 Domainblöcke, entsprechend 12 Rangeblöcke, beteiligt, so daß die zugehörigen Transformationsparameter angepaßt werden müssen. Das kann z. B. dadurch geschehen, daß alle beteiligten Parameter ak gemeinsam mit einem Faktor k < 1 multipliziert werden, so daß das entsprechende Eigenwert-Kriterium erfüllt ist. Für die beteiligten Rangeblöcke muß dann jeweils der zugehörige Faktor b neu bestimmt werden, was jedoch auf die Konvergenz des fraktalen Codes keinen Einfluß hat. Diese konkrete Möglichkeit bietet sich dann an, wenn das entsprechende Kriterium den Wert 1 nur wenig überschreitet.
Alternativ zu dieser Möglichkeit können für die beteiligten Rangeblöcke komplett neue Domainblöcke und neue Transformationsvorschriften in dem Programmschritt 52 bestimmt werden. An diese Transformationsvorschriften können zusätzlich geeignete Randbedingungen gestellt werden. Diese Randbedingungen sind dann so geartet, daß sie dazu führen, daß die resultierenden Transformationen bezüglich der Konvergenz weniger kritisch sind als die ursprünglich gewählten Transformationen. Ein hierfür geeignetes Kriterium ist zum Beispiel, daß die Kontrastfaktoren ak kleiner als 1 gewählt werden. Nach der Anpassung der Transformationsparameter endet das Programm ebenfalls im Programmschritt 53. Das Programm wird dann neu gestartet und die Konvergenz des angepaßten fraktalen Codes wird nochmals neu überprüft. Die Konvergenzüberprüfung ist beendet, wenn die Überprüfung aller zu untersuchenden Kriterien einen Wert kleiner als 1 ergeben hat.
In Fig. 5 deuten die gestrichelten Pfeile an, daß auch bereits nach den Abfrageschritten 43 und 47 zum Anpaßschritt 52 übergegangen werden kann, wenn nicht so viel Rechenaufwand für die Konvergenzkontrolle zur Verfügung steht. Es bleibt jedoch zu beachten, daß die Abschätzung der größten Eigenwerte nur dann relativ genau ist, wenn zum Beispiel die 3×3-Matrizen überprüft worden sind. Wenn die Ermittlung des größten Eigenwertes der reduzierten Matrix noch genauer geschehen soll, können beispielsweise nach dem gleichen Schema auch die zugehörigen 4×4-Matrizen aufgestellt werden bzw. noch höher-dimensionale Matrizen. Natürlich steigt hier dann der Rechenaufwand für die Bestimmung der Eigenwerte beträchtlich.
Alternativ zur Überprüfung der Zeilensummennorm könnte z. B. auch die Spaltensummennorm überprüft werden. Das liegt auch noch im Schutzbereich der Erfindung.
Das beschriebene Konvergenzkontrollverfahren kann beispielsweise auch in einer Decodiervorrichtung eingesetzt werden. In diesem Fall würde die Konvergenzkontrolle beispielsweise auch zum Zweck der Fehlererkennung durchgeführt werden. Wenn anhand des übertragenen fraktalen Codes direkt erkennbar ist, daß hier keine Konvergenz vorliegt, kann dann das Decodiergerät eine entsprechende Fehlerreaktion durchführen wie zum Beispiel nochmalige Darstellung des zuvor dargestellten Bildes oder auch die Ausgabe einer Fehlerbotschaft.
Mögliche Anwendungen der Erfindung sind zum Beispiel im Bereich des Bildtelefons, des digitalen Videorecorders, des digitalen Camcorders, der digitalen Bildplatte, etc. zu sehen.

Claims (11)

1. Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung, bei dem ein digitalisiertes Bild in eine Anzahl von Rangeblöcken (Ri) und in eine Anzahl von Domainblöcken (Dj) eingeteilt wird, wobei zu jedem Rangeblock (Ri) ein ähnlicher Domainblock (Dj) bestimmt wird, wobei zumindest zum Teil eine Transformation eines Domainblocks (Dj) vorgenommen wird, um einen Domainblock (Dj) auf einen Rangeblock (R'i) abzubilden, wobei die Zuordnung von Domainblock zu Rangeblock inklusive der Transformationsparameter den fraktalen Code darstellen, wobei zur Überprüfung der Konvergenz des fraktalen Codes eine reduzierte Transformationsmatrix aufgestellt wird, dadurch gekennzeichnet, daß die Überprüfung der Konvergenz des fraktalen Codes durch näherungsweise Bestimmung des betragsgrößten Eigenwertes der reduzierten Transformationsmatrix durchgeführt wird, wobei in einem ersten Schritt wenigstens die Zeilensummennorm (ZSNi) der Zeilen der reduzierten Transformationsmatrix überprüft wird.
2. Verfahren nach Anspruch 1, wobei in dem Fall, daß die Zeilensummennorm (ZSNi) einer Zeile größer als ein vorbestimmter Wert ist, die betreffende Zeile jeweils mit den verbleibenden Zeilen der reduzierten Transformationsmatrix zu einer 2×ND-Matrix kombiniert wird, wobei ND die Anzahl der Domainblöcke angibt, und daß die 2×ND-Matrix durch Auswahl derjenigen Spalten, die mit den Zeilennummern der reduzierten Transformationsmatrix korrespondieren, die für die 2×ND-Matrix ausgewählt wurden, in eine 2×2-Matrix umgewandelt wird, wobei die Summe der Beträge der gestrichenen Elemente einer Zeile zu dem Hauptdiagonalenelement, das zu der Zeile gehört, aufaddiert wird, wenn dieses Hauptdiagonalenelement größer als Null ist und von dem Hauptdiagonalenelement subtrahiert wird, wenn dieses Hauptdiagonalenelement kleiner als Null ist und daß zumindest der betragsgrößte Eigenwert der 2×2-Matrix bestimmt wird.
3. Verfahren nach Anspruch 2, wobei der betragsgrößte Eigenwert der 2×2-Matrix nach dem von Mises-Verfahren bestimmt wird.
4. Verfahren nach Anspruch 2 oder 3, wobei, wenn der Betrag des betragsgrößten Eigenwertes einer 2×2-Matrix größer als ein vorbestimmter Wert ist, als nächstes alle zugehörigen 3×3-Matrizen aufgestellt werden, wobei die 3×3-Matrizen dadurch entstehen, daß die Zeilen der reduzierten Transformationsmatrix, aus denen die 2×ND-Matrix hervorgegangen ist, mit jeder der verbleibenden Zeilen der reduzierten Transformationsmatrix zu 3×ND-Matrizen kombiniert werden und durch Weglassen der Spaltenelemente, die nicht mit den beteiligten Zeilen korrespondieren, in eine 3×3-Matrix überführt werden, wobei die Summe der Beträge der nicht übernommenen Spaltenelemente einer Zeile jeweils wieder zu dem Hauptdiagonalenelement der entsprechenden Zeile hinzuaddiert werden, wenn das Hauptdiagonalenelement größer oder gleich Null ist und von dem Hauptdiagonalenelement subtrahiert werden, wenn das Hauptdiagonalenelement kleiner als Null ist und daß zumindest der betragsgrößte Eigenwert der jeweiligen 3×3-Matrix bestimmt wird.
5. Verfahren nach Anspruch 4, wobei, wenn der Betrag des betragsgrößten Eigenwertes einer 3×3-Matrix größer als ein vorbestimmter Wert ist, als nächstes die zugehörigen nächst höher-dimensionalen quadratischen Matrizen in entsprechender Weise aufgestellt werden und daß deren betragsgrößter Eigenwert überprüft wird.
6. Verfahren nach Anspruch 1, wobei in dem Fall, daß die Zeilensummennorm einer Zeile der reduzierten Transformationsmatrix größer als ein vorbestimmter Wert ist, die Transformationsparameter für die beteiligten Rangeblöcke angepaßt werden, um die Zeilensummennorm unter den vorbestimmten Wert zu drücken.
7. Verfahren nach Anspruch 2, wobei in dem Fall, daß der betragsgrößte Eigenwert der 2×2-Matrix größer als ein vorbestimmter Wert ist, die Transformationsparameter (ai) der an der 2×2-Matrix beteiligten Rangeblöcke angepaßt werden, um den betragsgrößten Eigenwert unter den vorbestimmten Wert zu drücken.
8. Verfahren nach Anspruch 4, wobei in dem Fall, daß der betragsgrößte Eigenwert der 3×3-Matrix größer als ein vorbestimmter Wert ist, die Transformationsparameter der an der 3×3-Matrix beteiligten Rangeblöcke angepaßt werden, um den betragsgrößten Eigenwert unter den vorbestimmten Wert zu drücken.
9. Verfahren nach einem der Ansprüche 1 bis 5, wobei bei Feststellung, daß eines der Konvergenzkriterien nicht erfüllt wird, eine neue Zuordnung von Domainblöcken (Dj) wenigstens für die beteiligten Rangeblöcke (Ri) gemacht wird und neue zugehörige Transformationsparameter bestimmt werden, um den betragsgrößten Eigenwert der reduzierten Transformationsmatrix unter den vorbestimmten Wert zu drücken.
10. Verfahren nach einem der vorhergehenden Ansprüche, wobei es in einer Vorrichtung zur fraktalen Bildcodierung verwendet wird.
11. Verfahren nach einem der Ansprüche 1 bis 9, wobei es in einer Vorrichtung zur Decodierung eines fraktalen Codes für ein Bild verwendet wird.
DE19641157A 1996-10-07 1996-10-07 Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung Withdrawn DE19641157A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE19641157A DE19641157A1 (de) 1996-10-07 1996-10-07 Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung
EP97116708A EP0834833A3 (de) 1996-10-07 1997-09-25 Verfahren zur Konvergenzprüfung in fraktaler Bildkodierung
US08/938,090 US5978516A (en) 1996-10-07 1997-09-26 Method for checking convergence in fractal image coding
JP9271412A JPH10155092A (ja) 1996-10-07 1997-10-03 フラクタル画像符号化における収束性検査方法
CN97120087.4A CN1183598A (zh) 1996-10-07 1997-10-06 检验分数维图像编码收敛性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19641157A DE19641157A1 (de) 1996-10-07 1996-10-07 Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung

Publications (1)

Publication Number Publication Date
DE19641157A1 true DE19641157A1 (de) 1998-04-16

Family

ID=7807981

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19641157A Withdrawn DE19641157A1 (de) 1996-10-07 1996-10-07 Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung

Country Status (5)

Country Link
US (1) US5978516A (de)
EP (1) EP0834833A3 (de)
JP (1) JPH10155092A (de)
CN (1) CN1183598A (de)
DE (1) DE19641157A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
USRE46310E1 (en) 1991-12-23 2017-02-14 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
USRE47908E1 (en) 1991-12-23 2020-03-17 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
USRE48056E1 (en) 1991-12-23 2020-06-16 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
CN100361534C (zh) * 2004-06-14 2008-01-09 厦门华侨电子股份有限公司 视频编码解码系统中用于去除块效应的方法及装置
CN103530684A (zh) * 2013-10-30 2014-01-22 武汉华大清源物联有限公司 基于rfid的多重防伪机制
CN109391818B (zh) * 2018-11-30 2021-12-10 昆明理工大学 一种基于dct变换的快速搜索分形图像压缩方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995008161A1 (en) * 1993-09-17 1995-03-23 Imperial College Of Science, Technology & Medicine Power domain algorithms for fractal image decompression

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995008161A1 (en) * 1993-09-17 1995-03-23 Imperial College Of Science, Technology & Medicine Power domain algorithms for fractal image decompression

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
FISHER, Yuval: Fractal Image Compression, Springer-Verlag, New York, Berlin, 1995, S.48-53,214-228 *
HÜRTGEN,B.: Contractivity of fractaltransforms for image coding. In: Electronics Letters, 30.Sept. 1993, Vol.29, No.20, S.1749,1750 *
JACQUIN,Arnaud E.: Fractal Image Coding: A Review. In: Proceedings of the IEEE, Vol.81, No. 10, Oct. 1993, S.1451-1465 *
JAGGARD,Dwight,L.: Special Section on Fractals in Electrical Engineering. In: Proceedings of the IEEE, Vol. 81, No.10, Oct. 1993, S.1423- S.1427 *
OHM,Jens-Rainer: Digitale Bildcodierung: Repräsentation, Kompression und Übertragung von Bildsignalen, Springer-Verlag, Berlin, Heidelber, New York, S.303-310 *

Also Published As

Publication number Publication date
EP0834833A2 (de) 1998-04-08
US5978516A (en) 1999-11-02
JPH10155092A (ja) 1998-06-09
CN1183598A (zh) 1998-06-03
EP0834833A3 (de) 1998-06-17

Similar Documents

Publication Publication Date Title
DE69722060T2 (de) Inverser Bewegungsausgleich von schneller DCT
DE69020564T2 (de) Verfahren und vorrichtung zur behandlung von numerischen daten.
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
EP0817496B1 (de) Verfahren und Anordnung zur Reduktion von Blockartefakten in codierten Bildern
DE69732865T2 (de) Kodierer mit Mitteln zur Ergänzung eines digitalen Bildes mit Bildelementen
DE19743202B4 (de) Verfahren zum Codieren eines Bewegungsvektors
DE19609859C1 (de) Verfahren zur Bildung einer Bild-Transformationsmatrix für ein beliebig geformtes Bildsegment eines digitalen Bildes, durch einen Rechner
DE69728757T2 (de) Verfahren und Vorrichtung zum Kodieren eines Objektes unter Verwendung einer Konturbewegungsschätztechnik
DE4442643B4 (de) Verfahren zum Abschätzen der Bewegung in einem Bewegtbild
DE602005000425T2 (de) Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssysteme, die Bewegungsabschätzung und -kompensation verwenden
DE19641157A1 (de) Verfahren zur Überprüfung der Konvergenz bei der fraktalen Bildcodierung
DE68914331T2 (de) Vorrichtung zum Wiedergeben von digitalisierten Videobildern.
DE69737711T2 (de) Verfahren und Vorrichtung zur Kodierung einer Objektkontur unter Verwendung ihrer Zeitkorrelation
EP0897247A2 (de) Verfahren zur Berechnung von Bewegungsvektoren
DE19711670A1 (de) Verfahren und Vorrichtung zum Codieren des Umrisses eines Gegenstandes unter Verwendung des Flächenschwerpunktes
EP1605405A1 (de) Verfahren zur Ermittlung von Bewegungsvektoren, die Bildbereichen eines Bildes zugeordnet sind
EP0908056B1 (de) Verfahren und vorrichtung zur bearbeitung von bildpunkten eines bildsegments durch einen rechner
EP0929975B1 (de) Verfahren und anordnung zur vektorquantisierung und zur inversen vektorquantisierung eines digitalisierten bildes
DE19746255A1 (de) Verfahren zur Durchführung der inversen, diskreten Kosinustransformation
DE19749655B4 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors
EP0981910B1 (de) Verfahren und vorrichtung zur codierung eines digitalisierten bildes
WO2005104559A1 (de) Prädiktionsverfahren, sowie zugehöriges verfahren zur decodierung eines prädiktionsverfahrens, zugehörige encodiervorrichtung und decodiervorrichtung
DE69005157T2 (de) Datencodierung.
WO1997042767A1 (de) Verfahren zur quantisierung und verfahren zur inversen quantisierung von transformationscodierungskoeffizienten eines videodatenstroms
DE19758964B4 (de) Vorrichtung zum Codieren eines Bewegungsvektors

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8120 Willingness to grant licences paragraph 23
8139 Disposal/non-payment of the annual fee