DE69728368T2 - Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals - Google Patents

Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals Download PDF

Info

Publication number
DE69728368T2
DE69728368T2 DE69728368T DE69728368T DE69728368T2 DE 69728368 T2 DE69728368 T2 DE 69728368T2 DE 69728368 T DE69728368 T DE 69728368T DE 69728368 T DE69728368 T DE 69728368T DE 69728368 T2 DE69728368 T2 DE 69728368T2
Authority
DE
Germany
Prior art keywords
contour
current
vertices
previous
vertex
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.)
Expired - Lifetime
Application number
DE69728368T
Other languages
English (en)
Other versions
DE69728368D1 (de
Inventor
Jin-Hun Namdaemoon-Ro Kim
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.)
WiniaDaewoo Co Ltd
Original Assignee
Daewoo Electronics Co Ltd
Dongbu Daewoo Electronics Corp
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, Dongbu Daewoo Electronics Corp filed Critical Daewoo Electronics Co Ltd
Priority claimed from EP97100053A external-priority patent/EP0852444B1/de
Application granted granted Critical
Publication of DE69728368D1 publication Critical patent/DE69728368D1/de
Publication of DE69728368T2 publication Critical patent/DE69728368T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zum Codieren einer Kontur eines Objektes, das in einem Bildsignal ausgedrückt ist; und insbesondere ein Verfahren und eine Vorrichtung, die die Menge der Übertragungsdaten unter Verwendung einer Konturbewegung Schätztechnik vermindern kann.
  • In digitalen Fernsehsystemen, wie Bild-Telefon-, Telekonferenz- und hochauflösenden Fernsehsystemen, wird eine große Menge digitaler Daten benötigt, jedes Bildframesignal zu definieren, da das Bildframesignal eine Sequenz digitaler Daten umfaßt, die als Pixelwerte bezeichnet werden. Da jedoch die verfügbare Frequenzbandbreite eines herkömmlichen Übertragungskanals begrenzt ist, um die erhebliche Menge digitaler Daten dort hindurch zu übertragen, ist es erforderlich, das Volumen der Daten unter Verwendung verschiedener Datenkomprimierungstechniken zu komprimieren oder zu reduzieren, insbesondere im Falle solcher niedrigbitratiger Bildsignalcodierer, wie Bild-Telefon- und Telekonferenzsystemen.
  • Eine dieser Techniken zum Kodieren von Bildsignalen für ein niederbitratiges Codiersystem ist die sog. objekt-orientierte Analyse-Synthese-Codiertechnik, bei der ein Eingangsbild in Objekte aufgeteilt wird und drei Sätze an Parametern zum Definieren der Bewegung, Kontur und Pixeldaten jedes Objektes über verschiedene Codierkanäle verarbeitet werden.
  • Ein Beispiel eines solchen objekt-orientierten Codierschemas ist die sog. MPEG (Moving Picture Experts Group) Phase 4 (MPEG-4), die entwickelt wurde, einen audio-visuellen Codierstandard bereitzustellen, um eine inhaltsbasierte Interaktivität, verbesserte Codiereffizienz und/oder universelle Zugriffmöglichkeit in solchen Anwendungen wie niedrigbitratiger Kommunikation, interaktives Multimedia (z. B. Spiele, interaktives TV oder dergleichen) und Überwachung (siehe beispielsweise MPEG-4 Video Verification Model Version 2.0, Interna tional Organization for Standardization, ISO/IEC JTC1/SC29/WG11 N1260, März 1996) zu ermöglichen.
  • Gemäß MPEG-4 wird ein Eingangsbild in eine Vielzahl an Bildobjektebenen (VOP's) aufgeteilt, die Ganzheiten in einem Bitstrom entsprechen, auf die ein Benutzer Zugriff hat und die er manipulieren kann. Ein VOP kann als ein Objekt bezeichnet werden und durch ein Begrenzungsrechteck dargestellt werden, dessen Breite und Höhe als kleinste Vielfache von 16 Pixeln (einer Makroblockgröße) gewählt werden kann, das jedes Objekt umgibt, so daß der Codierer das Eingangsbild auf einer VOP-weisen Basis verarbeitet, d. h. einer Objekt-weisen Basis. Die VOP enthält eine Farbinformation, die aus der Luminanzkomponente (Y) und den Chrominanzkomponenten (Cr, Cb) besteht, und eine Konturinformation, die z. B. durch eine binäre Maske dargestellt wird.
  • Beim Verarbeiten einer Kontur eines Objektes ist die Konturinformation für die Analyse und Synthese der Objektform wichtig. Ein herkömmliches Codierverfahren zum Darstellen der Codierinformation ist ein Kettencodierverfahren. Das Kettencodierverfahren benötigt jedoch eine erhebliche Menge an Bits für deren Darstellung, auch wenn es dort keinen Verlust in der Konturinformation gibt.
  • Um diesen Nachteil zu beheben, sind daher mehrere Verfahren vorgeschlagen worden, wie eine polygonale Näherung und eine B-Spline-Näherung, um die Konturinformation zu codieren. Einer der Nachteile der polygonalen Näherung ist die Grobheit der Darstellung der Kontur. Die B-Spline-Näherung ist andererseits in der Lage, die Kontur genauer darzustellen; sie erfordert jedoch Polynome höherer Ordnung, um den Näherungsfehler zu vermindern, was zu einem erhöhten Gesamtrechenaufwand des Bildcodierers führt.
  • Eine der Techniken, die zum Verbessern solcher Probleme eingeführt wurden, die mit der groben Darstellung der Kontur und dem erhöhten Rechenaufwand in den obigen Näherungsansätzen verknüpft sind, ist eine Konturnäherungstechnik, die eine diskrete Sinustransformation (DST) anwendet.
  • In einer Vorrichtung, die die Konturnäherungstechnik basierend auf der polygonalen Näherung und der DST anwendet, wie in einer mitanhängigen Anmeldung EP 0 734 163 A vom gleichen Inhaber mit dem Titel "A CONTOUR APPROXIMATION APPARATUS FOR REPRESENTING A CONTOUR OF AN OBJECT" offenbart ist, wird eine Anzahl an Eckpunkten bestimmt, und die Kontur eines Objektes wird unter Verwendung der polygonalen Näherung zum Fitten der Kontur durch Liniensegmente genähert. Dann werden N Abtastpunkte für jedes Liniensegment ausgewählt, und ein Näherungsfehler bei jedem der N Abtastpunkte berechnet, um einen Satz Näherungsfehler für jedes Liniensegment zu erhalten, wobei jeder der Näherungsfehler den Abstand oder die Verschiebung zwischen jedem der N Abtastpunkte und der Kontur darstellt. Danach wird ein Satz an DST-Koeffizienten erzeugt, indem eine eindimensionale DST-Operation an jedem Satz Näherungsfehler durchgeführt wird.
  • Auch wenn die zuvor genannte DST-basierte Konturnäherungstechnik die grobe Darstellung und den Rechenaufwand verringern kann, und das Volumen der Übertragungsdaten vermindern kann, bleibt es weiterhin wünschenswert, das Volumen der Übertragungsdaten weiter zu vermindern.
  • Es ist daher ein primäres Ziel der Erfindung ein verbessertes Konturcodierverfahren und -vorrichtung bereitzustellen, die vorteilhaft verwendet werden kann, um die Menge an Übertragungsdaten weiter zu vermindern, indem eine Konturbewegungsschätztechnik basierend auf einer Differenz zwischen einer vorhergehenden und einer aktuellen Kontur angewandt wird.
  • Gemäß der Erfindung ist ein Verfahren zum Codieren eines Bildsignals, wie in Anspruch 1 definiert, und eine entsprechende Vorrichtung, wie in Anspruch 4 definiert, bereitgestellt.
  • Die obigen und weiteren Ziele und Merkmale der vorliegenden Erfindung werden aus der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele mit Bezug auf die beigefügte Zeichnung deutlich, in der:
  • 1 ein Blockdiagramm einer Vorrichtung zum Codieren von Eingangskonturbilddaten gemäß der vorliegenden Erfindung darstellt;
  • 2 ein erläuterndes Diagramm zum Darstellen einer Eckpunktabbildungsprozedur gemäß der vorliegenden Erfindung darstellt; und
  • 3A und 3B eine primäre bzw. eine sekundäre Abtastprozedur gemäß der vorliegenden Erfindung zeigen.
  • Bezugnehmend auf 1 ist ein Blockdiagramm einer Vorrichtung 200 zum Codieren von Eingangskonturbilddaten gemäß der vorliegenden Erfindung gezeigt, wobei die Eingangskonturbilddaten Positionen von Konturpixeln darstellen, die eine aktuelle Kontur eines Objektes bilden. Die Eingangskonturbilddaten werden einem Eckpunktauswahlblock 201, einem primären Abtastblock 210, einem Eckpunktabbildungsblock 220 und einem Bewegungsschätz- und Bewegungskompensationsblock 280 (ME&MC-Block) zugeführt. Der Eckpunktauswahlblock 201 bestimmt aktuelle Eckpunkte auf der aktuellen Kontur unter Verwendung einer herkömmlichen polygonalen Näherungstechnik zum Fitten der aktuellen Kontur mit einer Vielzahl an aktuellen Liniensegmenten, wobei jedes aktuelle Liniensegment durch Verbinden zweier aktueller Eckpunkte gebildet wird, die benachbart zueinander entlang der aktuellen Kontur angeordnet sind. Vom Eckpunktauswahlblock 202 wird eine Information über aktuelle Eckpunkte, die Positionen der aktuellen Eckpunkte darstellt, einem Schalter 226 bereitgestellt.
  • Zwischenzeitlich ermittelt der ME&MC-Block 280 Schwerpunkte für die aktuelle und eine vorhergehende Kontur des Objektes, in dem die Koordinaten aller Pixelpositionen auf den jeweiligen Konturen gemittelt werden, und berechnet einen Bewegungsvektor, d. h. einen globalen Bewegungsvektor (GMV), der eine räumliche Verschiebung zwischen den Schwerpunkten darstellt. Der Schwerpunkt der aktuellen Kontur wird basierend auf den Eingangskonturbilddaten berechnet, während der Schwerpunkt der vorhergehenden Kontur basierend auf Bilddaten über die vorhergehende Kontur erhalten wird, die aus einem Speicher 270 ausgelesen werden, wobei die Bilddaten über die vorhergehende Kontur Positionen von Konturpixeln und Eckpunkten darstellen, die die vorhergehende Kontur bilden. Danach wird eine vorhergesagte Kontur erzeugt, indem die vorhergehende Kontur auf die aktuelle Kontur überlappt wird. Mit anderen Worten wird beim ME&MC-Block 280 die vorhergesagte Kontur bereitgestellt, indem alle Pixel auf der vorhergehenden Kontur um den GMV verschoben werden, so daß der Schwerpunkt der vorhergesagten Kontur mit demjenigen der aktuellen Kontur zusammenfällt. Die vorhergehenden Eckpunkte werden ebenfalls um den GMV beim MC&ME-Block 280 verschoben und als bewegungskompensierte Eckpunkte bereitgestellt. Vom ME&MC-Block 280 wird der GMV einem Multiplexer (MUX) 290 über eine Leitung (L20) bereitgestellt, vorhergesagte Konturbilddaten, die Positionen der Konturpixel der vorhergesagten Kontur darstellen, einem sekundären Abtastblock 230 über eine Leitung L30, und eine Information über bewegungskompensierte Eckpunkte, die Positionen der bewegungskompensierten Eckpunkte darstellt, dem Eckpunktabbildungsblock 220 und dem sekundären Abtastblock 230 über eine Leitung L40.
  • In Antwort auf die Information über die bewegungskompensierten Eckpunkte und die Eingangskonturbilddaten bestimmt der Eckpunktabbildungsblock 220 einen vorhergesagten Eckpunkt für jeden bewegungskompensierten Eckpunkt und berechnet Verschiebungen zwischen diesen, wobei der vorhergesagte Eckpunkt einen Konturpixel auf der aktuellen Kontur darstellt, der jedem bewegungskompensierten Eckpunkt am näch sten ist. Die Information über den vorhergesagten Eckpunkt, die Positionen der vorhergesagten Eckpunkte darstellt, wird dem Schalter 226 über eine Leitung L50 bereitgestellt; und die Eckpunktbewegungsvektoren, die die Verschiebungen zwischen jeweiligen vorhergesagten Eckpunkten und ihren entsprechenden bewegungskompensierten Eckpunkten darstellen, werden einem Modusbestimmungsblock 225 und dem MUX 290 über eine Leitung L60 bereitgestellt.
  • Bezugnehmend auf 2 ist ein Eckpunktabbildungsvorgang dargestellt, der beim Eckpunktabbildungsblock 220 durchgeführt wird, wobei CC eine aktuelle Kontur und A bis E bewegungskompensierte Eckpunkte auf einer vorhergesagten Kontur PC darstellen. Wie in der Zeichnung gezeigt, werden die bewegungskompensierten Eckpunkte A bis E auf die vorhergesagten Eckpunkte A' bis E' abgebildet, wobei jeder der vorhergesagten Eckpunkte A' bis E' der nächste Punkt auf der aktuellen Kontur CC zu seinem entsprechenden bewegungskompensierten Eckpunkt ist.
  • Bezugnehmend auf 1 bestimmt der Modusbestimmungsblock 225 einen Codierungsmodus der aktuellen Kontur basierend auf dem Eckpunktbewegungsvektor, der vom Eckpunktabbildungsblock 220 zugeführt wird. Genauer gesagt, berechnet zum Bestimmen des Codierungsmodus der Modusbestimmungsblock 223 Größen bzw. Beträge der Eckpunktbewegungsvektoren, um dabei jede der Größen mit einem vorbestimmten Schwellwert TH zu vergleichen und zählt die Anzahl an Eckpunktbewegungsvektoren, deren Größen größer als der Schwellwert TH sind. Falls der Zählwert größer oder gleich einer voreingestellten Zahl P ist, wobei P eine positive ganze Zahl ist, wird unterstellt, daß die aktuelle und die vorhergehende Kontur sich wesentlich voneinander unterscheiden, und ein Codiermodus wird auf einen Intra-Modus gesetzt, bei dem die aktuelle Kontur ohne Bezug auf die vorhergehende Kontur codiert wird. Falls andererseits der Zählwert kleiner als die Zahl P ist, wird festgestellt, daß eine große Ähnlichkeit zwischen der aktuellen und der vorhergehenden Kontur vorliegt, und daher wird ein Codiermodus für den aktuellen Modus als ein Inter-Modus bestimmt, bei dem die aktuelle Kontur basierend auf der Differenz zwischen der vorhergehenden und der aktuellen Kontur inter-codiert wird.
  • Der Modusbestimmungsblock 225 stellt ein erstes Steuersignal dem Schalter 26, dem sekundären Abtastblock 230 und dem MUX 290 bereit, falls der Intra-Modus bestimmt ist, und andernfalls ein zweites Steuersignal.
  • Im Intra-Modus wählt der Schalter 226 in Antwort auf das erste Steuersignal vom Modusbestimmungsblock 225 die aktuellen Eckpunkte als Eckpunkte für die aktuelle Kontur und stellt Eckpunktdaten, die Positionen der ausgewählten Eckpunkte darstellen, dem primären Abtastblock 210, einem Eckpunktcodierer 227 und einem Konturrekonstruktionsblock 260 über eine Leitung L10 bereit, wobei die Eckpunktdaten im Intra-Modus identisch der Information über den aktuellen Eckpunkt sind, und der sekundäre Abtastblock 230 liefert einem Subtrahierer 235 und einem Addierer 255 Sätze an auf Null gesetzter Werte sekundärer Fehler. Beim Eckpunktcodierer 227 werden die Eckpunktdaten unter Verwendung irgendeiner bekannten Eckpunktcodiertechnik, z. B. ein arithmetisches Codierschema, codiert, um codierte Eckpunktdaten zu erzeugen, und die codierten Eckpunktdaten werden dem MUX 290 über eine Leitung L70 übertragen.
  • Beim primären Abtastblock 210 teilen die ausgewählten, d. h. aktuellen Eckpunkte die aktuelle Kontur in eine Vielzahl an primären Kontursegmenten auf. Jedes primäre Kontursegment stellt einen Abschnitt der aktuellen Kontur dar, der zwei benachbarte ausgewählte Eckpunkte verbindet und die dazwischenliegenden Konturpixel; und wird durch ein primäres Liniensegment genähert, das die beiden benachbarten ausgewählten Eckpunkte verbindet. Danach wählt der primäre Abtastblock 210N Abtastpunkte auf jedem primären Liniensegment in einer vorbestimmten Weise und berechnet einen primären Fehler bei jedem Abtastpunkt, um dadurch einen Satz primärer Fehler für jedes primäre Kontursegment dem Subtrahierer 235 bereitzustellen, wobei in einem bevorzugten Ausführungsbeispiel der Erfindung die Abtastpunkte auf einem primären Liniensegment zueinander gleich beabstandet sind, und N eine positive ganze Zahl ist. Der primäre Fehler stellt eine Verschiebung von einem Abtastpunkt zu einem Schnittpunkt zwischen dem primären Kontursegment und einer Linie dar, die senkrecht zum primären Liniensegment vom Abtastpunkt gezogen wird, wobei der primäre Fehler einen Abstand zwischen dem Abtastpunkt und dem Schnittpunkt und ein Vorzeichen umfaßt, das eine relative Position des Schnittpunktes bezüglich des primären Liniensegmentes angibt.
  • Beim Subtrahierer 235 werden sekundäre Fehler mit auf Null gesetzten Werten von den primären Fehlern jedes Satzes subtrahiert, um einen Satz Differenzfehler für jeden Satz primärer Fehler einem Transformations- und Quantisierungsblock 240 (T&Q-Block) bereitzustellen. Im Intra-Modus sind die sekundären Fehler vom sekundären Abtastblock 230 alle auf Null gesetzte Werte, und dementsprechend sind die Differenzfehler jeweils identisch den primären Fehlern.
  • Der T&Q-Block 240 transformiert unter Verwendung eines vorbestimmten Transformationsverfahrens, z. B. einer diskreten Sinustransformation (DST) oder einer diskreten Kosinustransformation (DCT), und quantisiert jeden Satz an Differenzfehlern, um dabei einen Satz quantisierter Transformationskoeffizienten für jeden Satz an Differenzfehlern zu erzeugen. Jeder Satz an quantisierten Transformationskoeffizienten wird vom T&Q-Block einem Statistikcodierer 245 und einem Inverstransformations- und Inversquantisierungs-Block 250 (IT&IQ-Block) übertragen. Beim Statistikcodierer 245 wird jeder Satz quantisierter Transformationskoeffizienten unter Verwendung eines herkömmlichen statistischen Codierschemas, z. B. einer VLC(Variablelängencodierung)-Technik codiert. Codierte Fehlerdaten für die Sätze quantisierter Transformationskoeffizienten werden vom Statistikcodierer 245 dem MUX 290 über eine Leitung L80 bereitgestellt. Im Intra-Modus wird das erste Steuersignal dem MUX 290 über eine Leitung L90 zugeführt. In Ant wort darauf wählt der MUX 290 die codierten Fehlerdaten auf der Leitung L80 und die codierten Eckpunktdaten auf der Leitung L70 aus; und stellt dieselben als codierte Konturdaten für die aktuelle Kontur einem Sender (nicht dargestellt) für deren Übertragung bereit.
  • Zwischenzeitlich wird beim IT&IQ-Block 250 jeder Satz an quantisierten Transformationskoeffizienten in einen Satz rekonstruierter Differenzfehler umgewandelt, die von dort dem Addierer 255 bereitgestellt werden, wobei jeder Satz rekonstruierter Differenzfehler in einen Satz rekonstruierter primärer Fehler umgewandelt wird, und der Satz rekonstruierter primärer Fehler dem Konturrekonstruktionsblock 260 bereitgestellt wird. Im Intra-Modus sind entsprechende rekonstruierte primäre Fehler identisch zu ihren entsprechenden rekonstruierten Differenzfehlern, da die dorthin vom sekundären Abtastblock 230 eingegebenen sekundären Fehler alle auf Null gesetzte Werte sind. Beim Konturrekonstruktionsblock 260 wird die aktuelle Kontur basierend auf den Eckpunktdaten auf der Leitung L10 rekonstruiert, und der Satz rekonstruierter primärer Fehler und die rekonstruierten aktuellen Konturbilddaten werden dem Speicher 270 zu deren Speicherung darin als vorhergehende Konturbilddaten für eine darauffolgende Kontur bereitgestellt, wobei die rekontruierten aktuellen Konturbilddaten Positionsinformation von Eckpunkten und Konturpixeln der rekonstruierten aktuellen Kontur umfassen.
  • Im Inter-Modus gibt der Modusbestimmungsblock 225 das zweite Steuersignal auf der Leitung L90 aus, um es in den Schalter 26, den sekundären Abtastblock 230 und den MUX 290 zu laden. In Antwort auf das zweite Steuersignal wählt der Schalter 226 die vorhergesagten Eckpunkte als Eckpunkte für die aktuelle Kontur aus und stellt Eckpunktdaten, die Positionen der ausgewählten Eckpunkte darstellen, auf der Leitung L10 bereit. Die Eckpunktdaten sind identisch der Information über die vorhergesagten Eckpunkte im Falle des Inter-Modus.
  • Beim primären Abtastblock 210 wird die aktuelle Kontur in eine Vielzahl primärer Kontursegmente durch die ausgewählten, d. h. vorhergesagten Eckpunkte aufgeteilt. Jedes primäre Kontursegment im Inter-Modus stellt einen Abschnitt der aktuellen Kontur dar, der zwei benachbarte vorhergesagte Eckpunkte verbindet, und die dazwischenliegenden Konturpixel, und wird durch ein primäres Liniensegment genähert, das die beiden benachbarten vorhergesagten Eckpunkte verbindet. Danach wird ein Satz primärer Fehler auf identische Weise wie im Intra-Modus ermittelt.
  • Zwischenzeitlich bestimmt in Antwort auf das zweite Steuersignal vom Modusbestimmungsblock 225 der sekundäre Abtastblock 230 Sätze an sekundären Fehlern bezüglich der vorhergesagten Kontur und der bewegungskompensierten Eckpunkte darauf, auf gleiche Weise wie im primären Abtastblock 210. Das heißt, daß die vorhergesagte Kontur in eine Vielzahl sekundärer Kontursegmente aufgeteilt wird, von denen jedes durch ein sekundäres Liniensegment genähert wird, das zwei bewegungskompensierte Eckpunkte verbindet, die an den Enden des sekundären Kontursegmentes liegen; und jeder Satz sekundärer Fehler stellt N Verschiebungen zwischen einem sekundären Kontursegment und seinem entsprechenden sekundären Liniensegment dar, das auf die oben mit Bezug auf den primären Abtastblock 210 beschriebene Weise berechnet wird. Die Sätze an sekundären Fehlern werden dem Subtrahierer 235 und dem Addierer 255 bereitgestellt.
  • Wie in 2 dargestellt, stehen die bewegungskompensierten Eckpunkte A–E auf der vorhergesagten Kontur PC und die vorhergesagten Eckpunkte A'–E' auf der aktuellen Kontur CC in einer Eins-zu-Eins-Übereinstimmung zueinander; und dementsprechend entspricht jedes primäre Kontursegment, z. B. Kontursegment C'D', einem sekundären Kontursegment, z. B. dem Kontursegment CD. Beim Subtrahierer 235 wird ein Satz an sekundären Fehlern für jedes sekundäre Kontursegment von einem Satz an primären Fehlern für ein entsprechendes primäres Kontursegment subtrahiert. Beispielsweise wird, wie in 3A und 3B gezeigt, falls die primären Fehler für das primäre Kontursegment C'D' als d1', d2' und d3' bestimmt werden, und sekundäre Fehler für das sekundäre Kontursegment CD als d1, d2, d3 berechnet werden, ein di von einem di'(i = 1, 2, 3) subtrahiert, um einen Differenzfehler ci(= di' – di) beim Subtrahierer 235 bereitzustellen. In 3A und 3B wird angenommen, daß N = 3 ist, und I1' bis I3' und I1 bis I3 Schnittpunkte des primären Kontursegmentes C'D' und des sekundären Kontursegmentes CD mit den Linien darstellen, die an Abtastpunkten P1' bis P3' auf dem primären Liniensegment C'D' bzw. P1 bis P3 auf dem sekundären Liniensegment CD gezeichnet sind. Ein Satz an Differenzfehlern für jedes primäre Kontursegment wird dem T&Q-Block 240 bereitgestellt, wobei der Satz an Differenzfehlern transformiert und quantisiert wird, um einen Satz an quantisierten Transformationskoeffizienten bereitzustellen.
  • Zwischenzeitlich wird jeder Satz an quantisierten Transformationskoeffizienten in einen Satz rekonstruierter Differenzfehler beim IT&IQ-Block 250 umgewandelt und dem Addierer 255 bereitgestellt, wobei der Satz an rekontruierten Differenzfehlern zu seinem entsprechenden Satz an sekundären Fehlern addiert wird, um einen Satz rekonstruierter primärer Fehler dem Konturrekonstruktionsblock 260 bereitzustellen. Beim Konturrekonstruktionsblock 260 wird eine rekonstruierte aktuelle Kontur basierend auf den Eckpunktdaten auf der Leitung L10 und den Sätzen an rekonstruierten primären Fehlern erzeugt. Bilddaten über die rekonstruierte aktuelle Kontur, die Positionsinformation über Eckpunkte und Konturpixel der rekonstruierten aktuellen Kontur darstellen, werden vom Konturrekonstruktionsblock 260 zum Speicher 270 geliefert und darin für die Verarbeitung einer nachfolgenden Kontur gespeichert.
  • Beim Statistikcodierer 245 wird jeder Satz an quantisierten Transformationskoeffizienten auf dieselbe Weise wie im Intra-Modus verarbeitet, um die codierten Fehlerdaten für die Sätze quantisierter Transformationskoeffizienten dem MUX 290 über die Leitung L80 bereitzustellen. Im Inter-Modus wird das zweite Steuersignal auf der Leitung L90 dem MUX 290 bereitgestellt. In Antwort hierauf wählt der MUX 290 sequentiell unter den Signalen auf den Leitungen L20, L60, L70 und L80 die codierten Fehlerdaten auf der Leitung L80, die GMV auf der Leitung L20 und den Eckpunktbewegungsvektor auf der Leitung L60 aus; und stellt dieselben als codierte Konturdaten für die aktuelle Kontur dem Sender für deren Übertragung bereit. Beim Decodierer am Empfangsende kann die Information über den vorhergesagten Eckpunkt, d. h. die Eckpunktdaten, vom Schalter 226 im Inter-Modus durch den GMV, die Eckpunktbewegungsvektoren und die Information über den vorhergehenden Eckpunkt, die in einem Speicher im Decodierer gespeichert sind, erhalten werden; und die aktuelle Kontur kann auf identische Weise wie im Konturrekonstruktionsblock 260 rekonstruiert werden.

Claims (4)

  1. Verfahren zum Kodieren eines Bildsignals einer aktuellen Kontur (CC) eines Objektes, basierend auf einer vorhergehenden Kontur davon, wobei die vorhergehende Kontur eine vorbestimmte Vielzahl an vorhergehenden Eckpunkten darauf aufweist, dadurch gekennzeichnet, daß das Verfahren die folgenden Schritte umfaßt: (a) Abbilden jedes der vorhergehenden Eckpunkte auf die aktuelle Kontur (CC), um darauf einen vorhergesagten Eckpunkt (A'–E') zu bilden, der jedem der vorhergehenden Eckpunkte entspricht, wobei der Abbildungsschritt (a) die folgenden Schritte umfaßt: (a1) Ermitteln von Schwerpunkten der vorhergehenden und der aktuellen Kontur (CC), wobei die Schwerpunkte durch Mitteln von Positionen von Pixeln auf den entsprechenden Konturen ermittelt werden; (a2) Berechnen einer Schwerpunktverschiebung zwischen den Schwerpunkten; (a3) Überlappen der vorhergehenden und der aktuellen Kontur, indem eine der Konturen zur anderen um die Schwerpunktverschiebung verschoben wird; und (a4) Ermitteln eines Pixels auf der überlappten aktuellen Kontur, der jedem der vorhergehenden Eckpunkte (A–E) auf der überlappten vorhergehenden Kontur (PC) am nächsten ist, und Setzen des Pixels als den vorhergesagten Eckpunkt, um dadurch eine Vielzahl vorhergesagter Eckpunkte (A'–E') bereitzustellen, wobei jeder der vorhergesagten Eckpunkte einem der vorhergehenden Eckpunkte entspricht; (b) Berechnen von Eckpunktverschiebungen zwischen jeweiligen vorhergehenden Eckpunkten und ihren entsprechenden vorhergesagten Eckpunkten (A'–E'), wobei jede der Eckpunktverschiebungen eine Verschiebung zwischen jedem vorhergehenden Eckpunkt auf der überlappten vorhergehenden Kontur und seinem entsprechenden vorhergesagten Eckpunkt (A'–E') auf der überlappten aktuellen Kontur darstellt; (c) Bestimmen mehrerer aktueller Eckpunkte auf der aktuellen Kontur (CC); (d) Kodieren der aktuellen Kontur (CC), basierend auf den aktuellen Eckpunkten, um dadurch intra-kodierte Daten bereitzustellen, wobei der Kodierschritt (d) die folgenden Schritte umfaßt: (d1) Nähern der aktuellen Kontur mit aktuellen Liniensegmenten, um dadurch aktuelle Näherungsfehler bereitzustellen, die eine Differenz zwischen der aktuellen Kontur und einer polygonalen Kontur darstellen, die durch die aktuellen Liniensegmente gebildet ist, wobei jedes aktuelle Liniensegment zwei benachbarte aktuelle Eckpunkte auf der aktuellen Kontur (CC) verbindet; (d2) Transformieren der aktuellen Näherungsfehler, um aktuelle Transformierungsfehler bereitzustellen; und (d3) Bereitstellen der intra-kodierten Daten, wobei die intra-kodierten Daten die aktuellen Transformationsfehler und eine aktuelle Eckpunktsinformation umfaßt, die Positionen der aktuellen Eckpunkte darstellt; (e) Kodieren der aktuellen Kontur, basierend auf den vorhergehenden Eckpunkten und den vorhergesagten Eckpunkten, um inter-kodierte Daten bereitzustellen, wobei der Kodierschritt (e) die folgenden Schritte umfaßt: (e1) Nähern der aktuellen Kontur (CC) mit ersten Liniensegmenten, um dadurch erste Näherungsfehler (d1', d2', d3') bereitzustellen, die eine Differenz zwischen der aktuellen Kontur (CC) und einer polygonalen Kontur darstellen, die durch die ersten Liniensegmente gebildet ist, wobei jedes erste Liniensegment zwei benachbarte vorhergesagte Eckpunkte (C', D') auf der aktuellen Kontur (CC) verbindet; (e2) Nähern der vorhergehenden Kontur mit zweiten Liniensegmenten, um dadurch zweite Näherungsfehler (d1, d2, d3) bereitzustellen, die eine Differenz zwischen der vorhergehenden Kontur und einer polygonalen Kontur darstellen, die durch die zweiten Liniensegmente gebildet ist, wobei jedes zweite Liniensegment zwei benachbarte vorhergehende Eckpunkte (C, D) auf der vorhergehenden Kontur verbindet; (e3) Ermitteln von Differenzfehlern, die Differenzen zwischen den ersten und zweiten Näherungsfehlern darstellen; (e4) Transformieren der Differenzfehler, um Differenztransformationsfehler bereitzustellen; und (e5) Bereitstellen der inter-kodierten Daten, wobei die inter-kodierten Daten die Differenztransformationsfehler und eine Verschiebungsinformation umfassen, die die Eckpunktverschiebungen und die Schwerpunktverschiebung darstellt; und (f) Auswählen, als kodierte Daten für die aktuelle Kontur, entweder der intra-kodierten Daten oder der inter-kodierten Daten, basierend auf den Eckpunktverschiebungen.
  2. Verfahren nach Anspruch 1, bei dem der Auswahlschritt (f) die folgenden Schritte umfaßt: (f1) Vergleichen einer Größe jeder Eckpunktverschiebung mit einem vorbestimmten Schwellwert TH; und (f2) Auswählen der intra-kodierten Daten als die kodierten Daten für die aktuelle Kontur, falls die Anzahl der Eckpunktverschiebungen, deren Größe größer als TH ist, größer als eine voreingestellte Zahl P ist, und andernfalls der inter-kodierten Daten, wobei P eine positive ganze Zahl ist.
  3. Verfahren nach Anspruch 1 oder 2, wobei die aktuellen Eckpunkte durch eine Polygonnäherungstechnik bestimmt werden.
  4. Vorrichtung zum Kodieren eines Bildsignals einer aktuellen Kontur eines Objektes, basierend auf einer vorhergehenden Kontur davon, wobei die vorhergehende Kontur eine vorbestimmte Vielzahl an vorhergehenden Eckpunkten darauf aufweist, dadurch gekennzeichnet, daß die Vorrichtung folgendes umfaßt: Mittel (201) zum Bestimmen mehrerer aktueller Eckpunkte auf der aktuellen Kontur; Mittel (220) zum Ermitteln von Schwerpunkten der vorhergehenden und der aktuellen Kontur, wobei die Schwerpunkte durch Mitteln von Positionen von Pixeln auf den entsprechenden Konturen erhalten werden; Berechnen einer Schwerpunktverschiebung zwischen den Schwerpunkten; Überlappen der vorhergehenden und der aktuellen Kontur, indem eine der Konturen zur anderen um die Schwerpunktverschiebung verschoben wird; und Ermitteln eines Pixels auf der überlappten aktuellen Kontur, der jedem der vorhergehenden Eckpunkte auf der überlappten vorhergehenden Kontur am nächsten liegt, und Setzen des Pixels als einen vorhergesagten Eckpunkt, um dadurch eine Vielzahl vorhergesagter Eckpunkte bereitzustellen, wobei jeder der vorhergesagten Eckpunkte einem der vorhergehenden Eckpunkte entspricht; Mittel (225) zum Berechnen von Eckpunktverschiebungen zwischen den vorhergehenden Eckpunkten und ihren entsprechenden vorhergesagten Eckpunkten, wobei jede der Eckpunktverschiebungen eine Verschiebung zwischen jedem vorhergehenden Eckpunkt auf der überlappten vorhergehenden Kontur und seinem entsprechenden vorhergesagten Eckpunkt auf der überlappten aktuellen Kontur darstellt; und Ermitteln eines Kodierungsmodus der aktuellen Kontur, basierend auf den Eckpunktsverschiebungen, um dadurch ein Signal aus einem ersten Steuersignal, das einen Intra-Modus darstellt, und einem zweiten Steuersignal zu erzeugen, das einen Inter-Modus darstellt; Mittel (226) zum Auswählen, als ausgewählte Eckpunkte, der aktuellen und der vorhergesagten Eckpunkte in Antwort auf das erste bzw. das zweite Steuersignal; Mittel (210) zum Nähern der aktuellen Kontur, basierend auf den ausgewählten Eckpunkten, um dadurch erste Näherungsfehler bereitzustellen; Mittel (230) zum Nähern der vorhergehenden Kontur, basierend auf den vorhergehenden Eckpunkten, um dadurch zweite Näherungsfehler bereitzustellen, wobei die zweiten Näherungsfehler in Antwort auf das erste Steuersignal auf Null gesetzt werden; Mittel (235) zum Subtrahieren der zweiten Näherungsfehler von den ersten Näherungsfehlern, jeweils, um dadurch Differenzfehler bereitzustellen; Mittel (240) zum Transformieren der Differenzfehler, um Differenztransformationsfehler bereitzustellen; und Mittel (227, 245, 290) zum Auswählen, als kodierte Daten für die aktuelle Kontur, der Differenztransformationsfehler und der Information über die aktuellen Eckpunkte, die Positionen der aktuellen Eckpunkte darstellt, in Antwort auf das erste Steuersignal und der Differenztransformationsfehler und Verschiebungsinfor mation, die die Eckpunktverschiebungen darstellt, in Antwort auf das zweite Steuersignal.
DE69728368T 1997-01-03 1997-01-03 Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals Expired - Lifetime DE69728368T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP97100053A EP0852444B1 (de) 1996-12-30 1997-01-03 Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals

Publications (2)

Publication Number Publication Date
DE69728368D1 DE69728368D1 (de) 2004-05-06
DE69728368T2 true DE69728368T2 (de) 2005-03-10

Family

ID=32088145

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69728368T Expired - Lifetime DE69728368T2 (de) 1997-01-03 1997-01-03 Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals

Country Status (1)

Country Link
DE (1) DE69728368T2 (de)

Also Published As

Publication number Publication date
DE69728368D1 (de) 2004-05-06

Similar Documents

Publication Publication Date Title
DE69637060T2 (de) Verfahren und Vorrichtung zur Kodierung eines Videosignales von einer Objektkontur
DE69636277T2 (de) Verfahren und Vorrichtung zur Erzeugung von Farbart-Forminformation einer Video-Objektebene in einem Videosignal
DE19743202B4 (de) Verfahren zum Codieren eines Bewegungsvektors
DE69834348T2 (de) Verfahren und vorrichtung zur bewegungsvektorkodierung eines binären kontursignals
DE69837497T2 (de) Verfahren und vorrichtung zum kodieren eines videosignals
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
DE19739266B4 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
DE19737805A1 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors
DE19738552A1 (de) Verfahren und Vorrichtung zum Abschätzen der Konturenbewegung eines binären Bildes unter Verwendung eines Vergleichsalgorithmus für gewichtete Blöcke
DE4442643B4 (de) Verfahren zum Abschätzen der Bewegung in einem Bewegtbild
US5883977A (en) Method and apparatus for encoding a video signal of a contour of an object
DE19744859B4 (de) Verfahren zum Codieren eines binären Formsignals
DE69737711T2 (de) Verfahren und Vorrichtung zur Kodierung einer Objektkontur unter Verwendung ihrer Zeitkorrelation
DE69737138T2 (de) Verfahren und Vorrichtung zur Kodierung eines Objektkonturbildes in einem Videosignal
DE69728368T2 (de) Verfahren und Vorrichtung zur Kodierung eines Objektkonturvideosignals
DE60126895T2 (de) Verfahren und Vorrichtung zur Datenkompression
DE19749655B4 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors
DE3927516A1 (de) Verfahren zur bildung eines praediktionsbildes
DE19749604A1 (de) Verfahren zum Kodieren eines Modus beim Kodieren binärer Formen
DE19643907B4 (de) Verfahren und Vorrichtung zur Bewegtbildkodierung
EP1285537B1 (de) Verfahren und eine anordnung zur codierung bzw. decodierung einer folge von bildern
WO2000019373A1 (de) Verfahren und anordnung zur bearbeitung eines digitalisierten bildes mit bildpunkten
DE69736798T2 (de) Verfahren und Vorrichtung zur Kodierung einer Objektkontur
DE19951341A1 (de) Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildern sowie Einrichtung hierzu
DE19758963B4 (de) Verfahren zum Codieren eines Bewegungsvektors

Legal Events

Date Code Title Description
8364 No opposition during term of opposition