DE69738016T2 - Verfahren und Vorrichtung zur adaptiven Kodierung einer Objektkontur - Google Patents

Verfahren und Vorrichtung zur adaptiven Kodierung einer Objektkontur Download PDF

Info

Publication number
DE69738016T2
DE69738016T2 DE1997638016 DE69738016T DE69738016T2 DE 69738016 T2 DE69738016 T2 DE 69738016T2 DE 1997638016 DE1997638016 DE 1997638016 DE 69738016 T DE69738016 T DE 69738016T DE 69738016 T2 DE69738016 T2 DE 69738016T2
Authority
DE
Germany
Prior art keywords
contour
current
overlapping
contours
matching
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
DE1997638016
Other languages
English (en)
Other versions
DE69738016D1 (de
Inventor
Jin-Hun 541 5-Ga Namdaemoon-ro Jung-Gu 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
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
Application granted granted Critical
Publication of DE69738016D1 publication Critical patent/DE69738016D1/de
Publication of DE69738016T2 publication Critical patent/DE69738016T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zum Kodieren einer Kontur eines in einem Videosignal ausgedrückten Objekts; und insbesondere auf ein Verfahren und eine Vorrichtung, die dazu fähig sind, die Menge an Übertragungsdaten durch die Verwendung einer Konturbewegungsschätztechnik zu reduzieren.
  • BESCHREIBUNG DES STANDES DER TECHNIK
  • In Digitalfernsehsystemen, wie z.B. Videotelefonsystemen, Fernsprechkonferenzsystemen und hochauflösenden Fernsehsystemen, wird eine große Menge an digitalen Daten benötigt, um jedes Videorahmensignal zu definieren, da ein Videozeilensignal in dem Videorahmensignal eine Folge von digitalen Daten aufweist, die als Pixelwerte bezeichnet werden. Da jedoch die verfügbare Frequenzbandbreite eines herkömmlichen Übertragungskanals beschränkt ist, ist es, um die große Menge an digitalen Daten darüber zu übertragen, unvermeidlich, das Datenvolumen durch die Verwendung verschiedener Datenkompressionstechniken zu komprimieren oder zu reduzieren, besonders im Fall von solchen Videosignalkodierern mit niedriger Bitrate, wie z.B. Videotelefon- und Fernsprechkonferenzsystemen.
  • Eine solche Technik zum Kodieren von Videosignalen für ein Kodierungssystem mit niedriger Bitrate ist die so genannte objektorientierte Analyse-Synthese-Kodierungstechnik (siehe Michael Hötter, "Object-Oriented Analysis-Synthesis Coding Based an Moving Two-Dimensional Objekts", Signal Processing: Image Communication 2, 409–428, (Dezember 1990).
  • Entsprechend der objektorientierten Analyse-Synthese-Kodierungstechnik wird ein eingegebenes Videobild in Objekte aufgeteilt; und werden über verschiedene Kodierungskanäle drei Parametersätze für das Definieren der Bewegung, der Kontur und der Pixeldaten jedes Objekts verarbeitet.
  • Beim Verarbeiten einer Kontur eines Objekts ist Konturinformation wichtig für die Analyse und die Synthese der Objektform. Ein klassisches Kodierungsverfahren für das Darstellen der Konturinformation ist ein Kettenkodierungsverfahren. Das Kettenkodierungsverfahren erfordert jedoch eine beträchtliche Bit-Menge für deren Darstellung, auch wenn es keinen Verlust in der Konturinformation gibt.
  • Um den Nachteil zu beheben, wurden deshalb mehrere Verfahren zum Kodieren der Konturinformation, wie z.B. eine polygonale Annäherung und eine B-Spline-Annäherung, vorgeschlagen. Einer der Nachteile bei der polygonalen Annäherung ist die Grobheit der Darstellung der Kontur. Die B-Spline-Annäherung andererseits ist dazu fähig, die Kontur präziser darzustellen, erfordert jedoch ein Polynom höherer Ordnung, um den Annäherungsfehler zu reduzieren. Die B-Spline-Annäherungstechnik kann deshalb zu einer erhöhten Gesamtberechnungskomplexität des Videokodierers führen.
  • Eine der Techniken, die zur Verbesserung solcher Probleme eingeführt wurden, die mit der groben Darstellung der Kontur und der erhöhten Berechnungskomplexität in den oben genannten Herangehensweisen über eine Annäherung verbunden sind, ist eine Konturannäherungstechnik, die eine diskrete Sinustransformation (DST) verwendet.
  • Obwohl es möglich ist, die grobe Darstellung und Berechnungskomplexität zu beheben und das Volumen von Übertragungsdaten durch die Verwendung der auf DST basierenden Konturannäherung etwas zu reduzieren, bleibt es dennoch noch wünschenswert, das Volumen von Übertragungsdaten weiter zu reduzieren, um erfolgreich ein Codec-System mit niedriger Bitrate, z.B. einer 64 kb/s Übertragungskanalbandbreite, zu implementieren.
  • GB 2296839 A (HYUNDAI ELECTRONICS IND), 10.07.1996, offenbart ein Verfahren zum konturbasierten Bildkodieren mit bewegungskompensierter Interframe-Kodierung und Konturvorhersage, in dem eine angenäherte Kontur durch einen Polygonal/Spline-Annäherungsprozess geschaffen wird, wobei ein Abstand zwischen jedem Pixel des Annäherungskontur-Splines und der gegen wärtigen Kontur für jedes Pixel des Annäherungskontur-Splines bestimmt wird, um zu bestimmen, ob eine polygonale Annäherung angewendet wird.
  • CHAN K H ET AL, ,Contour-based Image Warping, Proceedings of the SPIE', 04.11.1996, Band 2898, Seiten 306–316, offenbart konturbasiertes Bild-Warping, in dem eine Erweiterung von Konturen unter Verwendung von Operationen mathematischer Morphologie für das Ausführen einer Warping-Operation auf der Basis sowohl eines Merkmals innerhalb eines Objekts als auch der Randkontur des Objekts ausgeführt wird.
  • Es ist deshalb eine Hauptaufgabe der Erfindung, ein verbessertes Konturkodierungsverfahren und eine verbesserte Konturkodierungsvorrichtung mit Zwischencode-Konturinformation bereitzustellen, um das Volumen von Übertragungsdaten dadurch weiter zu reduzieren. Insbesondere stellt die vorliegende Erfindung ein Verfahren und eine Vorrichtung für Konturkodierung bereit, die eine Konturbewegungsschätztechnik auf der Basis eines Unterschieds zwischen einer gegenwärtigen Kontur und vorherigen Konturen verwendet.
  • Gemäß der vorliegenden Erfindung ist ein Verfahren für das Kodieren einer gegenwärtigen Kontur auf der Basis einer oder mehrerer vorher rekonstruierter Konturen von Videobildsignalen vorgesehen, das folgende Schritte aufweist: (a) Wählen einer der vorher rekonstruierten Konturen als eine vorhergesagte Kontur für die gegenwärtige Kontur; (b) Überlappen der vorhergesagten Kontur mit der gegenwärtigen Kontur; (c) Finden von passenden Segmenten zwischen der vorhergesagten und der gegenwärtigen Kontur und Festsetzen von zwei Endpunkten jedes passenden Segments als Hauptscheitel; (d) Erweitern der überlappten vorhergesagten Kontur und Bestimmen von passenden Abschnitten auf der gegenwärtigen Kontur, wobei jeder passende Abschnitt einen Teil der gegenwärtigen Kontur darstellt, der mit der erweiterten Kontur zwischen zwei Hauptscheiteln überlappt; (e) Festsetzen der zwei Hauptscheitel an den Enden jedes passenden Abschnitts als primäre Scheitel; (f) Polygonales Annähern an jedem nicht-passenden Abschnitt der gegenwärtigen Kontur und dabei Bestimmen von sekundären Scheiteln auf nicht-passenden Abschnitten; und (g) Kodieren der gegenwärtigen Kontur durch das Darstellen jedes passenden Abschnitts durch einen Teil der vorhergesagten Kontur zwischen zwei primären Scheiteln jedes passenden Abschnitts und der nicht-passenden Abschnitte durch die sekundären Scheitel, um dadurch Daten der kodierten gegenwärtigen Kontur zu liefern.
  • Die oben genannten und andere Aufgaben und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung bevorzugter Ausführungsformen in Verbindung mit den begleitenden Zeichnungen ersichtlich:
  • 1 stellt ein schematisches Blockdiagramm einer Vorrichtung für das Kodieren einer Kontur gemäß der vorliegenden Erfindung dar;
  • 2 zeigt ein detailliertes Blockdiagramm einer in 1 gezeigten Bewegungsschätzeinheit;
  • 3 zeigt ein detailliertes Blockdiagramm eines in 2 gezeigten optimalen Konturdetektierungsblocks;
  • 4 ist ein detailliertes Blockdiagramm einer in 1 gezeigten Zwischenkodierungseinheit;
  • 5A und 5B erläutern Verfahren zum Anpassen von Konturen, die von den bevorzugten Ausführungsformen der vorliegenden Erfindung ausgeführt werden; und
  • 6 beschreibt einen von der bevorzugten Ausführungsform der vorliegenden Erfindung an der passenden Kontur ausgeführten Erweiterungsprozess.
  • Mit Bezug auf 1 ist ein schematisches Blockdiagramm einer erfindungsgemäßen Vorrichtung 10 zum Kodieren von Konturen in einem Rahmensignal gezeigt. Ein Konturbildsignal eines gegenwärtigen Rahmens mit einem oder mehreren Objekten darin wird über eine Leitung L50 in einer Form einer Segmentierungsmaske in eine Konturdetektierungseinheit 100 und eine Bewegungsschätzeinheit 300 eingegeben, wobei jedes Pixel in der Segmentierungsmaske eine Kennzeichnung hat, die einen Bereich identifiziert, zu der es gehört. Zum Beispiel hat ein Pixel in einem Hintergrund eine Kennzeichnung "0" und ist jedes Pixel in einem Objekt von einem von Nicht-Null-Werten gekennzeichnet.
  • Die Konturdetektierungseinheit 100 detektiert Konturen von der eingegebenen Segmentierungsmaske und weist jeder der in dem Konturbildsignal enthaltenen Konturen entsprechend einer Verarbeitungsreihenfolge davon Indexdaten zu; und gibt sequentiell Konturinformation für jede der Konturen in dem gegen wärtigen Rahmen aus, wobei die Konturinformation Konturdaten umfasst, die Positionen von Konturpixeln auf einer Kontur und Indexdaten davon darstellen. Die Konturinformation auf einer Leitung L10 von der Konturdetektierungseinheit 100 wird als Information der gegenwärtigen Kontur einer Zwischenkodierungseinheit 200 und einer Bewegungsschätzeinheit 300 zugeführt.
  • Die Bewegungsschätzeinheit 300 detektiert eine Kontur, die der gegenwärtigen Kontur auf der Leitung L10 höchst ähnlich ist, auf der Basis des Bildsignals der gegenwärtigen Kontur auf der Leitung L50, der Information der gegenwärtigen Kontur auf der Leitung L10 und eines damit gekoppelten Bildsignals der rekonstruierten vorherigen Kontur von einem Rahmenspeicher 700 über eine Leitung L30. Das Bildsignal der vorherigen Kontur ist auch in der Form einer Segmentierungsmaske, wobei jedes Pixel darin eine Kennzeichnung hat, die einen Bereich identifiziert, zu dem es gehört. Ausgaben der Bewegungsschätzeinheit 300 auf den Leitungen L20 und L40 sind Indexdaten der ähnlichsten Kontur und Bewegungsinformation, die eine Verschiebung zwischen der gegenwärtigen Kontur und der ähnlichsten Kontur darstellt. Die Bewegungsschätzeinheit 300 ist im Detail mit Bezug auf 2 und 3 beschrieben.
  • Mit Bezug auf 2 weist die Bewegungsschätzeinheit 300 einen Block 310 zum Detektieren eines globalen Bewegungsvektors, einen Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur und einen Block 330 zum Detektieren einer optimalen Kontur auf.
  • Der Block 310 zum Detektieren eines globalen Bewegungsvektors, der das Bildsignal der vorherigen Kontur auf der Leitung L30 und das Bildsignal der gegenwärtigen Kontur auf der Leitung L50 verwendet, detektiert einen globalen Bewegungsvektor (GMV von englisch ,global motion vector'), der eine größte Anzahl von einander überlappenden Objektpixeln ergibt. Die Detektierung des GMVs wird innerhalb eines vorherbestimmten Suchbereichs von z.B.+/–16 Pixeln ausgeführt. Der an dem Block 310 zum Detektieren eines globalen Bewegungsvektors detektierte GMV wird dem Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur zugeführt und auf Leitungen L22 und L42 geliefert, die zu der Bewegungskompensationseinheit 400 bzw. einem Multiplexer (MUX) 800 führen.
  • An dem Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur wird das über die Leitung L30 damit gekoppelte Bild der vorherigen Kontur von dem GMV versetzt, um ein Bild der vorhergesagten Kontur zu erzeugen. Ferner detektiert, wie in der in 1 gezeigten Konturdetektierungseinheit 100, der Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur Konturen in dem Bild der vorhergesagten Kontur. Konturinformation für jede der an dem Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur detektierten vorhergesagten Konturen wird auf einer Leitung L60 geliefert.
  • An dem Block 330 zum Detektieren einer optimalen Kontur wird auf der Basis der Information der vorhergesagten Kontur auf der Leitung L60 und Information der gegenwärtigen Kontur auf der Leitung L10 eine optimale Kontur, eine der gegenwärtigen Kontur ähnlichste vorhergesagte Kontur unter vorhergesagten Konturen, die sich innerhalb eines vorher festgesetzten Suchbereichs, z.B. +/–8 Pixel der gegenwärtigen Kontur, befinden, detektiert; und ein lokaler Bewegungsvektor (LMV), der eine Verschiebung zwischen der gegenwärtigen Kontur und der optimalen Kontur darstellt, und die Indexdaten der optimalen Kontur werden auf den Leitungen L20 und L40 ausgegeben. In einer bevorzugten Ausführungsform der Erfindung haben die Indexdaten der vorhergesagten Kontur einen gleichen Wert wie eine Kennzeichnung der Objektpixel, die der vorhergesagten Kontur entsprechen.
  • Mit Bezug auf 3 ist im Detail der Block 330 zum Detektieren einer optimalen Kontur gezeigt, der einen Kandidatenkonturbestimmungssektor 331, einen Anpassungssektor 333 und einen Sektor 335 zum Bestimmen einer optimalen Kontur aufweist.
  • Der Kandidatenkonturbestimmungssektor 331 detektiert vorhergesagte Konturen, die sich innerhalb des vorher festgesetzten Suchbereichs von der gegenwärtigen Kontur befinden, und berechnet die Längen der gegenwärtigen Kontur und der detektierten vorhergesagten Konturen auf der Basis der Information der gegenwärtigen Kontur und der Information der vorhergesagten Kontur auf den Leitungen L10 bzw. L60. Danach werden die Längen der gegenwärtigen Kontur und jeder dieser vorhergesagten Konturen innerhalb des vorher festge setzten Suchbereichs verglichen. Wenn ein Unterschied zwischen den Längen der gegenwärtigen und einer vorhergesagten Kontur kleiner ist als M mal die kürzere der zwei Konturen, wird die vorhergesagte Kontur als eine Kandidatenkontur bestimmt, wobei M eine vorherbestimmte Zahl ist. Nach dem Bestimmen einer oder mehrerer Kandidatenkonturen für die gegenwärtige Kontur werden Hinweissignale, die diese Kandidatenkonturen identifizieren, z.B. Indexdaten der Kandidatenkonturen, dem Anpassungssektor 333 zugeführt. Die Länge einer Kontur kann zum Beispiel durch die Anzahl von Konturpixeln definiert werden, die die Kontur bilden.
  • In einer anderen bevorzugten Ausführungsform der Erfindung können die Kandidatenkonturen auf der Basis der Anzahl der Objektpixel, die in den jeweiligen Konturen positioniert sind, anstatt deren Längen bestimmt werden.
  • Der Anpassungssektor 333 ruft über die Leitung L60 Konturinformation für jede Kandidatenkontur von dem Block 320 zum Erzeugen eines Bildes der vorhergesagten Kontur in Reaktion auf die darin eingegebenen Hinweissignale ab. Anschließend werden die gegenwärtige Kontur und eine Kandidatenkontur auf der Basis der Information der gegenwärtigen Kontur auf der Leitung L10 und der Kandidatenkonturinformation auf der Leitung L60 angepasst. Nach dem Ausführen des Anpassungsprozesses zwischen der gegenwärtigen Kontur und jeder Kandidatenkontur liefert der Anpassungssektor 333 dem Sektor 335 zum Bestimmen einer optimalen Kontur passende Information für jeden Kandidatenblock. Die passende Information umfasst Indexdaten, eine Bewegungsverschiebung und eine passende Länge für eine Kandidatenkontur. Während des Anpassungsprozess für eine Kandidatenkontur wird die Kandidatenkontur auf z.B. einer Ein-Pixelbasis innerhalb des vorher festgesetzten Suchbereichs verschoben und werden bei jeder Verschiebung passende Segmente der gegenwärtigen und der Kandidatenkontur bestimmt. Danach wird die Gesamtlänge der passenden Segmente für jede Verschiebung berechnet. Die berechneten Längen werden dann miteinander verglichen und die größte davon wird als die passende Länge für die Kandidatenkontur bestimmt und die Verschiebung, die die größte Länge ergibt, wird als die Bewegungsverschiebung für die Kandidatenkontur festgesetzt. Mit Bezug auf 5A sind Details eines Schemas zur Bestimmung von passenden Segmenten erläutert. 5A beschreibt eine gegen wärtige Kontur 10 und eine Kandidatenkontur 20, die einander überlappen. Nach dem Überlappen der Konturen 10 und 20 werden die Schnittpunkte dazwischen, wie z.B. PV1 bis PV6, P1 und P2 detektiert und werden Längen der überlappenden Segmente PV6-PV1, PV2-PV3, P1-P2 und PV4-PV5 berechnet. Wenn die Länge eines überlappenden Segments größer ist als ein Schwellenwert TH1, wird das überlappende Segment als ein passendes Segment bestimmt. In 5A wird angenommen, dass das überlappende Segment zwischen P1 und P2 nicht größer ist als TH1; die übrigen überlappenden Segmente sind größer als TH1. Deshalb werden die übrigen überlappenden Segmente, z.B. PV2 bis PV3, PV4 bis PV5 und PV6 bis PV1, als die passenden Segmente bestimmt. In einer anderen bevorzugten Ausführungsform der Erfindung kann die Bestimmung des passenden Segments auf der Basis der Anzahl von Konturpixeln, die sich auf einem gegebenen überlappenden Segment befinden, anstatt deren Länge ausgeführt werden.
  • In dem oben genannten Anpassungsverfahren wird, wenn eine Kontur einen Rand eines Videorahmens schneidet, ein Teil des Randes zwischen den Schnittpunkten als ein Teil der Kontur betrachtet. Zum Beispiel werden, wie in 5B gezeigt, wenn eine gegenwärtige Kontur 50 und eine Kandidatenkontur 60 einen rechten Rand 40-1 des Videorahmens 40 an den Punkten 50-1, 50-2 und 60-1, 60-2 schneiden, die Teile des Rands 40-1 zwischen den Punkten 50-1 und 50-2 und den Punkten 60-1 und 60-2 als Teile der Konturen 50 bzw. 60 behandelt.
  • An dem Sektor 335 zur Bestimmung der optimalen Kontur, der auf die passende Information für jede Kandidatenkontur anspricht, werden die passenden Längen der Kandidatenkonturen miteinander verglichen; und wird eine Kandidatenkontur, die einer passenden Länge eines Maximalwerts entspricht, zur optimalen Kontur der gegenwärtigen Kontur erklärt. Die Bewegungsverschiebung, die der optimalen Kontur entspricht, wird als der lokale Bewegungsvektor (LMV) festgesetzt. Ausgaben von dem Sektor 335 zum Bestimmen der optimalen Kontur auf den Leitungen L20 und L40 sind der LMV und die Indexdaten der optimalen Kontur.
  • Wieder mit Bezug auf 1 erzeugt die Bewegungskompensationseinheit 400 eine vorhergesagte gegenwärtige Kontur durch das Abrufen der optimalen Konturinformation aus dem Rahmenspeicher 700 über die Leitung L30 auf der Basis des GMVs auf der Leitung L22 und des LMVs und der Indexdaten der optimalen Kontur auf der Leitung L20, wobei die vorhergesagte gegenwärtige Kontur die um die Summe des GMVs und des LMVs versetzte optimale Kontur darstellt. Die Ausgabe an die Zwischenkodierungseinheit 200 und eine Konturrekonstruktionseinheit 600, die von der Bewegungskompensationseinheit 400 über eine Leitung L55 zugeführt wird, ist die vorhergesagte Information der gegenwärtigen Kontur, die Positionsdaten von Konturpixeln der vorhergesagten gegenwärtigen Kontur und Indexdaten davon darstellt.
  • Mit Bezug auf 4 ist ein detailliertes Blockdiagramm der Zwischenkodierungseinheit 200 dargestellt, die einen Anpassungsblock 420, einen Erweiterungsblock 430 und einen Kodierungsblock 440 aufweist.
  • Die Information der vorhergesagten gegenwärtigen Kontur auf der Leitung L55 und die Information der gegenwärtigen Kontur auf der Leitung L10 werden dem Anpassungsblock 420 zugeführt. An dem Anpassungsblock 420 wird die vorhergesagte gegenwärtige Kontur an die gegenwärtige Kontur angepasst. Das an dem Anpassungsblock 420 ausgeführte Anpassungsverfahren ist dem Anpassungsverfahren des Anpassungssektors 333 ähnlich, das hierin obenstehend mit Bezug auf 5A und 5B beschrieben ist. Zum Beispiel werden, wenn die Konturen 10 und 20 in 5A die gegenwärtige Kontur und die vorhergesagte gegenwärtige Kontur sind, diese Punkte PV1 bis PV6, die jeweils einen Endpunkt eines passenden Segments bilden, als Hauptscheitel bestimmt. Die Schnittpunkte P1 und P2 sind keine Hauptscheitel, da das überlappende Segment dazwischen kein passendes Segment ist. Die angepasste Kontur wird dem Erweiterungsblock 430 zugeführt, wobei die Information der angepassten Kontur Positionsinformation von Konturpixeln auf der vorhergesagten gegenwärtigen und der gegenwärtigen Kontur und den Hauptscheiteln umfasst.
  • Der Erweiterungsblock 430 erweitert, wie in 6 erläutert, die vorhergesagte gegenwärtige Kontur 20 um einen vorherbestimmten Schwellenwert Dmax, um ein vorhergesagtes Konturband 20' zu schaffen. Dann passt der Erweiterungs block 430 das vorhergesagte Konturband 20' der gegenwärtigen Kontur 10 an, um Teile der gegenwärtigen Kontur zu finden, die mit dem vorhergesagten Konturband 20' überlappen, einschließlich zwischen Paaren von Hauptscheiteln. In dem in 6 gegebenen Beispiel wird festgestellt, dass die gegenwärtige Kontur 10 zwischen den Paaren von Scheiteln PV6 und PV3 und PV4 und PV5 mit dem vorhergesagten Konturband 20 überlappt. Solche überlappenden Teile PV6 bis PV3 und PV4 bis PV5 der gegenwärtigen Kontur 10 werden als überlappende Abschnitte festgesetzt. Danach wird eine Länge jedes überlappenden Abschnitts mit einem Schwellenwert TH2 verglichen und wird ein überlappender Abschnitt, der länger ist als der Schwellenwert TH2, als ein passender Abschnitt bestimmt und werden Hauptscheitel an den Enden des passenden Abschnitts als primäre Scheitel betrachtet. In der in 6 gezeigten beispielhaften angepassten Kontur werden diese Paare der Scheitel PV6-PV3 und PV4-PV5 primäre Scheitel, wenn die Längen dazwischen größer sind als TH2. In dem anschließenden Kodierungsprozess werden die passenden Abschnitte als zu den Teilen der vorhergesagten gegenwärtigen Kontur zwischen jedem Paar der primären Scheiteln passend behandelt.
  • Die Ausgabe von dem Erweiterungsblock 430 an den Kodierungsblock 440 passt Daten an, die Positionsinformation der primären Scheitel und der Konturpixel der gegenwärtigen Kontur enthalten.
  • An dem Kodierungsblock 440 werden Scheitel auf jedem von nicht-passenden Abschnitten der gegenwärtigen Kontur, z.B. Teilen der gegenwärtigen Kontur 10 zwischen den primären Scheiteln PV6-PV5 und PV4-PV3, durch die Verwendung der herkömmlichen polygonalen Annäherungstechnik auf der Basis des vorherbestimmten Schwellenwerts Dmax bestimmt. Das heißt, entsprechend der herkömmlichen polygonalen Annäherung wird ein Konturpixel auf jedem Kontursegment, das einen weitesten Abstand zu einem diesem entsprechenden Zeilensegment hat, als ein Scheitel bestimmt, wenn der weiteste Abstand größer ist als Dmax. Diese von der polygonalen Annäherung bestimmten Scheitel werden als sekundäre Scheitel festgesetzt. Der Kodierungsblock 440 kodiert Positionsdaten der primären und sekundären Scheitel und liefert die kodierten Scheiteldaten an den MUX 800 und eine Zwischenkodierungseinheit 500.
  • An dem MUX 800 werden die kodierten Scheiteldaten, der GMV, der LMV und die Indexdaten der optimalen Kontur gemultiplext, um kodierte Konturdaten für ihre Übertragung an einen (nicht gezeigten) Sender zu liefern.
  • In der Zwischenzeit werden an der Zwischenkodierungseinheit 500 die kodierten Scheiteldaten in dekodierte Scheiteldaten dekodiert, die die dekodierten primären und sekundären Scheitel darstellen, und werden die dekodierten Scheiteldaten an den Konturrekonstruktionsblock 600 geliefert.
  • Die dekodierten Scheiteldaten von der Zwischenkodierungseinheit 500 werden beim Rekonstruieren des gegenwärtigen Bildsignals zusammen mit der über die Leitung L55 an der Konturrekonstruktionseinheit 600 zugeführten vorhergesagten Information der gegenwärtigen Kontur verwendet. Das heißt, um ein rekonstruiertes gegenwärtiges Bildsignal mit einer rekonstruierten gegenwärtigen Kontur zu liefern, werden Teile der rekonstruierten gegenwärtigen Kontur, die den nicht-passenden Abschnitten der gegenwärtigen Kontur entsprechen, auf der Basis der dekodierten Scheiteldaten rekonstruiert, während übrige Teile von der vorhergesagten gegenwärtigen Kontur rekonstruiert werden. Das rekonstruierte gegenwärtige Bildsignal wird an dem Rahmenspeicher 700 gespeichert und wird als ein rekonstruiertes vorheriges Bildsignal für das nächste Bildsignal verwendet.
  • Während die vorliegende Erfindung nur in Bezug auf bestimmte bevorzugte Ausführungsformen beschrieben wurde, können andere Modifikationen und Variationen gemacht werden, ohne vom Umfang der vorliegenden Erfindung, wie er in den folgenden Ansprüchen dargelegt ist, abzuweichen.

Claims (17)

  1. Verfahren für das Kodieren einer gegenwärtigen Kontur auf der Basis von einer oder mehreren vorher rekonstruierten Konturen von Videobildsignalen, das folgende Schritte aufweist: (a) Wählen einer der vorher rekonstruierten Konturen als eine vorhergesagte Kontur für die gegenwärtige Kontur; (b) Überlappen der vorhergesagten Kontur mit der gegenwärtigen Kontur; (c) Finden von passenden Segmenten zwischen den vorhergesagten und den gegenwärtigen Konturen und Einstellen von zwei Endpunkten von jedem passenden Segment als Hauptscheitel; (d) Erweitern der überlappten vorhergesagten Kontur und Bestimmen von passenden Abschnitten auf der gegenwärtigen Kontur, wobei jeder passende Abschnitt einen Teil der gegenwärtigen Kontur darstellt, der zwischen zwei Hauptscheiteln mit der erweiterten Kontur überlappt; (e) Festsetzen der zwei Hauptscheitel an den Enden von jedem passenden Abschnitt als primäre Scheitel; (f) Polygonale Annäherung jedes nicht passenden Abschnitts an die gegenwärtige Kontur, wobei sekundäre Scheitel auf nicht passenden Abschnitten bestimmt werden; und (g) Kodieren der gegenwärtigen Kontur durch das Darstellen jedes passenden Abschnitts durch einen Teil der vorhergesagten Kontur zwischen zwei primären Scheiteln jedes passenden Abschnitts und der nicht passenden Abschnitte durch die sekundären Scheitel, um dadurch kodierte Daten der gegenwärtigen Kontur zu schaffen.
  2. Verfahren nach Anspruch 1, wobei der Schritt (a) des Wählens folgende Schritte aufweist: (a1) Berechnen der Längen der gegenwärtigen und der vorher rekonstruierten Konturen; (a2) Vergleichen der Länge der gegenwärtigen Kontur mit jeder der Längen der vorher rekonstruierten Konturen, um dadurch eine oder mehrere Kandidatenkonturen unter den vorher rekonstruierten Konturen zu bestimmen, wobei ein Verhältnis zwischen den Längen der gegenwärtigen Kontur und jeder Kandidatenkontur innerhalb eines vorherbestimmten Bereichs liegt; (a3) Verschieben jeder Kandidatenkontur um verschiedene Beträge, um dadurch überlappende Segmente der verschobenen Kontur und der gegenwärtigen Kontur zu detektieren, und Berechnen einer Summe von Längen der überlappenden Segmente; (a4) Festsetzen einer Kandidatenkontur, die einer größten Summe der Längen entspricht, als eine optimale Kontur und Schaffen einer Verschiebung, die die größte Summe als einen Bewegungsvektor ergibt; und (a5) Bewegen der optimalen Kontur um den Bewegungsvektor, um dadurch die vorhergesagte Kontur zu erzeugen.
  3. Verfahren nach Anspruch 2, wobei Längen der überlappenden Segmente größer sind als ein vorherbestimmter Schwellenwert TH1.
  4. Verfahren nach Anspruch 3, wobei die passenden Segmente in Schritt (c) länger sind als ein voreingestellter Schwellenwert TH2.
  5. Verfahren nach Anspruch 4, wobei die Schwellenwerte TH1 und TH2 einen identischen Wert haben.
  6. Verfahren nach Anspruch 1, wobei der Schritt (f) des polygonalen Annäherns auf der Basis eines Schwellenwerts Dmax ausgeführt wird.
  7. Verfahren nach Anspruch 6, wobei eine Breite der erweiterten Kontur dem Schwellenwert Dmax entspricht.
  8. Verfahren nach Anspruch 2, wobei die kodierten gegenwärtigen Daten einen kodierten Bewegungsvektor und kodierte primäre und sekundäre Scheitel aufweisen.
  9. Verfahren nach Anspruch 1, wobei die Videobildsignale eine Mehrzahl von Rahmen aufweisen und die gegenwärtige Kontur und die vorher rekonstruierten Konturen zu verschiedenen Rahmen gehören.
  10. Verfahren für das Kodieren einer gegenwärtigen Kontur auf der Basis einer vorher rekonstruierten Kontur, das folgende Schritte aufweist: (a) Verschieben einer der gegenwärtigen und der vorher rekonstruierten Kontur um verschiedene Beträge zu der anderen Kontur hin; (b) Finden von überlappenden Segmenten der gegenwärtigen und der vorher rekonstruierten Konturen bei jeder Verschiebung; (c) Festsetzen überlappender Segmente, die größer sind als ein vorherbestimmter Schwellenwert TH1, als passende Segmente; (d) Erlangen einer Summe von Längen der passenden Segmente bei jeder Verschiebung; und (e) Bestimmen einer Verschiebung, die eine Summe einer größten Größe als einen Bewegungsvektor der gegenwärtigen Kontur ergibt.
  11. Verfahren nach Anspruch 10, das nach dem Schritt (e) des Bestimmens ferner folgende Schritte aufweist: (f) Überlappen der gegenwärtigen und der vorher rekonstruierten Kontur auf der Basis des Bewegungsvektors, um dadurch eine überlappte gegenwärtige Kontur und eine überlappte vorherige Kontur zu erzeugen; (g) Detektieren von überlappenden Teilen der überlappten gegenwärtigen Kontur und der überlappten vorherigen Kontur; (h) Vergleichen einer Länge jedes überlappenden Teils mit einem voreingestellten Schwellenwert TH2 und Einstellen von jedem überlappenden Teil, der länger ist als der TH2, als einen überlappenden Abschnitt; (i) Einstellen zweier Endpunkte von jedem überlappenden Abschnitt als Hauptscheitel; (j) Erweitern der überlappten vorherigen Kontur, um eine erweiterte Kontur zu erzeugen; (k) Detektieren von überlappenden Teilen der erweiterten Kontur und der überlappten gegenwärtigen Kontur zwischen einem Paar Hauptscheitel; (l) Vergleichen einer Länge von jedem überlappenden Teil mit einem voreingestellten Schwellenwert TH2 und Einstellen jedes überlappenden Teils, dessen Länge größer ist als der TH2, als ein passender Abschnitt der überlappten gegenwärtigen Kontour; (m) Einstellen von zwei Hauptscheiteln an den Enden von jedem passenden Abschnitt als primäre Scheitel; (n) Polygonales Annähern von jedem nicht passenden Abschnitt der überlappten gegenwärtigen Kontur, um dadurch sekundäre Scheitel auf der überlappten gegenwärtigen Kontur zu schaffen; und (o) Kodieren des Bewegungsvektors und der Positionsinformation der primären und der sekundären Scheitel, um dadurch kodierte Daten für die gegenwärtige Kontur zu liefern.
  12. Verfahren nach Anspruch 11, wobei die Schwellenwerte TH1 und TH2 einen identischen Wert haben.
  13. Vorrichtung für das Kodieren einer Kontur eines Objekts in einem gegenwärtigen Bildrahmen auf der Basis eines vorherigen Bildrahmens, wobei die jeweiligen gegenwärtigen und vorherigen Bildrahmen ein oder mehrere Objekte aufweisen, wobei jedes der Objekte eine Kontur hat, aufweisend: eine Einrichtung (310) für das Erzeugen eines globalen Bewegungsvektors, der eine Verschiebung zwischen den gegenwärtigen und den vorherigen Bildrahmen darstellt, die eine größte Anzahl von überlappenden Objektpixeln dazwischen ergibt; eine Einrichtung für das Detektieren von Konturen der Objekte in dem vorherigen Bildrahmen und das Einstellen der detektierten Konturen als vorherige Konturen; eine Einrichtung für das Wählen einer der Konturen in dem gegenwärtigen Bildrahmen als eine gegenwärtige Kontur; eine Einrichtung (330) für das Bestimmen einer optimalen Kontur aus den vorherigen Konturen und das Festsetzen einer Verschiebung zwischen der gegenwärtigen Kontur und der optimalen Kontur als einen lokalen Bewegungsvektor; eine Einrichtung für das Überlappen der optimalen Kontur mit der gegenwärtigen Kontur auf der Basis des globalen und des lokalen Bewegungsvektors, um dadurch eine überlappende Kontur zu erzeugen; eine Einrichtung (420) für das Entscheiden passender Segmente der überlappenden Kontur und der gegenwärtigen Kontur; eine Einrichtung für das Festsetzen von zwei Endpunkten von jedem passenden Segment als Hauptscheitel; eine Einrichtung (430) für das Erweitern der überlappenden Kontur, um dadurch eine erweiterte Kontur zu schaffen; eine Einrichtung für das Finden von passenden Abschnitten auf der gegenwärtigen Kontur und das Einstellen von zwei Endpunkten von jedem passenden Abschnitt als primäre Scheitel, wobei jeder passende Abschnitt einen Teil der gegenwärtigen Kontur darstellt, der zwischen einem Paar Hauptscheiteln mit der erweiterten Kontur überlappt; eine Einrichtung für das Bestimmen von sekundären Scheiteln auf nicht passenden Abschnitten der gegenwärtigen Kontur; und eine Einrichtung für das Kodieren des globalen Bewegungsvektors, des lokalen Bewegungsvektors und der primären und der sekundären Scheitel, um dadurch kodierte Daten der gegenwärtigen Kontur zu liefern.
  14. Vorrichtung nach Anspruch 13, wobei die Einrichtung für das Bestimmen der optimalen Kontur aufweist: eine Einrichtung für das Berechnen einer Länge der gegenwärtigen Kontur und Längen vorheriger Konturen, die innerhalb eines vorherbestimmten Suchbereichs der gegenwärtigen Kontur positioniert sind; eine Einrichtung für das Bestimmen von Kandidatenkonturen unter den vorherigen Konturen innerhalb des vorherbestimmten Suchbereichs, wobei ein Verhältnis zwischen den Längen der gegenwärtigen Kontur und einer Kandidatenkontur innerhalb eines vorherbestimmten Bereichs liegt; eine Einrichtung für das Verschieben jeder Kandidatenkontur um verschiedene Beträge, um dadurch überlappende Segmente der verschobenen Kontur mit der gegenwärtigen Kontur zu detektieren und das Berechnen einer Summe von Längen der überlappenden Segmente, die größer sind als ein Schwellenwert TH1; und eine Einrichtung für das Erzeugen einer Kandidatenkontur, die einer größten Summe der Längen entspricht, als die optimale Kontur und das Ausgeben einer Verschiebung, die die größte Summe als den lokalen Be wegungsvektor ergibt.
  15. Vorrichtung nach Anspruch 14, wobei die Einrichtung für das Entscheiden der passenden Segmente aufweist: eine Einrichtung für das Finden von überlappenden Teilen der überlappenden Kontur und der gegenwärtigen Kontur; und eine Einrichtung für das Festsetzen von überlappenden Teilen, die größer sind als der Schwellenwert TH1, als die passenden Segmente.
  16. Vorrichtung nach Anspruch 15, wobei jeder der passenden Abschnitte länger ist als ein voreingestellter Schwellenwert TH2.
  17. Vorrichtung nach Anspruch 16, wobei die sekundären Scheitel durch die Verwendung einer Technik polygonaler Annäherung auf der Basis eines Schwellenwerts Dmax bestimmt werden.
DE1997638016 1997-04-11 1997-06-12 Verfahren und Vorrichtung zur adaptiven Kodierung einer Objektkontur Expired - Lifetime DE69738016T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1019970013367A KR100229544B1 (ko) 1997-04-11 1997-04-11 움직임 추정기법을 이용한 윤곽선 부호화 장치
KR9713367 1997-04-11

Publications (2)

Publication Number Publication Date
DE69738016D1 DE69738016D1 (de) 2007-09-27
DE69738016T2 true DE69738016T2 (de) 2008-05-15

Family

ID=19502525

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1997638016 Expired - Lifetime DE69738016T2 (de) 1997-04-11 1997-06-12 Verfahren und Vorrichtung zur adaptiven Kodierung einer Objektkontur

Country Status (6)

Country Link
US (1) US5929917A (de)
EP (1) EP0871331B1 (de)
JP (1) JP3924048B2 (de)
KR (1) KR100229544B1 (de)
CN (1) CN1147156C (de)
DE (1) DE69738016T2 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3363039B2 (ja) * 1996-08-29 2003-01-07 ケイディーディーアイ株式会社 動画像内の移動物体検出装置
KR100229546B1 (ko) * 1997-04-11 1999-11-15 전주범 윤곽선 비디오 신호 부호화 방법 및 그 장치
KR100244769B1 (ko) * 1997-06-26 2000-02-15 전주범 스케일러빌리티를 갖는 간 윤곽선 부호화 방법 및 장치
KR19990008977A (ko) * 1997-07-05 1999-02-05 배순훈 윤곽선 부호화 방법
KR100295798B1 (ko) * 1997-07-11 2001-08-07 전주범 스케일러빌리티를구현한이진현상신호부호화장치
JPH11308610A (ja) * 1998-04-02 1999-11-05 Daewoo Electronics Co Ltd 映像信号適応的符号化装置
JP3753578B2 (ja) * 1999-12-07 2006-03-08 Necエレクトロニクス株式会社 動きベクトル探索装置および方法
JP2001266159A (ja) * 2000-03-17 2001-09-28 Toshiba Corp 物体領域情報生成方法及び物体領域情報生成装置並びに近似多角形生成方法及び近似多角形生成装置
US7733345B2 (en) * 2001-11-27 2010-06-08 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding position interpolator
US7809204B2 (en) * 2002-10-18 2010-10-05 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding key value data of coordinate interpolator
RU2225035C1 (ru) * 2003-04-21 2004-02-27 Общество с ограниченной ответственностью "Р.Т.С.-Сервис" Способ кодирования координат перемещающегося на экране вычислительного устройства видеоизображения, устройство для декодирования визуального объекта, закодированного этим способом, и система, предназначенная для визуализации активного видео с помощью этого устройства
FR2914467B1 (fr) * 2007-03-29 2009-06-05 Canon Kk Procedes et dispositifs de codage et de decodage de signaux numeriques multidimensionnels.
US8249372B2 (en) 2007-03-16 2012-08-21 Canon Kabushiki Kaisha Methods and devices for coding and decoding multidimensional digital signals
CN108832935B (zh) * 2018-05-31 2022-05-10 郑州云海信息技术有限公司 一种rle算法实现方法、系统、设备及计算机存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748231A (en) * 1992-10-13 1998-05-05 Samsung Electronics Co., Ltd. Adaptive motion vector decision method and device for digital image stabilizer system
US5592228A (en) * 1993-03-04 1997-01-07 Kabushiki Kaisha Toshiba Video encoder using global motion estimation and polygonal patch motion estimation
JP3038143B2 (ja) * 1994-12-29 2000-05-08 現代電子産業株式会社 映像機器の物体別形状情報の減縮装置及びその減縮方法並びに多角近似化方法
KR100235345B1 (ko) * 1994-12-29 1999-12-15 전주범 분할영역에서의 움직임 추정방법 및 장치
KR100235343B1 (ko) * 1994-12-29 1999-12-15 전주범 영역분할 기법을 이용한 동영상신호 부호화기의 움직임 벡터 측정장치
KR100209798B1 (ko) * 1995-04-08 1999-07-15 전주범 확장-내삽을 이용한 윤곽선 물체의 부호화 장치
KR100203656B1 (ko) * 1996-04-09 1999-06-15 전주범 윤곽 영상신호 부호화 장치

Also Published As

Publication number Publication date
KR19980076589A (ko) 1998-11-16
EP0871331A2 (de) 1998-10-14
EP0871331B1 (de) 2007-08-15
CN1147156C (zh) 2004-04-21
EP0871331A3 (de) 2000-09-27
KR100229544B1 (ko) 1999-11-15
JPH10290466A (ja) 1998-10-27
US5929917A (en) 1999-07-27
CN1196642A (zh) 1998-10-21
JP3924048B2 (ja) 2007-06-06
DE69738016D1 (de) 2007-09-27

Similar Documents

Publication Publication Date Title
DE69728757T2 (de) Verfahren und Vorrichtung zum Kodieren eines Objektes unter Verwendung einer Konturbewegungsschätztechnik
DE69535007T2 (de) Verfahren und Vorrichtung zur objektbasierten prädiktiven Kodierung und Übertragung von digitalen Bildern und Dekodierungsvorrichtung
DE69738016T2 (de) Verfahren und Vorrichtung zur adaptiven Kodierung einer Objektkontur
DE69722040T2 (de) 2-d gittergeometrie und bewegungsvektorkompression
DE3036769C1 (de) Vorrichtung und Verfahren zum Codieren eines Videosignals
EP0421186B1 (de) Verfahren zur Codierung beliebig geformter Bildsegmente
DE69736852T2 (de) Codierung- und Decodierungssystem für bewegte Bilder mit beliebig geformten Objekten
DE69635836T2 (de) Verfahren und Vorrichtung zur Kodierung eines Bildes mit einer Kontur in einem Videosignal
DE69737443T2 (de) Verfahren für skalierbares zwischenkonturverschlüsseln und vorrichtung dafür
DE19739266B4 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
DE69631819T2 (de) Fehlerverdeckung in einem Block-basierten Bildkodierer
DE4442643B4 (de) Verfahren zum Abschätzen der Bewegung in einem Bewegtbild
DE19737805A1 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors
DE60022018T2 (de) Verfahren und vorichtung zur bewegungsvektorfeldkodierung
DE60118491T2 (de) Kodiergerät und Kodierverfahren für einen Orientierungsinterpolationsknoten
DE19743202A1 (de) Verfahren und Vorrichtung zum Codieren eines Bewegungsvektors
EP0773690A2 (de) Verfahren zur Codierung eines Videodatenstroms
DE60031014T2 (de) Verfahren zur bewegungsschätzung zwischen zwei bildern mit verwaltung der wendung einer masche und entsprechendes kodierungsverfahren
DE19711670B4 (de) Verfahren und Vorrichtung zum Codieren des Umrisses eines Gegenstandes unter Verwendung des Flächenschwerpunktes
DE69737711T2 (de) Verfahren und Vorrichtung zur Kodierung einer Objektkontur unter Verwendung ihrer Zeitkorrelation
DE60113358T2 (de) Kodierer, Dekodierer und entsprechende Verfahren für Orientierungsinterpolationsknotendaten
DE60126895T2 (de) Verfahren und Vorrichtung zur Datenkompression
DE19753444C2 (de) Lokalrelaxationsverfahren zur Bestimmung des optischen Flusses
DE3927516A1 (de) Verfahren zur bildung eines praediktionsbildes
DE19749655B4 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors

Legal Events

Date Code Title Description
8364 No opposition during term of opposition