DE19744859A1 - Verfahren zum Codieren eines binären Formsignals - Google Patents

Verfahren zum Codieren eines binären Formsignals

Info

Publication number
DE19744859A1
DE19744859A1 DE1997144859 DE19744859A DE19744859A1 DE 19744859 A1 DE19744859 A1 DE 19744859A1 DE 1997144859 DE1997144859 DE 1997144859 DE 19744859 A DE19744859 A DE 19744859A DE 19744859 A1 DE19744859 A1 DE 19744859A1
Authority
DE
Germany
Prior art keywords
bab
block
reconstructed
binary
encoded
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.)
Granted
Application number
DE1997144859
Other languages
English (en)
Other versions
DE19744859B4 (de
Inventor
Seok-Won Han
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.)
Maple Vision Technologies Inc Ca
Original Assignee
Daewoo Electronics Co Ltd
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 Daewoo Electronics Co Ltd filed Critical Daewoo Electronics Co Ltd
Publication of DE19744859A1 publication Critical patent/DE19744859A1/de
Application granted granted Critical
Publication of DE19744859B4 publication Critical patent/DE19744859B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/21Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with binary alpha-plane coding for video objects, e.g. context-based arithmetic encoding [CAE]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/20Contour coding, e.g. using detection of edges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding

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, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Co­ dieren eines binären Formsignals ("binary shape signal") und insbesondere ein Verfahren zum Codieren eines binären Formsignals unter Anwendung einer Kontext-basierenden Co­ diertechnik.
In digitalen Videosystemen, wie Video-Telefon- und Tele­ konferenz-Systemen, wird eine große Anzahl digitaler Da­ ten zum Definieren jedes Videobildsignals bzw. Videohalb­ bildsignals bzw. Videoteilbildsignals benötigt, da das Videobildsignal eine Folge digitaler Daten umfaßt, welche als Pixelwerte bezeichnet werden.
Da jedoch die verfügbare Frequenzbandbreite eines her­ kömmlichen Übertragungskanals begrenzt ist, um die große Anzahl digitaler Daten darüber zu übertragen, ist es er­ forderlich, das Datenvolumen unter Anwendung zahlreicher Datenkompressionstechniken zu komprimieren oder reduzie­ ren, insbesondere in dem Falle derartiger Videosignalsco­ dierer niedriger Bit-Rate, wie Video-Telefon- und Tele­ konferenz-Systemen.
Eine von solchen Techniken zum Codieren von Videosignalen für ein Codiersystem niedriger Bit-Rate ist eine Objekt­ orientierte Analyse-Synthese-Codiertechnik, bei welcher ein Eingangsvideobild in Objekte aufgeteilt wird; und drei Sätze an Parametern zum Definieren der Bewegungs-, der Kontur- und der Pixeldaten jedes Objektes über ver­ schiedene Codierkanäle verarbeitet werden.
Ein Beispiel eines solchen Objekt-orientierten Codier­ schemas ist das sogenannte MPEG (Moving Picture Experts Group) Phase bzw. Standard 4 (MPEG4), das entworfen wur­ de, um einen audio-visuellen Codierstandard zu schaffen, der eine Inhalts-basierende Interaktivität, eine verbes­ serte Codiereffizienz und/oder eine universelle Zugriffs­ möglichkeit in solchen Anwendungen wie eine Kommunikation bei niedriger Bit-Rate, interaktives Multimedia (z. B. Spiele, interaktives TV, etc.) und Gebietsüberwachung zu ermöglichen.
Gemäß dem MPEG-4 wird ein Eingangsvideobild in eine Viel­ zahl an Videoobjektebenen (VOE's) aufgeteilt, die Ganz­ heiten bzw. Dingen in einem Bitstrom entsprechen, auf die ein Bediener Zugriff haben kann und sie manipulieren kann. Eine VOE kann als ein Objekt bezeichnet durch ein Umfangsrechteck dargestellt werden, dessen Breite und Hö­ he kleinste Vielfache von 16 Pixeln (eine Makroblockgrö­ ße) sein kann, das jedes Objekt derart umrandet, daß der Codierer das Eingangsvideobild auf einer VOE-zu-VOE-Basis verarbeiten kann, d. h. einer Objekt-zu-Objekt-Basis.
Eine im MPEG-4 beschriebene VOE enthält eine Forminforma­ tion und eine Farbinformation, die aus Luminanz- und Chrominanz-Daten besteht, wobei die Forminformation bei­ spielsweise durch eine binäre Maske dargestellt wird und auf die Luminanzdaten bezogen ist. In der binären Maske wird ein binärer Wert, z. B. 0, verwendet, um einen Pixel zu bezeichnen, d. h. einen Hintergrundpixel der außerhalb des Objektes in der VOE angeordnet ist, und der andere binäre Wert, z. B. 1, wird verwendet, um einen Pixel anzu­ zeigen, d. h. einen Objektpixel innerhalb des Objektes.
Ein binäres Formsignal, das den Ort und die Form der Ob­ jekte darstellt, kann als ein binärer Alphablock (BAB) innerhalb eines Bildes oder einer VOE ausgedrückt werden, z. B. als ein Block mit 16×16 binären Pixeln, wobei jeder binäre Pixel einen binären Wert aufweist, z. B. 0 oder 1, der entweder einen Objektpixel oder einen Hintergrundpi­ xel darstellt.
Ein BAB kann unter Anwendung eines bekannten Bit-map-basierenden Formcodierverfahrens kodiert werden, wie ei­ nem Kontext-basierendem arithmetischen Codier (CAE) Ver­ fahren (siehe MPEG-4 Video Verifikationsmodel Version 2.0, International Organization for Standardization, ISO/IEC JTC1/5C29/WG11 N1260, März 1996).
Beispielsweise wird in einem Intra-Modus ein BAB unter Anwendung eines bekannten CAE-Verfahrens kodiert, um da­ durch einen kodierten BAB zu erzeugen. In einem Inter-Modus werden ein Bewegungsvektor, welcher die Verschie­ bung zwischen einem BAB innerhalb eines aktuellen Bildes (oder VOE's) und seinem ähnlichsten BAB innerhalb eines vorhergehenden Bildes (oder VOE's) darstellt, zusammen mit Fehlerdaten, welche die Unterschiede zwischen diesen darstellen, durch eine Bewegungsabschätzung und -kompen­ sation ermittelt. Die Fehlerdaten werden unter Anwendung eines bekannten CAE-Verfahrens kodiert, um dadurch ko­ dierte Fehlerdaten zu erzeugen. Und anschließend werden die kodierten Fehlerdaten und der Bewegungsvektor kombi­ niert, um dadurch einen kodierten BAB zu erzeugen.
Jedoch wird der kodierte, wie oben erhaltene BAB bei ei­ nem Decodierer in ein rekonstruiertes Bild dekodiert, das lediglich eine vorgegebene Auflösung aufweist. Falls ein Bild für einen BAB mit einer höheren Auflösung gewünscht wird, wird der BAB daher bekannterweise mit einer darin implementierten Skalierbarkeit kodiert, welche die Auflö­ sung des dekodierten Bildes für den BAB graduell erhöht. D. h., daß eine Basisschicht, die ein Bild für einen BAB mit einer niedrigeren Auflösung darstellt, kodiert wird; und basierend auf der Basisschicht zusätzliche Informati­ on zum Erzeugen einer Anreicherungsschicht für den BAB addiert wird, die anschließend kodiert wird.
Die kodierten Daten, d. h. der kodierte, mit der Skalier­ barkeit wie oben implementierte BAB, werden einem Deco­ dierer übertragen, um dort dekodiert zu werden. Es gibt zahlreiche Möglichkeiten, derartige Daten bei einem Deco­ dierer zu dekodieren. Eine Möglichkeit ist, daß lediglich die kodierte niedrige Schicht, beispielsweise die kodier­ te Basisschicht dekodiert wird, um ein Bild mit einer niedrigen Auflösung zu erhalten. Jedoch können zum Erhö­ hen der Auflösung des Bildes die Basisschicht und einige ihrer oberen Schichten kodiert werden. Um die Auflösung noch weiter zu erhöhen, können all die übertragenen Schichten dekodiert werden, wodurch ein Bild mit dersel­ ben Auflösung wie das Originalbild erhalten wird, unter der Annahme, daß eine niedrigere Schicht vor ihren höhe­ ren Schichten dekodiert wird, selbst wenn die höheren Schichten nicht dekodiert werden sollen.
Die mit einer Skalierbarkeit implementierten Codier- und Decodierverfahren, wie hier beschrieben, können nicht nur Fehler reduzieren, sondern auch den Verlust an Bits ver­ hindern, und dadurch eine Übertragung an Bildern mit ex­ trem hohen Auflösungen erreichen.
Außerdem ist es im Stand der Technik bekannt, daß es für ein effizientes CAE-Verfahren wichtig ist, ob die Basis­ schicht oder die Anreicherungsschicht kodiert wird.
In Fig. 1A bis 1C sind Sätze binärer Pixel mit deren Kontextdaten gezeigt, um das bekannte CAE-Verfahren zu erläutern. Nachfolgend wird ein Aspekt des bekannten CAE-Verfahrens mit Bezug auf Fig. 1A bis 1C beschrieben.
Das CAE-Verfahren ist eine Technik, BAB's innerhalb eines Bildes oder einer VOE zu kodieren. Jeder BAB ist ein Block aus M×N binären Pixeln, z. B. ein Block aus 16×16 binären Pixeln, wobei M und N jeweils positive geradzah­ lige ganze Zahlen sind. Die Codierfolge für die BAB's in­ nerhalb einer VOE oder einem Bild ist gewöhnlich von ei­ ner sogenannten Rasterabtastordnung bzw. -reihenfolge ab­ hängig.
In den gesamten Unterlagen soll unter dem Begriff "Bild" entweder ein Voll-, ein Halb- oder ein Teilbild verstan­ den werden, und unter dein Begriff "Linie" auch eine Zeile oder eine Spalte.
Das CAE-Verfahren berechnet erst den Kontextwert für je­ den binären Pixel innerhalb eines zu kodierenden BAB's. Der Kontextwert für einen binären Pixel innerhalb eines BAB's stellt einen Index dar, der den Ort eines Wahr­ scheinlichkeitswertes für den binären Pixel in einer vor­ gegebenen Wahrscheinlichkeitstabelle mit Wahrscheinlich­ keitswerten anzeigt, die dort in einer vorgegebenen Rei­ henfolge bzw. Ordnung gespeichert sind. Daher kann unter Bezug auf den Wahrscheinlichkeitswert, der durch den Kon­ textwert für den binären Pixel dargestellt wird, festge­ stellt werden, ob der binäre Pixel ein Hintergrundpixel mit einem binären Wert von beispielsweise 0 oder ein Ob­ jektpixel, mit einem binären Wert von beispielsweise 1 ist.
Danach werden alle Kontextwerte für alle binären Pixel innerhalb des BAB's kodiert, um dadurch einen kodierten BAB mit darin kodierten Kontextwerten zu erzeugen, die an einen Decodierer über einen Transmitter übertragen werden sollen.
Der Decodierer dekodiert die kodierten Kontextwerte, um dadurch rekonstruierte Kontextwerte zu erhalten. Basie­ rend auf jedem rekonstruierten Kontextwert wird der Wahr­ scheinlichkeitswert für den entsprechenden binären Pixel bei dem Decodierer aus der Wahrscheinlichkeitstabelle er­ mittelt, die identisch zu derjenigen ist, wie sie in dem oben beschriebenen Codierprozeß verwendet wird, um da­ durch jeden binären Pixel mit einem Wert wie 1 oder 0 zu rekonstruieren, und dadurch einen rekonstruierten BAB für den BAB zu erzeugen.
Es ist im Stand der Technik bekannt, daß die Kontextwerte von binären Pixeln, die jeden binären Pixel umranden bei der Berechnung des Kontextwertes des binären Pixels ver­ wendet werden können, und dadurch die Effizienz des CAE-Codierens von dem BAB zu geändert wird. Ein Verfahren zum Berechnen eines Kontextwertes für einen binären Pixel, wie es in dem bekannten CAE-Codierverfahren verwendet wird, das die Kontextwerte binärer Pixel verwendet, die den binären Pixel umranden, wird nachfolgend mit Bezug auf Fig. 1A bis 1C detaillierter beschrieben.
In Fig. 1A ist ein Satz binärer Pixel 100 innerhalb ei­ nes BAB's oder eines originalen BAB's dargestellt, der binäre Pixel mit Kontextwerten C0 bis C9 und einen bei der Position X angeordneten binären Pixel aufweist, der nachfolgend binärer Pixel X genannt wird. Der Satz binä­ rer Pixel 100 wird zum Berechnen eines Kontextwertes des binären Pixels X verwendet. Im Falle eines Intra-Modus wird der Kontextwert des binären Pixels X, der als C be­ zeichnet wird, unter Verwendung der zehn Kontextwerte C0 bis C9 gemäß der nachfolgend gezeigten Gleichung (1) be­ rechnet;
In der Gl. (1) stellt Ck den binären Wert, entweder 1 oder 0, des binären Pixels mit dem Kontextwert Ck dar.
In Fig. 1B ist ein Satz binärer Pixel 110 innerhalb ei­ nes BAB's in einem aktuellen Bild (oder VOE) dargestellt, wobei der Satz binärer Pixel 110 binäre Pixel mit Kon­ textwerten C'0 bis C'3 und einen bei der Position Y ange­ ordneten Pixel aufweist, der nachfolgend als binärer Pi­ xel Y bezeichnet wird. Im Falle eines Inter-Modus werden in dem aktuellen Bild die Kontextwerte C'0 bis C'3 binä­ rer Pixel in dem Satz binärer Pixel 110 zum Berechnen von C' verwendet, dem Kontextwert des binären Pixels Y.
In Fig. 1C ist ein Satz binärer Pixel 120 innerhalb ei­ nes BAB's dargestellt, der in einem ähnlichsten vorherge­ henden Bild (oder VOE) des aktuellen Bildes (oder VOE's) enthalten ist, wobei im Falle des Inter-Modus Kontextwer­ te C'4 bis C'8 die Kontextwerte sind, die in dem vorher­ gehenden Bild (oder VOE) für die Berechnung des Kon­ textwertes C' berücksichtigt werden. Es wird angenommen, daß der binäre Pixel innerhalb des BAB in dem vorherge­ henden Bild mit dem Kontextwert C'6, in Fig. 1C, dem bi­ nären Pixel Y in Fig. 1B entspricht oder auf diesen ab­ gestimmt ist.
Mit Bezug auf Fig. 1B und 1C wird der Kontextwert C' unter Verwendung der Kontextwerte C'0 bis C'8 nach Gl. (2) berechnet, wobei C'k den binären Wert, entweder 1 oder 0, des binären Pixels mit dem Kontextwert C'k darstellt;
Und anschließend wird der Wahrscheinlichkeitswert für je­ den binären Pixel innerhalb des BAB's, basierend auf des­ sen wie oben berechnetem Kontextwert, unter Verwendung einer vorgegebenen Wahrscheinlichkeitstabelle ermittelt, um dadurch einen rekonstruierten BAB für jeden BAB zu er­ zeugen, der aus binären Werten wie 1 oder 0 besteht. Der rekonstruierte BAB wird anschließend mit dem originalen BAB verglichen, um einen Fehlerdatenblock bereitzustel­ len, der aus Pixeln mit jeweils ersten und zweiten binä­ ren Werten, z. B. 1 und 0, besteht. In diesem Fall stellt der erste binäre Wert dar, daß der Wert eines binären Pi­ xels in dem BAB nicht identisch zu demjenigen eines ent­ sprechenden binären Pixels ist, der an der gleichen Posi­ tion des binären Pixels in dem rekonstruierten BAB ange­ ordnet ist.
Nachfolgend wird der Fehlerdatenblock unter Anwendung ei­ nes bekannten Codierverfahrens kodiert, beispielsweise einem Referenzkontur-basierenden (RCB) Codierverfahren, um dadurch dem Decodierer über den Transmitter einen ko­ dierten Fehlerdatenblock bereitzustellen.
Zusätzlich wird zum Verbessern der Codiereffizienz in dem bekannten CAE-Verfahren eine Vielzahl an Modus-Signalen kodiert, die auf einer BAB-zu-BAB-Basis übertragen werden sollen, anstatt all die kodierten Kontextwerte für binäre Pixel des BAB's zu übertragen. Beispielsweise kann gemäß einem bekannten Modus-Codierverfahren ein Inter/Intra- Modus-Signal, das anzeigt, ob sich der Codierer in dem Inter- oder dem Intra-Modus befindet, ein Modus-Signal, das anzeigt, daß all die Pixel des BAB entweder Hinter­ grund- oder Objektpixel sind, und ein Modus-Signal, das anzeigt, daß ein Bewegungsvektor in dem Inter-Modus gleich 0 ist, für die Übertragung kodiert werden. Der De­ codierer erzeugt einen rekonstruierten BAB so nah wie möglich an dem originalen BAB, basierend auf den kodier­ ten Kontextwerten, dem kodierten Fehlerdatenblock und den kodierten Modus-Signalen, wie oben beschrieben.
Jedoch ist es in dem oben genannten bekannten CAE-Verfahren unausweichlich, eine beträchtliche Anzahl an Datenbits zuzuweisen, um den BAB zu kodieren und ihn an­ schließend zu übertragen, da eine erhebliche Anzahl an Fehlerdaten existiert, welche die Differenz zwischen dem rekonstruierten und dem originalen BAB darstellen.
Und das bekannte oben beschriebene Modus-Kodierverfahren hat Beschränkungen beim Erhöhen der Kodiereffizienz für den BAB.
Es ist Ziel der Erfindung, ein Kontext-basierendes Ver­ fahren zum Codieren eines binären Formsignals zu schaf­ fen, das die Codiereffizienz weiter erhöhen kann.
Die Erfindung erreicht dieses Ziel mit dem Gegenstand des Anspruchs 1. Weitere bevorzugte Ausführungsbeispiele der Erfindung sind in den Unteransprüchen beschrieben.
Nach Anspruch 1 ist ein Verfahren zum Codieren eines bi­ nären Alphablocks (BAB) aus M×N binären Pixeln innerhalb eines aktuellen Bildes geschaffen, basierend auf dem ak­ tuellen Bild und einem vorhergehenden Bild, das eine Mehrzahl an BAB's enthält, wobei M und N jeweils positive geradzahlige ganze Zahlen sind, wobei jeder binäre Pixel einen binären Wert aufweist, der entweder einen Objektpi­ xel oder einen Hintergrundpixel darstellt, bei welchem:
  • a) jede zweite horizontale Linie des BAB's abgetastet wird, um einen ersten Block aus (M/2)×N binären Pixel zu erzeugen, der entweder von einer ersten oder einer zwei­ ten horizontalen Linie des BAB's startet, wobei die erste horizontale Linie die oberste horizontale Linie des BAB's ist;
  • b) jede zweite vertikale Linie des ersten Blockes abge­ tastet wird, um einen ersten Abtastblock aus (M/2)×(N/2) binären Pixeln als eine Basisschicht zu erzeugen, die entweder von einer ersten oder einer zweiten vertikalen Linie des ersten Blockes startet, wobei die erste verti­ kale Linie die am weitesten links liegende Linie des er­ sten Blockes ist;
  • c) ein rekonstruierter erster Block aus (M/2)×N binären Pixel erzeugt wird, indem eine Anzahl an (N/2) rekonstru­ ierter vertikaler Linien sequentiell an Positionen verti­ kaler nicht in dem Schritt (b) abgetasteter Linien unter der Bedingung eingefügt werden, daß die Anzahl an (N/2) vertikaler Linien des ersten Abtastblockes an Positionen der in Schritt (b) abgetasteten vertikalen Linien ange­ ordnet werden, wobei die rekonstruierten vertikalen Lini­ en, basierend auf vertikalen Linien des ersten Abtast­ blockes, erzeugt werden, und jeder binäre Pixel der re­ konstruierten vertikalen Linien, der als ein erster Ziel­ pixel bezeichnet wird, unter Verwendung eines entspre­ chenden ersten Kontextwertes, basierend auf einer vorge­ gebenen Wahrscheinlichkeitstabelle, erzeugt wird, wobei der entsprechende erste Kontextwert für den ersten Ziel­ pixel unter Verwendung der Kontextwerte von 8 binären Pi­ xeln berechnet wird, die einen binären Pixel, der an ei­ ner identischen Position zu derjenigen des ersten Zielpi­ xels innerhalb des vorhergehenden Bildes angeordnet ist, und 7 binäre Pixel umfassen, die jeweils an einer oberen linken, linken, unteren linken, oberen, oberen rechten, rechten und unteren rechten Position des ersten Zielpi­ xels innerhalb des rekonstruierten ersten Blockes ange­ ordnet sind; und
  • d) ein rekonstruierter BAB erzeugt wird, der als ein er­ ster rekonstruierter BAB bezeichnet wird, aus M×N binären Pixeln, indem eine Anzahl an (M/2) rekonstruierter hori­ zontaler Linien sequentiell an Positionen von nicht in dem Schritt (a) abgetasteten horizontalen Linien unter der Bedingung eingefügt werden, daß eine Anzahl an (M/2) horizontaler Linien des rekonstruierten ersten Blockes an Positionen der in dem Schritt (a) abgetasteten horizonta­ len Linien angeordnet werden, wobei die rekonstruierten horizontalen Linien, basierend auf den horizontalen Lini­ en des rekonstruierten ersten Blockes, erzeugt werden, und jeder binäre Pixel, der als ein zweiter Zielpixel be­ zeichnet wird und unter Verwendung eines entsprechenden zweiten Kontextwertes, basierend auf einer vorgegebenen Wahrscheinlichkeitstabelle erzeugt wird, wobei der ent­ sprechende zweite Kontextwert für den zweiten Zielpixel unter Verwendung der Kontextwerte von 8 binären Pixeln berechnet wird, die einen binären Pixel, der an einer identischen Position zu derjenigen des zweiten Zielpixels innerhalb des vorhergehenden Bildes angeordnet ist, und 7 binäre Pixel umfassen, die jeweils an einer oberen lin­ ken, oberen, oberen rechten, linken, unteren linken, un­ teren, unteren rechten Position des zweiten Zielpixels innerhalb des rekonstruierten BAB's angeordnet sind.
Die Erfindung und weitere Vorteile der Erfindung werden nunmehr anhand bevorzugter Ausführungsbeispiele mit Bezug auf die beigefügte Zeichnung näher erläutert. In der Zeichnung zeigen:
Fig. 1A bis 1C Sätze binärer Pixel, die mit ihren Kon­ textwerten markiert sind, um ein bekanntes Kontext- basierendes arithmetisches Codier (CAE) Verfahren zu be­ schreiben;
Fig. 2A bis 2D Sätze binärer Pixel, die mir ihren Kon­ textwerten markiert sind, um ein Kontext-basierendes arithmetisches Codier (CAE) Verfahren gemäß der vorlie­ genden Erfindung zu erläutern.
Gemäß der vorliegenden Erfindung ist ein Verfahren zum Codieren eines binären Formsignals unter Anwendung eines Kontext-basierenden arithmetischen Codier (CAE) Verfah­ rens geschaffen. In Fig. 2A bis 2D sind Sätze binärer Pixel gezeigt, die mir ihren Kontextwerten markiert sind, die für die Beschreibung eines CAE-Verfahrens gemäß einem bevorzugten Ausführungsbeispiel der vorliegenden Erfin­ dung herangezogen werden.
Nachfolgend wird mit Bezug auf Fig. 2A bis 2D das CAE-Verfahren zum Codieren eines binären Alphablocks (BAB) oder eines originalen BAB's aus M×N binären Pixeln, z. B. 16×16 binären Pixeln, innerhalb eines aktuellen Bildes oder einer Video-Objektebene (VOE) beschrieben, basierend auf einem aktuellen und einem vorhergehenden Bild, welche eine Mehrzahl an BAB's enthalten, wobei jeder binäre Pi­ xel einen binären Wert aufweist, der entweder einen Ob­ jektpixel oder einen Hintergrundpixel darstellt, und M und N jeweils positive geradzahlige ganze Zahlen sind.
Zum Codieren des BAB's aus M×N binären Pixeln wird der BAB erst abgetastet oder sub-abgetastet. In einem hori­ zontalen Abtastprozeß für den BAB wird jede zweite hori­ zontale Linie des BAB's abgetastet, um einen ersten Block aus (M/2)×N binären Pixeln zu erzeugen, der entweder von einer ersten oder einer zweiten horizontalen Linie des BAB's startet, wobei die erste horizontale Linie die oberste horizontale Linie des BAB's ist. Anschließend wird in einem vertikalen Abtastprozeß für den ersten Block jede zweite vertikale Linie des ersten Blockes ab­ getastet, um einen ersten Abtastblock aus (M/2)×(N/2) bi­ nären Pixeln als eine Basisschicht zu erzeugen, die von einer ersten oder einer zweiten vertikalen Linie des er­ sten Blockes startet, wobei die erste vertikale Linie die am weitesten links liegende vertikale Linie des ersten Blockes ist. Die Basisschicht wird unter Anwendung eines bekannten CAE-Verfahrens kodiert, um dadurch eine kodier­ te Basisschicht bereitzustellen.
Genauer gesagt, wird im Falle eines Intra-Modus der erste Abtastblock, d. h. die Basisschicht, unter Anwendung eines bekannten Bit-map-basierenden Codierverfahrens, bei­ spielsweise eines CAE-Verfahrens, kodiert, um dadurch die kodierte Basisschicht bereitzustellen. Und im Falle eines Inter-Modus werden erste Abtastblöcke auf dieselbe Art erhalten, indem die ersten Abtastblöcke innerhalb des ak­ tuellen Bildes, wie oben beschrieben, basierend auf ent­ sprechenden BAB's innerhalb des vorhergehenden Bildes er­ zeugt und anschließend die ersten Abtastblöcke innerhalb des vorhergehenden Bildes gespeichert werden. Danach wird ein erster Abtastblock innerhalb des vorhergehenden Bil­ des, der dem ersten Abtastblock in dem aktuellen Bild am ähnlichsten ist, als ein vorhergesagter erster Abtast­ block durch Vergleichen des ersten Abtastblockes inner­ halb des aktuellen Bildes mit den ersten Abtastblöcken innerhalb des vorhergehenden Bildes ermittelt.
Anschließend wird ein Bewegungsvektor ermittelt, der durch einen zweidimensionalen Vektor mit einer horizonta­ len und einer vertikalen Komponente ausgedrückt wird, wo­ bei der Bewegungsvektor eine Verschiebung zwischen dem ersten Abtastblock innerhalb des aktuellen Bildes und dem vorhergesagten ersten Abtastblock innerhalb des vorherge­ henden Bildes darstellt. Auch der Bewegungsvektor wird kodiert, um dadurch einen kodierten Bewegungsvektor zu erzeugen. Fehlerdaten, welche die Differenz zwischen dem ersten Abtastblock innerhalb des aktuellen Bildes und dem vorhergesagten ersten Abtastblock darstellen, werden ko­ diert, um dadurch kodierte Fehlerdaten zu erzeugen. An­ schließend werden der kodierte Bewegungsvektor und die kodierten Fehlerdaten kombiniert, um dadurch die kodierte Basisschicht bereitzustellen.
Zusätzlich wird ein rekonstruierter erster Abtastblock innerhalb des aktuellen Bildes ermittelt, basierend auf den kodierten Fehlerdaten und dem vorhergesagten ersten Abtastblock, wobei der rekonstruierte erste Abtastblock innerhalb des aktuellen Bildes gespeichert wird und an­ schließend in einem Bewegungsabschätzungsprozeß für einen ersten Abtastblock in dem nachfolgenden Bild verwendet wird.
Nachfolgend wird ein Anreicherungsschicht-Codierprozeß für den BAB beschrieben. Zuerst wird in dem Intra-Modus ein rekonstruierter BAB unter Anwendung eines bekannten Rekonstruktionsverfahrens ermittelt, beispielsweise einer Abtastdurchschußtechnik ("Scan Interleaving Technique") (SI), welche ein bekanntes CAE-Verfahren anwendet. Somit wird ein erster rekonstruierter Block aus (M/2)×N binären Pixeln unter Anwendung, z. B. einer SI-Technik erzeugt, welche ein bekanntes CAE-Verfahren anwendet. Genauer ge­ sagt, wird der rekonstruierte erste Block durch sequenti­ elles Einfügen einer Anzahl von (N/2) rekonstruierten vertikalen Linien an Positionen von vertikalen Linien, die in dem vertikalen Abtastprozeß für den ersten Block nicht abgetastet wurden, unter der Bedingung erzeugt, daß die Anzahl an (N/2) vertikalen Linien des ersten Abtast­ blockes an Positionen der vertikalen Linien angeordnet werden, die in dem vertikalen Abtastprozeß abgetastet wurden, wobei die rekonstruierten vertikalen Linien ba­ sierend auf vertikalen Linien des ersten Abtastblockes erzeugt werden und jeder binäre Pixel der rekonstruierten vertikalen Linien unter Verwendung eines hierzu entspre­ chenden Kontextwertes ermittelt wird, welcher unter An­ wendung eines bekannten CAE-Verfahrens erzeugt wird.
Anschließend wird ein rekonstruierter BAB aus M×N binären Pixeln durch sequentielles Einfügen einer Anzahl an (M/2) rekonstruierten horizontalen Linien an Positionen von ho­ rizontalen Linien erzeugt, welche nicht in dem horizonta­ len Abtastprozeß für den BAB abgetastet wurden, unter der Bedingung, daß die Anzahl an (M/2) horizontaler Linien des rekonstruierten ersten Blockes an Positionen der ho­ rizontalen Linien angeordnet werden, welche in dem hori­ zontalen Abtastprozeß abgetastet wurden, wobei rekonstru­ ierte horizontale Linien, basierend auf horizontalen Li­ nien des rekonstruierten ersten Blockes erzeugt werden und jeder binäre Pixel des rekonstruierten horizontalen Linien unter Verwendung eines hierzu entsprechenden Kon­ textwertes ermittelt wird, welcher unter Anwendung eines bekannten CAE-Verfahrens erzeugt wird.
Zwischenzeitlich wird im Falle des Inter-Modus ein rekon­ struierter BAB unter Anwendung eines Rekonstruktionsver­ fahrens gemäß einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung erhalten. Genauer gesagt, wird ein rekonstruierter erster Block durch sequentielles Einfügen einer Anzahl an (N/2) rekonstruierter vertikaler Linien an Positionen von vertikalen Linien erzeugt, welche nicht in dem vertikalen Abtastprozeß für den ersten Block abge­ tastet wurden, unter der Bedingung, daß die Anzahl an (N/2) vertikaler Linien des ersten Abtastblockes an Posi­ tionen der vertikalen Linien angeordnet sind, welche in dem vertikalen Abtastprozeß abgetastet wurden, wobei die rekonstruierten vertikalen Linien basierend auf den ver­ tikalen Linien des ersten Abtastblockes erzeugt werden, und jeder binäre Pixel der rekonstruierten vertikalen Li­ nien unter Verwendung eines hierzu entsprechenden Kon­ textwertes ermittelt wird, welcher unter Anwendung eines CAE-Verfahrens gemäß der vorliegenden Erfindung erzeugt wird.
Anschließend wird ein rekonstruierter BAB aus M×N binären Pixeln durch sequentielles Einfügen einer Anzahl an (M/2) rekonstruierter horizontaler Linien an Positionen der ho­ rizontalen Linien erzeugt, welche nicht in dem horizonta­ len Abtastprozeß für den BAB abgetastet wurden, unter der Bedingung, daß die Anzahl an (M/2) horizontaler Linien des rekonstruierten ersten Blockes an Positionen der ho­ rizontalen Linien angeordnet werden, welche in dem hori­ zontalen Abtastprozeß abgetastet wurden, wobei die rekon­ struierten horizontalen Linien basierend auf den horizon­ talen Linien des rekonstruierten ersten Blockes erzeugt werden und jeder binäre Pixel der rekonstruierten hori­ zontalen Linien unter Verwendung eines hierzu entspre­ chenden Kontextwertes erzeugt wird, der unter Anwendung des CAE-Verfahrens gemäß der vorliegenden Erfindung er­ zeugt wurde.
Das CAE-Verfahren gemäß einem bevorzugten Ausführungsbei­ spiel der vorliegenden Erfindung wird nachfolgend detail­ lierter beschrieben. Nachfolgend wird jeder binäre Pixel der rekonstruierter vertikalen Linien als ein erster Zielpixel bezeichnet, und jeder binäre Pixel der rekon­ struierten horizontalen Linien als ein zweiter Zielpixel. Außerdem wird aus Gründen der Einfachheit angenommen, daß sowohl die horizontalen als auch die vertikalen Linien, die wie oben abgetastet wurden, nachfolgend geradzahlige Linien sind.
Mit Bezug auf Fig. 2A und 2B sind Sätze binärer Pixel 200 und 205 dargestellt, wobei nicht gestrichelte Berei­ che in den Sätzen binärer Pixel 200 und 205 Sätze binärer Pixel von rekonstruierten ersten Blöcken jeweils inner­ halb des aktuellen Bildes und einem vorhergehenden Bild darstellen; und ein gestrichelter Bereich in dem Satz bi­ närer Pixel 200 einen Satz binärer Pixel darstellt, die als Pixel rekonstruierter horizontaler Linien rekonstru­ iert werden und ein gestrichelter Bereich in dem Satz bi­ närer Pixel 205 einen Satz binärer Pixel darstellt, die als Pixel rekonstruierter horizontaler Linien innerhalb des vorhergehenden Bildes rekonstruiert werden.
In Fig. 2A ist ein erster Zielpixel A dargestellt, wobei V0 bis V3 und V5 bis V7 die Kontextwerte der binären Pi­ xel darstellen, welche jeweils an einer oberen linken, linken, unteren linken, oberen und oberen rechten, rech­ ten, unteren rechten Position des erste Zielpixels A in­ nerhalb des rekonstruierten ersten Blockes angeordnet sind, wie es dort gezeigt ist. Diese Kontextwerte sind zuvor bekannt. Jedoch ist der Kontextwert des binären Pi­ xels unterhalb des ersten Zielpixels A nicht bekannt und bleibt daher leer.
Der Kontextwert des ersten Zielpixels A, der nachfolgend als ein erster Kontextwert V bezeichnet wird, wird unter Verwendung der Kontextwerte V0 bis V3 und V5 bis V7 und eines Kontextwertes eines binären Pixels, der an einer identischen Position zu derjenigen des ersten Zielpixels A in dem vorhergehenden Bild (oder VOE) angeordnet ist, welcher wie in Fig. 2B dargestellt als V4 bezeichnet wird, gemäß nachfolgender Gl. (3) berechnet;
In Gl. (3) stellt Vk einen binären Wert, entweder 1 oder 0, des binären Pixels mit dem Kontextwert Vk dar. Falls es keinen binären Pixel mit dem Kontextwert Vk gibt, wird Vk zu 0 gesetzt. Der gemäß Gl. (3) berechnete erste Kon­ textwert V kann Wert von 0 bis 255 annehmen. Auf diese Weise werden die Kontextwerte von allen binären Pixeln auf den rekonstruierten vertikalen Linien berechnet, de­ ren binäre Werte nicht bekannt sind. Anschließend wird durch Nachsehen berechneter Kontextwerte in einer vorge­ gebenen Wahrscheinlichkeitstabelle der rekonstruierte er­ ste Block erzeugt.
In dem oben beschriebenen bevorzugten Ausführungsbeispiel der vorliegenden Erfindung ist k, welche die Ordnung bzw. Reihenfolge des Kontextwertes Vk unter den beim Berechnen des ersten Kontextwertes des ersten Zielpixels A verwen­ deten acht Kontextwerten darstellt, einer solchen Ordnung bzw. Reihenfolge gefolgt, daß eine linke vertikale Linie und eine obere horizontale Linie zuerst kommen. Dies kann beispielsweise in eine sogenannte Rasterabtastordnung bzw. -reihenfolge geändert werden, in deren Fall die vor­ gegebene Wahrscheinlichkeitstabelle sich entsprechend än­ dert.
Mit Bezug auf Fig. 2C und 2D sind Sätze binärer Pixel 210 und 215 in rekonstruierten BAB's jeweils innerhalb des aktuellen und des vorhergehenden Bildes dargestellt. In Fig. 2C ist ein zweiter Zielpixel B dargestellt, wo­ bei V'0 bis V'3 und V'5 bis V'7 die Kontextwerte der bi­ nären Pixel darstellen, die jeweils an einer oberen lin­ ken, oberen, oberen rechten, linken und unteren linken, unteren, unteren rechten Position des zweiten Zielpixels B angeordnet sind, wie dort gezeigt. Diese Kontextwerte sind zuvor bekannt. Jedoch ist der Kontextwert des binä­ ren Pixels rechts zum zweiten Zielpixel B nicht bekannt und bleibt daher leer.
Der Kontextwert des zweiten Zielpixels B, der nachfolgend als ein zweiter Kontextwert V' bezeichnet wird, wird un­ ter Verwendung der Kontextwerte V'0 bis V'3 und V'5 bis V'7 und eines Kontextwertes eines binären Pixels, der an einer identischen Position zu derjenigen des zweiten Zielpixels B innerhalb des vorhergehenden Bildes (oder VOE's) angeordnet ist, welcher wie in Fig. 2D darge­ stellt als V'4 bezeichnet wird, gemäß der nachfolgenden Gl. (4) berechnet;
In der Gl. (4) stellt V'k einen binären Wert, entweder 1 oder 0, des binären Pixels mit dem Kontextwert V'k dar. Falls es keinen binären Pixel mit dem Kontextwert V'k gibt, wird V'k zu 0 gesetzt. Der gemäß Gl. (4) berechnete zweite Kontextwert von V' kann Werte von 0 bis 255 anneh­ men. Auf diese Weise werden die Kontextwerte von allen binären Pixeln auf den rekonstruierten horizontalen Lini­ en berechnet, deren binäre Werte nicht bekannt sind. An­ schließend wird durch Nachsehen berechneter Kontextwerte in einer vorgegebenen Wahrscheinlichkeitstabelle der re­ konstruierte BAB erzeugt.
In dem oben beschriebenen bevorzugten Ausführungsbeispiel der vorliegenden Erfindung ist k, welche die Ordnung bzw. Reihenfolge der Kontextwerte V'k unter den bei der Be­ rechnung des zweiten Kontextwertes des zweiten binären Pixels B verwendeten acht Kontextwerte darstellt, einer Rasterabtastordnung bzw. -reihenfolge gefolgt. Dies kann beispielsweise in eine Ordnung bzw. Reihenfolge geändert werden, bei welcher eine obere horizontale Linie und eine linke vertikale Linie zuerst kommen. In diesem Fall än­ dert sich die vorgegebene Wahrscheinlichkeitstabelle ent­ sprechend. Folglich sei hier bemerkt, daß gespeicherte Ordnungen bzw. Reihenfolgen der Kontextwerte in der vor­ gegebenen Wahrscheinlichkeitstabelle unter der Bedingung geändert werden können, daß die vorgegebene Wahrschein­ lichkeitstabelle entsprechend der Ordnungen bzw. Reihen­ folgen vorbereitet wurde.
In dem Inter-Modus kann der rekonstruierte BAB, der gemäß dem CAE-Verfahren gemäß der vorliegenden Erfindung erhal­ ten wird, das als eine Art Interpolationsverfahren be­ zeichnet werden kann, Fehler zwischen dem rekonstruierten BAB und dem originalen BAB im Vergleich zu einem bekann­ ten Verfahren reduzieren. Der rekonstruierte BAB, der un­ ter Anwendung eines Interpolationsverfahrens gemäß der vorliegenden Erfindung erhalten wird, wird nachfolgend als einer erster rekonstruierter BAB bezeichnet.
Jedoch kann in manchen Fällen in dem Inter-Modus ein CAE-Verfahren gemäß der vorliegenden Erfindung unter Verwen­ dung eines Einfügeverfahrens anstelle eines solchen In­ terpolationsverfahrens den Fehler zwischen dem rekonstru­ ierten und dem originalen BAB weiter reduzieren. Folglich wird gemäß einem bevorzugten Ausführungsbeispiel der vor­ liegenden Erfindung unter dem Einfüge- und dem Interpola­ tionsverfahren das vorteilhaftere ausgewählt, um die Co­ diereffizienz zu erhöhen.
Beispielsweise kann in dem Inter-Modus ein rekonstruier­ ter BAB aus M×N binären Pixeln unter Anwendung eines Ein­ fügeverfahrens erhalten werden, das nachfolgend beschrie­ ben wird. Genauer gesagt, wird zuerst jeder der ersten Abtastblöcke aus (M/2)×(N/2) binären Pixeln innerhalb des vorhergehenden Bildes (oder VOE's) von jedem entsprechen­ den ersten Block aus (M/2)×N binären Pixeln innerhalb des vorhergehenden Bildes (oder VOE's) subtrahiert, um zweite Abtastblöcke aus (M/2)×(N/2) binären Pixeln innerhalb des vorhergehenden Bildes (oder VOE's) zu erzeugen und zu speichern. Jeder der entsprechenden ersten Blöcke inner­ halb des vorhergehenden Bildes (oder VOE's) wird von je­ dem der entsprechenden BAB's innerhalb des vorhergehenden Bildes (oder VOE's) subtrahiert, um zweite Blöcke aus (M/2)×N binären Pixeln innerhalb des vorhergehenden Bil­ des (oder VOE's) zu erzeugen und zu speichern.
Ein zweiter Abtastblock aus (M/2)×(N/2) binären Pixeln innerhalb des aktuellen Bildes (oder VOE's) wird durch Subtrahieren des ersten Abtastblockes aus (M/2)×(N/2) bi­ nären Pixeln von dem ersten Block aus (M/2)×N binären Pi­ xeln ermittelt, der basierend auf einem BAB oder einem originalen BAB innerhalb des aktuellen Bildes (oder VOE's) ermittelt wird. Anschließend wird, basierend auf dem Bewegungsvektor ein dem zweiten Abtastblock innerhalb des aktuellen Bildes ähnlichster zweiter Abtastblockierer unter den zweiten Abtastblöcken innerhalb des vorherge­ henden Bildes als ein vorhergesagter zweiter Abtastblock ermittelt.
Ein rekonstruierter erster Block innerhalb des aktuellen Bildes wird durch sequentielles Anordnen oder Einfügen vertikaler Linien des vorhergesagten zweiten Abtastbloc­ kes als dessen ungeradzahlige vertikale Linie unter der Bedingung erzeugt, daß vertikale Linien des ersten Ab­ tastblockes innerhalb des aktuellen Bildes als dessen ge­ radzahlige vertikale Linien angeordnet werden. Als Ergeb­ nis wird der rekonstruierte erste Block aus (M/2)×N binä­ ren Pixeln innerhalb des aktuellen Bildes durch das Ein­ fügeverfahren bereitgestellt.
Danach wird in dem Inter-Modus ein zweiter Block aus (M/2)×N binären Pixeln innerhalb des aktuellen Bildes (oder VOE's) durch Subtrahieren des ersten Blockes aus (M/2)×N binären Pixeln von dem BAB aus M×N binären Pixeln erhalten, und anschließend wird der zweite Block abge­ speichert. Dann wird, basierend auf dem Bewegungsvektor, ein dem zweiten Block innerhalb des aktuellen Bildes ähn­ lichster zweiter Block unter den zweiten Blöcken inner­ halb des vorhergehenden Bildes als ein vorhergesagter zweiter Block ermittelt. Ein rekonstruierter BAB aus M×N binären Pixeln wird durch sequentielles Anordnen oder Einfügen horizontaler Linien des vorhergesagten zweiten Blockes als dessen ungeradzahlige horizontale Linien un­ ter der Bedingung erzeugt, daß horizontale Linien des BAB innerhalb des aktuellen Bildes als dessen ungeradzahlige horizontale Linien angeordnet werden. Als Ergebnis wird der rekonstruierte BAB aus M×N binären Pixeln durch das Einfügeverfahren bereitgestellt, der als ein zweiter re­ konstruierter BAB bezeichnet wird.
Gemäß dem bevorzugten Ausführungsbeispiel der Erfindung werden der erste und der zweite rekonstruierte BAB ko­ diert, um dadurch jeweils kodierte erste und zweite re­ konstruierte BAB's zu erzeugen, und dann werden eine er­ ste und eine zweite Anzahl an Datenbits jeweils für den kodierten ersten und zweiten rekonstruierten BAB berech­ net. Anschließend wird die erste Anzahl an Datenbits mit der zweiten Anzahl an Datenbits verglichen.
Falls die erste Anzahl an Datenbits gleich oder geringer als die zweite Anzahl an Datenbits ist, werden der erste rekonstruierte BAB und der kodierte erste rekonstruierte BAB jeweils als ein ausgewählter rekonstruierter BAB und als ein ausgewählter kodierter rekonstruierter BAB ausge­ wählt. Andernfalls, d. h., daß die erste Anzahl an Daten größer als die zweite Anzahl an Datenbits ist, werden der zweite rekonstruierte BAB und der kodierte zweite rekon­ struierte BAB jeweils als ein ausgewählter rekonstruier­ ter BAB und ein ausgewählter kodierter rekonstruierter BAB ausgewählt.
Anschließend wird der Fehlerdatenblock kodiert, der die Differenz zwischen dem BAB, d. h. dem originalen BAB in­ nerhalb des aktuellen Bildes, und dem ausgewählten rekon­ struierten BAB darstellt, und dadurch ein Fehlerdaten­ block unter Anwendung eines bekannten Fehlerdatenblock-Codierverfahrens, z. B. eines Referenzkontur-basierenden Codier (RCB) Verfahrens erzeugt.
Zwischenzeitlich werden in dem Inter-Modus Modus-Signale mit Bezug auf das Codieren des ersten und des zweiten re­ konstruierten BAB's und des Fehlerdatenblocks erzeugt, wobei die Modus-Signale vier nachfolgend beschriebenen Moden darstellen. Jeder der vier Modus-Signale ist näm­ lich ein Modus-Signal, das einen der folgenden vier Moden darstellt:
  • 1) einem ersten Modus, der anzeigt, daß der erste rekon­ struierte BAB als der ausgewählte rekonstruierte BAB aus­ gewählt wurde; und kein Fehler zwischen dem ausgewählten rekonstruierten BAB und dem originalen BAB vorliegt, wo­ durch das Codieren des ausgewählten rekonstruierten BAB nicht erforderlich ist; und daher wurde der ausgewählte rekonstruierte BAB nicht kodiert wurde;
  • 2) einem zweiten Modus, der anzeigt, daß der erste re­ konstruierte BAB als der selektierte rekonstruierte BAB ausgewählt wurde; und einige Fehler zwischen dem ausge­ wählten rekonstruierten BAB und dem originalen BAB vor­ liegen, wodurch das Codieren des ausgewählten rekonstru­ ierten BAB's erforderlich ist; und dementsprechend der ausgewählte rekonstruierte BAB kodiert wurde;
  • 3) einem dritten Modus, der anzeigt, daß der zweite re­ konstruierte BAB als der selektierte rekonstruierte BAB ausgewählt wurde; und kein Fehler zwischen dem selektier­ ten rekonstruierten BAB und dem originalen BAB vorliegt, wodurch das Codieren des ausgewählten rekonstruierten BAB nicht erforderlich ist; und folglich der ausgewählte re­ konstruierte BAB nicht kodiert wurde;
  • 4) einem vierten Modus, der anzeigt, daß der zweite re­ konstruierte BAB als der selektierte rekonstruierte BAB ausgewählt wurde; und einige Fehler zwischen dem ausge­ wählten rekonstruierten BAB und dem originalen BAB vor­ liegen, wodurch das Codieren des rekonstruierten BAB's erforderlich wurde; und folglich der selektierte rekon­ struierte BAB kodiert wurde.
Anschließend werden die Modus-Signale kodiert, um dadurch kodierte Modus-Signale zu erzeugen. Dann werden ein ko­ diertes Modus-Signal, das sich auf einen der vier oben beschriebenen Moden bezieht, der ausgewählte kodierte re­ konstruierte BAB und der kodierte Fehlerdatenblock forma­ tiert, um dadurch eine kodierte Anreicherungsschicht be­ reitzustellen.
Gemäß der vorliegenden Erfindung kann die Codiereffizienz für die Anreicherungsschicht durch Verwenden der verbes­ serten Kontextwerte in einem CAE-Verfahren und durch ge­ eignetes Kombinieren der Modus-Signale beim Codieren ei­ nes binären Formsignals, z. B. eines BAB's, verbessert werden.
Während die vorliegende Erfindung lediglich anhand be­ stimmter bevorzugter Ausführungsbeispiele beschrieben wurde, sind weitere Modifikationen und Änderungen für den Durchschnittsfachmann ohne weiteres möglich, ohne den Er­ findungsbereich und die Erfindungsidee der vorliegenden Erfindung zu verlassen, wie sie in den nachfolgenden An­ sprüchen beschrieben wird.

Claims (11)

1. Verfahren zum Codieren eines binären Alphablocks (BAB) aus M×N binären Pixeln innerhalb eines aktuel­ len Bildes, basierend auf dem aktuellen Bild und ei­ nem vorhergehenden Bild, die eine Mehrzahl an BAB's enthalten, wobei M und N jeweils positive geradzah­ lige ganze Zahlen sind und jeder binäre Pixel einen binären Wert aufweist, der entweder einen Objektpi­ xel oder einen Hintergrundpixel darstellt, bei wel­ chem:
  • a) jede zweite horizontale Linie des BAB's abgeta­ stet wird, um einen ersten Block aus (M/2)×N binären Pixel zu erzeugen, der entweder von einer ersten oder einer zweiten horizontalen Linie des BAB's startet, wobei die erste horizontale Linie die ober­ ste horizontale Linie des BAB's ist;
  • b) jede zweite vertikale Linie des ersten Blockes abgetastet wird, um einen ersten Abtastblock aus (M/2)×(N/2) binären Pixeln als eine Basisschicht zu erzeugen, die entweder von einer ersten oder einer zweiten vertikalen Linie des ersten Blockes startet, wobei die erste vertikale Linie die am weitesten links liegende Linie des ersten Blockes ist;
  • c) ein rekonstruierter erster Block aus (M/2)×N bi­ nären Pixel erzeugt wird, indem eine Anzahl an (N/2) rekonstruierter vertikaler Linien sequentiell an Po­ sitionen vertikaler nicht in dem Schritt (b) abgeta­ steter Linien unter der Bedingung eingefügt werden, daß die Anzahl an (N/2) vertikaler Linien des ersten Abtastblockes an Positionen der in Schritt (b) abge­ tasteten vertikalen Linien angeordnet werden, wobei die rekonstruierten vertikalen Linien, basierend auf vertikalen Linien des ersten Abtastblockes, erzeugt werden, und jeder binäre Pixel der rekonstruierten vertikalen Linien, der als ein erster Zielpixel be­ zeichnet wird, unter Verwendung eines entsprechenden ersten Kontextwertes, basierend auf einer vorgegebe­ nen Wahrscheinlichkeitstabelle, erzeugt wird, wobei der entsprechende erste Kontextwert für den ersten Zielpixel unter Verwendung der Kontextwerte von 8 binären Pixeln berechnet wird, die einen binären Pi­ xel, der an einer identischen Position zu derjenigen des ersten Zielpixels innerhalb des vorhergehenden Bildes angeordnet ist, und 7 binäre Pixel umfassen, die jeweils an einer oberen linken, linken, unteren linken, oberen, oberen rechten, rechten und unteren rechten Position des ersten Zielpixels innerhalb des rekonstruierten ersten Blockes angeordnet sind; und
  • d) ein rekonstruierter BAB erzeugt wird, der als ein erster rekonstruierter BAB bezeichnet wird, aus M×N binären Pixeln, indem eine Anzahl an (M/2) re­ konstruierter horizontaler Linien sequentiell an Po­ sitionen von nicht in dem Schritt (a) abgetasteten horizontalen Linien unter der Bedingung eingefügt werden, daß eine Anzahl an (M/2) horizontaler Linien des rekonstruierten ersten Blockes an Positionen der in dem Schritt (a) abgetasteten horizontalen Linien angeordnet werden, wobei die rekonstruierten hori­ zontalen Linien, basierend auf den horizontalen Li­ nien des rekonstruierten ersten Blockes, erzeugt werden, und jeder binäre Pixel, der als ein zweiter Zielpixel bezeichnet wird, unter Verwendung eines entsprechenden zweiten Kontextwertes, basierend auf einer vorgegebenen Wahrscheinlichkeitstabelle, er­ zeugt wird, wobei der entsprechende zweite Kon­ textwert für den zweiten Zielpixel unter Verwendung der Kontextwerte von 8 binären Pixeln berechnet wird, die einen binären Pixel, der an einer identi­ schen Position zu derjenigen des zweiten Zielpixels innerhalb des vorhergehenden Bildes angeordnet ist, und 7 binäre Pixel umfassen, die jeweils an einer oberen linken, oberen, oberen rechten, linken, unte­ ren linken, unteren, unteren rechten Position des zweiten Zielpixels innerhalb des rekonstruierten BAB's angeordnet sind.
2. Verfahren nach Anspruch 1, bei welchem im Schritt (a) geradzahlige horizontale Linien des BAB's abge­ tastet werden, um den ersten Block zu erzeugen, und im Schritt (b) geradzahlige vertikale Linien des er­ sten Blockes abgetastet werden, um den ersten Ab­ tastblock zu erzeugen.
3. Verfahren nach Anspruch 1 oder 2, bei welchem das aktuelle und das vorhergehende Bild jeweils durch eine aktuelle Videoobjektebene (VOE) und eine vor­ hergehende VOE ersetzt werden.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem im Schritt (c) der erste entsprechende Kontextwert, der als V bezeichnet wird, unter Ver­ wendung von Kontextwerten V0 bis V7 der 8 binären Pixel gemäß der nachfolgenden Gleichung Gl. (3) be­ rechnet wird:
wobei Vk einen binären Wert, entweder 1 oder 0, eines binären Pixels mit dem Kontextwert Vk darstellt, und falls es keinen binären Pixel mit dem Kontextwert Vk gibt, wird Vk zu 0 gesetzt.
5. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem im Schritt (d) der zweite entsprechende Kontextwert, der als V' bezeichnet wird, unter Ver­ wendung von Kontextwerten V'0 bis V'7 der 8 binären Pixel gemäß der nachfolgenden Gleichung Gl. (4) be­ rechnet wird:
wobei Vk einen binären Wert, entweder 1 oder 0, eines binären Pixels mit dem Kontextwert V'k darstellt, und falls es keinen binären Pixel mit dem Kon­ textwert V'k gibt, wird V'k zu 0 gesetzt.
6. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem nach Schritt (d):
  • e) im Falle eines Intra-Modus der erste Abtastblock unter Verwendung eines Bit-map-basierenden Codier­ verfahrens kodiert wird, um dadurch eine kodierte Basisschicht bereitzustellen; und
  • f) im Falle eines Inter-Modus, basierend auf ent­ sprechenden BAB's innerhalb des vorhergehenden Bil­ des, erste Abtastblöcke auf dieselbe Art ermittelt werden, wie die ersten Abtastblöcke innerhalb des aktuellen Bildes, wie in den Schritten (a) und (b) beschrieben, erzeugt werden, und anschließend die ersten Abtastblöcke innerhalb des vorhergehenden Bildes gespeichert werden; der erste Abtastblock in­ nerhalb des aktuellen Bildes mit den ersten Abtast­ blöcken innerhalb des vorhergehenden Bildes vergli­ chen wird, um einen dem ersten Abtastblock innerhalb des aktuellen Bildes ähnlichsten ersten Abtastblock innerhalb des vorhergehenden Bildes als einen vor­ hergesagten ersten Abtastblock zu erfassen; ein Be­ wegungsvektor ermittelt wird, der durch einen zwei­ dimensionalen Vektor mit einer horizontalen und ei­ ner vertikalen Komponente ausgedrückt wird und eine Verschiebung zwischen dem ersten Abtastblock inner­ halb des aktuellen Bildes und dem vorhergesagten er­ sten Abtastblock darstellt; der Bewegungsvektor ko­ diert wird, um dadurch einen kodierten Bewegungsvek­ tor zu erzeugen; kodierte Fehlerdaten, welche die Differenz zwischen dein ersten Abtastblock innerhalb des aktuellen Bildes und dem vorhergesagten ersten Abtastblock darstellen, kodiert werden, um dadurch kodierte Fehlerdaten zu erzeugen; und der kodierte Bewegungsvektor und die kodierten Fehlerdaten kombi­ niert werden, um dadurch kodierte Basisschichtdaten bereitzustellen.
7. Verfahren nach Anspruch 6, bei welchem ferner nach Schritt (f) in dem Inter-Modus:
  • g) jeder der ersten Abtastblöcke aus (M/2)×(N/2) binären Pixeln innerhalb des vorhergehenden Bildes von jedem der entsprechenden ersten Blöcke aus (M/2)×N binären Pixeln innerhalb des vorhergehenden Bildes subtrahiert wird, um zweite Abtastblöcke aus (M/2)×(N/2) binären Pixeln innerhalb des vorherge­ henden Bildes zu erzeugen und zu speichern, und je­ der der entsprechenden ersten Blöcke innerhalb des vorhergehenden Bildes von jedem der entsprechenden BAB's innerhalb des vorhergehenden Bildes subtra­ hiert wird, um zweite Blöcke aus (M/2)×N binären Pi­ xeln innerhalb des vorhergehenden Bildes zu erzeugen und zu speichern;
  • h) der erste Abtastblock aus (M/2)×(N/2) binären Pixeln innerhalb des aktuellen Bildes von dem ersten Block aus (M/2)×N binären Pixeln innerhalb des aktu­ ellen Bildes subtrahiert wird, um einen zweiten Ab­ tastblock aus (M/2)×(N/2) binären Pixeln innerhalb des aktuellen Bildes zu erzeugen;
  • i) unter den zweiten Abtastblöcken innerhalb des vorhergehenden Bildes ein dem zweiten Abtastblock innerhalb des aktuellen Bildes ähnlichster zweiter Abtastblock als ein vorhergesagter zweiter Abtast­ block ermittelt wird, basierend auf dem Bewegungs­ vektor;
  • j) ein rekonstruierter erster Block durch sequenti­ elles Anordnen von vertikalen Linien des vorherge­ sagten zweiten Abtastblockes als dessen ungeradzah­ lige vertikale Linien unter der Bedingung erzeugt wird, daß die vertikalen Linien des ersten Abtast­ blockes innerhalb des aktuellen Bildes als dessen ungeradzahlige vertikale Linien angeordnet werden;
  • k) der erste Block aus (M/2)×N binären Pixeln in­ nerhalb des aktuellen Bildes von dem BAB aus M×N bi­ nären Pixeln innerhalb des aktuellen Bildes subtra­ hiert wird, um einen zweiten Block aus (M/2)×N binä­ ren Pixeln innerhalb des aktuellen Bildes zu erzeu­ gen;
  • l) unter den zweiten Blöcken innerhalb des vorher­ gehenden Bildes ein dem zweiten Block innerhalb des aktuellen Bildes ähnlichster zweiter Block als ein vorhergesagter zweiter Block erfaßt wird, basierend auf dem Bewegungsvektor; und
  • m) ein rekonstruierter BAB aus M×N binären Pixeln, der als ein zweiter rekonstruierter BAB bezeichnet wird, durch sequentielles Anordnen von horizontalen Linien des vorhergesagten zweiten Blockes als dessen ungeradzahlige horizontale Linien unter der Bedin­ gung erzeugt wird, daß die horizontalen Linien des ersten Blockes innerhalb des aktuellen Bildes als dessen ungeradzahlige horizontale Linien angeordnet werden.
8. Verfahren nach Anspruch 7, bei welchem nach Schritt
  • m) in dem Inter-Modus:
  • n) der erste und der zweite rekonstruierte BAB ko­ diert werden, um dadurch jeweils einen ersten und einen zweiten kodierten rekonstruierten BAB zu er­ zeugen;
  • o) eine erste und eine zweite Anzahl an Datenbits für jeweils den ersten und den zweiten kodierten re­ konstruierten BAB berechnet werden;
  • p) die erste Anzahl an Datenbits mit der zweiten Anzahl an Datenbits verglichen wird, um dadurch den ersten rekonstruierten BAB und den ersten kodierten rekonstruierten BAB als jeweils einen ausgewählten rekonstruierten BAB und einen ausgewählten kodierten rekonstruierten BAB auszuwählen, falls die erste An­ zahl an Datenbits gleich oder kleiner als die zweite Anzahl an Datenbits ist; den zweiten rekonstruierten BAB und den zweiten kodierten rekonstruierten BAB jeweils als einen ausgewählten rekonstruierten BAB und als einen ausgewählten kodierten rekonstruierten BAB auszuwählen, falls die erste Anzahl an Datenbits größer als die zweite Anzahl an Datentbits ist; und
  • q) ein Fehlerdatenblock kodiert wird, der den Un­ terschied zwischen dem BAB, der als ein originaler BAB innerhalb des aktuellen Bildes bezeichnet wird, und dem ausgewählten rekonstruierten BAB darstellt, und dadurch ein kodierter Fehlerdatenblock erzeugt wird.
9. Verfahren nach Anspruch 8, bei welchem nach Schritt
  • q) in dem Inter-Modus ferner:
  • r) Modus-Signale erzeugt werden, wobei jedes der Modus-Signale ein Modus-Signal ist, das einen der vier Moden darstellt, mit (1) einem ersten Modus, der anzeigt, daß der erste rekonstruierte BAB als der ausgewählte rekonstruierte BAB ausgewählt wurde; und kein Fehler zwischen dem ausgewählten rekonstru­ ierten BAB und dem originalen BAB vorliegt, wodurch das Codieren des ausgewählten rekonstruierten BAB's nicht erforderlich wird; und daher der ausgewählte rekonstruierte BAB nicht kodiert wurde; (2) einen zweiten Modus, der darstellt, daß der erste rekon­ struierte BAB als der ausgewählte rekonstruierte BAB ausgewählt wurde; und einige Fehler zwischen dem ausgewählten rekonstruierten BAB und dem originalen BAB vorliegen, wodurch das Codieren des ausgewählten rekonstruierten BAB's erforderlich wurde; und ent­ sprechend der ausgewählte rekonstruierte BAB kodiert wurde; (3) einem dritten Modus, der anzeigt, daß der zweite rekonstruierte BAB als der ausgewählte rekon­ struierte BAB ausgewählt wurde, und kein Fehler zwi­ schen dem ausgewählten rekonstruierten BAB und dem originalen BAB vorliegt, wodurch das Codieren des ausgewählten rekonstruierten BAB's nicht erforder­ lich wurde; und folglich der ausgewählte rekonstru­ ierte BAB nicht kodiert wurde; (4) einem vierten Mo­ dus, der anzeigt, daß der zweite rekonstruierte BAB als ausgewählter rekonstruierter BAB ausgewählt wur­ de; und einige Fehler zwischen dem ausgewählten re­ konstruierten BAB und dem originalen BAB vorliegen, wodurch das Codieren des rekonstruierten BAB's er­ forderlich wurde; und folglich der ausgewählte re­ konstruierte BAB kodiert wurde.
10. Verfahren nach Anspruch 9, bei welchem nach Schritt
  • r) in dem Inter-Modus:
  • s) die Modus-Signale kodiert werden, um dadurch ko­ dierte Modus-Signale zu erzeugen;
  • t) ein kodiertes Modus-Signal das sich auf eines der vier Moden bezieht, der ausgewählte rekonstru­ ierte BAB und der kodierte Fehlerdatenblock forma­ tiert werden, um dadurch eine kodierte Anreiche­ rungsschicht bereitzustellen.
11. Verfahren nach einem der vorhergehenden Ansprüche, wobei sowohl M als auch N gleich 16 sind.
DE1997144859 1997-08-30 1997-10-10 Verfahren zum Codieren eines binären Formsignals Expired - Fee Related DE19744859B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR97-44087 1997-08-30
KR1019970044087A KR100255754B1 (ko) 1997-08-30 1997-08-30 이진 형상 신호 부호화 방법

Publications (2)

Publication Number Publication Date
DE19744859A1 true DE19744859A1 (de) 1999-03-04
DE19744859B4 DE19744859B4 (de) 2005-08-18

Family

ID=19520004

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1997144859 Expired - Fee Related DE19744859B4 (de) 1997-08-30 1997-10-10 Verfahren zum Codieren eines binären Formsignals

Country Status (7)

Country Link
US (1) US6133955A (de)
JP (1) JP3976854B2 (de)
KR (1) KR100255754B1 (de)
CN (1) CN1159922C (de)
DE (1) DE19744859B4 (de)
FR (1) FR2768003B1 (de)
GB (1) GB2328821B (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100535632B1 (ko) * 1997-10-17 2006-04-12 주식회사 팬택앤큐리텔 적응적으로 보더링하는 모양정보 부호화/복호화 장치 및 방법
KR100303085B1 (ko) * 1998-04-24 2001-09-24 전주범 이진형상신호부호화장치및방법
WO2004079132A1 (en) * 2003-02-28 2004-09-16 James Hardie International Finance B.V. Fiber cement fence system
KR100679031B1 (ko) * 2004-12-03 2007-02-05 삼성전자주식회사 다 계층 기반의 비디오 인코딩 방법, 디코딩 방법 및 상기방법을 이용한 장치
KR100670459B1 (ko) * 2004-12-10 2007-01-16 엘지전자 주식회사 영상 압축 부호화 및 복호화 방법과 장치
KR100747587B1 (ko) * 2006-03-31 2007-08-08 엘지전자 주식회사 움직임 추정 방법 및 장치
US7865025B2 (en) * 2006-08-01 2011-01-04 Ching-Wei Yeh Data processing method in embedded block coding with optimized truncation module
CN107529706B (zh) 2011-06-16 2020-11-17 Ge视频压缩有限责任公司 解码器、编码器、解码和编码视频的方法及存储介质
UA114674C2 (uk) 2011-07-15 2017-07-10 ДЖ.І. ВІДІЕУ КЕМПРЕШН, ЛЛСі Ініціалізація контексту в ентропійному кодуванні
US9729890B2 (en) 2012-01-12 2017-08-08 Hfi Innovation Inc. Method and apparatus for unification of significance map context selection
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
US9883197B2 (en) 2014-01-09 2018-01-30 Qualcomm Incorporated Intra prediction of chroma blocks using the same vector
KR102499355B1 (ko) 2016-02-26 2023-02-13 벌시테크 리미티드 손실 및 무손실 영상 압축을 위한 형상-적응형 모델-기반 코덱

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5929915A (en) * 1997-12-02 1999-07-27 Daewoo Electronics Co., Ltd. Interlaced binary shape coding method and apparatus
GB2333412B (en) * 1998-01-20 2002-05-15 Daewoo Electronics Co Ltd Context-based arithmetic encoding/decoding apparatus

Also Published As

Publication number Publication date
GB9721072D0 (en) 1997-12-03
FR2768003A1 (fr) 1999-03-05
KR100255754B1 (ko) 2000-05-01
GB2328821A (en) 1999-03-03
KR19990020622A (ko) 1999-03-25
US6133955A (en) 2000-10-17
DE19744859B4 (de) 2005-08-18
JP3976854B2 (ja) 2007-09-19
CN1159922C (zh) 2004-07-28
FR2768003B1 (fr) 2004-08-13
CN1210429A (zh) 1999-03-10
GB2328821B (en) 2002-01-30
JPH1175179A (ja) 1999-03-16

Similar Documents

Publication Publication Date Title
DE60015566T2 (de) Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes
DE69029725T2 (de) Hybrides hierarchisches verfahren auf basis von resten, zur speicherung und anzeige von hochauflösenden digitalen bildern in einer mehrzweckumgebung
DE69120139T2 (de) Gerät und Verfahren zur adaptiven Kompression von aufeinanderfolgenden Blöcken eines digitalen Videosignals
DE3851468T2 (de) Kodierungsverfahren von Bildsignalen.
DE68926802T2 (de) Videofernmeldesystem und -verfahren zur Kompression und Dekompression von digitalen Farbvideodaten
DE69636277T2 (de) Verfahren und Vorrichtung zur Erzeugung von Farbart-Forminformation einer Video-Objektebene in einem Videosignal
DE3881213T2 (de) Bildübertragungssystem mit einer vorschaumode.
DE60114812T2 (de) Videoformat konvertierung und transkodierung von mpeg-2 in mpeg-4
DE19739266B4 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
DE3109795A1 (de) Bandeinengungsverfahren fuer getoente bilder
DE69125315T2 (de) Kodierverfahren und Kodiervorrichtung
DE2740945A1 (de) Verfahren zum uebertragen von bildsignalen mit hilfe der differenz-puls- code-modulation (dpcm) und gesteuertem quantisierer
DE19744859A1 (de) Verfahren zum Codieren eines binären Formsignals
EP0490983B1 (de) Verfahren, Coder und Decoder zur Übertragung und zum kompatiblen Empfang von standardisierten Fernsehsignalen
DE69630297T2 (de) Weiterentwickeltes fernsehsystem
DE19816898B4 (de) Vorrichtung und Verfahren zum adaptiven Codieren eines Bildsignals
DE69729438T2 (de) Verfahren und Gerät zur prädiktiven Kodierung der Objektinformation von Videosignalen
DE69126525T2 (de) Digitale bildverarbeitung mit filterung der blockkanten
DE68923648T2 (de) Komprimierung und Dekomprimierung von digitalen statistisch kodierten Farbvideodaten.
DE19749604A1 (de) Verfahren zum Kodieren eines Modus beim Kodieren binärer Formen
DE3828908A1 (de) Bilduebertragungssystem
EP0581808B1 (de) Verfahren zur kompatiblen übertragung, decodierung oder aufzeichnung von progressiv abgetasteten bildsignalen im zwischenzeilenformat
DE3726601C2 (de)
DE68927068T2 (de) Verfahren und System zur Dekompression von kodierten Farbvideodaten
DE69923725T2 (de) Verfahren und Gerät für die Herausziehung von Farbkonturinformation aus Videohalbbildern

Legal Events

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

Owner name: DAEWOO ELECTRONICS CORP., SEOUL/SOUL, KR

8110 Request for examination paragraph 44
8364 No opposition during term of opposition
R082 Change of representative

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

R081 Change of applicant/patentee

Owner name: MAPLE VISION TECHNOLOGIES INC., CA

Free format text: FORMER OWNER: DAEWOO ELECTRONICS CORP., SEOUL/SOUL, KR

Effective date: 20130313

R082 Change of representative

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Effective date: 20130313

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

Effective date: 20130313

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04N0007260000

Ipc: H04N0019000000