-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung
für das
Zwischenkonturkodieren eines Objekts in einem Videosignal mit Skalierbarkeit;
und insbesondere auf ein Verfahren und eine Vorrichtung, die dazu
fähig sind,
die Qualität
eines Videobilds durch das Übertragen
zuerst von einer Basisschicht und danach von Erweiterungsschichten
sequentiell zu verbessern, und auch dazu fähig sind, die Menge an Übertragungsdaten durch
die Verwendung einer Konturbewegungsschätzungstechnik zu reduzieren.
-
In
Digitalfernsehsystemen, wie z.B. Videotelefon-, Telefonkonferenz-
und hochauflösenden
Fernsehsystemen, wird eine große
Menge an digitalen Daten gebraucht, um jedes Videorahmensignal zu definieren,
da ein Videozeilensignal in dem Videorahmensignal eine Sequenz von
digitalen Daten aufweist, die als Pixelwerte bezeichnet werden.
Da jedoch die verfügbare
Frequenzbandbreite eines herkömmlichen Übertragungskanals
beschränkt
ist, ist es dadurch für
das Übertragen
der großen
Menge an digitalen Daten unvermeidlich, das Datenvolumen durch die
Verwendung von verschiedenen Datenkompressionstechniken zu komprimieren
oder zu reduzieren, besonders im Fall von solchen Videosignal-Codierern,
die eine niedrige Bitrate haben, wie Videotelefon- und Telefonkonferenzsysteme.
-
Eine
solche Technik für
das Kodieren von Videosignalen für
ein Kodierungssystem mit niedriger Bitrate ist eine Technik für skalierbares
Intrakonturkodieren, die dazu fähig
ist, die Qualität
eines Videobilds durch das Übertragen
zuerst von einer Basisschicht und danach von Erweiterungsschichten
sequentiell zu verbessern.
-
WO
97/15902 A (MOTOROLA INC), 1. Mai 1997, offenbart ein Verfahren
für skalierbares
Intrakonturverschlüsseln
eines Videosignals, das folgende Schritte aufweist: Erzeugen einer
vorhergesagten Kontur, Abtasten des Unterschieds zwischen der Kontur
und der vorhergesagten Kontur und Verschlüsseln der Abtastwerte in eine
Mehrzahl von Schichten.
-
Im
Allgemeinen werden, um eine (n)te Erweiterungsschicht zu entschlüsseln, Schichten
mit niedrigeren Ebenen von der Basisschicht zu einer (n – 1)ten
Erweiterungsschicht im Voraus entschlüsselt, wobei n eine ganze Zahl
ist, die größer als
2 ist. Ein Decoder entschlüsselt
keine Schichten von einer (n + 1)ten Schicht, wenn kein Bedarf besteht,
die Qualität des
Videobilds noch weiter zu verbessern. Mit anderen Worten entschlüsselt ein
Decoder nur so viele Schichten wie notwendig und reduziert dadurch
den Bitverlust, der sich aus dem Übertragen von übermäßig genauen
oder fein aufgeteilten Videobilden ergibt.
-
Mit
Bezug auf 1A, 1B und 1C sind
beispielhafte Diagramme der Technik für skalierbares Intrakonturverschlüsseln dargestellt.
Eine Basisschicht L0 enthält 5 Ecken
P0(1) bis P0(5),
eine erste Erweiterungsschicht L1 enthält 6 Ecken
P1(1) bis P1(6)
und eine zweite Erweiterungsschicht L2 enthält 4 Ecken
P2(1) bis P2(4).
Wie in 1B gezeigt, befindet sich P1(1) zwischen P0(1)
und P0(2), befindet sich P1(2)
zwischen P0(2) und P0(3),
befindet sich P1(3) zwischen P0(3)
und P0(4), befinden sich sowohl P1(4) als auch P1(5)
zwischen P0(4) und P0(5)
und befindet sich P1(6) zwischen P0(5) und P0(1); und
wie in 1C gezeigt, befindet sich P2(1) zwischen P0(1) und
P1(1), befindet sich P2(2)
zwischen P1(1) und P0(2),
befindet sich P2(3) zwischen P1(4)
und P1(5) und befindet sich P2(4)
zwischen P0(5) und P1(6).
-
Währenddessen
weisen Bit-Ströme
Bis, von denen jeder jeder der Schichten
Lis entspricht, Eckensequenzinformation
und Eckenpositionsinformation auf, wobei i eine ganze Zahl im Bereich
von 0 bis 2 ist. Der Bit-Strom B0 der Basisschicht
L0 enthält die
Eckenpositionsinformation, die die Position von P0(1)
bis P0(5) anzeigt.
-
Der
Bit-Strom B1 der ersten Erweiterungsschicht
L1 enthält
die Eckensequenzinformation 1, 1, 1, 2, 1 und die Eckenpositionsinformation
P1(1) bis P1(6),
wobei die Eckensequenzinformation 1, 1, 1, 2, 1 die Anzahl von Ecken
der ersten Erweiterungsschicht L1 anzeigt,
die zwischen zwei benachbarte Ecken der Basis schicht L0 eingeführt werden
sollen. Das heißt,
1 Ecke wird zwischen P0(1) und P0(2), 1 Ecke zwischen P0(2)
und P0(3), 1 Ecke zwischen P0(3)
und P0(4) eingeführt, 2 Ecken werden zwischen P0(4) und P0(5) eingeführt und
1 Ecke wird zwischen P0(5) und P0(1) eingeführt; und die Einfügungssequenz
ist in der Reihenfolge von P1(1), P1(2), P1(3), P1(4), P1(5) und P1(6).
-
Der
Bit-Strom B2 der zweiten Erweiterungsschicht
L2 enthält
die Eckensequenzinformation 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0 und
die Eckenpositionsinformation P2(1) bis
P2(4), wobei die Eckensequenzinformation
1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0 die Anzahl von Ecken der zweiten
Erweiterungsschicht L2 anzeigt, die zwischen
zwei benachbarte Ecken der Basisschicht L0 und
der ersten Erweiterungsschicht L1 eingeführt werden
sollen. Das heißt,
1 Ecke wird zwischen P0(1) und P1(1) eingeführt, 1 Ecke wird zwischen P1(1) und P0(2) eingeführt, keine
Ecke wird zwischen P0(2) und P1(2)
eingeführt
usw.; und die Einfügungssequenz
ist in der Reihenfolge von P2(1), P2(2), P2(3) und P2(4).
-
Wie
in 1A, 1B und 1C gezeigt, kommt
die Form eines wiederhergestellten Videobilds einer Originalform
einer Kontur näher,
wenn mehr Schichten entschlüsselt
werden.
-
Obwohl
die Technik des skalierbaren Intrakonturverschlüsselns dazu fähig ist,
einen Bit-Verlust zu reduzieren, der sich aus dem Übertragen
eines übermäßig genauen
oder sequentiellen Videobilds ergibt, berücksichtigt sie nicht die zeitliche
Redundanz zwischen zwei aufeinander folgenden Rahmen. Folglich bleibt
es immer noch wünschenswert,
das Volumen von Übertragungsdaten
durch die Verwendung einer Konturbewegungsschätzungstechnik weiter zu reduzieren,
um ein Ver-/Entschlüssungssystem
mit einer niedrigen Bitrate, das z.B. eine Übertragungskanalbandbreite
von 64 kb/s hat, effizienter zu implementieren.
-
Es
ist deshalb eine Hauptaufgabe der Erfindung, ein Verfahren und eine
Vorrichtung für
eine verbesserte Konturkodierung mit Skalierbarkeit für Zwischenkonturverschlüsselungskonturinformation
zu schaffen, um dadurch die Qualität eines Videobilds sequentiell
zu verbessern und das Volumen von Übertragungsdaten weiter zu
reduzieren.
-
Gemäß der vorliegenden
Erfindung ist ein Verfahren für
skalierbares Zwischenkonturverschlüsseln eines Videosignals mit
einem vorhergehenden und einem gegenwärtigen Rahmen vorgesehen, wobei
sowohl der vorhergehende als auch der gegenwärtige Rahmen eine Kontur enthält, wobei
das Verfahren die folgenden Schritte aufweist: Erzeugen einer vorhergesagten
Kontur durch die Bewegungsschätzung
und -kompensation einer vorhergehenden Basisschicht; Erweitern der
vorhergesagten Kontur um einen vorherbestimmten Schwellenwert Dmax(j); Erzeugen von (j)ten primären und
sekundären Ecken;
Rekonstruieren einer gegenwärtigen
Basisschicht; Erweitern der vorhergesagten Kontur um einen vorherbestimmten
Schwellenwert Dmax(j + 1); Erzeugen von
(j + 1)ten primären
und sekundären Ecken;
Aktualisieren der (j)ten primären
und sekundären
Ecken. Dann werden die (j)ten primären und sekundären Ecken
kodiert; und die Information der kodierten primären und sekundären Ecken
wird auf eine vorherbestimmte Weise formatiert. Zuletzt wird der
Wert von j um 1 erhöht
und werden die Schritte für
das Erweitern der vorhergesagten Kontur um Dmax(j
+ 1) bis zu den Schritten für
das Formatieren der Information der kodierten primären und
sekundären
Ecken wiederholt, bis j N wird, wobei N eine positive ganze Zahl
ist.
-
Die
oben genannten und andere Aufgaben und Merkmale der vorliegenden
Erfindung werden aus der folgenden Beschreibung von bevorzugten Ausführungsformen
in Verbindung mit den begleitenden Zeichnungen ersichtlich. In denen
zeigen:
-
1A, 1B und 1C beispielhafte Diagramme
einer herkömmlichen
Technik für
skalierbare Intrakontur-Verschlüsselung;
-
2 ein
Blockdiagramm einer Vorrichtung für skalierbares Zwischenkonturverschlüsseln gemäß einer
bevorzugten Ausführungsform
der vorliegenden Erfindung;
-
3 einen
Prozess für
das Anpassen einer gegenwärtigen
Kontur an eine vorhergesagte Kontur und das Erweitern der vorhergesagten
Kontur um einen vorherbestimmten Schwellenwert;
-
4 einen
Prozess für
das Bestimmen von sekundären
Ecken an unpassenden Segmenten;
-
5 eine
beispielhafte Basisschicht, die unter Verwendung von passenden Segmenten
und den sekundären
Ecken rekonstruiert wird;
-
6 die sich ändernde Konturinformation, wenn
die Operation gemäß der vorliegenden
Erfindung fortfährt;
und
-
7 ein
Verfahren für
das Kodieren von Information der primären Ecke durch die ,Reference Contour
Based' (auf einer
Referenzkontur basierende)-Verschlüsselungstechnik.
-
Mit
Bezug auf 2 ist ein Blockdiagramm einer
Vorrichtung 1 für
das Kodieren einer Kontur gemäß der vorliegenden
Erfindung gezeigt.
-
Gegenwärtige Konturdaten
werden auf einer Leitung L10 an eine Bewegungsschätzungseinheit 10 und
eine Erweiterungseinheit 30 geliefert. Die Bewegungsschätzungseinheit 10 bestimmt
durch die Bewegungsschätzung
einen Bewegungsvektor MV. In einer bevorzugten Ausführungsform
der vorliegenden Erfindung wird eine vorhergehende Basisschicht auf
einer Pixel-um-Pixel-Basis
verschoben, um dadurch mit der gegenwärtigen Kontur zu überlappen, und
werden die Pixel, die sowohl zu der gegenwärtigen Kontur als auch zu der
vorhergehende Basisschicht gehören,
bei jeder Verschiebung gezählt.
-
Danach
wird die Verschiebung der vorhergehenden Basisschicht, die eine
größte Zahl
von Pixeln bringt, die sowohl zu der gegenwärtigen Kontur als auch zu der
vorhergehenden Basisschicht gehören, als
der Bewegungsvektor MV ausgewählt.
Der Bewegungsvektor MV wird auf einer Leitung L20 an eine Bewegungskompensationseinheit 20 und
einen Formstierer 90 geliefert.
-
Die
Bewegungskompensationseinheit 20 erzeugt eine vorhergesagte
Kontur. Das heißt,
alle Pixel auf der vorhergehenden Basisschicht werden um den Bewegungsvektor
MV in die Richtung der gegenwärtigen
Kontur bewegt, um dadurch die vorhergesagte Kontur zu erzeugen.
Die vorhergesagte Kontur wird an die Erweiterungseinheit 30 geliefert.
-
Die
Erweiterungseinheit 30 überlappt
die vorhergesagte Kontur mit der gegenwärtigen Kontur, detektiert Koinzidenzteile,
wobei der Koinzidenzteil ein Teil der gegenwärtigen Kontur ist, wo die vorhergesagte
Kontur mit der gegenwär tigen
Kontur überlappt
und bestimmt Koinzidenzecken. Wenn der Koinzidenzteil mehr als ein
Pixel enthält,
werden Endpunkte des Koinzidenzteils als die Koinzidenzecken bestimmt.
Wenn der Koinzidenzteil nur ein Pixel enthält, wird das eine Pixel als
die Koinzidenzecke bestimmt.
-
Mit
Bezug auf 3 werden 26 beispielhafte Koinzidenzecken
A bis Z erzeugt. A, B, F, G, L, M, N, O, R, S, W und X sind die
beispielhaften Koinzidenzecken, die jede ein Endpunkt eines entsprechenden beispielhaften
Koinzidenzteils sind, wobei jeder beispielhafte Koinzidenzteil ein
Teil einer beispielhaften gegenwärtigen
Kontur 34 ist, der mit der beispielhaften vorhergesagten
Kontur 32 überlappt.
C, D, E, H, I, J, K, P, Q, T, U, V, Y und Z sind die beispielhaften Koinzidenzecken,
an denen die beispielhafte vorhergesagte Kontur 32 die
beispielhafte gegenwärtige Kontur 34 nur
kreuzt.
-
Nach
dem Bestimmen der Koinzidenzecken erweitert die Erweiterungseinheit 30 die
vorhergesagte Kontur um einen vorherbestimmten Schwellenwert Dmax(j), um dadurch ein erstes erweitertes
Konturband zu erzeugen, wobei j 0 ist. Dmax(j)
nimmt ab, wenn j zunimmt, wobei Dmax(j)
nicht negativ ist. In der in 3 gezeigten
bevorzugten Ausführungsform wird
die beispielhafte vorhergesagte Kontur 32 um Dmax(0)
erweitert, um dadurch ein erstes beispielhaftes erweitertes Konturband 32' zu erzeugen.
-
Die
Erweiterungseinheit 30 liefert Information über die
gegenwärtige
und vorhergesagte Kontur, über
das erste erweiterte Konturband und die Koinzidenzecken an eine
Einheit zur Bestimmung von passenden Segmenten 40.
-
Die
Einheit zur Bestimmung von passenden Segmenten 40 detektiert
erste passende Teile. Jeder der ersten passenden Teile stellt einen
Teil der gegenwärtigen
Kontur dar, der mit dem ersten erweiterten Konturband zwischen zwei
Koinzidenzecken überlappt,
und zwei benachbarte erste passende Teile, die einen Endpunkt gemeinsam
haben, werden als ein erster passender Teil betrachtet.
-
Danach
vergleicht die Einheit zur Bestimmung von passenden Segmenten 40 jede
Länge der ersten
passenden Teile mit einem vorherbestimmten Schwellenwert TH, um
dadurch erste passende Teile, deren Längen länger sind als der vorherbestimmte Schwellenwert
TH, als erste passende Segmente auszuwählen. Endpunkte der ersten
passenden Segmente werden als erste primäre Ecken bestimmt. Wieder mit
Bezug auf 3 sind Teile A bis I, K bis O,
R bis U und V bis Z beispielhafte erste passende Segmente der beispielhaften
gegenwärtigen
Kontur 34 und sind A, I, K, O, R, U, V und Z beispielhafte
erste primäre
Ecken der beispielhaften gegenwärtigen Kontur 34.
-
Information über die
gegenwärtige
und die vorhergesagte Kontur und die ersten primären Ecken wird an eine Sekundäreckenbestimmungseinheit 50 geliefert.
-
Die
Sekundäreckenbestimmungseinheit 50 bestimmt
erste unpassende Segmente, wobei das erste unpassende Segment ein
Segment auf der gegenwärtigen
Kontur ist, das zu keinem der ersten passenden Segmente gehört. Dann
werden die ersten sekundären
Ecken an jedem der ersten unpassenden Segmente an der gegenwärtigen Kontur durch
die Verwendung der herkömmlichen
polygonalen Annäherungstechnik
basierend auf dem vorherbestimmten Schwellenwert Dmax(j)
bestimmt, wobei der vorherbestimmte Schwellenwert Dmax(j)
der gleiche Schwellenwert ist, der bei der Erweiterungseinheit 30 verwendet
wird. Gemäß der herkömmlichen polygonalen
Annäherungstechnik
wird ein Konturpixel auf einem beliebigen ersten unpassenden Segment,
das einen größten Abstand
zu einem ihm entsprechenden Liniensegment hat, als eine erste Anfangsecke
bestimmt, wenn der größte Abstand
größer ist
als der Dmax(j). Die von der polygonalen
Annäherung
bestimmten ersten Anfangsecken werden als erste sekundäre Ecken
definiert.
-
Mit
Bezug auf 4 sind Teile von I bis K, O bis
R, U bis V und Z bis A beispielhafte erste unpassende Segmente auf
der beispielhaften gegenwärtigen
Kontur 34 und sind 1V1 bis 1V7 beispielhafte erste sekundäre Ecken
der beispielhaften gegenwärtigen
Kontur 34.
-
Die
Sekundäreckenbestimmungseinheit 50 liefert
Information über
die gegenwärtige
und vorhergesagte Kontur, die ersten primären und die ersten sekundären Ecken
und die ersten passenden und die ersten unpassenden Segmente an
einen Speicher für überlappte
Konturen 60. Der Speicher für überlappte Konturen 60 gibt
den ersten primären
Ecken Indizes, um dadurch Information über die ersten sekundären und
die indizierten ersten primären
Ecken als eine erste überlappte
Kontur OC(1) zu speichern. Zum Beispiel zeigt 1S1 einen
ersten Anfangspunkt des ersten passenden Segments an, zeigt IS2 einen zweiten Anfangspunkt des ersten passenden
Segments an usw. und zeigt 1E1 einen ersten
Endpunkt des ersten passenden Segments an, zeigt IE2 einen zweiten
Endpunkt des ersten passenden Segments an usw.
-
Nach
dem Speichern der ersten überlappten Kontur
OC(1) liefert der Speicher für überlappte
Konturen 60 einer Basisschichtrekonstruktionseinheit 100 auf
einer Leitung L40 Information über
das erste passende Segment und die erste sekundäre Ecke nur dann, wenn der
Wert von j 0 ist. Dann rekonstruiert die Basisschichtrekonstruktionseinheit 100 eine gegenwärtige Basisschicht.
Mit Bezug auf 5 weist eine beispielhafte gegenwärtige Basisschicht 36 dicke
Linien, die die beispielhaften ersten passenden Segmente sind, und
dünne Linien,
die zwei benachbarte beispielhafte primäre oder sekundäre Ecken
verbinden, auf. Die rekonstruierte gegenwärtige Basisschicht wird in
einer Basisschichtspeichereinheit 110 gespeichert.
-
Währenddessen
erhöht
der Speicher für überlappte
Konturen 60 j um 1 und liefert Information über die
gegenwärtige
und die vorhergesagte Kontur und die erste überlappte Kontur OC(1) über eine
Leitung L50 an die Erweiterungseinheit 30.
-
Die
Erweiterungseinheit 30 erweitert die vorhergesagte Kontur
aus dem Speicher für überlappte Konturen 60 um
einen vorherbestimmten Schwellenwert Dmax(j),
um dadurch ein zweites erweitertes Konturband zu erzeugen, wobei
j 0 ist und Dmax(1) kleiner ist als Dmax(0). Die Erweiterungseinheit 30 liefert
Information über
die gegenwärtige
und die vorhergesagte Kontur, das zweite erweiterte Konturband und die
erste überlappte
Kontur OC(1) an die Einheit zur Bestimmung von passenden Segmenten 40.
-
Die
Operation der Einheit zur Bestimmung von passenden Segmenten 40 ist
für den
Fall, in dem j 1 ist, dem Fall ähnlich,
wenn j 0 ist. Das heißt,
Teile, wo das zweite erweiterte Konturband mit der gegenwärtigen Kontur
zusammenfällt, werden
als zweite passende Teile bestimmt. Danach werden die zweiten passenden
Teile, deren Längen
länger
sind als der vorherbestimmte Schwellenwert TH, als zweite passende
Segmente bestimmt und werden Endpunkte der zweiten passenden Segmente
als zweite primäre
Ecken bestimmt.
-
Information über die
gegenwärtige
und die vorhergesagte Kontur, die zweiten primären Ecken und die erste überlappte
Kontur OC(1) wird an die Sekundäreckenbestimmungseinheit 50 geliefert.
-
Die
Sekundäreckenbestimmungseinheit 50 bestimmt
zweite unpassende Segmente, wobei das zweite unpassende Segment
ein Teil der gegenwärtigen
Kontur zwischen zwei benachbarten Punkten aus den ersten primären Ecken,
den ersten sekundären
Ecken und den zweiten primären
Ecken ist, die zu keinem der zweiten passenden Segmente gehören.
-
Dann
werden zweite sekundäre
Ecken an jedem der zweiten unpassenden Segmente an der gegenwärtigen Kontur
durch die Verwendung der herkömmlichen
polygonalen Annäherungstechnik
basierend auf dem vorherbestimmten Schwellenwert Dmax(j)
bestimmt, wobei der vorherbestimmte Schwellenwert Dmax(j)
der gleiche Schwellenwert ist wie der an der Erweiterungseinheit 30 verwendete.
Gemäß der herkömmlichen
polygonalen Annäherungstechnik
wird ein Konturpixel auf einem beliebigen zweiten unpassenden Segment,
das einen größten Abstand zu
einem ihm entsprechenden Liniensegment hat, als eine zweite Anfangsecke
bestimmt, wenn der größte Abstand
größer ist
als der vorherbestimmte Schwellenwert Dmax(j).
Die von der polygonalen Annäherung
bestimmten zweiten Anfangsecken werden als zweite sekundäre Ecken
bezeichnet.
-
Die
Sekundäreckenbestimmungseinheit 50 liefert
Information über
die gegenwärtige
und die vorhergesagte Kontur, die zweiten primären und zweiten sekundären Ecken
und die zweiten passenden und die zweiten unpassenden Segmente an
den Speicher für überlappte
Konturen 60. Der Speicher für überlappte Konturen 60 gibt
den zweiten primären Ecken
Indizes, um dadurch Information über
die zweiten sekundären
und indizierten zweiten primären Ecken
als eine zweite überlappte
Kontur OC(2) zu speichern. Zum Beispiel zeigt 2S1 einen ersten
Anfangspunkt des zweiten passenden Segments an, zeigt 2S2 einen zweiten Anfangspunkt des zweiten passenden
Segments an usw. und zeigt 2E1 einen ersten
Endpunkt des zweiten passenden Segments 2 an, zeigt 2E2 einen
zweiten Endpunkt des zweiten passenden Segments an usw..
-
Nach
dem Speichern der zweiten überlappten
Kontur OC(2) aktualisiert der Speicher für überlappte Konturen 60 die
erste überlappte
Kontur OC(1). Im Detail kann es einige erste primäre Ecken geben,
die nicht die zweiten primären
Ecken sind. Folglich gibt der Speicher für überlappte Konturen 60 solchen
Punkten Indizes, die anzeigen, dass die entsprechenden Punkte erste
Anfangsendpunkte sind. Die ersten Anfangsendpunkte sind die Punkte,
die die ersten primären
Ecken, aber nicht die zweiten primären Ecken sind. Zum Beispiel
zeigt 1SE1 einen ersten Anfangsendpunkt
der Basisschicht an, zeigt 1SE2 einen zweiten
Anfangsendpunkt der Basisschicht an usw.. Eine aktualisierte erste überlappte Kontur
OC'(1) wird in dem
Speicher für überlappte Konturen 60 gespeichert.
-
Mit
Bezug auf 6A bis 6H gibt
es Diagramme, von denen jedes die sich ändernde Konturinformation darstellt,
wenn die Operation gemäß der vorliegenden
Erfindung fortfährt. 6A beschreibt die
beispielhaften Koinzidenzecken A bis Z und die beispielhaften Koinzidenzteile
AB, FG, LM, NO, RS und WX gemäß der bevorzugten
Ausführungsform der
vorliegenden Erfindung. 6B stellt
die beispielhaften ersten primären
Ecken A, I, K, O, R, U, V und Z, die beispielhaften ersten sekundären Ecken 1V1
bis 1V7 und die beispielhaften ersten passenden Segmente Al, LO,
RU und VZ dar, die sich aus der Konstruktion der beispielhaften
gegenwärtigen
Basisschicht ergeben. 6C ist eine beispielhafte erste überlappte
Kontur OC(1), die in dem Speicher für überlappte Konturen 60 gespeichert
wird, wenn j 0 ist, und 1S1 bis 1S4 sind beispielhafte Anfangspunkte der beispielhaften
ersten passenden Segmente und 1E1 bis 1E4 sind beispielhafte Endpunkte der beispielhaften
ersten unpassenden Segmente. 6D stellt beispielhafte
zweite primäre
Ecken A, C, E, H, L, O, R, S, W und Y und beispielhafte zweite passende Segmente
AC, EH, LO, RS und WY als das Ergebnis der Konturerweiterung um
Dmax(1) dar. 6E zeigt beispielhafte
zweite unpassende Segmente CE, HI, I1V1,
1V11V2, 1V2K, KL, O1V3, 1V31V4, 1V41V5, 1V5R, SU, U1V6, 1V6V, VW, YZ,
Z1V7 und 1V7A. 6F stellt
beispielhafte zweite sekun däre
Ecken 2V1 bis 2V15 dar. 6G ist
eine beispielhafte zweite überlappte
Kontur OC(2), die in dem Speicher für überlappte Konturen 60 gespeichert
wird, wenn j 1 ist, und 2S1 bis 2S5 sind beispielhafte Anfangspunkte der beispielhaften
zweiten passenden Segmente und 1E5 bis 2E5 sind beispielhafte Endpunkte der beispielhaften
zweiten passenden Segmente. 6H ist
eine beispielhafte erste aktualisierte überlappte Kontur OC'(1), die in dem Speicher
für überlappte
Konturen 60 gespeichert wird, wenn j 1 ist.
-
Währenddessen
liefert der Speicher für überlappte
Konturen 60 Information über die vorhergesagte Kontur
und die ersten primären
Ecken über eine
Leitung L60 an eine Primäreckenverschlüsselungseinheit 70,
Information über
die ersten sekundären
Ecken und die aktualisierte erste überlappte Kontur OC'(1) über eine
Leitung L70 an eine Sekundäreckenverschlüsselungseinheit 80.
Da jedoch j 1 ist, liefert der Speicher für überlappte Konturen 60 die
Information über
das erste passende Segment und die erste sekundäre Ecke nicht über die
Leitung L40 an die Basisschichtrekonstruktionseinheit 100.
-
Die
Primäreckenverschlüsselungseinheit 70 bestimmt
einen Referenzpunkt RP unter Verwendung eines vorherbestimmten Verfahrens,
zum Beispiel Rasterabtastung, berechnet die Länge jedes Segments zwischen
zwei benachbarten ersten primären
Ecken und kodiert Information über
die ersten primären
Ecken unter Verwendung des ,Reference Contour Based'-Verschlüsselungsverfahrens
in eine vorherbestimmte Richtung, zum Beispiel im Uhrzeigersinn.
Gemäß einer
bevorzugten Ausführungsform der
vorliegenden Erfindung wird die Zahl der Pixel, die jedes Segment
bilden, als die Länge
jedes Segments definiert.
-
Wenn
die Maximallänge
m länger
als oder gleich 2n und kürzer als 2n+1 ist,
wird eine erste primäre
Ecke neben RP durch das Darstellen der Länge von RP zu sich selber unter
Verwendung von n Bits kodiert. Danach werden die übrigen Ecken
folgendermaßen
kodiert: Wenn die Länge
von RP zu einer ersten gerade entschlüsselten primären Ecke
länger
als m ist, wird die nächste
erste primäre
Ecke durch das Darstellen der Länge
von der ersten gerade entschlüsselten
primären
Ecke zu sich selber unter Verwendung von n Bits kodiert. Und wenn
die Länge
von RP zu der ersten gerade entschlüsselten primären Ecke
kürzer
als m ist, wird die nächste
erste primäre Ecke
durch das Darstellen der Länge
von der ersten gerade entschlüsselten
primären
Ecke zu sich selber unter Verwendung von n' Bits kodiert, was es ermöglicht,
die Länge
von der ersten gerade entschlüsselten
primären
Ecke zu RP darzustellen.
-
Mit
Bezug auf 7 ist die Länge des Segments Al, nämlich m1,
die länger
als oder gleich 2n1 und kürzer als
2n1+1 ist, am längsten, ist die Länge von U
zu RP länger
als m1 und ist die Länge
von V zu RP kürzer
als m1. Die beispielhaften ersten primären Ecken A bis U werden durch
das Darstellen der Länge
zwischen zwei benachbarten beispielhaften ersten primären Ecken
unter Verwendung von n1 Bits kodiert, V wird durch das Darstellen
der Länge
von U zu V unter Verwendung von n1' Bits kodiert, was es ermöglicht,
die Länge
von U zu RP darzustellen, und Z wird durch das Darstellen der Länge von
V zu Z unter Verwendung von n1'' Bits kodiert, was
es ermöglicht,
die Länge
von V zu RP darzustellen.
-
Währenddessen
kodiert die Sekundäreckenverschlüsselungseinheit 80 die
ersten sekundären Ecken.
Jede der ersten sekundären
Ecken wird durch das Darstellen einer zweidimensionalen Verschiebung
von einer nächsten
ersten primären
oder sekundären
Ecke kodiert, die sich im Gegenuhrzeigersinn zu ihr selber befindet.
In der in 4 gezeigten bevorzugten Ausführungsform
der vorliegenden Erfindung wird 1V1 durch
das Darstellen der Verschiebung von I zu 1V1 kodiert,
wird 1V2 durch das Darstellen der Verschiebung
von 1V1 zu 1V2 kodiert
und wird 1V3 durch das Darstellen der Verschiebung
von O zu 1V3 kodiert usw..
-
Kodierte
Information über
die ersten primären
und sekundären
Ecken wird an den Formstierer 90 geliefert.
-
Der
Formstierer 90 formatiert die kodierte Information über die
ersten primären
und sekundären Ecken
auf der Basis der aktualisierten ersten überlappten Kontur OC'(1) auf eine vorherbestimmte
Weise. Das heißt,
der Formstierer 90 formatiert die kodierte Information
in der Reihenfolge des Bewegungsvektors MV, der Zahl der primären Ecken,
der Zahl der Anfangsendpunkte unter den primären Ecken, der Zahlen, die
die Anfangsendpunkte anzeigen, der Zahl der sekundären Ecken
zwischen den unpassenden Segmenten, der Information über die kodierten
primären
und sekundären
Ecken, um sie dabei an einen (nicht gezeigten) Sender zu liefern.
-
In
dem Fall der in 5 gezeigten beispielhaften gegenwärtigen Basisschicht 36 ist
die Information über
die formatierte gegenwärtige
Basisschicht MV, 8, 3, 2, 6, 8, 2, 3, 1, 1, A, I, K, O, R, U, V, Z,
2, 6, 8, 1V1, 1V2,
1V3, 1V4, 1V5, 1V6, 1V7.
-
Ein
(nicht gezeigter) Decoder kann die gegenwärtige Basisschicht durch das
Entschlüsseln
der formatierten Information und unter Verwendung der zuvor entschlüsselten
vorhergehenden Basisschicht wiederherstellen.
-
Während die
vorliegende Erfindung in Bezug auf bestimmte bevorzugte Ausführungsformen
beschrieben wurde, können
andere Modifikationen und Variationen gemacht werden, ohne vom Umfang
der vorliegenden Erfindung abzuweichen, wie er in den folgenden
Ansprüchen
dargelegt ist.