DE69713779T2 - Objektorientiertes videosystem - Google Patents
Objektorientiertes videosystemInfo
- Publication number
- DE69713779T2 DE69713779T2 DE69713779T DE69713779T DE69713779T2 DE 69713779 T2 DE69713779 T2 DE 69713779T2 DE 69713779 T DE69713779 T DE 69713779T DE 69713779 T DE69713779 T DE 69713779T DE 69713779 T2 DE69713779 T2 DE 69713779T2
- Authority
- DE
- Germany
- Prior art keywords
- background
- block
- background object
- image
- encoder
- 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
Links
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000000034 method Methods 0.000 claims description 13
- 239000012634 fragment Substances 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims 1
- 230000006835 compression Effects 0.000 description 9
- 238000007906 compression Methods 0.000 description 9
- 238000013459 approach Methods 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000011017 operating method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 239000007853 buffer solution Substances 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/88—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/23—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/37—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/507—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/99—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals involving fractal coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
- Die vorliegende Erfindung betrifft ein objekt-orientiertes Videosystem und insbesondere ein Videosystem, das objektorientierte Techniken verwendet, um für eine effiziente Kodierung und Kompression von Videobildern zu sorgen. Die Erfindung ist insbesondere, jedoch nicht ausschließlich, für Anwendungen geeignet, die Bilder mit sich langsam ändernden Hintergründen haben, wie etwa Personal-Videokommunikation über Paketnetzwerke, oder Geschlossenkreis-TV-Überwachung, die feste oder drahtlose Verbindungen verwendet.
- Videosysteme, die Bildkompressionstechniken verwenden, sind seit langer Zeit für die Verwendung in Situationen bekannt geworden, wo die Bilder über eine begrenzte Bandbreite übertragen werden müssen, oder alternativ, wo sie auf einer Platte oder einem Band mit begrenzter Speicherkapazität gespeichert werden müssen. Ein besonders effektiver herkömmlicher Ansatz ist in Nicholls, J. A., und Monro, D. M. "Scalable video by software", Proc. ICASSP 1996, pp. IV: 2005-2009, beschrieben. Dieser offenbart ein, Videoübertragungssystem, das einen Ratenpuffer verwendet, um eine gewünschte Videobandbreite zu erhalten, in dem nur jene Blöcke übertragen werden, die das Bild am meisten verbessern. Ein Anteil der Bandbreite ist reserviert, um den Hintergrund des Bilds aufzuklaren, wobei dies erreicht werden kann, indem eine Aufzeichnung der Zeit, seit jeder einzelne Block in dem Bild übertragen worden ist, aufrechterhalten wird. Diese Aufzeichnung wird jedes Mal aktualisiert, wenn ein Block zur Übertragung gewählt ist.
- Die persistenten Blöcke (die natürlich die Tendenz haben, einen Teil des stationären Hintergrunds zu bilden), werden innerhalb des reservierten Anteils der Gesamtbreite verschickt. Das Ergebnis ist, dass über eine Zeitdauer jegliche stationären Teile des Bilds innerhalb der reservierten Bandbreite mit jeder gewünschten Wiedergabetreue verschickt werden können. Die gesamte sichtbare visuelle Qualität des ausgegebenen Bilds bleibt hoch, da der größere Anteil der Bandbreite vom System bei der Übertragung der sich am schnellsten bewegenden Teile des Bilds genutzt werden kann. Jegliche stationären Teile erscheinen einem Verwender so, dass ihre Wiedergabetreue bis zu und einschließlich verlustloser Wiedergabetreue allmählich zunimmt, da sie allgemein durch Übertragungen innerhalb der reservierten Bandbreite "aufgeklart" werden.
- Die PCT Publikation WO-A-8809101 offenbart jene Merkmale der Erfindung, die in den Oberbegriffen der unabhängigen Ansprüche angegeben sind. Die US-A-4951140 offenbart eine Bildkodierungsvorrichtung, die einen alternativen Ansatz verwendet.
- Eine Aufgabe der vorliegenden Erfindung ist es, den Stand der Technik zu verbessern, indem die Bandbreite weiter reduziert wird, die erforderlich ist, um ein Bild mit einer gegebenen Bildwiedergabetreue vorzusehen.
- Nach einem ersten Aspekt der vorliegenden Erfindung ist ein Kodierer für ein objektorientiertes Videosystem durch jene Merkmale gekennzeichnet, die im kennzeichnenden Teil von Anspruch 1 angegeben sind.
- Nach einem anderen Aspekt der vorliegenden Erfindung ist ein objektorientiertes Videosystem durch jene Merkmale gekennzeichnet, die im kennzeichnenden Teil von Anspruch 17 angegeben sind.
- Nach einem weiteren Aspekt der Erfindung ist ein Betriebsverfahren eines Videosystems durch jene Merkmale gekennzeichnet, die im kennzeichnenden Anspruch 23 angegeben sind.
- Die Erfindung betrifft ferner ein objektorientiertes Videosystem, das einen Kodierer des oben identifizierten Typs enthält.
- Die Erfindung betrifft auch ein Betriebsverfahren eines Videosystems und/oder ein Kodierverfahren für Bewegtbild- Daten.
- Allgemein erstreckt sich die Erfindung auch auf ein objektorientiertes System zum Kodieren von Videobildern, wobei die Objekte ausgewählt werden, um die Wiedergabetreue für eine gegebene Bandbreite zu optimieren oder zumindest zu verbessern.
- Die Erfindung erstreckt sich ferner auf ein objektorientiertes System, wobei zumindest eines der Objekte als "Hintergrund" definiert ist, das ist dasjenige Teil des bewegenden Bildes, das stationär ist, oder das sich relativ zu dem Rest langsam ändert. Der "Hintergrund" kann einer Fraktion der verfügbaren Bandbreite derart zugeordnet werden, dass die Übertragung des Hintergrunds ohne Verlust an Wiedergabetreue über eine lange Dauer erfolgt.
- Die Erfindung erstreckt sich ferner auf ein objektorientiertes Videosystem/Codec (Kodierer/Dekodierer), wobei das System eine Aufzeichnung des Hintergrundobjekts hält und daher ein Mittel vorsieht, das erlaubt, dass sich Vordergrundobjekte quer über den Hintergrund bewegen; der Hintergrund kann aus einem Speicher nachgezeichnet werden, ohne rückgesetzt zu werden, um hierdurch ein weiteres Mittel vorzusehen, das die Anforderung an die Bandbreite senkt.
- In anderen Ausführungen kann mehr als ein Hintergrundobjekt und/oder mehr als ein Vordergrundobjekt vorgesehen sein.
- Der Kodierer der vorliegenden Erfindung ist besonders komfortabel darin, dass er in einem Nur-Software- Videokompressor implementiert werden kann. Bevorzugt richtet der Kodierer eine Vierfachbaumzerlegung an einer Fehlermetrik zwischen eingegebenen und übertragenen Bildern auf das Vordergrundobjekt, das aktive Bildfragmente repräsentiert. Ein Ratenpuffersystem kann die Bandbreite begrenzen, in dem nur jene Vordergrundblöcke übertragen werden, die das Bild am meisten verbessern und die über einem gewissen Fehlerschwellenwert liegen. Das Hintergrundobjekt hoher Wiedergabetreue wird identifiziert und zu einem Dekodierer kommuniziert, der in der bevorzugten Ausführung verwendet werden kann, um Hintergrundfragmente nachzuzeichnen, wenn sich Vordergrundobjekte über diese hinweg bewegen. Blöcke können durch verschiedene Methoden kodiert werden, wie etwa durch fraktale Transformationen oder durch abgerundete DCTs. Das System kann in RISC Prozessoren implementiert sein, ohne eine besondere Hardware zu benötigen. Es ist besonders für Niedrigbitraten-Anwendungen mit sich langsam verändernden Hintergründen geeignet, wie etwa Personal- Videokommunikationen über Paketnetzwerke, oder Geschlossenkreis-TV-Überwachung. Ideale Anwendungen enthalten jene, in denen sich die verfügbare Videobandbreite zwischen 10 Kbits pro Sekunde und 2 Mbits pro Sekunde ändert.
- In einer bevorzugten Ausführung kann die Erfindung als ein Zusatzprodukt für ein herkömmliches Computernetzwerk implementiert werden. Mit der Hinzufügung einer herkömmlichen Videokamera und einer herkömmlichen Bildeinfangplatine kann eine Sequenz von Eingabebildern für den Kodierer der vorliegenden Erfindung vorgesehen werden. Der Kodierer kann bequem implementiert werden, indem ein Computerterminal an dem Netzwerk programmiert wird, wobei der Ausgabedatenstrom über das Netzwerk verschickt wird und daher zur Verfügung steht, um durch irgend einen anderen Computer an dem Netzwerk mit einem geeigneten Dekodierer studiert zu werden. Alternativ kann der Kodierer der vorliegenden Erfindung in einer anderen Ausführung innerhalb der Videokamera selbst eingebaut sein. Dies würde es potentiellen Verwendern erlauben, einfach eine Videokamera/Dekodiereinheit zu erwerben, die über einen geeigneten Adapter direkt in das Netzwerk eingesteckt werden könnte, um den Ausgangsstrom in das erforderliche Signalprotokoll zu modifizieren, welches das Netzwerk benutzt.
- Wenn die Erfindung für Überwachungsanwendungen benutzt wird, kann der Ausgabedatenstrom zu einem geeigneten Speichermedium gerichtet werden, z. B. eine lokale Festplatte oder eine entfernte Festplatte an dem Netzwerk. Ein Verwender könnte dann die Information von der Platte nach Wunsch wiedererlangen und sie, nach Dekodierung derselben, als rekonstruiertes bewegtes Bild auf irgendeinem bevorzugten lokalen Terminal betrachten.
- Die Erfindung kann in vielerlei Weisen in die Praxis umgesetzt werden, und ein spezifisches Beispiel wird nun als Beispiel anhand von Fig. 1 beschrieben, die ein Funktionsblockdiagramm der bevorzugten Ausführung ist.
- Das in Fig. 1 gezeigte objektorientierte Videosystem umfasst eine Videokamera mit Digitalisierer 10 und einen allgemein mit 12 bezeichneten Dekodierer. Digitalisierte Videosignale werden entlang einer Leitung 14 dem Kodierer 12 zugeführt, der dazu ausgelegt ist, die Signale zu kodieren und diese entlang einem begrenzt übertragenden Breitbandmedium, das schematisch bei 16 gezeigt ist, zu einem entfernten Ort zu übertragen. Die Form des Übertragungsmediums, das den Kodierer 12 mit der entfernten Stelle verbindet, wird von der Anwendung abhängig sein, könnte jedoch eine drahtlose oder feste Verbindung, ein paketgeschaltetes Netzwerk oder irgend ein anderes Computer- oder Telekommunikationsnetzwerk beinhalten.
- An der entfernten Stelle werden die codierten Signale von dem Übertragungsmedium durch einen Dekodierer 18 aufgenommen, der sie dekodiert und in Signale umwandelt, die zur Reproduktion der Videobilder auf einer Anzeige 20 geeignet sind. Ein Benutzer des Systems kann daher in Echtzeit Videobilder der Szene betrachten, auf die die Kamera gerichtet ist.
- Alternativ oder zusätzlich kann ein Videospeicher 22 vorgesehen sein, um die von der Kamera gelieferten codierten Realzeitbilder zu speichern. Der Verwender kann dann die gespeicherten Bilder später nach Wunsch betrachten. Der Videospeicher 22 könnte irgendein geeignetes Speichermedium aufweisen, z. B. eine magnetische oder optische Platte, ein Magnetband, einen Computerspeicher u. s. w.
- Der Kodierer 12, der die Videodaten kodiert und komprimiert, bevor er sie auf das Übertragungsmedium 14 legt, wird nun im näheren Detail beschrieben.
- Der Kodierer 12 empfängt die hereinkommenden digitalisierten Bilder rahmenweise von der Leitung 14. Die digitalisierten Videorahmen können mit jeder erforderlichen Rate und jeder Auflösung, in Abhängigkeit von der Anwendung, dargeboten werden. In der bevorzugten Ausführung ist die Auflösung ein mehrfaches von 32 · 32 Punkten. Bevorzugt ist das von dem System benutzte Farbmodell das YUV-Format, in dem die Daten durch 8 Bits pro Pixel repräsentiert sind, wobei die U und die V Kanäle mit einem Faktor 2 in beiden räumlichen Richtungen unter-abgetastet werden.
- Jeder eingegebene Rahmen 24 wird pixelweise in den Computerspeicher eingelesen und wird dann mit einem zuvor gespeicherten Bild 26 verglichen. Das gespeicherte Bild 26 ist eine Kopie des Bilds, das von dem System übertragen worden ist, unter der Annahme, dass bei der Übertragung keine Fehler vorhanden waren; der Mechanismus, durch den dieses gespeicherte Bild erzeugt wird, wird nachfolgend beschrieben.
- Für jeden der eingegebenen Rahmen 24 wird ein Fehlerbild 28 berechnet als das Größenquadrat der Vektordifferenz in einem gewichteten Farbraum zwischen dem gespeicherten Bild 26 und dem neu eingegebenen Rahmen 24. Es versteht sich natürlich, dass andere Differenzierungsmethoden verwendet werden könnten, um das eingegebene Bild mit dem gespeicherten Bild zu vergleichen.
- Dann wird das Fehlerbild 28 in eine Mehrzahl von Feldern 30 unterteilt, von denen jedes eine vordefinierte Größe hat, z. B. 32 · 32 Pixel. Jedes Feld unterliegt dann einer "Vierfachbaum-Zerlegung" in Hinsicht darauf, das Feld in eine Serie kleinerer Blöcke aufzuteilen, deren jeder angenähert den gleichen mittleren quadratischen Fehler enthält, (oder "Fehlerstärke"), der über den Pixeln in diesem Block genommen wird. Der Prozess ist wie folgt:
- (a) Der gesamte quadratische Fehler für jedes der Anfangs-Felder wird berechnet;
- (b) Alle Felder werden geprüft, um das Feld zu finden, das den höchsten quadratischen Fehler hat und zur Teilung auswählbar ist;
- (c) Teilen der in Schritt (b) gefundenen Felder in vier kleinere Felder gleicher Größe und Berechnen des gesamten quadratischen Fehlers für jedes der neuen Felder;
- (d) Nun hat die Gesamtzahl der zu prüfenden Felder um 3 zugenommen;
- (e) Wiederholen des Prozesses, das ist: gehe zu Schritt (b), bis entweder keine weiteren auswählbaren Felder zu teilen sind, oder die maximale Anzahl von Feldern erreicht worden ist.
- Felder, die zur Teilung auswählbar sind, müssen größer sein als die kleinstzulässige Feldgröße.
- Die Tiefe des Vierfachbaumes und die Anzahl der Endblöcke kann, in Anpassung an die Kanalbedingungen, eingestellt werden. Auch kann eine minimale Blockgröße vordefiniert werden, z. B. 2 · 2 oder 4 · 4 Pixel.
- Das Ergebnis der Vierfachbaum-Zerlegung ist, dass das Fehlerbild 28, wie bei 32 gezeigt, in eine Mehrzahl unterschiedlich großer Blöcke aufgeteilt ist, deren jeder angenähert den gleichen mittleren quadratischen Fehler ausweist, wenn über die Pixel in diesem Block summiert. Dieser Ansatz hat die Tendenz, die kleinsten Blöcke zu den aktivsten Flächen in vernünftigen rauschfreien Bildern zu richten.
- Sobald die Bildaufteilung abgeschlossen ist, erfolgt eine Berechnung für jeden Block innerhalb des Teils, um die mittlere quadratische Fehlerverbesserung an dem Fehlerbild zu berechnen, die durch Übertragung dieses bestimmten Blocks erreicht werden könnte. Die Liste der Blöcke innerhalb des Teils 32 wird dann auf der Basis dieses mittleren quadratischen Fehlers sortiert, wobei jenen Blöcken Priorität gegeben wird, die das Fehlerbild 28 am meisten verbessern würden.
- Die resultierende sortierte Liste wird zu einem Objektseparator 34 geleitet, dessen Zweck es ist, aus dem Bild ein Hintergrundobjekt und ein Vordergrundobjekt heraus zu separieren.
- Um das Hintergrundobjekt von dem Vordergrundobjekt zu separieren, hält das System ein Modell der Hintergrundluminanz (Y) des Bilds aufrecht. Um dies zu tun, konstruiert es drei separate Versionen des Hintergrunds in dem Kodierer, den akzeptierten Hintergrund 36 und den potentiellen Hintergrund 38. Jeder neue Rahmen oder jedes eingegebene Bild 24 wird bei 40 mit sowohl dem potentiellen Hintergrund 38 als auch mit dem akzeptierten Hintergrund 36 verglichen, auf der Basis eines mittleren quadratischen Fehlerschwellenwerts für ein Teil von bevorzugt 4 · 4 Pixelblöcken. Wenn ein gegebener 4 · 4 Block zu dem akzeptierten Hintergrund 36 innerhalb eines vorbestimmten Schwellenwerts passt, wird dieser als solcher markiert. Wenn der Block zu dem potentiellen Hintergrund 38 besser passt als dem akzeptierten Hintergrund 36, dann wird der Block mit dem entsprechenden potentiellen Hintergrundblock aufgemittelt und in den potentiellen Rahmen zurückversetzt. Jedes Mal, wenn dies vorkommt, wird ein entsprechender Trefferwert inkrementiert. Sobald dieser Wert einen vordefinierten Schwellenwert überschreitet, wird nun der potentielle Block als neuer Hintergrund betrachtet und wird über den entsprechenden Block in dem akzeptierten Hintergrundbild 36 kopiert. Dieser Aufmittelungsprozess glättet das Rauschen aus, während echte graduelle Änderungen in der Szene, z. B. einparkende Autos oder Sonnenuntergang, erlaubt werden.
- Der akzeptierte Hintergrund 36 wird zu dem Objektseparator 34 geleitet, der innerhalb dieses Modells annimmt, dass irgendetwas innerhalb des akzeptierten Hintergrunds 36 das "Hintergrundobjekt" aufweist, während irgendetwas anderes das "Vordergrundobjekt" aufweist. Der Objektseparator 34 liefert Informationen über das Vordergrundobjekt F und das Hintergrundobjekt B zu einem Blockselektor 40, dessen Zweck es ist, die optimale Reihenfolge zu bestimmen, in der verschiedene Teile des Bilds zu übertragen sind.
- Das Bitbudget für einen Rahmen wird zwischen Hintergrundobjekten und Vordergrundobjekten aufgeteilt, wobei typischerweise 10% der verfügbaren Bandbreiten für die Übertragung des Hintergrundobjekts reserviert sind. Die Liste von Blöcken, die in der Prioritätsreihenfolge zu versenden sind, die von dem Blockselektor aufrechterhalten wird, wird geeignet eingestellt, um die korrekte Proportion von Blöcken, die einen Teil des Vordergrundobjekts bilden, und Blöcken, die einen Teil des Hintergrundsobjekts bilden, zu erlauben.
- Die geordnete Liste von Blöcken, die zu verschicken sind, wird dann über einen Bitratenmanager 42 zu einem, Blockkodierer 44 geleitet. Der Blockkodierer sieht eine individuelle Adresse für jeden zu verschickenden Block vor, unter Verwendung der Vierfachbaum-Datenstruktur. In einer Ausführung kann jeder einzelne Block entsprechend der Adresse seines ursprünglichen Feldes 30 markiert werden (in der Ausführung in Fig. 1 mit 1 bis 20 numeriert), zusammen mit der Vierfachbaumstruktur für diesen bestimmten Block - eine Serie von Teilen/Nichtteilen-Anweisungen. Jeder Punkt wird einer von drei Kennungen zugeordnet.
- (a) Neuer Hintergrund;
- (b) Bekannter Hintergrund;
- (c) Vordergrund
- Wenn der Block den neuen Hintergrund oder den Vordergrund betrifft, müssen die diesem Block entsprechenden Daten zu dem Dekodierer übertragen werden, und dementsprechend werden Daten, die das von diesem Block abgedeckte Bildfragment repräsentieren, angehängt. Wenn andererseits der Block neuen Hintergrund repräsentiert, dann sind die Daten bereits übertragen worden, und der Dekodierer wird sie bemerken; demzufolge brauchen keine zusätzlichen Daten für einen solchen Block angehängt werden. Es versteht sich, dass die Daten für jeden Block Farb-(TJV) Informationen sowie Luminanz- (Y) Informationen enthalten.
- Die geordneten Blöcke werden durch den Kompressor 46 komprimiert und werden dann nacheinander zu dem Dekodierer geschickt. Die Anzahl der tatsächlich übertragenen Bits wird, wie bei 50 angegeben, zu dem Bitratenmanager 42 zurückgeleitet, der selbst bestimmt, wenn ein zu verschickendes Signal 52 das Laden eines neuen Rahmens 24 erzwingt. Da das System a priori nicht weiß, was es an Bits kosten wird, um ein bestimmtes Bild zu verschicken, werden die Blöcke nacheinander aufgenommen, wobei der Blockselektor 40 und der Bitratenmanager 42 das Vordergrund- und das Hintergrundbudget nach Bedarf einstellen. Wenn einzelne Blöcke übertragen werden, liefert der Blockkodierer 44 Blockaktualisierungsinformation 54, die benutzt wird, um das gegenwärtig gespeicherte Bild 26 zu aktualisieren. Dieses gespeicherte Bild repräsentiert dementsprechend eine Kopie des übertragenen Bilds, unter der Annahme, dass bei der Übertragung keine Fehler vorkamen.
- Das System kann jedes passende Kodierungs- und Kompressionsschema verwenden, in Abhängigkeit von der Anwendung. Passenderweise werden jene Blöcke, die als Hintergrund markiert sind, mit einer geringeren Kompression geschickt als jene, die als Vordergrund markiert sind, oder sie können sogar vollständig unkomprimiert verschickt werden. Zugunsten maximaler Robustheit, insbesondere wenn das Übertragungsmedium 16 einem Informationsverlust unterliegen könnte, werden die einzelnen Blöcke kodiert und als Ersatz von Bildfragmenten übertragen. Alternativ wäre es in verlustlosen oder nahezu verlustlosen Kommunikationsumgebungen möglich, einige oder alle dieser gewählten Blöcke differenziell zu aktualisieren.
- Geeignete Blockkodierer 44 zur Verwendung innerhalb der vorliegenden Anmeldung beinhalten fraktale Kodierer und/oder abgerundete DCT Kodierer. Die bevorzugte fraktale Kodiertechnik verwendet die Bath Fractal Transformation (BFT), beschrieben in Monro, D. M., "A hybrid fractal transform", proc. ICASSP 1993, pp. V: 169-172. Eine geeignete biquadratische Form der BFT zur Verwendung mit dem vorliegenden System benutzt die folgende Funktion, wobei für jedes k eine rekursive Kartierung von Bildblöcken f (x, y) auf sich selbst vorhanden ist:
- vk(x, y, f) = a + bxx + byy + cxx² + cyy² + ef(x, y)
- Der Anmelder hat herausgefunden, dass der nicht suchende Fall der BFT, kombiniert mit dem Akkuraten Fraktalen Aufbereitungsalgorithmus (AFRA), schnell genug ist, um die Basis für Echtzeit-Videokompression vorzusehen, wenn in Verbindung mit der vorliegenden Erfindung benutzt. Die nicht suchende BFT ist beschrieben in Woolley, S. J., und Monro, D. M., "Optimum parameters for hybrid fractal image coding", Proc ICASSP 1995, pp. 2571-2574; der Akkurate Fraktale Aufbereitungsalgorithmus ist offenbart in Monro, D. M., und Dudbridge, F., "Rendering algorithms for deterministic fractals", IEEE Computer Graphics, 1995, Vol. 15, No. 1, 32-41.
- Alternativ kann eine abgerundete DCT verwendet werden, um bestimmte Blöcke zu kodieren, indem einfach nur eine begrenzte Anzahl von DCT Koeffizienten berechnet wird. Die DCT ist beschrieben in Ahmed, N., Natarajan, T., und Rao, K. R., "Discrete cosine transform", IEEE Trans. Comput., 1974, Vol. C-23, pp. 90-93; und Monro, D. M., und Sherlock, B. G., "Optimal quantization strategy for DCT image compression", IEEE Proc: Vis. Image Signal Process., 1996, Vol. 143, No. 1, pp. 10-14.
- In einer Version des Systems, wie in Fig. 1 gezeigt, werden, sobald die Kompressionsstufe abgeschlossen ist, die Vierfachbaum- und komprimierten Daten für jedes Feld "paketisiert", um für einen gewissen Fehlerschutzpegel zu sorgen. Dies lässt zu, dass einige der übertragenen Daten zusammenbrechen, und das System in einem synchronisierten Zustand verbleibt.
- Es gibt natürlich viele Wege, in denen die einzelnen Blöcke in der Prioritätsfolge sortiert und übertragen werden können. In Abhängigkeit von der Anwendung könnte die Information auf felderweiser Basis verschickt werden, wobei die Vierfachbaumstruktur zusammen mit den entsprechenden Daten paketisiert wird und nur für ein einzelnes Feld verschickt wird. Alternativ könnte die Prioritätsliste für das gesamte Bild berechnet werden, wobei jedem Block Information zu dem Feld, in das er fällt, zugeordnet ist, sowie Details der Vierfachbaum-Datenstruktur. Falls gewünscht, wäre es auch möglich, die Vierfachbaum- Datenstrukturen nur für das Vordergrundobjekt zu verwenden und das Hintergrundobjekt in irgend einer anderen Weise zu übertragen, z. B. sequentiell blockweise, entsprechend den verfügbaren Bandbreiten.
- Der Dekodierer 18 hält in einem Speicher eine Kopie 36' des Hintergrunds zurück, den er bereits verschickt hat. Wenn ein Teil des Hintergrunds vorübergehend von dem sich bewegenden Vordergrund abdeckt wird, der sich dann aus dem Bild wegbewegt, um den Hintergrund wieder freizugeben, kann dieser Hintergrund aus der vom Dekodierer zurückgehaltenen Kopie 36' wiedergewonnen werden, anstatt über das Übertragungsmedium 16 nachgeschickt zu werden. Der Dekodierer wird angewiesen, diesen zuvor gespeicherten Hintergrund zu verwenden, wenn er einen Block erhält, der als "bekannter Hintergrund" markiert ist, wie oben diskutiert. Dies führt zu einer Zunahme der Kompression für eine gegebene Wiedergabetreue oder eine höhere Wiedergabetreue für eine gegebene Bandbreite, da dann mehr Vordergrundblöcke innerhalb des gleichen Bitbudgets verschickt werden können.
- Das System kann sich selbst an die Video- oder Kanalbedingungen anpassen, indem es seine internen Parameter dynamisch einstellt. Die Bilddimensionen können einstellbar sein und können z. B. irgendein Mehrfaches von 32 Pixel in jeder Richtung betragen. Das System hält auch ein anfängliches oberes Band an der Bandbreite ein, mit betreffenden Rahmenraten, Vierfachbaumgrenzen und Hintergrundanteilen, auf Erfahrungsbasis. Es gibt auch Fehlerschwellenwerte in sowohl den Ratenpufferungs- als auch Objektseparatormodulen, um die Effekte von Kamerarauschen zu begrenzen; diese können auch benutzt werden, um kleine Änderungen in der Szene, wie etwa eine leichte Bewegung in der Vegetation oder Kräuseln auf dem Wasser, zu lindern.
- Das System kann sich selbst in zwei Hauptwegen an Kanalbedingungen anpassen. Wenn der Bandbreitenverlust klein ist, werden weniger Blöcke kodiert und übertragen. Wenn andererseits die Bandbreitenreduktion schwerwiegend ist wird die Vierfachbaumaufteilung reduziert, so dass die meisten Blöcke größer sind; ferner kann auch die Rahmenrate gesenkt werden. Dies führt dazu, dass von jedem Rahmen mehr übertragen wird, jedoch mit geringerer Wiedergabetreue.
- Wenn eine hohe Bandbreite zur Verfügung steht, wird das System mit einem tiefen Vierfachbaum aufteilen, was zu vielen kleinen Blöcken führt. Diese können dann unkodiert verschickt werden, zusammen mit einem höheren Anteil, der dem Hintergrund zugeordnet ist. Dies kann zu einem angenähert verlustlosen Hintergrund in Kombination mit hochwiedergabetreuem Vordergrund führen.
- In einer weiteren Ausführung ist das System angeordnet, um jedes der Felder 30 in einer pseudozufälligen Sequenz nachzuschicken (zu ersetzen), ob das System das Nachschicken als erforderlich ansieht, oder nicht. Dies ist insbesondere in verlustreichen Umgebungen nützlich, um mögliche Fehler beim vorherigen Verschicken von einem oder mehreren Feldern zu kompensieren. Obwohl der Ersatz der Felder auf einer sequenziellen Basis erfolgen könnte, wird eine pseudozufällige Sequenz bevorzugt, da sie für einen Verwender weniger deutlich ist, der das Video auf der Anzeige 20 betrachtet. Alternativ könnte natürlich irgend eine nicht zufällige, jedoch auch nicht-konsekutive Ersatzfolge verwendet werden. Die Ersatzrate der einzelnen Felder könnte, entweder manuell oder automatisch, eingestellt werden, in Abhängigkeit von dem erwarteten oder tatsächlichen Rauschen oder Verlusten innerhalb des Systems. Ähnlich könnte das Verhältnis von nachgezeichneten zu differenziell aktualisierten Blöcken in Abhängigkeit von den gleichen Kriterien verändert werden. Dies kann von der Bildgröße und der Bitrate abhängig sein.
- In der bevorzugten Form der Erfindung ist das System dazu bestimmt, die Gesamtheit des Vordergrundobjekts so gut es kann innerhalb der verfügbaren Bitgrenze zu verschicken. Eine Alternative wäre es, das System anzuweisen, den Vordergrund mit einer gegebenen Auflösung zu verschicken, wobei so viel wie möglich des Vordergrundobjekts in der verfügbaren Zeit verschickt wird. Der letztere Ansatz hat natürlich den Nachteil, dass ein Teil des Bilds unverschickt bleiben wird, wenn das System die Bandbreitengrenze erreicht.
- Obwohl in der bevorzugten Ausführung keine Bewegungskompensation vorgesehen ist, versteht es sich, dass dann, wenn es die Zeit erlaubt, eine solche Bewegungskompensation sowohl für die Hintergrund- und/oder für die Vordergrundobjekte eingebaut werden könnte. Dies könnte besonders dort nützlich sein, wo es bekannt ist, dass sich der Hintergrund mit einer regelmäßigen Rate bewegt, z. B. aufgrund der Bewegung der Videokamera 10.
- Es versteht sich, dass der gesamte Kodierer 12 in Software implementiert werden könnte, z. B. in einem RISC Prozessor. Es sind keine spezialisierten Karten erforderlich, um die Kompression auszuführen. Wenn das System innerhalb der Kamera 10 selbst zu implementieren wäre, was machbar ist, wäre es natürlich nicht erforderlich, bei der Kodierung und Übertragung der Daten einen separaten Computer einzubeziehen.
- Während das System in Verbindung mit einem Zweischicht- Objektmodell beschrieben wurde, ist es für den Fachmann klar, dass unter Verwendung identischer Techniken zusätzliche Schichten vorgesehen werden könnten. Beispielsweise könnte das System einen "Langzeithintergrund" als etwas definieren, was für einige Minuten stationär bleibt, "Kurzzeithintergrund", als etwas, das für einige Sekunden stationär bleibt, und "Vordergrund" als alles andere. Denkbar sind natürlich auch weitere Komplexitätsschichten entlang der gleichen Linien.
Claims (26)
1. Kodierer für ein objektorientiertes Videosystem,
wobei der Kodierer umfasst:
(a) ein Bildeingabemittel zum Empfangen einer
Sequenz von Eingabebildern, die zusammen ein
bewegendes Bild definieren, zur Kodierung;
(b) einen Objektseparator, der angeordnet ist, um
aus dem bewegenden Bild ein Vordergrundobjekt
und ein Hintergrundobjekt zu separieren, wobei
das Hintergrundobjekt in Bezug auf das
Vordergrundobjekt relativ bewegungslos ist;
(c) einen Blockkodierer, der angeordnet ist, um
Blöcke des Bilds zu kodieren und zu
klassifizieren, und um einen Ausgabedatenstrom
zur Speicherung oder weiteren Übertragung zu
erzeugen, wobei jeder kodierte Block innerhalb
des Datenstroms als entweder zum Vordergrund-
oder zum Hintergrundobjekt gehörend
identifiziert wird;
dadurch gekennzeichnet, dass der Objektseparator
verwendet:
(i) einen potentiellen
Hintergrundobjektspeicher, in dem, über eine Mehrzahl von
Eingabebildern, ein potentieller
Hintergrund aufgebaut wird, und
(ii) einen akzeptierten
Hintergrundobjektspeicher, in dem zumindest einige Teile
des potentiellen Hintergrunds gespeichert
werden, die für eine gewünschte Dauer
Bestand hatten.
2. Kodierer nach Anspruch 1, in dem jene Blöcke in dem
Ausgabedatenstrom, die zu dem Vordergrundobjekt
gehören, als solche markiert sind.
3. Kodierer nach Anspruch 1 oder Anspruch 2, in dem
jene Blöcke in dem Ausgabedatenstrom, die zu dem
Hintergrundobjekt gehören, als solche markiert
sind.
4. Kodierer nach Anspruch 1, in dem der
Ausgabedatenstrom angeordnet wird, um
Hintergrundobjektblöcke und Vordergrundobjektblöcke
in einer vordefinierten Folge und Sequenz zu
enthalten.
5. Kodierer nach einem der Ansprüche 1 bis 4, in dem
das bewegende Bild in eine Mehrzahl von
Eingabeblöcken aufgeteilt wird, die blockweise mit
entsprechenden Blöcken in ähnlichen Teilen des
gespeicherten akzeptierten Hintergrundobjekts und
des gespeicherten potentiellen Hintergrundobjekts
verglichen werden.
6. Kodierer nach Anspruch 5, in dem jeder Block in dem
akzeptierten Hintergrundobjekt durch den
entsprechenden Block in dem potentiellen
Hintergrundobjekt überschrieben wird, wenn sich
wiederholt herausstellt, dass der potentielle
Hintergrundobjektblock dem entsprechenden
Eingabeblock ähnlicher ist als dem akzeptierten
Hintergrundblock.
7. Kodierer nach einem der vorhergehenden Ansprüche,
in dem jeder Block des Ausgabedatenstroms als einer
der drei Typen identifiziert wird:
(a) einen neuverschickten Block von dem
Hintergrundobjekt;
(b) einen zuvor verschickten Block von dem
Hintergrundobjekt; und
(c) einen Block von dem Vordergrundobjekt
8. Kodierer nach Anspruch 7, in dem den Blocktypen (a)
und (c) Daten zugeordnet sind, die das von dem
Block abgedeckte Bildfragment repräsentieren.
9. Kodierer nach Anspruch 8 oder Anspruch 11, in dem
dem Blocktyp (b) eine Anweisung zugeordnet ist, die
für einen kompatiblen Dekodierer verständlich ist,
um das von dem Block abgedeckte Bildfragment aus
dem bekannten Hintergrund nachzuzeichnen.
10. Kodierer nach einem der vorhergehenden Ansprüche,
der angeordnet ist, um das Hintergrundobjekt gemäß
seinen Y-Luminanzwerten beizubehalten.
11. Kodierer nach Anspruch 4, in dem das gespeicherte
akzeptierte Hintergrundobjekt Bildfragmente
repräsentiert, die zuvor kodiert und in dem
Ausgabedatenstrom als Blöcke angeordnet worden
sind, die als zu dem Hintergrundobjekt gehörend
identifiziert sind.
12. Kodierer nach einem der vorhergehenden Ansprüche,
der ein Aktualisierungsmittel enthält, um ein
Nachschicken gewählter Abschnitte des bewegenden
Bildes zu erzwingen, ob zuvor verschickt, oder
nicht.
13. Kodierer nach Anspruch 12, in dem das
Aktualisierungsmittel die gewählten Abschnitte des
bewegenden Bilds in einer pseudozufälligen Folge
wiederholt nachschickt.
14. Kodierer nach Anspruch 12 oder Anspruch 13, in dem
das Aktualisierungsmittel die gewählten Abschnitte
des Bilds mit einer variablen Frequenz nachschickt.
15. Kodierer nach Anspruch 14, in dem die variable
Frequenz des Aktualisierungsmittels auf der Basis
des aktuellen oder erwarteten Rauschens, dem der
Objektdatenstrom unterliegt, einstellbar ist.
16. Kodierer nach einem der vorhergehenden Ansprüche,
der mittels eines programmierten Computerprozessors
implementiert ist.
17. Objektorientiertes Videosystem umfassend:
(1) einen Kodierer mit:
(a) einem Bildeingabemittel zum Empfangen einer
Sequenz von Eingabebildern, die zusammen ein
bewegendes Bild definieren, zur Kodierung;
(b) einem Objektseparator, der angeordnet ist, um
aus dem bewegenden Bild ein Vordergrundobjekt
und ein Hintergrundobjekt zu separieren, wobei
das Hintergrundobjekt in Bezug auf das
Vordergrundobjekt relativ bewegungslos ist;
(c) einem Blockkodierer, der angeordnet ist, um
Blöcke des Bilds zu kodieren und zu sortieren,
und um einen Ausgabedatenstrom zur Speicherung
oder weiteren Übertragung zu erzeugen, wobei
jeder kodierte Block innerhalb des Datenstroms
als entweder zum Vordergrund- oder zum
Hintergrundobjekt gehörend identifiziert wird;
(2) einen Dekodierer, der ausgelegt ist, um den
Ausgabedatenstrom zu empfangen und daraus ein
Videosignal zu erzeugen;
wobei das System dadurch gekennzeichnet ist, dass der
Objektseparator verwendet: einen Objektseparator, der
angeordnet ist, um aus dem bewegenden Bild ein
Vordergrundobjekt und ein Hintergrundobjekt zu
separieren, wobei das Hintergrundobjekt in Bezug auf
das Vordergrundobjekt relativ bewegungslos ist, wobei
der Objektseparator verwendet:
(i) einen potentiellen
Hintergrundobjektspeicher, in dem, über eine
Mehrzahl von Eingabebildern, ein potentieller
Hintergrund aufgebaut wird, und
(ii) einen akzeptierten
Hintergrundobjektspeicher, in dem zumindest
einige Teile des potentiellen Hintergrunds
gespeichert werden, die für eine gewünschte Dauer
Bestand hatten.
18. System nach Anspruch 17, in dem der Dekodierer ein
Speichermittel enthält, um das Hintergrundobjekt zu
speichern, insofern es dem Dekodierer bekannt ist.
19. System nach Anspruch 18, in dem der Dekodierer ein
Hintergrund-Wiederverwendungsmittel enthält, das
angeordnet ist, um in das Videosignal ein Fragment
des gespeicherten Hintergrundobjekts bei Empfang
einer Anweisung von dem Kodierer, dies zu tun,
einzubauen.
20. System nach einem der Ansprüche 17 bis 19, das eine
Videokamera enthält, die ausgelegt ist, um die
Sequenz von Eingabebildern vorzusehen, wobei die
Kamera einen Kamerakörper aufweist.
21. System nach Anspruch 20, in dem sich der Kodierer
innerhalb des Kamerakörpers befindet.
22. System nach einem der Ansprüche 17 bis 21, in dem
der Kodierer einen programmierten digitalen
Computer aufweist.
23. Betriebsverfahren eines Videosystems, umfassend:
(a) Empfangen einer Sequenz von Eingabebildern,
die zusammen ein bewegendes Bild definieren;
(b) Separieren eines Vordergrundobjekts und eines
Hintergrundobjekts aus dem bewegenden Bild,
wobei das Hintergrundobjekt in Bezug auf das
Vordergrundobjekt relativ bewegungslos ist;
und
(c) Kodieren und Sortieren von Blöcken des Bilds
und Erzeugen eines Ausgabedatenstroms zur
Speicherung oder weiteren Übertragung, wobei
jeder kodierte Block innerhalb des Datenstroms
als entweder zum Vordergrund- oder zum
Hintergrundobjekt gehörend identifiziert wird;
gekennzeichnet durch das Aufrechterhalten eines
potentiellen Hintergrundobjektspeichers, in dem
über eine Mehrzahl von Eingabebildern ein
potentieller Hintergrund aufgebaut wird, sowie
eines akzeptierten Hintergrundobjektspeichers, in
dem zumindest Teile des potentiellen Hintergrunds
gespeichert werden, die für eine gewünschte Dauer
Bestand hatten.
24. Computerspeichermedium, das ein Computerprogramm
enthält, das zur Ausführung des Verfahrens nach
Anspruch 23 ausgelegt ist.
25. Computerspeichermedium nach Anspruch 24, in dem das
Speichermedium eine Computerplatte enthält.
26. Kodierer nach Anspruch 1, in dem der Blockkodierer
angeordnet ist, um Blöcke des Bilds zu sortieren
und zu klassifizieren.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GBGB9619084.8A GB9619084D0 (en) | 1996-09-12 | 1996-09-12 | Object-oriented video system |
| GBGB9621983.7A GB9621983D0 (en) | 1996-09-12 | 1996-10-22 | Object-orientated video system |
| PCT/GB1997/002496 WO1998011730A1 (en) | 1996-09-12 | 1997-09-12 | Object-oriented video system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69713779D1 DE69713779D1 (de) | 2002-08-08 |
| DE69713779T2 true DE69713779T2 (de) | 2002-10-17 |
Family
ID=26310031
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69713779T Expired - Lifetime DE69713779T2 (de) | 1996-09-12 | 1997-09-12 | Objektorientiertes videosystem |
Country Status (4)
| Country | Link |
|---|---|
| EP (1) | EP0925689B1 (de) |
| AU (1) | AU4131897A (de) |
| DE (1) | DE69713779T2 (de) |
| WO (1) | WO1998011730A1 (de) |
Families Citing this family (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6499062B1 (en) * | 1998-12-17 | 2002-12-24 | Koninklijke Philips Electronics N.V. | Synchronizing property changes to enable multiple control options |
| GB9912079D0 (en) * | 1999-05-24 | 1999-07-21 | Motorola Ltd | An image encoding method and apparatus |
| US7120194B2 (en) * | 1999-12-22 | 2006-10-10 | Neomtel Co. Ltd. | System for moving image data using wireless communication and the method of the same |
| DE10261501A1 (de) * | 2002-12-23 | 2004-07-15 | Mobotix Ag | Verfahren zur Datenreduktion |
| US8693537B2 (en) | 2005-03-01 | 2014-04-08 | Qualcomm Incorporated | Region-of-interest coding with background skipping for video telephony |
| US8768084B2 (en) * | 2005-03-01 | 2014-07-01 | Qualcomm Incorporated | Region-of-interest coding in video telephony using RHO domain bit allocation |
| US7813573B2 (en) | 2005-09-08 | 2010-10-12 | Monro Donald M | Data coding and decoding with replicated matching pursuits |
| US8121848B2 (en) | 2005-09-08 | 2012-02-21 | Pan Pacific Plasma Llc | Bases dictionary for low complexity matching pursuits data coding and decoding |
| US7848584B2 (en) | 2005-09-08 | 2010-12-07 | Monro Donald M | Reduced dimension wavelet matching pursuits coding and decoding |
| US8674855B2 (en) | 2006-01-13 | 2014-03-18 | Essex Pa, L.L.C. | Identification of text |
| US7783079B2 (en) | 2006-04-07 | 2010-08-24 | Monro Donald M | Motion assisted data enhancement |
| US7586424B2 (en) | 2006-06-05 | 2009-09-08 | Donald Martin Monro | Data coding using an exponent and a residual |
| US7845571B2 (en) | 2006-06-19 | 2010-12-07 | Monro Donald M | Data compression |
| US7770091B2 (en) | 2006-06-19 | 2010-08-03 | Monro Donald M | Data compression for use in communication systems |
| US7689049B2 (en) | 2006-08-31 | 2010-03-30 | Donald Martin Monro | Matching pursuits coding of data |
| US7508325B2 (en) | 2006-09-06 | 2009-03-24 | Intellectual Ventures Holding 35 Llc | Matching pursuits subband coding of data |
| US7974488B2 (en) | 2006-10-05 | 2011-07-05 | Intellectual Ventures Holding 35 Llc | Matching pursuits basis selection |
| KR101443568B1 (ko) | 2007-01-10 | 2014-09-23 | 코닌클리케 필립스 엔.브이. | 오디오 디코더 |
| US7707213B2 (en) | 2007-02-21 | 2010-04-27 | Donald Martin Monro | Hierarchical update scheme for extremum location |
| US7707214B2 (en) | 2007-02-21 | 2010-04-27 | Donald Martin Monro | Hierarchical update scheme for extremum location with indirect addressing |
| US10194175B2 (en) | 2007-02-23 | 2019-01-29 | Xylon Llc | Video coding with embedded motion |
| US9497380B1 (en) | 2013-02-15 | 2016-11-15 | Red.Com, Inc. | Dense field imaging |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62269581A (ja) * | 1986-05-19 | 1987-11-24 | Matsushita Electric Ind Co Ltd | 電子スチルカメラ |
| JPS6346032A (ja) * | 1986-08-13 | 1988-02-26 | Nippon Telegr & Teleph Corp <Ntt> | 画像情報転送制御方式 |
| GB8710737D0 (en) * | 1987-05-06 | 1987-06-10 | British Telecomm | Video image encoding |
| DE3877105D1 (de) * | 1987-09-30 | 1993-02-11 | Siemens Ag, 8000 Muenchen, De | |
| US4951140A (en) * | 1988-02-22 | 1990-08-21 | Kabushiki Kaisha Toshiba | Image encoding apparatus |
| JPH04334188A (ja) * | 1991-05-08 | 1992-11-20 | Nec Corp | 動画像信号の符号化方式 |
| EP0606675A3 (de) * | 1992-12-16 | 1994-12-21 | Ibm | Verfahren zur Verlustfreien Komprimierung von Bewegtbildvideo. |
| US5444489A (en) * | 1993-02-11 | 1995-08-22 | Georgia Tech Research Corporation | Vector quantization video encoder using hierarchical cache memory scheme |
-
1997
- 1997-09-12 EP EP97939103A patent/EP0925689B1/de not_active Expired - Lifetime
- 1997-09-12 WO PCT/GB1997/002496 patent/WO1998011730A1/en active IP Right Grant
- 1997-09-12 DE DE69713779T patent/DE69713779T2/de not_active Expired - Lifetime
- 1997-09-12 AU AU41318/97A patent/AU4131897A/en not_active Abandoned
Also Published As
| Publication number | Publication date |
|---|---|
| DE69713779D1 (de) | 2002-08-08 |
| AU4131897A (en) | 1998-04-02 |
| WO1998011730A1 (en) | 1998-03-19 |
| EP0925689A1 (de) | 1999-06-30 |
| EP0925689B1 (de) | 2002-07-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69713779T2 (de) | Objektorientiertes videosystem | |
| DE69332584T2 (de) | Verbesserte vorverarbeitung und nachverarbeitung von vektorquantifizierung | |
| DE69130214T2 (de) | Bilddatenkompression mit adaptiver Blockgrössenauswahl | |
| DE69222766T2 (de) | System zur adaptiven kompression der blockgrössen eines bildes | |
| DE69434018T2 (de) | Bildkodierungsverfahren und -vorrichtung | |
| EP0309669B1 (de) | Verfahren zur szenenmodellgestützten Bilddatenreduktion für digitale Fernsehsignale | |
| EP0201679B1 (de) | Verfahren zur Bilddatenreduktion für digitale Fernsehsignale | |
| DE69116869T2 (de) | Digitale bildkodierung mit einer zufallsabtastung der bilder | |
| DE4339753C2 (de) | Vorrichtung zum Komprimieren und Dekomprimieren von Bilddaten | |
| DE60015566T2 (de) | Verfahren und vorrichtung zur komprimierung eines bewegungsvektorfeldes | |
| DE69233411T2 (de) | Verfahren und Einrichtung zur Kompression von sich bewegenden Videobildern mit adaptiver Bitzuordnung und Quantisierung | |
| DE69322531T2 (de) | Dynamische Bitverteilung für dreidimensionale Teilbandbildkodierung | |
| DE69937934T2 (de) | Dynamische Verwaltung eingebetteter codierter Bilder in einer digitalen Speichervorrichtung | |
| DE3005775C2 (de) | Kodierverfahren für ein Farbbild | |
| DE69524141T2 (de) | Adaptiver Bildkodierer mit dynamischer Bitzuteilung | |
| DE69633129T2 (de) | Waveletbaum-bildcoder mit überlappenden bildblöcken | |
| DE69333288T2 (de) | Verbesserte vektorquantisierung | |
| DE69620984T2 (de) | Geräuschschätzungs- und Geräuschreduzierungsgerät zur Videosignalverarbeitung | |
| DE3856536T2 (de) | Kodierung von Daten, die wie eine multidimensionale Matrix dargestellt sind | |
| DE69523439T2 (de) | Verfahren und Vorrichtung zur Bildsignalkodierung mit einer Klassifizieranlage | |
| DE69408838T2 (de) | Videoschnittsystem | |
| DE19739266B4 (de) | Verfahren und Vorrichtung zum Kodieren binärer Formen | |
| DE10300048A1 (de) | Verfahren und Vorrichtung zur Bildcodierung und -decodierung | |
| EP1371229B1 (de) | Verfahren zur komprimierung und dekomprimierung von videodaten | |
| DE10204617B4 (de) | Verfahren und Vorrichtungen zur Kompression und Dekompression eines Videodatenstroms |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8327 | Change in the person/name/address of the patent owner |
Owner name: AYSCOUGH VISUALS LLC (N.D.GES.D. STAATES DELAWARE) |