DE69930574T2 - Fehlererkennung in einer niedrigen Bitrate Videoübertragung - Google Patents
Fehlererkennung in einer niedrigen Bitrate Videoübertragung Download PDFInfo
- Publication number
- DE69930574T2 DE69930574T2 DE69930574T DE69930574T DE69930574T2 DE 69930574 T2 DE69930574 T2 DE 69930574T2 DE 69930574 T DE69930574 T DE 69930574T DE 69930574 T DE69930574 T DE 69930574T DE 69930574 T2 DE69930574 T2 DE 69930574T2
- Authority
- DE
- Germany
- Prior art keywords
- video data
- data block
- reference value
- dct coefficients
- threshold
- 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
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/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/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
-
- 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/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- 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/89—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Die Erfindung betrifft eine Videoübertragung und besonders ein Verfahren sowie eine Vorrichtung zum Decodieren von komprimierten Videodaten, wobei Informationen über die Ortsfrequenzverteilung eines Videodatenblocks in Bildelementwerte transformiert werden.
- Eines der Ziele bei der Telekommunikation besteht darin, Systeme bereitzustellen, bei denen eine Echtzeit-Übertragung guter Qualität von Video, Audio und Datendiensten verfügbar ist. Wie es allgemein bekannt ist, ist die Datenmenge, die zum Übermitteln von bewegten Bildern erforderlich ist, im Vergleich zu vielen anderen Typen von Medien hoch, und bisher war eine Verwendung von Video bei Endgeräten niedriger Bitrate vernachlässigbar. Eine Übertragen von Daten in digitaler Form hat gleichwohl für erhöhte Signal-Rausch-Verhältnisse und eine erhöhte Informationskapazität auf dem Übertragungskanal gesorgt. In der nahen Zukunft werden fortgeschrittene digitale Mobiltelekommunikationssysteme auch Dienste einführen, die die Übertragungsbitraten erhöhen, was bedeutet, dass eine Übertragung von Video bald sogar über Mobilfunkkanäle niedriger Bitrate machbarer wird.
- Zur Optimierung einer Kanalkapazitätsnutzung werden Signale im Allgemeinen vor einer Übertragung komprimiert. Dies ist bei einer Videoübertragung besonders wichtig, bei der die zu übertragende Datenmenge groß ist. Ein komprimiertes Video wird leicht durch Übertragungsfehler beeinträchtigt, hauptsächlich weil der Informationsinhalt eines komprimierten Videos im Allgemeinen unter Verwendung von Codes variabler Länge codiert wird. Verändert ein Bitfehler das Codewort in ein anderes einer anderen Länge, verliert der Decodierer die Synchronisation und decodiert folgende fehlerfreie Blöcke falsch, bis der nächste Synchronisationscode empfangen wird.
- Um die Verschlechterungen bei Bildern zu begrenzen, die durch Übertragungsfehler verursacht werden, können Fehlererkennungs- und/oder Fehlerkorrekturverfahren angewandt werden, kann eine Neuübertragung verwendet werden und/oder können Effekte von den empfangenen korrumpierten bzw. beschädigten Daten verborgen werden. Normalerweise stellen Neuübertragungen einen vernünftigen Weg bereit, um Datenströme vor Fehlern zu schützen, aber lange Umlaufverzögerungen, die mit einer Übertragung niedriger Bitrate in Zusammenhang stehen, und mittlere oder hohe Fehlerraten machen es praktisch unmöglich, eine Neuübertragung zu verwenden, insbesondere bei Echtzeit-Videotelefonanwendungen. Fehlererkennungs- und – korrekturverfahren erfordern üblicherweise einen großen Overhead, da sie einige Redundanz zu den Daten hinzufügen. Dementsprechend kann eine Fehlerverbergung für Anwendungen niedriger Bitrate als ein guter Weg betrachtet werden, um Bilder vor Übertragungsfehlern zu schützen und sie wiederherzustellen.
- Um in der Lage zu sein, Übertragungsfehler zu verbergen, müssen sie erfasst und lokalisiert werden. Je mehr über den Typ und den Ort des Fehlers bekannt ist, desto besser kann das Verbergungsverfahren auf das Problem gerichtet werden, und eine desto bessere Bildqualität wird dementsprechend erreicht. Es ist auch wichtig, Verfahren zu finden, die insbesondere diejenigen Fehler erfassen können, die von dem menschlichen Auge leicht erfasst werden können.
- In letzter Zeit wurde einer fehlerunempfindlichen digitalen Videoübertragung viel Interesse entgegengebracht, aber die Arbeit hat sich hauptsächlich auf eine digitale TV-Übertragung unter Verwendung von MPEG-2 konzentriert. Dort wird das Problem hauptsächlich dadurch gelöst, indem zu dem Bitstrom häufig eindeutige Sync-Codes hinzugefügt werden, kurze Pakete mit einer zyklischen Redundanzprüfung (CRC: "Cyclic Redundancy Check") verwendet werden, und alle Pakete verworfen werden, bei denen die CRC einen Fehler angibt. Beträgt die Bitrate einer Übertragung einige Megabytes pro Sekunde, ist die Quote von häufig auftretenden Sync-Codes oder CRC-Feldern in dem gesamten Datenstrom üblicherweise akzeptabel. Bei einer Übertragung niedriger Bitrate ist die Situation jedoch völlig anders, und bei Bitraten von 20 bis 30 kbps ist die Optimierung von Overheads extrem wichtig. Beträgt die Größe des Bildes zum Beispiel 704·576 Bildelemente, deckt ein 16·16-Bildelemente-Makroblock außerdem ungefähr 0,061 des gesamten Bildes ab, wohingegen bei QCIF-("Quarter Common Intermediate Format") Bildern niedriger Bitrate mit 176·144 Bildelementen ein Makroblock mehr als 1% des gesamten Bildes abdeckt. Daher ist der Verlust von einem Makroblock bei Videotelefonbildern niedriger Bitrate schädlicher bzw. nachteiliger als bei Fernsehbildern.
- Das Hauptinteresse von Standardisierungsgremien für Videocodierung niedriger Bitrate bestand darin, eine Fehlerunempfindlichkeit von zwischencodierten Rahmen zu verbessern. Die meisten vorgelegten Verfahren schlagen eine Änderung der Bitstromsyntax und der Codierungsalgorithmen vor, wodurch sie nur richtig eingesetzt werden können, wenn sie von Videotelefonendgeräten von Benutzern weithin unterstützt werden. Im Allgemeinen wurden zwei Verfahren zur Fehlererkennung vorgebracht: Erfassung von unzulässigen Codewörtern einer Codierung variabler Länge (VLC: "Variable Length Coding") und Erfassung von fehlenden Endblockcodes von Matrizen einer diskreten Kosinustransformation (DCT: "Discrete Cosine Transform"). In der Praxis wurde herausgefunden, dass diese Verfahren insbesondere für intern codierte Blöcke unzulänglich sind, da sehr viele VLC-Fehler unerkannt bleiben und Fehler in mit fester Länge codierten DC-Komponenten von intern codierten Blöcken oft überhaupt nicht erkannt werden. Außerdem werden Fehler üblicherweise viel zu spät erkannt, nachdem mehrere beschädigte Blöcke decodiert wurden.
- Die Veröffentlichung von Way-Man Lam und Amy R. Reibman, "An Error Concealment Algorithm for Images Subject to Channel Errors" in IEEE Transactions on Image processing, Vol. 4, Nr. 5, S. 533 bis 542, Mai 1995, stellt einige DCT- und Bildelementbereich-Fehlererkennungsalgorithmen vor. Diese Algorithmen gelten jedoch nicht auf adäquate Weise für niedrige Bitraten und niedrige Auflösungen, insbesondere auf Grund der Unanwendbarkeit von DCT-Bereich-Algorithmen für die unterschiedlichen Eigenschaften von quantisierten DCT-Matrizen.
- Die Veröffentlichung von Aki Hietala, "Virhesietoinen videodekoodaus", Master of Science Thesis, Oulu University, Department of Electrical Techniques, 1997, stellt einige Verfahren zur Fehlererkennung in Videobitströmen vor und analysiert diese. Die Verfahren setzen die Restkorrelation von benachbarten Bildelementen (Ortskorrelation) ein und suchen durch Erfassung von Anomalien bzw. Unregelmäßigkeiten in Blockgrenzen nach beschädigten Blöcken. Die Verfahren werden jedoch als ziemlich komplex betrachtet und der erzielte Effekt war noch nicht ausreichend.
- Die Veröffentlichung von M.R. Pickering, M.R. Frater, J.F. Arnold und M.W. Grigg, "An Error Concealment Technique in the Spatial Frequency Domain", Signal Processing, Nr. 54, Elsevier 1996, Seiten 185 bis 189, stellt ein Verfahren zum Verbergen von Fehlern vor, die durch Blöcke in dem Bild verursacht werden, die eine ähnliche Erscheinung haben wie eine einzelne DCT-Basisfunktion. Bei dem Verfahren werden unüblich große DCT-Koeffizienten in dem 8·8-Block von Koeffizienten erfasst und auf Null herabgesetzt. Dieses Verfahren arbeitet bei speziellen Typen von Übertragungsfehlern gut, aber hat als eine einzelne Erfassungsmaßnahme einen begrenzten Effekt.
- Die Veröffentlichung "Error Resilient Decoding of Randomly Impaired MPEG-2 Bit-Stream" von Jong Won Kim (Proceedings of the SPIE – The International Society for Optical Engineering, 1996, Vol. 2727 pt. 1, Seiten 78 bis 88) stellt einen Fehlererkennungsalgorithmus zur Verwendung in Verbindung mit einer Decodierung von Videodaten vor, die gemäß dem MPEG-2-Standard codiert wurden. Der Fehlererkennungsalgorithmus besteht aus drei Schichten. Eine erste Synchronisationsschicht identifiziert Synchronisationscodewörter, nämlich MPEG-2-Startcodes, in einem codierten Videobitstrom und erkennt und korrigiert Fehler in diesen. Eine zweite Schicht identifiziert und prüft Fehler in decodierten VLC-Codewörtern, um zu ermitteln, welche Teile von einem Videorahmen Fehler enthalten. In Verbindung mit diesem Prozess werden VLC-Codewörter auf Fehler überprüft, die für DCT-Koeffizientenwerte bezeichnend sind. Dies wird zumindest teilweise dadurch erreicht, indem die Koeffizienten in einem 8 × 8-Bildblock überprüft werden und diejenigen identifiziert werden, die Werte außerhalb eines Wertebereichs haben. Eine dritte Schicht bestimmt, welche Makroblöcke eines Teils, der vorher als einen Fehler enthaltend ermittelt wurde, beschädigt sind. Dies wird unter Verwendung der decodierten Bilddaten für den Teil und genauer gesagt durch Untersuchung von Unterschieden zwischen Reihen von Bildelementwerten auf beiden Seiten von Makroblockgrenzen durchgeführt.
- Die internationale Patentveröffentlichung WO-95/03674 bezieht sich auf ein Verfahren zum Erkennen von Fehlern in Videobildern, bei dem ein Fehler in einem Videobild durch Berechnung von frequenzbezogenen (DCT-) Koeffizienten für Blöcke des Bildes und Berücksichtigung der statistischen Verteilung der Koeffizienten identifiziert wird. Die Varianz der Koeffizienten wird berechnet und ein Block von ursprünglichen Bilddaten wird verborgen, wenn die berechnete Varianz größer ist als ein gespeicherter Schwellenwert, und/oder wenn sich die berechnete Varianz erheblich von Varianzwerten unterscheidet, die für ähnlich positionierte Blöcke innerhalb eines vorhergehenden Rahmens hergeleitet wurden. Eine Verbergung von Bilddaten wird bewirkt, indem Bilddaten von einem vorhergehenden Rahmen ausgewählt werden, die in Erwiderung auf übertragene Bewegungsvektoren versetzt werden.
- Der wissenschaftliche Artikel "Still Image Coding For Noisy Channels" von D.W. Redmill und N.G. Kingsbury, der veröffentlicht ist in dem Tagungsband von der 1st International Conference on Image Processing, die zwischen dem 13. und dem 16. November 1994 in Austin, Texas, USA abgehalten wurde, untersucht, wie Bildcodierschemata für rauschbehaftete Kanäle wie etwa Funkstrecken, Schnurlostelefon- oder Mobilfunkkommunikationen ausgelegt werden können. Insbesondere offenbart der Artikel ein Fehlerverbergungsverfahren zum Verringern des Effekts von Übertragungsfehlern auf die Bildqualität. Das Fehlerverbergungsverfahren, das von Redmill und Kingsbury vorgeschlagen wurde, basiert auf der Annahme, dass die typischsten Bilder keine großen Hochfrequenzkoeffizienten enthalten, und auf einer Erkennung von Fehlern durch Vergleich von decodierten Koeffizientenwerten mit einer Menge von vorab definierten maximalen Schwellenwerten. Genauer gesagt schlagen Redmill und Kingsbury eine Verwendung von 64 Schwellenwerten (einen für jeden Transformationskoeffizienten) vor, die aus einer Menge von Trainingsbildern hergeleitet werden. Für den Fall, dass ein Fehler in einem bestimmten Koeffizienten erkannt wird, wird der Koeffizient und der Rest des Blocks weggelassen, da die Weglassung von Koeffizienten viel weniger deutlich zu sehen ist als falsche Koeffizienten.
- Die Veröffentlichung "A Statistical Error Detection Technique for Low Bit-Rate Video" von M.R. Pickering, M.R. Frater und J. F. Arnold (Proceedings of the IEEE Conference on Speech and Image Technologies for Computing and Telecommunications (TENCON) 1997, ISBN 0-7803-4366-2, Seiten 773 bis 776) stellt einen Algorithmus statistischer Fehlererkennung (SED: „Statistical Error Detection") vor, der ermöglicht, dass zwei Typen von Fehlern identifiziert werden: Fehler, die durch Bitfehler in dem DC-Wert und Codewörter codierter Blockmuster eines Makroblocks verursacht werden (Typ 1-Fehler genannt), und Fehler als Folge davon, dass falsche VLC-Codewörter als gültige, aber falsche Laufebenenpaare decodiert werden (Typ 2-Fehler genannt).
- Der SED-Algorithmus erkennt Typ 1-Fehler durch Berechnung der mittleren absoluten Differenz zwischen Bildelementen innerhalb und außerhalb der oberen und linken Ränder von jedem 8 × 8-Bildelementeblock in einem Rahmen. Dann wird die Standardabweichung für die mittleren Randbildelementdifferenzen (MEPD: "Mean Edge Pixel Differences") über den aktuellen Rahmen berechnet. Wird dann herausgefunden, dass ein 8 × 8-Bildelementeblock in dem folgenden Rahmen einen MEPD-Wert für einen seiner Ränder aufweist, der größer ist als eine gewisse Anzahl von MEPD-Standardabweichungen, wird ein Fehler erkannt und wird ein Fehlerverbergungsalgorithmus auf den aktuellen Teil des gerade codierten Rahmens angewandt. Dieser Prozess wird für jeden 8 × 8-Bildelemente-Leuchtdichte- und -Farbartblock in einem Makroblock wiederholt, wobei zwei Standardabweichungswerte berechnet werden, einer für den Leuchtdichteblock und einer für den Farbartblock.
- Der SED-Algorithmus erkennt Typ 2-Fehler durch Berechnung der Standardabweichung der DCT-Koeffizientengrößen bei jeder Ortsfrequenz über einen einzelnen Rahmen. Wird dann herausgefunden, dass ein Koeffizient in dem folgenden Rahmen eine gewisse Zahl von Standardabweichungen von dem Mittelwert für diese Ortsfrequenz liegt, wird ein Fehler erkannt und wird ein Fehlerverbergungsalgorithmus auf den aktuellen Teil des gerade decodierten Rahmens angewandt.
- Die WO-95/03674 stellt ein Verfahren zum Erkennen eines Fehlers in einem Block eines Videobildes vor, indem die Varianz der den Bildblock bezeichnenden DCT-Werte mit einem vorbestimmten Schwellenwert verglichen wird.
- Überschreitet die aus den DCT-Koeffizienten berechnete Varianz den vorbestimmten Schwellenwert, wird ein Fehler in dem Block identifiziert.
- Es wurde nun ein neues Verfahren zum Decodieren von Videodatenblöcken unter Verwendung von Codes variabler Länge erfunden, mit dem die vorstehend erwähnten Nachteile verringert werden können.
- Das Verfahren gemäß der Erfindung ist gekennzeichnet durch ein Erzeugen eines ersten Referenzwerts, der die Veränderungen in Informationen über eine Ortsfrequenzverteilung innerhalb des Blocks darstellt, vor der Transformation; ein Erzeugen eines zweiten Referenzwerts, der die Steilheit einer Veränderung in bestimmten Informationen zwischen dem Block und zumindest einem vorher transformierten Videodatenblock darstellt, nach der Transformation; ein Vergleichen des ersten Referenzwerts mit einem bestimmten ersten Schwellenwert und des zweiten Referenzwerts mit einem bestimmten zweiten Schwellenwert; und ein Erkennen eines Fehlers in dem Block als Reaktion darauf, dass einer des ersten und des zweiten Referenzwerts größer ist als der erste bzw. der zweite Schwellenwert.
- Eine Aufgabe der Erfindung besteht darin, eine Menge von verbesserten Fehlererkennungselementen bereitzustellen, die mit unterschiedlichen Schritten zur Decodierung von intern codierten Videodatenblöcken zu kombinieren sind. Die Verwendung von zumindest zwei der Fehlererkennungselemente der Erfindung, die Informationen in unterschiedlichen Formen und/oder Phasen des Decodierungsprozesses einsetzten, wird die Genauigkeit einer Fehlererkennung verbessern und die Komplexität des Decodierungsprozesses dennoch nicht unangemessen erhöhen.
- Die Verwendung einer Fehlererkennung gemäß der Erfindung ermöglicht weiterentwickelte Fehlerverbergungsprozesse und verbessert damit die Fehlerunempfindlichkeit von einer Videodatenübertragung bei niedrigen Bitraten.
- Die erfundenen Verfahren nutzen den langsam veränderlichen Charakter von Informationen in natürlichen Bildern aus, indem eine relative hohe Korrelation zwischen benachbarten Blöcken angenommen wird. Blöcke mit Formen, die in der Natur sehr unwahrscheinlich sind, können sorgfältiger untersucht werden. Bei den Verfahren wird eine relative hohe Korrelation zwischen benachbarten Blöcken erwartet und ist eine Einrichtung bzw. Maßnahme zum Bemerken von sehr abrupten Veränderungen in Bitströmen vorgelegt. Eine unerwartete Unregelmäßigkeit in der Videosequenz wird derart interpretiert, dass sie einen verdächtigen oder beschädigten Block oder eine Anzahl von Blöcken (Makroblock) andeutet.
- Außerdem ist eine Vorrichtung zum Decodieren von Videodaten vorgelegt. Die Vorrichtung umfasst eine Einrichtung zum Transformieren von Informationen über die Ortsfrequenzverteilung eines Videodatenblocks in Bildelementwerte und ist gekennzeichnet durch eine Einrichtung zum Erzeugen eines ersten Referenzwerts, der die Veränderungen in Informationen über eine Ortsfrequenzverteilung innerhalb des Blocks darstellt, vor der Transformation; eine Einrichtung zum Erzeugen eines zweiten Referenzwerts, der die Steilheit einer Veränderung in bestimmten Informationen zwischen dem Block und zumindest einem vorher transformierten Videodatenblock darstellt, nach der Transformation; eine Einrichtung zum Vergleichen des ersten Referenzwerts mit einem bestimmten ersten Schwellenwert und des zweiten Referenzwerts mit einem bestimmten zweiten Schwellenwert; und eine Einrichtung zum Erkennen eines Fehlers in dem Block als Reaktion darauf, dass einer des ersten und des zweiten Referenzwerts größer ist als der erste bzw. der zweite Schwellenwert.
- Die Erfindung wird nun lediglich beispielhaft unter Bezugnahme auf die begleitenden Figuren beschrieben, bei denen veranschaulichen:
-
1 die Phasen einer Codierung und Decodierung von intern codierten Videobildern; -
2 die Konfiguration eines Videobildes gemäß dem H.261-Standard; -
3 die Elemente des erfundenen Verfahrens; -
4a die Konfiguration einer DCT-Matrix; -
4b bis4d verschiedene Arten zum Aufteilen einer DCT-Matrix; -
5a ein Ablauf diagram, das das Prinzip des ersten Erkennungselements gemäß der Erfindung veranschaulicht; -
5b ein Ablaufdiagram, das ein Ausführungsbeispiel des Verfahrens gemäß5a veranschaulicht; -
6 das Prinzip des zweiten Erkennungsblocks gemäß der Erfindung; -
7 das Prinzip eines Ausführungsbeispiels des zweiten Erkennungsblocks; -
8a das Prinzip des dritten Erkennungsblocks gemäß der Erfindung; -
8b ein Ausführungsbeispiel eines dritten Erkennungsblocks gemäß der Erfindung; -
8c ein weiteres Ausführungsbeispiel des Verfahrens gemäß der Erfindung; -
9 eine funktionale Architektur eines Ausführungsbeispiels der Erfindung; -
10 ein Ausführungsbeispiel eines Videobilddecodierers gemäß der Erfindung; und -
11 ein Ausführungsbeispiel eines mobilen Endgeräts gemäß der Erfindung. - Ein digitales Bild wird gebildet durch Abtasten und Quantisieren von analogen Bildinformationen, sowie Transformieren der erzeugten Daten in einen kontinuierlichen Strom von Bits. Das digitalisierte Signal ermöglicht die Verwendung von fortgeschrittenen Werkzeugen digitaler Signalverarbeitung, die eine schnellere und effizientere Datenübermittlung erlauben. In letzter Zeit wurden etliche Bildcodieralgorithmen entwickelt, um die Anzahl von Bits zu reduzieren, die für eine digitale Bilddarstellung notwendig sind, und die für eine Übertragung von digitalen Bildern benötigten Bitraten entsprechend zu reduzieren. JPEG ("Joint Photographic Experts Group") ist ein verbreitet verwendeter Algorithmus für Stehbilder, CCITT- (ITU-Telekommunikationsstandardisierungssparte) Empfehlung H.261 wurde für Videokonferenzen entwickelt, H.263 für Videotelefonie und MPEG ("Moving Pictures Expert Group") zur Übermittlung und Speicherung von bewegten Videobildern. Das Blockdiagramm gemäß
1 veranschaulicht die grundlegenden Stufen einer Videocodierung und -decodierung, die bei diesen Standards verwendet wird und einem Fachmann im Allgemeinen bekannt ist. Die digitalen Bilddaten werden in kleine Blöcke aufgeteilt11 , die eine bestimmte Anzahl von Bildelementen aufweisen (z.B. enthält ein Block 8 × 8 Bildelemente). Die Daten in jedem Block werden unter Verwendung der diskreten Kosinustransformation (DCT) in den Ortsfrequenzbereich transformiert12 . Die hergeleitete DCT-Matrix wird quantisiert13 und das quantisierte Signal wird unter Verwendung einer Tabelle von Codewörtern variabler Länge (VLC) codiert14 . Das codierte Signal wird an den Empfänger übertragen. Am Empfangsende werden die umgekehrten Prozesse15 ,16 und17 in einer umgekehrten Reihenfolge implementiert, um das Bild wiederherzustellen. - Die Auflösung eines digitalen Bildes ist durch die Anzahl von Bildelementen in der Bildmatrix definiert. Eine Abtastung mit 8 Bits für jede von einer Leuchtdichte- (Y) und Zweifarbart- (U, V) Komponenten führt zu 224 ≈ 16 Millionen verfügbaren Farben. Das menschliche Sehsystem ist auf Leuchtdichte- empfindlicher als auf Farbartkomponenten, weshalb die Farbartkomponenten des Bildes im Allgemeinen räumlich unterabgetastet werden. Zum Beispiel werden bei der ITU-T H.261-Empfehlung für jeweils vier Leuchtdichteblöcke zwei Farbartblöcke verwendet. Wie gemäß
2 dargestellt bilden Sätze von 4 Leuchtdichte- und 2 Farbartblöcken einen Makroblock21 , und ein H.261-Bild23 weist 12 Blockgruppen22 auf, die durch 3 × 11-Makroblöcke gebildet werden. Entsprechende strukturelle Gruppierungssysteme werden auch bei anderen Codierungsstandards verwendet. - Das Ablaufdiagramm gemäß
3 veranschaulicht die Elemente des erfundenen Verfahrens in Verbindung mit den Schritten zum Decodieren eines Makroblocks. Die Erfindung beruht auf der Idee, dass Blöcke eine künstliche Art zum Aufteilen von Informationen sind, und daher sollten in Videosequenzen niedriger Bitrate Veränderungen von natürlichen Bildern zwischen Blöcken langsam und/oder innerhalb bestimmter Grenzen auf eine erwartete Weise auftreten. Das Verfahren umfasst drei separate Erkennungselemente, von denen zumindest zwei mit dem Decodierungsprozess einer Decodierung variabler Länge31 , einer inversen Quantisierung32 und einer inversen DCT33 kombiniert sind. Die Erkennungselemente setzen verfügbare Informationen in den unterschiedlichen Ebenen einer Decodierung ein, um Übertragungsfehler zu erkennen. Das erste Erkennungselement34 führt Schritte zum Untersuchen von DCT-Komponenten auf Blockebene durch und kann entweder vor oder nach einer inversen Quantisierung durchgeführt werden. Für die Zwecke des zweiten und des dritten Erkennungselements werden die DCT-Komponenten des aktuellen Makroblocks z.B. in einen flüchtigen Speicher des Decodierers vorübergehend gespeichert. Das zweite Erkennungselement35 führt Schritte für einen Ortsvergleich auf Blockebene durch und das dritte Erkennungselement36 führt Vergleiche auf der Makroblockebene durch. Zur Erkennung werden nur entsprechende Komponenten miteinander verglichen (d.h. Y-, U- und V-Komponenten separat). Die Interpretation einer Erkennung kann sich auf Ergebnisse einer Untersuchung von nur einer Komponente stützen oder ergibt sich ebenso aus einer Untersuchung mehrerer Komponenten. Im Folgenden werden die Erkennungselemente gemäß3 ausführlicher studiert. - 1. Erster Erkennungsblock (
34 ) - Nach einer diskreten Kosinustransformation kann ein Bildelementblock als eine DCT-Matrix dargestellt werden, die einen DC-Koeffizienten und eine Vielzahl von AC-Koeffizienten aufweist, die von niedrigeren zu höheren Frequenzkoeffizienten im Zickzack abgetastet werden, wie es gemäß
4a gezeigt ist. In der Praxis ist es höchst unwahrscheinlich, dass bei Bildern niedriger Auflösung in AC-Komponenten hoher Frequenz große Amplituden vorhanden sind. Große Amplituden sind jedoch möglich, und bei dem erfundenen Verfahren werden sie nicht einfach herausgefiltert, sondern werden verwendet, um Fehler durch Würdigung der Tatsache zu erkennen, dass AC-Komponenten hoher Frequenz kleinere Absolutwerte haben sollten als die AC-Koeffizienten niedrigerer Frequenz. - Das Ablaufdiagramm gemäß
5a veranschaulicht das Prinzip des ersten Erkennungselements durch ein vereinfachtes Verfahren zum Überprüfen der Gültigkeit einer DCT-Matrix. In Schritt510 werden die AC-Komponenten der DCT-Matrix in zumindest zwei Gruppen aufgeteilt, wobei bestimmte Komponenten höherer Frequenz AC36 bis AC63 (siehe4a ) eine erste Gruppe bilden und eine zweite Gruppe eine ausgewählte Menge der verbleibenden AC-Komponenten ist (welche nachstehend als Komponenten niedriger Frequenz bezeichnet werden). Aus den AC-Komponenten der zweiten Gruppe wird zumindest ein erster Schwellenwert TH1 berechnet, der die Aktivität in den niedrigeren Frequenzen darstellt (Schritt530 ). Außerdem wird in Schritt520 zumindest ein Referenzwert Xref berechnet. Der Referenzwert stellt die Größe bzw. den Betrag von Nicht-Null-Koeffizienten dar, zum Beispiel von den AC-Komponenten der ersten Gruppe oder von den AC-Komponenten der zweiten Gruppe. Der Referenzwert Xref wird mit dem hergeleiteten ersten Schwellenwert TH1 verglichen (Schritt540 ), und falls der Referenzwert größer ist als der Schwellenwert (Schritt550 ), bedeutet dies, dass ein Fehler erkannt wird. - Das Ablaufdiagramm gemäß
5b veranschaulicht ein Ausführungsbeispiel des Verfahrens von5a , bei dem tatsächlich zwei erste Referenzwerte und entsprechende erste Schwellenwerte erzeugt werden. In Schritt511 wird die DCT-Matrix in horizontale, vertikale, diagonale und Hochfrequenz-Bänder aufgeteilt. Beispielhafte horizontale, vertikale und diagonale Bänder, die im Weiteren gemeinsam als Bänder niedriger Frequenz bezeichnet werden, sind in4b ,4c bzw.4d veranschaulicht. Zwischen diesen Bändern niedriger Frequenz kann eine gewisse Überlappung bestehen. In Schritt512 wird das erste Band niedriger Frequenz k gewählt. Die absolute Summe abSumk der Koeffizienten, der größte absolute Koeffizientenwert ACmax,k und die Anzahl nk von Nicht-Null-Faktoren von abSumk werden in Schritt513 berechnet. In Schritt514 wird die Anzahl von Nicht-Null-Koeffizienten in dem Band niedriger Frequenz k überprüft, und falls mehr als ein Nicht-Null-Koeffizient in dem Band vorhanden ist, wird der Koeffizient mit dem größten Absolutwert ACmax,k von der absoluten Summe der anderen Nicht-Null-Koeffizienten abSumk subtrahiert und die Summe zu einem vordefinierten konstanten Wert C1 addiert. Die erhaltene Summe wird als ein erster Hilfsschwellenwert TH1a definiert (Schritt521 ). Gibt es nur einen oder keinen Nicht-Null-Koeffizienten, wird der erste Hilfsschwellenwert TH1a als der vordefinierte konstante Wert C1 definiert (Schritt522 ). In Schritt541 wird der größte absolute Koeffizientenwert ACmax,k (erster Referenzwert) mit dem ersten Schwellenwert TH1a verglichen, und falls der erste Referenzwert ACmax,k größer oder gleich dem ersten Schwellenwert TH1a ist, wird ein Fehler erkannt (Schritt560 ). Ist der erste Referenzwert ACmax,k kleiner als der erste Schwellenwert TH1a, wird überprüft (Schritt542 ), ob alle Bänder niedriger Frequenz bereits nntersucht wurden. Ist dies nicht der Fall, wird das nächste gewählt (Schritt543 ). - Wenn alle Bänder niedriger Frequenz untersucht wurden, wird auch das Hochfrequenzband studiert. In Schritt
544 wird ein zweiter erster Schwellenwert aus den absoluten Werten von Koeffizienten in den Bändern niedriger Frequenz hergeleitet, indem TH1b = max (C1, ACmax,k; k = 1...K) gewählt wird. Danach wird der erste Koeffizient j des Hochfrequenzbands untersucht (Schritt545 ). Der erste Referenzwert Xref ist nun der absolute Wert des gewählten Hochfrequenzkoeffizienten absACj, und falls absACj größer ist als der Schwellenwert TH1b (Schritt546 ), wird ein Fehler erkannt (Schritt560 ). Die Schleife (Schritte546 bis548 ) wird wiederholt, bis alle Komponenten in dem Hochfrequenzband studiert wurden. Wird in dem Prozess keiner der Schwellenwerte TH1a und TH1b überschritten, gibt das Verfahren an (Schritt550 ), dass in diesem Block in dieser Stufe keine Fehler erkannt wurden. - 2. Zweites Erkennungselement (
35 ) - Wie bereits erwähnt tendieren Veränderungen zwischen benachbarten Blöcken bei natürlichen Bildern dazu, relativ glatt fortzuschreiten. Dementsprechend beruht der Betrieb des zweiten Erkennungselements auf einer Überwachung einer Korrelation zwischen benachbarten Blöcken. Vorzugsweise ist das zweite Erkennungselement in dem Decodierungsprozess nach der inversen diskreten Kosinustransformation enthalten. Für die Zwecke des zweiten und des dritten Erkennungselements werden die DCT-Komponenten des aktuellen Makroblocks z.B. in einen flüchtigen Speicher des Decodierers vorübergehend gespeichert. Das Ablaufdiagramm gemäß
6 veranschaulicht das Prinzip des zweiten Erkennungselements gemäß der Erfindung. - In Schritt
610 wird aus den Informationen des aktuellen Blocks ein Referenzwert Xcurr hergeleitet. Der Referenzwert Xcurr repräsentiert ein Merkmal, das sich voraussichtlich über die Blockgrenzen fortsetzt, und kann auf mehrere Arten hergeleitet werden, wie es später gezeigt wird. In Schritt620 wird ein entsprechender Referenzwert Xneigh aus den Informationen von zumindest einem benachbarten Block hergeleitet. In Schritt630 werden die Referenzwerte miteinander verglichen, um einen Differenzwert herzuleiten, der die Veränderung Δ des untersuchten Merkmals darstellt, wenn es sich von Block zu Block bewegt. Ist die Veränderung größer als ein zweiter Schwellenwert TH2 (Schritt640 ), wird ein Fehler erkannt (Schritt660 ). Überschreitet die Veränderung den zweiten Schwellenwert TH2 nicht, wird kein Fehler erkannt (Schritt650 ). Der zweite Schwellenwert TH2 kann z.B. eine vorab definierte Konstante sein. - Bei einem Ausführungsbeispiel des erfundenen Verfahrens ist der Referenzwert Xcurr die DC-Komponente des Blocks. Für einen Vergleich stehen nur vorher decodierte Blöcke zur Verfügung. Wird das Fehlerprüfungsverfahren während einer Decodierung verwendet, stehen die DC-Komponenten in Blöcken links, oberhalb, links-oberhalb und rechts-oberhalb für einen Vergleich zur Verfügung. Wird die Prüfung erst gemacht, nachdem der gesamte Rahmen decodiert ist, können mögliche Nachbarn für einige Blöcke auch in der Reihe unterhalb des aktuellen gefunden werden. Ist die Differenz zwischen dem aktuellen Block und jedem verfügbaren benachbarten Block größer als ein bestimmter Schwellenwert, wird ein Fehler in dem aktuellen Block erkannt. In der Praxis sollte der Schwellenwert ziemlich hoch sein, da bei Bildern niedriger Auflösung die Inhalte von zwei benachbarten Blöcken recht unterschiedlich sein können. Jedenfalls erfordert diese Prüfung nur wenige Vergleiche und eine Speicherung von DC-Komponenten und fügt daher nicht viel Komplexität zu dem Decodierungsprozess hinzu.
- Bei einem weiteren Ausführungsbeispiel des erfundenen Verfahrens wird der untersuchte Block in eine Anzahl von Unterblöcken aufgeteilt (zum Beispiel wird ein 8·8-Block in vier 4·4-Unterblöcke aufgeteilt. Für jeden Unterblock wird der Mittelwert der Bildelementwerte berechnet und wird der berechnete Wert als der Referenzwert Xcurr für diesen Unterblock verwendet. Als ein Referenzwert des benachbarten Blocks Xneigh wird abwechselnd der gemittelte Bildelementwert der benachbarten Unterblöcke in der linken, oberen, oberen-linken und oberen-rechten Richtung verwendet. Die Veränderung Δ gleicht der Differenz zwischen dem Referenzwert Xcurr und dem gemittelten Bildelementwert Xneigh von jedem der untersuchten benachbarten Unterblöcke. Ist die Differenz Δ für einen Unterblock und jeden seiner untersuchten Nachbarn größer als ein vordefinierter zweiter Schwellenwert TH2, wird ein Fehler erkannt. Jedenfalls kann der Block, wenn eine derartige Interpretation in diesem Fall zu stark erscheint, als verdächtig markiert werden und kann die Prüfung mit einer anderen Prüfung ergänzt werden.
- Bei einem weiteren Ausführungsbeispiel des erfundenen Verfahrens werden Bildelemente an den Blockgrenzen verwendet, um die Kontinuität bzw. den Fortbestand des Bildes zu prüfen. Bei Lösungen gemäß dem Stand der Technik werden nur Bildelemente unmittelbar an der Blockgrenze untersucht, aber in der Praxis hat sich herausgestellt, dass dies nicht ausreichend ist. Bei einem weiterentwickelten Verfahren wird auch der Gradient bzw. die Steigung von Veränderungen in Bildelementwerten nahe der Grenze in Betracht gezogen. Das Prinzip eines derartigen Ausführungsbeispiels des zweiten Erkennungsblocks ist gemäß
7 veranschaulicht. - In
7a ist eine Grenze70 zwischen zwei angrenzenden bzw. benachbarten Blöcken71 und72 gezeigt. Punkt73 stellt den Wert einer gewählten Komponente (z.B. Leuchtdichte) des Bildelements des ersten Blocks71 nahe der Grenze70 dar. Punkt74 stellt den Wert der gleichen Komponente für ein Bildelement des zweiten Blocks72 dar, das am nächsten zu der Grenze und in der gleichen Reihe wie das Bildelement von Punkt73 liegt. Punkt75 stellt den Wert der gleichen Komponente für ein Bildelement des ersten Blocks71 dar, das sich neben dem Grenzbildelement73 und weiter von der Grenze70 entfernt befindet. Punkt76 stellt den Wert der gleichen Komponente für ein Bildelement des zweiten Blocks72 dar, das sich neben dem Grenzbildelement74 und weiter von der Grenze70 entfernt befindet. Zuerst wird die Differenz d1 zwischen Werten von Grenzbildelementen73 und74 hergeleitet. Dann werden Werte77 und78 aus den Werten von den Punkten73 /75 bzw.74 /76 extrapoliert. Die Differenz d2 zwischen den extrapolierten Werten wird berechnet und die Differenzen d1 und d2 werden miteinander verglichen. Die kleinere von diesen min(d1,d2) wird zu einer kumulativen Summe Δ addiert, die für die Grenze70 des Blocks71 berechnet wird. Die Gesamtsumme Δ wird mit einem vorab definierten zweiten Schwellenwert TH2 verglichen, und falls die Summe Δ größer ist als TH2, werden die anderen Grenzen auf ähnliche Weise überprüft. Überschreiten die Summen von allen Grenzen TH2, wird ein Fehler erkannt. Bei diesem Beispiel wird eine Leuchtdichtekomponente für Berechnungen verwendet, aber im Allgemeinen kann jede der Leuchtdichte- und der Farbartkomponenten (Y, U, V) verwendet werden und/oder kann die Prüfung für jede der Komponenten separate implementiert werden. Das Kriterium kann auch dahingehend modifiziert werden, dass ein Fehler angegeben wird, wenn die Summe von ein/zwei/drei Grenzen Werte zeigt, die TH2 überschreiten. In7b ist die gleiche Anordnung wie in7a dargestellt, aber mit anderen Bildelementwerten und einer anderen Veränderungsrichtung. Mit einer Extrapolation können unnötige hastige Folgerungen bezüglich der Gültigkeit/Ungültigkeit des Blocks vermieden werden. - In der Literatur des Standes der Technik wurden einige Rand- bzw. Kantendetektoren für Blockgrenzen vorgestellt. Die hier gezeigten Ausführungsbeispiele können mit der Verwendung von derartigen Rand- bzw. Kantendetektoren, z.B. Kompassgradientenoperatoren, ergänzt werden.
- 3. Drittes Erkennungselement (
36 ) - Auf der Makroblockebene können Informationen über eine Vielzahl von Blöcken studiert werden und können Abweichungen zwischen Blöcken detaillierter untersucht werden. Für die Zwecke einer Makroblock-Prüfung werden alle oder eine ausgewählte Menge von DCT-Komponenten des Makroblocks in einem flüchtigen Speicher des Decodierers gespeichert. Das Ablaufdiagramm gemäß
8a veranschaulicht das Prinzip von Erkennungsverfahren auf der Makroblockebene. In Schritten810 und820 wird der erste Block Bj empfangen, und es wird ein bestimmter Makroblockebene-Parameter qj, der das Merkmal darstellt, dessen Veränderungen über den Makroblock hinweg untersucht werden, in einem Speicher gespeichert830 . Mit dem Fortschritt der Schleife von810 bis850 werden Informationen gesammelt, bis der Zähler j den Wert J erreicht (Schritt840 ), welcher der Anzahl von Blöcken in dem Makroblock gleicht. Wurde der gesamte Makroblock empfangen und sind die Parameter qj für alle Blöcke gespeichert, wird aus den Parametern qj ein Referenzwert oder eine Menge von Referenzwerten Qcurr hergeleitet (Schritt860 ). Qcurr wird bezüglich eines dritten Schwellenwerts TH3 geprüft (Schritt870 ), der eine Grenze darstellt, die für Qcurr eingestellt ist, damit gewisse vorab definierte Kriterien erfüllt werden. Falls der Referenzwert Qcurr kleiner ist als der dritte Schwellenwert TH3, wird kein Fehler erkannt (Schritt890 ). Überschreitet der Referenzwert TH3, wird ein Fehler erkannt (Schritt895 ). - Bei einem Ausführungsbeispiel des Verfahrens wie gemäß
8a gezeigt basieren die Referenzwerte und die Prüfkriterien auf einer lokalen Spektralkorrelation. In der Praxis können die meisten der visuell wahrnehmbaren Forminformationen eines Rahmens in der Leuchtdichtekomponente gefunden werden. Sind geringe Veränderungen in Leuchtdichteblöcken vorhanden, sollten folglich auch in Farbartblöcken des Makroblocks nicht viele Veränderungen auftreten. Dies gilt besonders dann, wenn das Bild z.B. unter Verwendung eines 4:2:0-Formats (d.h. vier Y-Blöcke mit einem U-Block und einen V-Block) abgetastet ist. Das Ablaufdiagramm gemäß8b veranschaulicht ein derartiges Ausführungsbeispiel eines Verfahrens gemäß der Erfindung. - Schritte
810 bis850 folgen dem durch8a veranschaulichten Prozess mit der Ausnahme, dass in Schritt831 der Parameter qm die Veränderungen der Werte der AC-Koeffizienten in U-, V- und Y-Blöcken (ACU,m, ACV,m, ACY,m) des Makroblocks darstellt. In Schritt861 werden Werte ACU,M und ACV,M hergeleitet, die den Veränderungsbetrag von AC-Komponenten in U- und V-Blöcken darstellen, und werden sie in einen Wert TH3 verarbeitet, der den dritten Schwellenwert darstellt. In Schritt862 wird ein entsprechender Referenzwert ACY,J hergeleitet, der die Veränderung von AC-Komponenten in den Leuchtdichte- (Y) Blöcken darstellt, und in einen dritten Referenzwert Qcurr verarbeitet. In Schritt870 werden der Referenzwert Qcurr und der Schwellenwert TH3 miteinander verglichen, und falls der Schwellenwert, der auf Veränderungen in Farbartkomponenten (U und V) basiert, viel größer ist als die Referenzzahl, die auf Veränderungen in Leuchtdichte- (Y) Komponenten basiert (Schritt880 ), wird der Makroblock als beschädigt betrachtet (895 ). Anderenfalls werden auf der Makroblockebene keine Fehler erkannt (Schritt890 ). Eine weitere Möglichkeit besteht z.B. darin, die Veränderung in den DC-Komponenten von U- und V-Blöcken gegen die Veränderungen der Y-Komponenten im Vergleich zu einem früheren decodierten Makroblock zu untersuchen. Überschreiten z.B. Veränderungen von DC-Komponenten in U- und V-Blöcken einen dritten Hilfsschwellenwert und überschreiten Veränderungen von DC-Komponenten in einem Y-Block einen weiteren dritten Hilfsschwellenwert nicht, wird ein Fehler erkannt. - Das Ablaufdiagramm gemäß
8c veranschaulicht ein weiteres Ausführungsbeispiel des Verfahrens gemäß der Erfindung. Die Parameter zum Speichern in Schritt832 der Empfangsschleife sind die DC-Komponenten des Makroblocks und eine absolute Summe von AC-Komponenten des Makroblocks. In Schritt863 wird die Größe von Veränderungen in den DC-Komponenten über den Makroblock hinweg berechnet und wird die absolute Summe von AC-Komponenten geschätzt, die notwendig sind, um die Veränderungen der DC-Komponente zu begründen. Die geschätzte Summe wird als ein dritter Schwellenwert TH3 verwendet und die tatsächliche Veränderung von DC-Komponenten wird als ein dritter Referenzwert verwendet. Verändern sich die DC-Komponenten bemerkbar und sind die AC-Koeffizienten nicht ausreichend, um die Veränderungen zu glätten, ist die Kompatibilität der Koeffizienten fraglich (Schritt872 ). In Block872 wird Qcurr aus der absoluten Summe von DC-Komponenten erzeugt. Durch Vergleich des Referenzwerts Qcurr mit dem Schwellenwert TH3 (Schritt880 ) kann der Makroblock interpretiert werden, beschädigt zu sein (Schritt895 ) oder nicht (Schritt890 ). - Das Verfahren hierin wurde auf der Makroblockebene dargestellt, aber Makroblöcke können auch in Reihen geprüft werden. In der aller ersten Reihe eines Videorahmens stehen nicht viele benachbarte Blöcke oder Makroblöcke für einen Vergleich zur Verfügung. Gibt es in der ersten Reihe keine abrupten Veränderungen und fallen die Werte in einen typischen Bereich, können sie als unbeschädigt betrachtet werden. Gibt es irgendeinen Zweifel, sollten die Werte der ersten Reihe zusammen mit der zweiten Reihe geprüft werden. Sind die Werte der ersten Reihe sehr unterschiedlich zu den Werten in der zweiten Reihe und enthalten die Werte der zweiten Reihe keinerlei abrupte Veränderungen, ist die erste Reihe wahrscheinlich beschädigt.
- Das Ablaufdiagramm gemäß
9 veranschaulicht die funktionale Architektur eines Ausführungsbeispiels der Erfindung, bei der alle drei vorgestellten Elemente in dem Decodierungsprozess einbezogen sind. Zuerst wird das Verfahren oder die Vielzahl von Verfahren90 zum Prüfen der DCT-Komponenten innerhalb von Blöcken implementiert und werden die beschädigten Blöcke damit herausgefiltert. Selbst für die Blöcke, die die DCT-Prüfung passieren, wird eine Blockprüfung91 durchgeführt. Beschädigte Blöcke werden erneut herausgefiltert und verdächtige Blöcke (d.h. Blöcke, die bei Erkennungsverfahren gescheitert sind, die keine Fehler erkennen, aber verdächtige Blöcke markieren) werden zu einer Makroblock-Prüfung92 weitergeleitet. Blöcke, die die DCT-Prüfung und die Blockprüfung und/oder die Makroblock-Prüfung passieren, werden normal weitergeleitet93 , und die Blöcke, die bei einer der Prüfungen scheitern, werden mit einem Fehlerhinweis zur Einleitung von Fehlerverbergungsverfahren weitergeleitet. - Das Blockdiagramm gemäß
10 veranschaulicht ein Ausführungsbeispiel eines Videobilddecodierers100 gemäß der Erfindung. Der Decodierer umfasst einen Eingangsport101 zum Empfangen von Videobildinformationen in der Form von Codes variabler Länge und einen Ausgangsport102 zum Ausgeben verarbeiteter Videobildinformationen. Der Decodierer umfasst ferner zumindest einen Prozessor103 zum Implementieren der gemäß1 dargestellten Decodierschritte. Ein Prozessor eines Decodierers gemäß der Erfindung ist ferner eingerichtet, zumindest zwei der drei vorgestellten Erkennungsblöcke in den Decodierungsprozess einzubeziehen und, wann immer gerechtfertigt, einen Hinweis eines erkannten Fehlers zu der Ausgabe von Videobildinformationen hinzuzufügen. Der Prozessor ist auch eingerichtet, einen vordefinierten Fehlerverbergungsprozess als Reaktion auf einen erkannten Fehler in einem decodierten Block oder Makroblock einzuleiten. Der Speicher104 umfasst zumindest einen flüchtigen Speicher zum Sichern von Daten während des Decodierungsprozesses. - Das funktionale Blockdiagramm gemäß
11 veranschaulicht ein generisches mobiles Multimedia-Videotelefon-Endgerät (MT) gemäß der Erfindung. Das Endgerät umfasst eine Hochfrequenzeinheit110 , die im Allgemeinen eine Einrichtung zum Senden (z.B. Kanalcodierung, Verschachtelung, Chiffrierung, Modulation und Funkübertragung) und zum Empfangen (Funkempfang, Demodulation, Dechiffrierung und Kanaldecodierung), ein Duplexfilter und eine Antenne aufweist. Der empfangene synchrone Bitstrom wird an die Multiplex/Demultiplex-Protokolleinheit111 des Endgeräts gesendet. Das Multiplexprotokoll multiplext übertragene Video-, Audio-Daten- und Steuerströme in einen einzigen Bitstrom und demultiplext einen empfangenen Bitstrom in verschiedene Multimediaströme. Zusätzlich führt sie eine logische Rahmenbildung, eine Sequenznummerierung, eine Fehlererkennung und eine Fehlerkorrektur durch, wie es für jedem Medientyp passend ist. Das Steuerprotokoll112 der Systemsteuerung113 stellt eine Ende-zu-Ende-Signalisierung zum Betrieb des Multimedia-Endgeräts bereit und signalisiert alle weiteren Ende-zu-Ende-Systemfunktionen. Es sorgt für einen Fähigkeitsaustausch, eine Signalisierung von Befehlen und Hinweisen, sowie für Nachrichten zum Öffnen und vollständigen Beschreiben des Inhalts von logischen Kanälen. Die Datenprotokolle114 unterstützen Datenanwendungen115 wie etwa elektronische Weißwandtafeln, eine Stehbildübermittlung, einen Dateiaustausch, einen Datenbankzugriff, audiographische Konferenzen, Gerätefernsteuerung, Netzwerkprotokolle, usw. Der Audio-Codec116 codiert das Audiosignal von der Audio-E/A-Vorrichtung117 zur Übertragung und decodiert den codierten Audiostrom. Das decodierte Audiosignal wird unter Verwendung einer Audio-E/A-Vorrichtung117 abgespielt. Der Video-Codec118 umfasst einen Video-Codierer119 und einen Video-Decodierer100 und führt eine Redundanzreduktionscodierung und -decodierung für Videoströme zu und von der Video-E/A-Vorrichtung120 durch. Das Endgerät gemäß der Erfindung umfasst einen Video-Decodierer100 wie vorstehend in Verbindung mit10 beschrieben. - Das Vorstehende ist eine Beschreibung der Realisierung der Erfindung und ihrer Ausführungsbeispiele unter Einsatz von Beispielen. Es ist für einen Fachmann selbstverständlich, dass die Erfindung nicht auf die Einzelheiten der vorstehenden dargestellten Ausführungsbeispiele beschränkt ist, und dass die Erfindung auch bei anderen Ausführungsbeispielen realisiert werden kann, ohne von den Eigenschaften der Erfindung abzuweichen. Insbesondere können die Kriterien für die Entscheidung über erkannte Fehler und die Wahl von Schwellenwerten auf viele Arten gemäß der Anwendung angepasst werden. Die dargestellten Ausführungsbeispiele sollten daher als veranschaulichend, aber nicht als einschränkend betrachtet werden. Demnach sind die Möglichkeiten, um die Erfindung zu realisieren und zu verwenden, nur durch die beigefügten Ansprüche eingeschränkt.
Claims (52)
- Verfahren zum Decodieren von komprimierten Videobildern, wobei jedes Bild eine Vielzahl von Videodatenblöcken aufweist, mit einer Durchführung einer Transformation von DCT-Koeffizienten, die Informationen über die Ortsfrequenzverteilung eines Videodatenblocks von einem Bild bereitstellen, in Bildelementwerte, wobei die DCT-Koeffizienten des Videodatenblocks einen DC-Koeffizienten und einen Satz von AC-Koeffizienten (ACj) aufweisen, zusätzlich mit den Schritten: Durchführen einer ersten Prüfung zum Erkennen eines Fehlers in einem Videodatenblock des Bilds, wobei die erste Prüfung aufweist: Aufteilen der DCT-Koeffizienten des Videodatenblocks in zumindest eine Gruppe niedriger Frequenz und eine Gruppe hoher Frequenz; Erzeugen eines ersten Referenzwerts (Xref), der Veränderungen in Informationen über eine Ortsfrequenzverteilung innerhalb des Videodatenblocks von dem Bild darstellt, in dem DCT-Bereich aus einer der Gruppen von DCT-Koeffizienten des Videodatenblocks; Vergleichen des ersten Referenzwerts (Xref) mit einem ersten Schwellenwert (TH1, TH1a, TH1b), der aus den Werten von DCT-Koeffizienten berechnet wird, die zu einer der Gruppen von DCT-Koeffizienten gehören; und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der erste Referenzwert (Xref) größer ist als der erste Schwellenwert (TH1, TH1a, TH1b); Durchführen einer zweiten Prüfung zum Erkennen eines Fehlers in dem Videodatenblock des Bilds, wobei die zweite Prüfung aufweist: Erzeugen eines zweiten Referenzwerts (Δ), der die Steilheit einer Veränderung in DCT-Koeffizienteninformationen oder Bildelementwertinformationen zwischen dem Block und zumindest einem vorhergehend transformierten Videodatenblock von dem Bild darstellt; Vergleichen des zweiten Referenzwerts (Δ) mit einem zweiten Schwellenwert (TH2); und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der zweite Referenzwert (Δ) größer ist als der zweite Schwellenwert (TH2).
- Verfahren gemäß Anspruch 1, bei dem Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, gekennzeichnet durch: Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient und aufweist: Erzeugen eines dritten Referenzwerts (Qcurr), der Veränderungen in Informationen innerhalb des Makroblocks darstellt, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3); Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) größer ist als der dritte Schwellenwert (TH3).
- Verfahren gemäß Anspruch 2, dadurch gekennzeichnet, dass der dritte Referenzwert (Qcurr) die Größe von Veränderungen in den DC-DCT-Koeffizienten von Videodatenblöcken über den Makroblock hinweg darstellt und der dritte Schwellenwert (TH3) eine absolute Summe von AC-DCT-Koeffizienten in dem Makroblock ist.
- Verfahren gemäß Anspruch 2, dadurch gekennzeichnet, dass die dritte Prüfung eingerichtet ist, einen Fehler in einem Makroblock des Bilds basierend auf einer lokalen Spektralkorrelation von Videodatenblöcken des Makroblocks, die die Leuchtdichtekomponente (Y) des Videobilds darstellen, und Videodatenblöcken des Makroblocks, die die Farbkomponenten (U, V) des Videobilds darstellen, zu erkennen.
- Verfahren gemäß Anspruch 1, bei dem Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, gekennzeichnet durch: Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient und aufweist: Erzeugen eines dritten Referenzwerts (Qcurr), der Veränderungen in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks darstellt, die die Leuchtdichtekomponente (Y) des Videobilds darstellen, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3), wobei der dritte Schwellenwert den Betrag von Veränderungen in den AC-DCT-Komponenten der Videodatenblöcke des Makroblocks darstellt, die die Farbkomponenten des Videobilds darstellen; Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) kleiner ist als der dritte Schwellenwert (TH3).
- Verfahren gemäß Anspruch 1, bei dem Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, gekennzeichnet durch: Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient und aufweist: Erzeugen eines dritten Referenzwerts (Qcurr), der die Steilheit von Veränderungen in DCT-Koeffizienteninformationen zwischen dem Makroblock und zumindest einem vorhergehend decodierten Makroblock darstellt, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3); und Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritten Referenzwert (Qcurr) größer ist als der dritten Schwellenwert (TH3).
- Verfahren gemäß einem der vorhergehenden Ansprüche, gekennzeichnet durch ein Einleite eines Fehlerverdeckungsprozesses ansprechend auf Erkennung eines Fehlers.
- Verfahren gemäß einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Prüfung aufweist: Erzeugen des ersten Referenzwerts (Xref) aus den DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten; und Erzeugen des ersten Schwellenwerts (TH1) aus DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören.
- Verfahren gemäß einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die erste Prüfung aufweist: Erzeugen des ersten Referenzwerts (Xref) aus den DCT-Koeffizienten der Gruppe niedriger Frequenz von DCT-Koeffizienten; und Erzeugen des ersten Schwellenwerts (TH1) aus DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören.
- Verfahren gemäß Anspruch 1, dadurch gekennzeichnet, dass die erste Prüfung aufweist: Bilden von zumindest zwei Sätzen von DCT-Koeffizienten aus der Gruppe niedriger Frequenz von DCT-Koeffizienten; Erzeugen eines ersten Referenzwerts (ACmax,k) und eines entsprechenden ersten Schwellenwerts (TH1a) für jeden gebildeten Satz von DCT-Koeffizienten aus dem jeweiligen Satz von DCT-Koeffizienten; Vergleichen, für jeden der Sätze, des ersten Referenzwerts (ACmax,k) des Satzes mit dem ersten Schwellenwert (TH1a) des Satzes; und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass einer der ersten Referenzwerte (ACmax,k) des Satzes größer ist als der entsprechende Schwellenwert (TH1a) des Satzes.
- Verfahren gemäß Anspruch 10, dadurch gekennzeichnet, dass die Sätze von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören, teilweise überlappen.
- Verfahren gemäß Anspruch 10 oder Anspruch 11, dadurch gekennzeichnet, dass für jeden gebildeten Satz von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören, der erste Referenzwert der größte absolute Koeffizientenwert (ACmax,k) des Satzes von DCT-Koeffizienten ist und der entsprechende erste Schwellenwert (TH1a) einen vordefinierten konstanten Wert (C1) aufweist, der als Reaktion darauf, dass die Anzahl von Nicht-Null-Koeffizientenwerten in dem Satz größer als eins ist, zu der absoluten Summe (abSUMk) der Koeffizientenwerte ausschließlich des größten absoluten Koeffizientenwerts (ACmax,k) addiert wird.
- Verfahren gemäß einem der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass die erste Prüfung zusätzlich aufweist: Erzeugen eines weiteren ersten Referenzwerts (ACj) aus den DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten; Erzeugen eines weiteren ersten Schwellenwerts (TH1b) aus den DCT-Koeffizienten der Sätze von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören; Vergleichen des weiteren ersten Referenzwerts (ACj) mit dem weiteren ersten Schwellenwert (TH1b); Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der weitere erste Referenzwert (ACj) größer ist als der weitere erste Schwellenwert (TH1b).
- Verfahren gemäß Anspruch 13, gekennzeichnet durch: Einstellen des weiteren ersten Referenzwerts abwechselnd gleich dem absoluten Wert von jedem der Gruppe hoher Frequenz von DCT-Koeffizienten (ACj); und Wiederholen des Vergleichs des weiteren ersten Schwellenwerts (ACj) mit dem weiteren ersten Schwellenwert (TH1b) für jeden DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten.
- Verfahren gemäß einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die zweite Prüfung ein Erzeugen des zweiten Referenzwerts (Δ) aus der Differenz zwischen dem DC-DCT-Koeffizienten eines aktuellen Videodatenblocks (Xcurr) und dem DC-DCT-Koeffizienten eines vorhergehend transformierten Blocks (Xneigh) aufweist.
- Verfahren gemäß einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, dass die zweite Prüfung ein Erzeugen des zweiten Referenzwerts (Δ) aus den Differenzen zwischen dem DC-DCT-Koeffizienten eines aktuellen Videodatenblocks (Xcurr) und den DC-DCT-Koeffizienten von mehr als einem vorhergehend transformierten Block (Xneigh) aufweist.
- Verfahren gemäß einem der Ansprüche 1 bis 14, gekennzeichnet durch ein Aufteilen des Videodatenblocks in eine Anzahl von Teilblöcken und Durchführen der zweiten Prüfung unter Verwendung benachbarter Teilblöcke, wobei der zweite Referenzwert (Δ) aus der Differenz zwischen dem durchschnittlichen Bildelementwert eines aktuellen Teilblocks (Xcurr) und dem durchschnittlichen Bildelementwert von zumindest einem benachbarten Teilblock (Xneigh) erzeugt wird.
- Verfahren gemäß Anspruch 17, dadurch gekennzeichnet, dass statt einer Erkennung eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der zweite Referenzwert (Δ) größer ist als der zweite Schwellenwert (TH2), der Videodatenblock als verdächtig markiert wird und eine weitere Fehlererkennungsprüfung durchgeführt wird.
- Verfahren gemäß einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, dass die zweite Prüfung ein Erzeugen des zweiten Referenzwerts (Δ) aus dem Gradienten von Änderungen in Bildelementwerten aufweist, die nahe an einer Grenze (
70 ) zwischen einem ersten Videodatenblock (71 ) und einem zweiten Videodatenblock (72 ) liegen. - Verfahren gemäß Anspruch 19, dadurch gekennzeichnet, dass der erste Videodatenblock (
71 ) eine Anzahl von in Reihen angeordneten Bildelementen aufweist, wobei jede Reihe ein Grenzbildelement (73 ) umfasst, das am nächsten an der Grenze (70 ) zwischen dem ersten und dem zweiten Videodatenblock liegt, und der zweite Videodatenblock eine Anzahl von in Reihen angeordneten Bildelementen aufweist, wobei jede Reihe ein Grenzbildelement (74 ) umfasst, das am nächsten an einer Grenze (70 ) zwischen dem ersten und dem zweiten Videodatenblock liegt, wobei die zweite Prüfung aufweist: (a) Berechnen eines ersten Differenzwerts (d1), der die Differenz zwischen dem Bildelementwert eines Grenzbildelements (73 ) in einer Reihe des ersten Videodatenblocks (71 ) und dem Bildelementwert eines Grenzbildelements (74 ) in einer entsprechenden Reihe des zweiten Videodatenblocks (72 ) darstellt; (b) Berechnen eines ersten extrapolierten Grenzbildelementwerts (77 ) aus dem Grenzbildelement (73 ) des ersten Videodatenblocks (71 ) und dem nächsten Bildelement (75 ) an dem Grenzbildelement (73 ) in der gleichen Reihe des ersten Videodatenblocks (71 ); (c) Berechnen eines zweiten extrapolierten Grenzbildelementwerts (78 ) aus dem Grenzbildelement (74 ) des zweiten Videodatenblocks (72 ) und dem nächsten Bildelement (76 ) an dem Grenzbildelement (74 ) in der gleichen Reihe des zweiten Videodatenblocks (72 ); (d) Berechnen eines zweiten Differenzwerts (d2), der die Differenz zwischen dem ersten und dem zweiten extrapolierten Grenzbildelementwert (77 ,78 ) aufweist; (e) Vergleichen des ersten (d1) und des zweiten Differenzwerts (d2); (f) Addieren des kleineren des ersten und des zweiten Differenzwerts (d1, d2) zu einer kumulativen Summe von Differenzen; (g) Wiederholen von Schritten (a) bis (f) für die Grenzbildelemente (73 ) in allen Reihen des ersten Videodatenblocks (73 ); und (h) Erzeugen eines zweiten Referenzwerts (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) aus der kumulativen Summe von Differenzen. - Verfahren gemäß Anspruch 20, dadurch gekennzeichnet, dass die zweite Prüfung zusätzlich aufweist: Vergleichen des zweiten Referenzwerts (Δ) mit dem zweiten Schwellenwert (TH2); Durchführen von Schritten (a) bis (h) gemäß Anspruch 20 für die anderen Grenzen (
70 ) des ersten Videodatenblocks, falls der zweite Referenzwert (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) größer ist als der zweite Schwellenwert (TH2); und Erkennen eines Fehlers in dem ersten Videodatenblock (71 ) als Reaktion darauf, dass alle der zweiten Referenzwerte (Δ), die für die Grenzen (70 ) des ersten Videodatenblocks erzeugt werden, größer sind als der zweite Schwellenwert (TH2). - Verfahren gemäß Anspruch 20, dadurch gekennzeichnet, dass die zweite Prüfung zusätzlich aufweist: Vergleichen des zweiten Referenzwerts (Δ) mit einem zweiten Schwellenwert (TH2); Durchführen von Schritten (a) bis (h) gemäß Anspruch 20 für die anderen Grenzen (
70 ) des ersten Videodatenblocks, falls der zweite Referenzwert (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) größer ist als der zweite Schwellenwert (TH2); und Erkennen eines Fehlers in dem ersten Videodatenblock (71 ) als Reaktion darauf, dass einer oder mehrere der zweiten Referenzwerte (Δ), die für die anderen Grenzen (70 ) des ersten Videodatenblocks erzeugt werden, größer ist/sind als der zweite Schwellenwert (TH2). - Verfahren gemäß Anspruch 5, gekennzeichnet durch: Erzeugen von Sätzen von Werten (ACY,J, ACU,J, ACV,J), die die Veränderung in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks darstellen, die die Leuchtdichte- (Y) und Farbkomponenten (U, V) des Videobilds darstellen; Erzeugen des dritten Referenzwerts (Qcurr) aus dem Veränderungsbetrag (ACY,J) in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks, die die Leuchtdichtekomponente (Y) des Videobilds darstellen; und Erzeugen des dritten Schwellenwerts (TH3) aus dem Veränderungsbetrag (ACU,J, ACV,J) in den AC-DCT-Koeffizienten der Videodatenblöcke (U, V) des Makroblocks, die die Farbkomponenten des Videobilds darstellen.
- Verfahren gemäß Anspruch 3, gekennzeichnet durch: Erzeugen des dritten Schwellenwerts (TH3) aus Differenzen zwischen den DC-Werten von Y-Blöcken in dem Makroblock und zumindest einem vorhergehend decodierten Makroblock.
- Verfahren gemäß Anspruch 2, gekennzeichnet durch: Erzeugen des dritten Referenzwerts (TH3) aus der absoluten Summe von Werten von AC-Koeffizienten in einer Anzahl von Blöcken in einem Makroblock; und Erzeugen des dritten Schwellenwerts (TH3) aus der geschätzten Summe von Werten von AC-Koeffizienten, die benötigt werden, um die Veränderung in DC-Koeffizienten in der Anzahl von Blöcken auszumachen.
- Verfahren gemäß Anspruch 2 oder 3, gekennzeichnet durch: Markieren der Blöcke als verdächtig als Reaktion darauf, dass einer des ersten und des zweiten Referenzwerts größer ist als der erste beziehungsweise der zweite Schwellenwert; und Einleiten einer weiteren Erkennung für Makroblöcke, die zumindest einen als verdächtig markierten Block aufweisen.
- Vorrichtung (
100 ) zum Decodieren von komprimierten Videobildern, wobei jedes Bild eine Vielzahl von Datenblöcken aufweist, wobei die Vorrichtung (100 ) eine Einrichtung (103 ) zum Transformieren von DCT-Koeffizienten, die Informationen über die Ortsfrequenzverteilung eines Videodatenblocks von einem Bild bereitstellen, in Bildelementwerte aufweist, wobei die DCT-Koeffizienten des Videodatenblocks einen DC-Koeffizienten und einen Satz von AC-Koeffizienten (ACj) aufweisen, wobei die Vorrichtung (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Durchführen einer ersten Prüfung zum Erkennen eines Fehlers in einem Videodatenblock des Bilds, wobei die Einrichtung (103 ) zum Durchführen einer ersten Prüfung eingerichtet ist zum: Aufteilen der DCT-Koeffizienten des Videodatenblocks in zumindest eine Gruppe niedriger Frequenz und eine Gruppe hoher Frequenz; Erzeugen eines ersten Referenzwerts (Xref), der Veränderungen in Informationen über eine Ortsfrequenzverteilung innerhalb des Videodatenblocks von dem Bild darstellt, in dem DCT-Bereich aus einer der Gruppen von DCT-Koeffizienten des Videodatenblocks; Vergleichen des ersten Referenzwerts (Xref) mit einem ersten Schwellenwert (TH1, TH1a, TH1b), der aus den Werten von DCT-Koeffizienten berechnet wird, die zu einer der Gruppen von DCT-Koeffizienten gehören; und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der erste Referenzwert (Xref) größer ist als der erste Schwellenwert (TH1, TH1a, TH1b); und eine Einrichtung (103 ) zum Durchführen einer zweiten Prüfung zum Erkennen eines Fehlers in dem Videodatenblock des Bilds, wobei die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum: Erzeugen eines zweiten Referenzwerts (Δ), der die Steilheit einer Veränderung in DCT-Koeffizienten- oder Bildelementwertinformationen zwischen dem Block und zumindest einem vorhergehend transformierten Videodatenblock von dem Bild darstellt; Vergleichen des zweiten Referenzwerts (Δ) mit einem zweiten Schwellenwert (TH2); und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der zweite Referenzwert (Δ) größer ist als der zweite Schwellenwert (TH2). - Vorrichtung (
100 ) gemäß Anspruch 27, bei der Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, dadurch gekennzeichnet, dass die Vorrichtung (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient, wobei die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum: Erzeugen eines dritten Referenzwerts (Qcurr), der Veränderungen in Informationen innerhalb des Makroblocks darstellt, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3); und Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) größer ist als der dritte Schwellenwert (TH3). - Vorrichtung (
100 ) gemäß Anspruch 28, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum Erzeugen des dritten Referenzwerts (Qcurr), um die Größe von Veränderungen in den DC-DCT-Koeffizienten von Videodatenblöcken über den Makroblock hinweg darzustellen, und zum Erzeugen des dritten Schwellenwerts (TH3) als eine absolute Summe von AC-DCT-Koeffizienten in dem Makroblock. - Vorrichtung (
100 ) gemäß Anspruch 28, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum Erkennen eines Fehlers in einem Makroblock des Bilds basierend auf einer lokalen Spektralkorrelation von Videodatenblöcken des Makroblocks, die die Leuchtdichtekomponente (Y) des Videobilds darstellen, und Videodatenblöcken des Makroblocks, die die Farbkomponenten (U, V) des Videobilds darstellen. - Vorrichtung (
100 ) gemäß Anspruch 27, bei der Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, dadurch gekennzeichnet, dass die Vorrichtung (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient, wobei die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum: Erzeugen eines dritten Referenzwerts (Qcurr), der Veränderungen in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks darstellt, die die Leuchtdichtekomponente (Y) des Videobilds darstellen, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3), wobei der dritte Schwellenwert den Veränderungsbetrag in den AC-DCT-Komponenten der Videodatenblöcke des Makroblocks darstellt, die die Farbkomponenten des Videobilds darstellen; und Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) kleiner ist als der dritte Schwellenwert (TH3). - Vorrichtung (
100 ) gemäß Anspruch 27, bei der Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, dadurch gekennzeichnet, dass die Vorrichtung (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient, wobei die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum: Erzeugen eines dritten Referenzwerts (Qcurr), der die Steilheit von Veränderungen in DCT-Koeffizienteninformationen zwischen dem Makroblock und zumindest einem vorhergehend decodierten Makroblock darstellt, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3); und Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) größer ist als der dritte Schwellenwert (TH3). - Vorrichtung (
100 ) gemäß einem der Ansprüche 27 bis 32, dadurch gekennzeichnet, dass die Vorrichtung (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Einleiten eines Fehlerverdeckungsprozesses ansprechend auf Erkennung eines Fehlers. - Vorrichtung (
100 ) gemäß Anspruch 27, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer ersten Prüfung eingerichtet ist zum: Erzeugen des ersten Referenzwerts (Xref) aus den DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten; und Erzeugen des ersten Schwellenwerts (TH1) aus DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören. - Vorrichtung (
100 ) gemäß Anspruch 27, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer ersten Prüfung eingerichtet ist zum: Erzeugen des ersten Referenzwerts (Xref) aus den DCT-Koeffizienten der Gruppe niedriger Frequenz von DCT-Koeffizienten; und Erzeugen des ersten Schwellenwerts (TH1) aus DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören. - Vorrichtung (
100 ) gemäß Anspruch 27, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer ersten Prüfung eingerichtet ist zum: Bilden von zumindest zwei Sätzen von DCT-Koeffizienten aus der Gruppe niedriger Frequenz von DCT-Koeffizienten; Erzeugen eines ersten Referenzwerts (ACmax,k) und eines entsprechenden ersten Schwellenwerts (TH1a) für jeden gebildeten Satz von DCT-Koeffizienten aus dem jeweiligen Satz von DCT-Koeffizienten; Vergleichen, für jeden der Sätze, des ersten Referenzwerts (ACmax,k) des Satzes mit dem ersten Schwellenwert (TH1a) des Satzes; und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass einer der ersten Referenzwerte (ACmax,k) des Satzes größer ist als der entsprechende erste Schwellenwert (TH1a) des Satzes. - Vorrichtung (
100 ) gemäß Anspruch 36, dadurch gekennzeichnet, dass die Sätze von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören, teilweise überlappen. - Vorrichtung (
100 ) gemäß Anspruch 36 oder Anspruch 37, dadurch gekennzeichnet, dass für jeden gebildeten Satz von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören, der erste Referenzwert der größte absolute Koeffizientenwert (ACmax,k) des Satzes von DCT-Koeffizienten ist und der entsprechende erste Schwellenwert (TH1a) einen vordefinierten konstanten Wert (C1) aufweist, der als Reaktion darauf, dass die Anzahl von Nicht-Null-Koeffizientenwerten in dem Satz größer als eins ist, zu der absoluten Summe (abSUMk) der Koeffizientenwerte ausschließlich des größten absoluten Koeffizientenwerts (ACmax,k) addiert wird. - Vorrichtung (
100 ) gemäß einem der Ansprüche 36 bis 38, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer ersten Prüfung zusätzlich eingerichtet ist zum: Erzeugen eines weiteren ersten Referenzwerts (ACj) aus den DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten; Erzeugen eines weiteren ersten Schwellenwerts (TH1b) aus den DCT-Koeffizienten der Sätze von DCT-Koeffizienten, die zu der Gruppe niedriger Frequenz von DCT-Koeffizienten gehören; Vergleichen des weiteren ersten Referenzwerts (ACj) mit dem weiteren ersten Schwellenwert (TH1b); und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der weitere erste Referenzwert (ACj) größer ist als der weitere erste Schwellenwert (TH1b). - Vorrichtung (
100 ) gemäß Anspruch 39, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer ersten Prüfung zusätzlich eingerichtet ist zum: Einstellen des weiteren ersten Referenzwerts abwechselnd gleich dem absoluten Wert von jedem der Gruppe hoher Frequenz von DCT-Koeffizienten (ACj); und Wiederholen des Vergleichs des weiteren ersten Schwellenwerts (ACj) mit dem weiteren ersten Schwellenwert (TH1b) für jeden DCT-Koeffizienten der Gruppe hoher Frequenz von DCT-Koeffizienten. - Vorrichtung (
100 ) gemäß einem der Ansprüche 27 bis 40, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum Erzeugen des zweiten Referenzwerts (Δ) aus der Differenz zwischen dem DC-DCT-Koeffizienten eines aktuellen Videodatenblocks (Xcurr) und dem DC-DCT-Koeffizienten eines vorhergehend transformierten Blocks (Xneigh). - Vorrichtung (
100 ) gemäß einem der Ansprüche 27 bis 40, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum Erzeugen des zweiten Referenzwerts (Δ) aus den Differenzen zwischen dem DC-DCT-Koeffizienten eines aktuellen Videodatenblocks (Xcurr) und den DC-DCT-Koeffizienten von mehr als einem vorhergehend transformierten Block (Xneigh). - Vorrichtung (
100 ) gemäß einem der Ansprüche 27 bis 40, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum Aufteilen des Videodatenblocks in eine Anzahl von Teilblöcken und zum Durchführen der zweiten Prüfung unter Verwendung benachbarter Teilblöcke, wobei der zweite Referenzwert (Δ) aus der Differenz zwischen dem durchschnittlichen Bildelementwert eines aktuellen Teilblocks (Xcurr) und dem durchschnittlichen Bildelementwert von zumindest einem benachbarten Teilblock (Xneigh) erzeugt wird. - Vorrichtung (
100 ) gemäß Anspruch 43, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung anstatt eingerichtet zu sein, als Reaktion darauf, dass der zweite Referenzwert (Δ) größer ist als der zweite Schwellenwert (TH2), einen Fehler in dem Videodatenblock zu erkennen, eingerichtet ist, den Videodatenblock als verdächtig zu markieren, und die Vorrichtung (100 ) zum Durchführen einer weiteren Fehlererkennungsprüfung eingerichtet ist. - Vorrichtung (
100 ) gemäß einem der Ansprüche 27 bis 40, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum Erzeugen des zweiten Referenzwerts (Δ) aus dem Gradienten von Änderungen in Bildelementwerten, die nahe an einer Grenze (70 ) zwischen einem ersten Videodatenblock (71 ) und einem zweiten Videodatenblock (72 ) liegen. - Vorrichtung (
100 ) gemäß Anspruch 45, dadurch gekennzeichnet, dass der erste Videodatenblock (71 ) eine Anzahl von in Reihen angeordneten Bildelementen aufweist, wobei jede Reihe ein Grenzbildelement (73 ) umfasst, das am nächsten an der Grenze (70 ) zwischen dem ersten und dem zweiten Videodatenblock liegt, und der zweite Videodatenblock eine Anzahl von in Reihen angeordneten Bildelementen aufweist, wobei jede Reihe ein Grenzbildelement (74 ) aufweist, dass am nächsten an einer Grenze (70 ) zwischen dem ersten und dem zweiten Videodatenblock liegt, und die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum: 1.) Berechnen eines ersten Differenzwerts (d1), der die Differenz zwischen dem Bildelementwert eines Grenzbildelements (73 ) in einer Reihe des ersten Videodatenblocks (71 ) und dem Bildelementwert eines Grenzbildelements (74 ) in einer entsprechenden Reihe des zweiten Videodatenblocks (72 ) darstellt; 2.) Berechnen eines ersten extrapolierten Grenzbildelementwerts (77 ) aus dem Grenzbildelement (73 ) des ersten Videodatenblocks (71 ) und dem nächsten Bildelement (75 ) an dem Grenzbildelement (73 ) in der gleichen Reihe des ersten Videodatenblocks (71 ); 3.) Berechnen eines zweiten extrapolierten Grenzbildelementwerts (78 ) aus dem Grenzbildelement (74 ) des zweiten Videodatenblocks (72 ) und dem nächsten Bildelement (76 ) an dem Grenzbildelement (74 ) in der gleichen Reihe des zweiten Videodatenblocks (72 ); 4.) Berechnen eines zweiten Differenzwerts (d2), der die Differenz zwischen dem ersten und dem zweiten extrapolierten Grenzbildelementwert (77 ,78 ) aufweist; 5.) Vergleichen des ersten (d1) und des zweiten Differenzwerts (d2); 6.) Addieren des kleineren des ersten und des zweiten Differenzwerts (d1, d2) zu einer kumulativen Summe von Differenzen; 7.) Wiederholen von Schritten 1.) bis 6.) für die Grenzbildelemente (73 ) in allen Reihen des ersten Videodatenblocks (73 ); und 8.) Erzeugen eines zweiten Referenzwerts (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) aus der kumulativen Summe von Differenzen. - Vorrichtung (
100 ) gemäß Anspruch 46, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung zusätzlich eingerichtet ist zum: Vergleichen des zweiten Referenzwerts (Δ) mit dem zweiten Schwellenwert (TH2); Durchführen von Schritten 1.) bis 8.) gemäß Anspruch 46 für die anderen Grenzen (70 ) des ersten Videodatenblocks, falls der zweite Referenzwert (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) größer ist als der zweite Schwellenwert (TH2); und Erkennen eines Fehlers in dem ersten Videodatenblock (71 ) als Reaktion darauf, dass alle der zweiten Referenzwerte (Δ), die für die Grenzen (70 ) des ersten Videodatenblocks erzeugt werden, größer sind als der zweite Schwellenwert (TH2). - Vorrichtung (
100 ) gemäß Anspruch 46, dadurch gekennzeichnet, dass die Einrichtung zum Durchführen einer zweiten Prüfung zusätzlich eingerichtet ist zum: Vergleichen des zweiten Referenzwerts (Δ) mit einem zweiten Schwellenwert (TH2); Durchführen von Schritten 1.) bis 8.) gemäß Anspruch 46 für die anderen Grenzen (70 ) des ersten Videodatenblocks, falls der zweite Referenzwert (Δ) für die Grenze (70 ) zwischen dem ersten Videodatenblock (71 ) und dem zweiten Videodatenblock (72 ) größer ist als der zweite Schwellenwert (TH2); und Erkennen eines Fehlers in dem ersten Videodatenblock (71 ) als Reaktion darauf, dass einer oder mehrere der zweiten Referenzwerte (Δ), die für die anderen Grenzen (70 ) des ersten Videodatenblocks erzeugt werden, größer ist/sind als der zweite Schwellenwert (TH2). - Vorrichtung (
100 ) gemäß Anspruch 31, dadurch gekennzeichnet, dass die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum: Erzeugen von Sätzen von Werten (ACY,J, ACU,J, ACV,J), die die Veränderung in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks darstellen, die die Leuchtdichte- (Y) und Farbkomponenten (U, V) des Videobilds darstellen; Erzeugen des dritten Referenzwerts (Qcurr) aus dem Veränderungsbetrag (ACY,J) in den AC-DCT-Koeffizienten der Videodatenblöcke des Makroblocks, die die Leuchtdichtekomponente (Y) des Videobilds darstellen; und Erzeugen des dritten Schwellenwerts (TH3) aus dem Veränderungsbetrag (ACU,J, ACV,J) in den AC-DCT-Koeffizienten der Videodatenblöcke (U, V) des Makroblocks, die die Farbkomponente des Videobilds darstellen. - Vorrichtung (
100 ) gemäß Anspruch 27, dadurch gekennzeichnet, dass sie ein Mikroprozessor ist. - Mobilendgerät (MT) mit einem Videodecoder (
100 ) zum Decodieren von komprimierten Videobildern, wobei jedes Bild eine Vielzahl von Datenblöcken aufweist, wobei der Videodecoder (100 ) des Mobilendgeräts eine Einrichtung (103 ) zum Transformieren von DCT-Koeffizienten, die Informationen über die Ortsfrequenzverteilung eines Videodatenblocks von einem Bild bereitstellen, in Bildelementwerte aufweist, wobei die DCT-Koeffizienten des Videodatenblocks einen DC-Koeffizienten und einen Satz von AC-Koeffizienten (ACj) aufweisen, wobei der Videodecoder (100 ) zusätzlich aufweist: eine Einrichtung (103 ) zum Durchführen einer ersten Prüfung zum Erkennen eines Fehlers in einem Videodatenblock des Bilds, wobei die Einrichtung (103 ) zum Durchführen einer ersten Prüfung eingerichtet ist zum: Aufteilen der DCT-Koeffizienten des Videodatenblocks in zumindest eine Gruppe niedriger Frequenz und eine Gruppe hoher Frequenz; Erzeugen eines ersten Referenzwerts (Xref), der Veränderungen in Informationen über eine Ortsfrequenzverteilung innerhalb des Videodatenblocks von dem Bild darstellt, in dem DCT-Bereich aus einer der Gruppen von DCT-Koeffizienten des Videodatenblocks; Vergleichen des ersten Referenzwerts (Xref) mit einem ersten Schwellenwert (TH1, TH1a, TH1b), der aus den Werten von DCT-Koeffizienten berechnet wird, die zu einer der Gruppen von DCT-Koeffizienten gehören; und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der erste Referenzwert (Xref) großer ist als der erste Schwellenwert (TH1, TH1a, TH1b); und eine Einrichtung (103 ) zum Durchführen einer zweiten Prüfung zum Erkennen eines Fehlers in dem Videodatenblock des Bilds, wobei die Einrichtung (103 ) zum Durchführen einer zweiten Prüfung eingerichtet ist zum: Erzeugen eines zweiten Referenzwerts (Δ), der die Steilheit einer Veränderung in DCT-Koeffizienten- oder Bildelementwertinformationen zwischen dem Block und zumindest einem vorhergehend transformierten Videodatenblock von dem Bild darstellt; Vergleichen des zweiten Referenzwerts (Δ) mit einem zweiten Schwellenwert (TH2); und Erkennen eines Fehlers in dem Videodatenblock als Reaktion darauf, dass der zweite Referenzwert (Δ) größer ist als der zweite Schwellenwert (TH2). - Mobilendgerät (MT) gemäß Anspruch 51, bei dem Videodatenblöcke, die jeweils Leuchtdichte- (Y) und Farbkomponenten (U, V) eines Videobilds darstellen, zusammen gruppiert werden, um Makroblöcke zu bilden, dadurch gekennzeichnet, dass der Videodecoder (
100 ) des Mobilendgeräts (MT) zusätzlich aufweist: eine Einrichtung zum Durchführen einer dritten Prüfung, wobei die dritte Prüfung zum Erkennen eines Fehlers in einem Makroblock des Bilds dient, wobei die Einrichtung (103 ) zum Durchführen einer dritten Prüfung eingerichtet ist zum: Erzeugen eines dritten Referenzwerts (Qcurr), der Veränderungen in Informationen innerhalb des Makroblocks darstellt, nach Decodierung einer Anzahl von Videodatenblöcken, die einen Makroblock bilden; Vergleichen des dritten Referenzwerts (Qcurr) mit einem dritten Schwellenwert (TH3); und Erkennen eines Fehlers in dem Makroblock als Reaktion darauf, dass der dritte Referenzwert (Qcurr) größer ist als der dritte Schwellenwert (TH3).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI982402 | 1998-11-05 | ||
FI982402A FI107108B (fi) | 1998-11-05 | 1998-11-05 | Virheen ilmaiseminen alhaisen bittinopeuden videolähetyksessä |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69930574D1 DE69930574D1 (de) | 2006-05-18 |
DE69930574T2 true DE69930574T2 (de) | 2007-02-01 |
Family
ID=8552855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69930574T Expired - Lifetime DE69930574T2 (de) | 1998-11-05 | 1999-10-14 | Fehlererkennung in einer niedrigen Bitrate Videoübertragung |
Country Status (5)
Country | Link |
---|---|
US (1) | US7408991B2 (de) |
EP (1) | EP0999709B1 (de) |
JP (1) | JP4440392B2 (de) |
DE (1) | DE69930574T2 (de) |
FI (1) | FI107108B (de) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI107108B (fi) * | 1998-11-05 | 2001-05-31 | Nokia Mobile Phones Ltd | Virheen ilmaiseminen alhaisen bittinopeuden videolähetyksessä |
US6983078B2 (en) | 2001-05-01 | 2006-01-03 | Hewlett-Packard Development Company, L.P. | System and method for improving image quality in processed images |
DE60220047T2 (de) * | 2001-05-29 | 2008-01-10 | Koninklijke Philips Electronics N.V. | Verfahren und einrichtung zum verbergen von fehlern |
FR2848768B1 (fr) * | 2002-12-17 | 2005-04-15 | France Telecom | Procede de filtrage des artefacts causes par des erreurs de bits dans un flux video code a base de bloc |
KR20050015723A (ko) * | 2003-08-07 | 2005-02-21 | 삼성전자주식회사 | 동영상 화면 재생시 발생하는 불량 요소 검출 장치 및검출 방법 |
JP2005117196A (ja) * | 2003-10-03 | 2005-04-28 | Matsushita Electric Ind Co Ltd | 映像符号化方法 |
KR101108681B1 (ko) * | 2005-01-19 | 2012-01-25 | 삼성전자주식회사 | 동영상 코덱에서의 주파수 변환 계수 예측 방법 및 장치,이를 구비한 부호화 및 복호화 장치와 방법 |
KR101221913B1 (ko) * | 2006-12-20 | 2013-01-15 | 엘지전자 주식회사 | 디지털 방송 시스템 및 데이터 처리 방법 |
MX2009012385A (es) | 2007-05-16 | 2009-12-01 | Thomson Licensing | Aparato y metodo para codificar y descodificar señales. |
MX2010004147A (es) | 2007-10-15 | 2010-08-09 | Thomson Licensing | Transmision de television de alta definicion con capacidad movil. |
MX2010004148A (es) | 2007-10-15 | 2010-05-17 | Thomson Licensing | Aparatos y metodos para comunicar actividad de modo de rafaga. |
US9848209B2 (en) * | 2008-04-02 | 2017-12-19 | Microsoft Technology Licensing, Llc | Adaptive error detection for MPEG-2 error concealment |
US9788018B2 (en) * | 2008-06-30 | 2017-10-10 | Microsoft Technology Licensing, Llc | Error concealment techniques in video decoding |
US9924184B2 (en) * | 2008-06-30 | 2018-03-20 | Microsoft Technology Licensing, Llc | Error detection, protection and recovery for video decoding |
CN102301390B (zh) | 2008-09-26 | 2015-03-25 | 汤姆森特许公司 | 抗共谋的水印生成方法 |
US9131241B2 (en) * | 2008-11-25 | 2015-09-08 | Microsoft Technology Licensing, Llc | Adjusting hardware acceleration for video playback based on error detection |
US8582645B2 (en) * | 2009-06-11 | 2013-11-12 | Texas Instruments Incorporated | Reducing flicker in the display of video streams |
US8340510B2 (en) | 2009-07-17 | 2012-12-25 | Microsoft Corporation | Implementing channel start and file seek for decoder |
KR101345098B1 (ko) * | 2009-12-18 | 2013-12-26 | 한국전자통신연구원 | 실시간 영상품질 측정 장치 및 방법 |
US9681141B2 (en) * | 2011-02-08 | 2017-06-13 | Texas Instruments Incorporated | Error detection on variable length code decoder |
US9591304B2 (en) * | 2011-11-08 | 2017-03-07 | Tektronix, Inc. | Evaluation of perceptual visual quality |
US11553211B2 (en) * | 2013-01-03 | 2023-01-10 | Disney Enterprises, Inc. | Heuristic detection of potential digital media artifacts and defects in digital media assets |
US9998750B2 (en) * | 2013-03-15 | 2018-06-12 | Cisco Technology, Inc. | Systems and methods for guided conversion of video from a first to a second compression format |
JP6222854B2 (ja) * | 2013-10-23 | 2017-11-01 | 株式会社K−Will | 映像検査方法及び音声検査方法 |
US11871036B2 (en) * | 2020-09-24 | 2024-01-09 | Korea University Research And Business Foundation | Apparatus and method for compressing JPEG images |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04320160A (ja) * | 1991-04-19 | 1992-11-10 | Matsushita Electric Ind Co Ltd | 画像信号圧縮伸長装置および領域識別処理装置 |
JPH04358486A (ja) * | 1991-06-04 | 1992-12-11 | Toshiba Corp | 高能率符号化信号処理装置 |
US5517327A (en) * | 1993-06-30 | 1996-05-14 | Minolta Camera Kabushiki Kaisha | Data processor for image data using orthogonal transformation |
US5745169A (en) * | 1993-07-19 | 1998-04-28 | British Telecommunications Public Limited Company | Detecting errors in video images |
US5598514A (en) * | 1993-08-09 | 1997-01-28 | C-Cube Microsystems | Structure and method for a multistandard video encoder/decoder |
US5621467A (en) * | 1995-02-16 | 1997-04-15 | Thomson Multimedia S.A. | Temporal-spatial error concealment apparatus and method for video signal processors |
US5708732A (en) * | 1996-03-06 | 1998-01-13 | Hewlett-Packard Company | Fast DCT domain downsampling and inverse motion compensation |
FI107108B (fi) * | 1998-11-05 | 2001-05-31 | Nokia Mobile Phones Ltd | Virheen ilmaiseminen alhaisen bittinopeuden videolähetyksessä |
-
1998
- 1998-11-05 FI FI982402A patent/FI107108B/fi active
-
1999
- 1999-10-14 DE DE69930574T patent/DE69930574T2/de not_active Expired - Lifetime
- 1999-10-14 EP EP99120462A patent/EP0999709B1/de not_active Expired - Lifetime
- 1999-11-05 JP JP31504199A patent/JP4440392B2/ja not_active Expired - Fee Related
-
2003
- 2003-10-28 US US10/695,722 patent/US7408991B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP4440392B2 (ja) | 2010-03-24 |
FI982402A0 (fi) | 1998-11-05 |
EP0999709B1 (de) | 2006-03-29 |
US7408991B2 (en) | 2008-08-05 |
US20040101055A1 (en) | 2004-05-27 |
EP0999709A2 (de) | 2000-05-10 |
EP0999709A3 (de) | 2001-03-28 |
FI107108B (fi) | 2001-05-31 |
JP2000174631A (ja) | 2000-06-23 |
DE69930574D1 (de) | 2006-05-18 |
FI982402A (fi) | 2000-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69930574T2 (de) | Fehlererkennung in einer niedrigen Bitrate Videoübertragung | |
DE60020243T2 (de) | Videokodierung | |
DE69124536T2 (de) | Bildkodiervorrichtung | |
DE69803821T2 (de) | Verfahren zur rechnerisch graziösen Degradierung in einem audio-visuellen Kompressionssystem | |
DE69027537T2 (de) | System zur synchronisierung von haupt- und hilfsvideosignalen | |
DE69116869T2 (de) | Digitale bildkodierung mit einer zufallsabtastung der bilder | |
DE69620984T2 (de) | Geräuschschätzungs- und Geräuschreduzierungsgerät zur Videosignalverarbeitung | |
DE60028942T2 (de) | Videokodierung | |
DE69222766T2 (de) | System zur adaptiven kompression der blockgrössen eines bildes | |
DE69323986T2 (de) | Vorrichtung und Verfahren zur Bildverarbeitung | |
DE69434668T2 (de) | Adaptives Codierungs- und Decodierungsverfahren mit variabler Länge für Bilddaten | |
DE69232803T2 (de) | System zur Kodierung und Übertragung von Bildern | |
DE69525411T2 (de) | Verfahren zur Kodierungsüberwachung | |
DE19635116C2 (de) | Verfahren zur Videokommunikation | |
DE10300048B4 (de) | Verfahren und Vorrichtung zur Bildcodierung und -decodierung | |
DE69624669T2 (de) | Videokodierer und -dekodierersystem und -methoden | |
DE102007049351A1 (de) | Verfahren und Vorrichtung zum Erstellen eines kodierten Ausgangsvideostroms aus mindestens zwei kodierten Eingangsvideoströmen, sowie Verwendung der Vorrichtung und kodierter Eingangsvideostrom | |
EP1025708B1 (de) | Verfahren und vorrichtung zur verarbeitung eines digitalisierten bildes | |
DE19816898B4 (de) | Vorrichtung und Verfahren zum adaptiven Codieren eines Bildsignals | |
DE69227879T2 (de) | Stehbildübertragungssystem | |
DE69233318T2 (de) | Codierungs-/Decodierungsvorrichtung | |
DE69711736T2 (de) | Adaptive Postfilterung für ein Bildfernsprechsystem mit niedriger Bitrate | |
DE69834681T2 (de) | Verfahren und Vorrichtung zur Dekodierung komprimierter Bewegtbilddaten | |
DE69637008T2 (de) | Verfahren zur Videokompression mittels Teilbandzerlegung | |
DE10196431B4 (de) | Alternative Blockreihenfolgen zur besseren Vorhersage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
R082 | Change of representative |
Ref document number: 999709 Country of ref document: EP Representative=s name: TBK, 80336 MUENCHEN, DE |
|
R081 | Change of applicant/patentee |
Ref document number: 999709 Country of ref document: EP Owner name: CORE WIRELESS LICENSING S.A.R.L., LU Free format text: FORMER OWNER: NOKIA CORP., ESPOO, FI Effective date: 20120215 |
|
R082 | Change of representative |
Ref document number: 999709 Country of ref document: EP Representative=s name: TBK, 80336 MUENCHEN, DE |
|
R082 | Change of representative |
Ref document number: 999709 Country of ref document: EP Representative=s name: TBK, 80336 MUENCHEN, DE |