DE19919600A1 - Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist - Google Patents

Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist

Info

Publication number
DE19919600A1
DE19919600A1 DE1999119600 DE19919600A DE19919600A1 DE 19919600 A1 DE19919600 A1 DE 19919600A1 DE 1999119600 DE1999119600 DE 1999119600 DE 19919600 A DE19919600 A DE 19919600A DE 19919600 A1 DE19919600 A1 DE 19919600A1
Authority
DE
Germany
Prior art keywords
color values
color
value
image
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE1999119600
Other languages
English (en)
Other versions
DE19919600B4 (de
Inventor
Suk Joong Lee
Sang Yeon Kim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intellectual Ventures II LLC
Original Assignee
Hyundai Electronics Industries Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hyundai Electronics Industries Co Ltd filed Critical Hyundai Electronics Industries Co Ltd
Publication of DE19919600A1 publication Critical patent/DE19919600A1/de
Application granted granted Critical
Publication of DE19919600B4 publication Critical patent/DE19919600B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • H04N23/12Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths with one sensor only

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Color Television Systems (AREA)
  • Image Processing (AREA)

Abstract

Es werden ein Verfahren und eine Einrichtung zur Bilddatenkompression vorgeschlagen, welche die Komplexität der Implementierung und die Kosten wesentlich verringern und die Fehlerkorrektur verbessern. Diese Verbesserungen werden durch verschiedene Implementierungsblöcke erzielt, welche eine Farbabzieheinheit umfassen, die ein erstes Kompressionsniveau dadurch erzielen kann, daß die Rahmengröße beispielsweise auf ·1·/4 oder ·1·/16 verringert wird. Hierauf folgt eine Kompression mittels Division durch einen programmierbaren Verlustwert, wobei die Division den Rest fortpflanzt, um die Bildqualität zu verbessern. Dann wird bei den abgezogenen Farbwerten eine differentiell kodierte Modulation durchgeführt, um die Bilddatengröße weiter zu verringern. Das Ergebnis wird mit variabler Länge kodiert, vorzugsweise unter Verwendung einer Vorgehensweise mit 1-Komplement, welche die Komplexität der Implementierung dadurch weiter verringert, das die VL-Kodiertabellen entbehrlich macht. Schließlich werden die VL-kodierten, komprimierten Daten zur Übertragung über einen seriellen Bus in Pakete aufgeteilt, wobei die Aufteilung in Pakete die Fehlerkorrektur verbessert.

Description

Die vorliegende Erfindung betrifft allgemein die Bilddatenverarbeitung, und insbesondere ein Verfahren und eine Einrichtung, die wirksamer und kostengünstiger beim Komprimieren von Daten sind, die von einem Bildsensor empfangen werden.
Digitale Bilddatenkompressionsverfahren wurden dazu entwickelt, den Wirkungsgrad bei der Bilddatenspeicherung und -verarbeitung dramatisch zu verbessern. Unter Nutzung des Vorteils der Redundanzen, die bei natürlichen Bildern vorhanden sind, gestatten die Kodierung und die Kompression von Bilddaten eine schnellere Übertragung von Bildern, einen niedrigeren Energieverbrauch, und eine kompaktere Bildspeicherung. Verschiedene Kompressionsalgorithmen wurden von Industrienormierungsgruppen festgelegt, beispielsweise der Joint Photographic Experts Group (JPEG), die den Kompressionsstandard für Standbilddaten festgelegt hat, und die Moving Picture Experts Group (MPEG), welche den Kompressionsalgorithmus für Video-, Audio- und Systembitströme festgelegt hat.
Die JPEG- und MPEG-Videokompressionsalgorithmen beruhen auf der diskreten Kosinustransformation (DCT) und der Bewegungskompensation zwischen einzelnen Rahmen (vgl. ISO/IEC JTC1/5C29/WG11, Information Technologie - Coding of Moving Pictures and Associated Audio for Digital Storage Media). Fig. 1 zeigt als Blockschaltbild die Datenkompression in der herkömmlichen Betriebsart auf DCT-Grundlage. Wie aus Fig. 1 hervorgeht, empfängt ein Vorwärts-DCT-Block (FDCT-Block) Bilddaten von einem Bildsensor 20 und führt die DCT-Operation durch, um redundante Daten aus den Bilddaten zu entfernen. Ein Quantisierer 12 führt eine unabhängige Quantisierung durch, durch Klassifizierung der DCT-Koeffizientenwerte von dem FDCT 10 in eine DC-Komponente (Gleichspannungskomponente) und eine AC-Komponente (Wechselspannungskomponente) auf der Grundlage einer Quantisierungstabelle. Ein Entropiekodierer 14 komprimiert die Daten durch Anordnung der AC- Koeffizienten in einer Zeile mittels differentieller DC- Koeffizientenkodierung und einer Zick-Zack-Abtastung.
Die Implementierung dieser Art eines Datenkompressionsalgorithmus auf DCT-Grundlage erfordert eine große Anzahl an Multiplizierern und Addierern, und führt normalerweise zu relativ hohen Anforderungen an die Hardware. Entsprechend hohe Anforderungen ergeben sich an der Rückgewinnungsseite des Systems, an welcher Daten durch eine Vorgang dekomprimiert werden, der im wesentlichen die entgegengesetzten Vorgänge wie voranstehend geschildert durchführt. Diese Hardware-intensive Vorgehensweise führt zu umfangreichen und komplizierten Schaltungen, und erhöht die Herstellungskosten.
Die vorliegende Erfindung stellt ein Verfahren und eine Einrichtung zum Komprimieren von Bilddaten zur Verfügung, welche wirksam und kostengünstiger zu implementieren sind. Die Datenkompressionstechnik gemäß der vorliegenden Erfindung ist besonders geeignet für den Einsatz bei Bildsensoren, welche Bayer-Muster für das Pixelarray verwenden. Allgemein gesprochen zieht die Datenkompressionstechnik gemäß der vorliegenden Erfindung zuerst die R/G/B-Werte von den erfaßten Bilddaten ab. Sie teilt dann die abgezogenen Werte durch eine programmierbaren Verlustfaktor, und erhält einen Differenzwert zwischen den momentanen und den vorherigen R/G/B-Werten (wobei sie beispielsweise eine differentielle impulskodierte Modulation oder DPCM durchführt). Das Ausgangssignal wird dann mit variabler Länge kodiert, und in Pakete zur Übertragung als komprimiertes Bild aufgeteilt.
Das sich ergebende Kompressionsverhältnis bei dieser Technik ist niedriger als bei Kompressionstechniken auf DCT-Basis, jedoch wird hierdurch drastisch die Komplexizität der Hardware verringert (also die Anzahl an Gates), und werden effizientere Systemimplementierungen ermöglicht (beispielsweise Integration auf einem USB-Steuerungschip). Die Bilddatenkompressionstechnik gemäß der vorliegenden Erfindung stellt daher eine erheblich wünschenswertere Alternative für jene Anwendungen zur Verfügung, die keine maximalen Kompressionsverhältnisse erfordern.
Daher stellt bei einer Ausführungsform die vorliegende Erfindung eine Bildkompressionseinrichtung zum Komprimieren von Bilddaten zur Verfügung, die von einem Bildsensor empfangen werden, wobei das System eine Farbabzieheinheit aufweist, die so angeschlossen ist, daß sie Eingangsbilddaten von dem Bildsensor empfängt, wobei die Farbabzieheinheit so ausgebildet ist, daß sie rote, grüne und blaue Farbwerte abzieht; eine Kompressionseinheit, die an die Farbabzieheinheit angeschlossen ist, und so ausgebildet ist, daß sie die Farbwerte durch einen ausgewählten Faktor herunterteilt; einen Kodierer mit variabler Länge, der an die Kompressionseinheit angeschlossen ist, und so ausgebildet ist, daß er eine Kodierung mit variabler Länge beim Ausgangssignal der Kompressionseinheit durchführt; und eine Datenpaketeinheit, die an den Kodierer mit variabler Länge angeschlossen ist, und so ausgebildet ist, daß sie komprimierte Daten in Pakete für die Übertragung aufteilt.
Bei einer anderen Ausführungsform stellt die vorliegende Erfindung ein Verfahren zum Komprimieren von Bilddaten zur Verfügung, die von einem Bildsensor empfangen werden, wobei das Verfahren die Schritte umfaßt, rote, grüne und blaue Farbwerte von den Bilddaten abzuziehen; Farbwerte durch einen ausgewählten Verlustfaktor zu teilen; Differenzwerte zwischen momentanen Farbwerten und vorherigen Farbwerten zu erhalten; und jeden Differenzwert in einen bestimmten Farbwert in Reaktion auf die Größe des Differenzwerts zu kodieren.
Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele näher erläutert, aus welchen weitere Vorteile und Merkmale hervorgehen. Es zeigt:
Fig. 1 ein Blockschaltbild, welches die Datenkompression unter Verwendung eines herkömmlichen Algorithmus auf DCT-Grundlage erläutert;
Fig. 2 ein Schaltbild einer Einrichtung zum Komprimieren von Daten gemäß der vorliegenden Erfindung;
Fig. 3 eine schematische Darstellung zur Erläuterung eines Pixelarrays mit einem Bayer-Muster;
Fig. 4 eine schematische Darstellung zur Erläuterung des 1/4-Rahmen-R/G/B-Abziehens eines Bayer-Muster- Pixelarrays gemäß der vorliegenden Erfindung;
Fig. 5 eine schematische Darstellung zur Erläuterung einer 1/16-Rahmen-R/G/B-Abziehens eines Bayer-Muster-Pixelarrays gemäß der vorliegenden Erfindung;
Fig. 6 ein Flußdiagramm zur Erläuterung von Divisions- (Kompressions)- und Differenzoperationen gemäß der vorliegenden Erfindung;
Fig. 7 ein Beispiel für eine variable Länge, die bei einer Ausführungsform der vorliegenden Erfindung eingesetzt wird;
Fig. 8 eine schematische Darstellung eines Aspekts eines Datenpakets gemäß der vorliegenden Erfindung;
Fig. 9a bis 9f Beispiele für Kompressionstabellen, welche die Datenkompression gemäß der vorliegenden Erfindung erläutern; und
Fig. 10 ein Beispiel für ein System, welches die Bildkompressionstechnik gemäß der vorliegenden Erfindung verwendet.
In Fig. 2 ist eine Datenkompressionseinrichtung 200 gemäß der vorliegenden Erfindung gezeigt. Die Einrichtung 200 weist eine R/G/B-Farbabzieheinheit 202 auf, die mit einem Bildsensor verbunden ist, und an ihrem Eingang Eingangsbilddaten empfängt. Der Ausgang der Farbabzieheinheit 202 ist mit einer Kompressions- und Differentialimpulskodiermodulations-Einheit (DPCM-Einheit) 204 verbunden. Die Kompressionseinheit empfängt ein Steuersignal, welches einen ausgewählten Verlustwert von einer (nicht dargestellten) externen Steuerung angibt, und schickt ihr Ausgangssignal an einen Kodierer 206 mit variabler Länge. Der Ausgang des Kodierers 206 mit variabler Länge ist an eine Datenpaketvorrichtung 208 angeschlossen, welche die komprimierten Daten für die Übertragung in Pakete packt.
Nachstehend wird eine Übersicht über das Datenkompressionssystem 200 gegeben. Die R/G/B- Farbabzieheinheit 202 empfängt Eingangsbilddaten von dem Bildsensor, und zieht Werte R (Rot), G (Grün) und B (Blau) für jeden Pixel ab. Die Kompressions- und DPCM-Einheit 204 empfängt die R/G/B-Werte von der R/G/B-Abzieheinheit 202, und führt ein erstes Kompressionsniveau dadurch durch, daß die Werte durch einen ausgewählten Verlustwert geteilt werden, der von einer externen Steuerung geliefert wird. Die Division, die von der Kompressionseinheit 204 durchgeführt wird, verwendet eine Vorgehensweise mit "Restfortpflanzung" gemäß der vorliegenden Erfindung. DPCM innerhalb der Einheit 204 arbeitet so, daß der Differenzwert zwischen momentanen und vorherigen R/G/B-Kompressionswerten erhalten wird. Der Kodierer 206 mit variabler Länge (VL) führt eine statistische Kompression der Differenzdaten durch. Bei einer bevorzugten Ausführungsform der vorliegenden Erfindung wird eine neue Kombination einer 1-Komplement-VL-Kodierung mit Feststellung von vorderer "Null" und "Eins" eingesetzt, wodurch die erforderliche Hardware noch weiter vereinfacht wird. Diese Kombination macht die VL-Kodiertabellen entbehrlich, die nötig sind, wenn eine 2-Komplement-VL- Kodierung verwendet wird. Die Datenpaketvorrichtung 208 verpackt die Ausgangsdaten von dem VL-Kodierer 206 in Pakete für die Übertragung über einen seriellen Bus. Durch die vorliegende Erfindung wird ein neues Paket definiert, welches eine Vorspann enthält, um eine exakte Verpackung in Pakete von Daten um Pixelgrenzen herum zu ermöglichen.
Die R/G/B-Farbabzieheinheit 202 zieht die R/G/B-Werte ab, um die Bilddaten von dem Bildsensor an eine Farbanzeige zu übertragen. Das Abziehverfahren variiert in Abhängigkeit von dem Pixelarraymuster des Bildsensors. Fig. 3 zeigt schematisch ein übliches Pixelarraymuster, welches als Bayer-Muster bezeichnet wird. Bei dem Bayer-Muster wird das Pixelarray dadurch implementiert, daß eine erste Zeile von RGRG-Farbfiltern und eine zweite Zeile von GBGB-Farbfiltern wiederholt werden. Der Bildsensor mit einem Bayer-Muster- Pixelarray erfaßt bestimmte Farben entsprechend Farbfiltern, welche den Pixel abdecken, statt sämtliche Information über die R/G/B-Werte jedes Pixels zu erhalten. Die endgültigen und vollständigen Farbwerte müssen daher aus diesen spezifischen Farbdaten erhalten werden. Gemäß der vorliegenden Erfindung kann eine Anzahl unterschiedlicher Farbabziehverfahren verwendet werden. Abhängig von der Bildfarbqualität, die von dem jeweiligen Einsatz benötigt wird, kann die vorliegende Erfindung eine von drei unterschiedlichen Farbabziehbetriebsarten einsetzen: voller Rahmen; 1/4-Rahmen, und ein 1/16-Rahmen.
Bei dem Vollrahmenfarbabziehverfahren wird ein bestimmter Farbwert von einem bestimmten Pixel abgezogen, und werden die anderen Farbwerte für diesen Pixel von anderen Pixeln neben dem bestimmten Pixel abgezogen. Beispielsweise wird, wie aus Fig. 3 hervorgeht, der Rotwert (R) am Pixel R33 von dem Pixel R33 abgezogen, wogegen der Grünwert (G) für den Pixel R33 von einem Mittelwert der Grünwerte (G) an vier Pixeln G23, G32, G34 und G43 abgezogen wird. Entsprechend wird der Blauwert (B) am Pixel R33 von einem Mittelwert der Blauwerte an vier Pixeln B22, B24, B42 und B44 abgezogen. Entsprechend wird der Grünwert (G) am Pixel G34 vom Pixel G34 abgezogen, wogegen sein Rotwert (R) von einem Mittelwert der Rotwerte (R) an zwei Pixeln R33 und R35 abgezogen wird. Der Blauwert (B) am Pixel B44 wird von dem Pixel B44 abgezogen, wogegen der Rotwert (R) am Pixel B44 von einem Mittelwert der Rotwerte (R) an vier Pixeln R33, R35, R53 und R55 abgezogen wird. Der Grünwert (G) am Pixel G44 wird von einem Mittelwert der Grünwerte (G) an vier Pixeln G34, G43, G45 und G54 abgezogen.
R33 = vom Pixel R33 abgezogener Rotwert
G33 = (G23+G32+G34+G43)/4
B33 = (B22+B24+B42+B44)/4
G34 = vom Pixel G34 abgezogener Grünwert
R34 = (R33+R35)/2
B34 = (B24+B44)/2
B44 = vom Pixel B44 abgezogener Blauwert
R44 = (R33+R35+R53+R55)/4
G44 = (G34+G43+G45+54)/4.
Die zweite Farbabziehbetriebsart ist die 1/4-Rahmen- Abziehung, welche die Datenmenge weiter verringert. Für eine weitere Kompression erzeugt, statt aus dem Bayer-Muster ein Bild zu erzeugen, welches dieselben Abmessungen hat wie das ursprüngliche Array, die Datenkompressionseinrichtung gemäß der vorliegenden Erfindung ein komprimiertes Bild, dessen Größe nur ein Viertel im Vergleich zur (Originalarraygröße beträgt. In Fig. 4 ist ein Pixelarray für eine 1/4-Rahmen- Kompressionsbetriebsart gezeigt. Bei dieser Abziehbetriebsart werden R/G/B-Farbwerte jeweils von einem 2×2-Einheitspixelarray erhalten (also von vier Pixeln). Die R/G/B-Werte werden daher nicht pixelweise abgezogen, sondern es werden vier Pixel als eine Einheit gewählt, und in der Auswirkung wie ein Pixel verarbeitet, von welchem Farbwerte abgeleitet werden. Dies hat die Auswirkung, die gesamten Bilddaten in einen Datenrahmen mit einem Viertel der Abmessungen zu komprimieren. Diese Art und Weise des Farbabziehens wird am einfachsten aus einem Beispiel verständlich. Im Einheitspixelarray 40, das vier Pixel R11, G12, G21 und B22 enthält, wird der Rotwert (R) für den Einheitspixel 40 von dem Pixel R11 erhalten, der Grünwert (G) von einem Mittelwert der Grünwerte (G) von den Pixeln G12 und G21 abgezogen, und wird der Blauwert (B) von dem Pixel B22 abgezogen. Im Einheitspixelarray 40', das aus den vier Pixeln R31, G32, G41 und B42 besteht, wird der Blauwert (B2) von dem Pixel B42 erhalten, der Rotwert (R2) von dem Pixel R31, und wird der Grünwert (G2) von einem Mittelwert der Grünwerte (G2) an den Pixeln G32 und G41 erhalten.
Für das Einheitspixelarray 40:
R = R11
G = (G12+G21)/2
B = B22
Für das Einheitspixelarray 40':
R = R31
G = (G32+G41)/2
B = B42.
Ein drittes Abziehverfahren, welches eine noch weitergehende Datenkompression zur Verfügung stellt, ist das in Fig. 5 gezeigte 1/16-Rahmen-Farbabziehen. Bei dieser Betriebsart des Farbabziehens werden R/G/B-Farbwerte jeweils von einem Einheitspixelarray erhalten, das 4×4 (=16) Pixel aufweist, für eine Verringerung der Rahmenabmessungen auf 1/16. Das Farbabziehen wird dadurch durchgeführt, daß die verschiedenen Pixelfarben gemittelt werden. Beispielsweise im Einheitspixelarray 50 wird der Rotwert (R) von einem Mittelwert der Rotwerte an den Pixeln R11 und R33 abgezogen, wird der Grünwert (G) von einem Mittelwert der Grünwerte an den Pixeln B12, G21, G34 und G43 abgezogen, und wird der Blauwert (B) von einem Mittelwert der Blauwerte an den Pixeln B22 und B44 erhalten.
Für das Einheitspixelarray 50:
R = (R11+R33)/2
G = (G12+G21+G34+G43)/4
B = (B22+B44)/2
Entsprechend für das Einheitspixelarray 50':
R = (R51+R73)/2
G = (G52+G61+G74+G83)/4
B = (B62+B84)/2.
Für die 1/4-Rahmen- und 1/16-Rahmen-Abziehverfahren ist es ebenfalls möglich, Farbwerte für jedes Einheitsarray von Pixeln aus einem einzelnen Pixel abzuziehen, statt zwei Pixel zu mitteln. Dies bringt Kompromisse in Bezug auf die Farbgenauigkeit und den Kontrast und daher die Bildqualität mit sich, vereinfacht jedoch weiterhin die erforderliche Hardware, die zum Implementieren der Farbabziehfunktion erforderlich ist.
In Bezug auf die Kompressions- und DPCM-Einheit 204 ist festzustellen, daß dieser Block den Hauptanteil der Kompression der Abmessungen jedes Farbwertes der Bilddaten durchführt. Fig. 6 ist ein Flußdiagramm, welches Kompressions- und Differenzoperationen gemäß der vorliegenden Erfindung erläutert. Der erste Schritt in dem Vorgang (Schritt 60) besteht darin, Quotientenfarbwerte Rold, Gold und Bold zu initialisieren, und Restfarbwerte Rpres, Gpres und Bpres für einen vorherigen Pixel, indem sie auf "0" gesetzt werden. Die Kompressions- und DPCM-Einheit 204 empfängt dann im Schritt 62 momentane Farbwerte Rnow, Gnow und Bnow von der R/G/B-Abzieheinheit 202. Im Schritt 64 werden vorherige Restfarbwerte Rpres, Gpres und Bpres zu den momentanen Farbwerten Rnow, Gnow und Bnow hinzuaddiert, um Gesamtfarbwerte Rn, Gn und Bn zu erhalten. Der Schritt 64 führt daher die Restfortpflanzungsfunktion durch, die für die Division erforderlich ist, gemäß der Lehre der vorliegenden Erfindung. Der Restfortpflanzungsaspekt der vorliegenden Erfindung sorgt für einen Dither (Zittern) für glattere Bildübergänge, und verbessert daher die Qualität des Bildes im Vergleich zu Vorgehensweisen nach dem Stand der Technik, welche typischerweise die Restfarbwerte vernachlässigt haben.
Dann werden im Schritt 66 neue Quotientenfarbwerte Rq, Gq und Bq sowie neue Restfarbwerte Rres, Gres und Bres erhalten, durch Division der Gesamtfarbwerte Rn, Gn und Bn durch den Verlustwert LossV. Der Verlustwert LossV ist programmierbar (wird beispielsweise von der Steuerung geliefert), und stellt die Rate der Bildverluste ein, wenn die Farbwerte zurückgewonnen und angezeigt werden. LossV ist auf einen Wert auf der Grundlage der geforderten Qualität des Bildes und die Anzahl an Rahmen programmiert (beispielsweise ist LossV desto höher, je größer die Anzahl an Rahmen ist).
Im Schritt 68 werden Differenzwerte Rdiff, Gdiff und Bdiff dadurch erhalten, daß vorherige Quotientenfarbwerte Rold, Gold und Bold von momentanen Quotientenfarbwerten Rq, Gq und Bq subtrahiert werden. Daraufhin werden im Schritt 70 vorherigen Quotientenfarbwerte Rold, Gold und Bold, und vorherige Restfarbwerte Rpres, Gpres und Bpres auf ihre neuen Werte aktualisiert, nämlich Rq, Gq und Bq bzw. Rres, Gres und Bres. Die voranstehend geschilderten Verarbeitungsschritte 62 bis 70 werden wiederholt, bis eine Zeile des Bildsensorarrays vollständig abgearbeitet ist. Nach der Fertigstellung einer Zeile wird eine darauffolgende Initialisierung für eine neue Zeile durchgeführt, und werden die Schritte 60 bis 70 für die neue Zeile wiederholt. Farbwerte werden am Beginn jeder Zeile initialisiert, da es keine Beziehung zwischen einem Farbwert am Ende einer Zeile und einem Farbwert am Beginn einer anderen Zeile gibt. Ein Vorteil dieses Verfahrens besteht darin, daß dann, wenn ein Fehler zum Zeitpunkt der Übertragung komprimierter Information an die nächste Verarbeitungseinheit erzeugt wird, dessen Fehlerbereich auf eine Fundamentaleinheit von einer Zeile beschränkt ist.
Eine weitere Erhöhung des Kompressionsverhältnisses kann durch eine geringfügige Abänderung des voranstehend geschilderten Kompressionsvorgangs erreicht werden. Bei dem voranstehenden Vorgang führt ein großer Wert für den ersten Pixel zu einem großen komprimierten Wert, infolge der Differenz zwischen dem heruntergeteilten ersten Pixelwert und dem Anfangswert von Null. Wenn beispielsweise der Wert für den ersten Pixel 225 beträgt, also erheblich größer ist als der Null-Anfangswert, und der Anfangswert auf "0" gesetzt wird, dann tritt ein 17-Bit-Codewort "11111111011100001" auf. Daher ist das Kompressionsverhältnis niedrig.
Zur Erhöhung des Kompressionsverhältnisses stellt bei einer alternativen Ausführungsform die vorliegende Erfindung die Anfangswerte Rold, Gold und Bold auf einen Wert ungleich Null ein. Der Wert ungleich Null wird auf der Grundlage des Wertes des ersten Pixels festgelegt. Bei einem Beispiel für eine Ausführungsform, wie dies in der nachstehenden Tabelle 1 angegeben ist, wird der Bereich für den Wert des ersten Pixels 0-255 in acht Unterbereiche unterteilt, wobei ein unterschiedlicher Anfangswert (einer von 0 bis 7) jedem Unterbereich zugeordnet wird. Die Anfangswerte für Rold, Gold und Bold können daher auf einen von acht möglichen Werten eingestellt werden. Durch Addition von drei Bits, die angeben, welcher der acht Anfangswerte verwendet wird, kann man eine bessere Kompression für den ersten Pixelwert erzielen.
Tabelle 1
Bei dieser Ausführungsform wird, wenn der Wert des ersten Pixels 225 beträgt, ein Anfangswert auf "7" eingestellt, also "111", statt auf "0", und tritt ein Codewort "111101" mit 6 Bits auf, wodurch das Kompressionsverhältnis erhöht wird.
Je näher der Wert des ersten Pixels an einem Vielfachen von 32 liegt, desto kleiner ist der kodierte Wert.
Die Differenz werte Rdiff, Gdiff und Bdiff, die im Schritt 68 berechnet wurden, werden dann an den nächsten Block übergeben, den VL-Kodierer 206. Der VL-Kodierer 206 führt eine statistische Kompression der Daten durch, wobei das kleinste Codewort den am häufigsten auftretenden Werten zugeordnet wird. Bei einer großen Anzahl an Wiederholungen von Farbwerten zwischen benachbarten Pixeln ist der am häufigsten auftretende Differenzwert "0" oder liegt nahe an "0". Daher wird die Datenmenge durch die vorliegende Erfindung dadurch signifikant verringert, daß die VL-Kodierung bei den Differenzwerten durchgeführt wird, statt den tatsächlichen Farbwert zu kodieren. Fig. 7 ist eine Tabelle, die ein Beispiel für eine VL-Kodierung für Differenzwerte gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
Ein weiterer Aspekt der vorliegenden Erfindung, der die Anforderungen an die Hardware weiter herabsetzt, und die Implementierung der Datenkompression erleichtert, ist die Verwendung des 1-Komplements (statt des 2-ASICs) bei dem VL-Kodiervorgang. Bei diesem Verfahren wird der Differenzwert dadurch erhalten, daß zuerst ein Quotientenwert zu dem 1-Komplement des anderen addiert wird. Wenn dann das Ergebnis positiv ist, werden alle führenden Nullen gelöscht, um den Differenzwert zu erhalten, und wenn das Ergebnis negativ ist, werden sämtliche führenden Einsen gelöscht, um den Differenzwert zu erhalten. Dann wird eine VL-Kodierung durchgeführt, durch Kombination des Größenwertes mit dem Differenzwert, getrennt durch ein Begrenzungsbit (typischerweise 0). Die Kombination des 1-Komplements mit einem Detektor für führende Nullen und Einsen gemäß der vorliegenden Erfindung macht daher eine VL-Kodiertabelle entbehrlich, die anderenfalls für die herkömmliche Kodiervorgehensweise erforderlich wäre, bei welcher das 2-Komplement verwendet wird.
Da die Codelänge der Daten, die vom VL-Kodierer 206 kodiert wurden, variiert, wird eine Aufteilung in Pakete der Daten durchgeführt, bevor die Daten über einen seriellen Bus übertragen werden, um es dem Empfänger zu ermöglichen, zwischen den kodierten Daten in dem empfangenen Bitstrom zu unterscheiden. Fig. 8 erläutert ein bevorzugtes Verfahren zum Einpacken von Daten in Pakete, wie es von der Datenpaketvorrichtung 208 der vorliegenden Erfindung durchgeführt wird. Gemäß der vorliegenden Erfindung wird ein Paket 800 in ein Vorspannfeld 802 und ein Kompressionsbilddatenfeld 804 aufgeteilt. Das Paket 800 kann beispielsweise die Größe von 512 Byte aufweisen. Das Vorspannfeld 802 besteht aus einem ersten Feld 806 aus beispielsweise 2 Bytes, welches Information enthält, die die Anzahl an Pixeln angibt, die innerhalb des Datenfeldes 804 mit 512 Bytes komprimiert sind, sowie einem zweiten Feld 808 aus beispielsweise 2 Byte, welches Information in Bezug auf die Anzahl gültiger Bits von den komprimierten Bilddaten enthält. Die beiden signifikantesten Bits des ersten Vorspannfeldes 806 geben an, ob das Paket am Beginn des Rahmens liegt ("10"), am Ende eines Rahmens ("01"), oder in der Mitte des Rahmens ("00"). Da die vorliegende Erfindung Pakete an Pixelgrenzen definiert, kann das Bilddatenfeld 804 nicht vollständig mit gültigen Daten gefüllt sein, weswegen das Vorspannfeld 808 erforderlich ist, um die Anzahl gültiger Bits in dem Paket anzugeben. Das gleiche kann für ein Paket am Ende des Bitstroms gelten (also wenn weniger als 512 Byte übrig sind). Diese Paketverpackung gemäß der vorliegenden Erfindung stellt daher ein Ausmaß der Fehlerkorrektur zur Verfügung, da es dem Empfänger ermöglicht wird, Daten zurückzugewinnen, selbst wenn ein Fehler in den Übertragungsleitungen auftritt.
Zum besseren Verständnis des Betriebsablaufs der Datenkompressionstechnik gemäß der vorliegenden Erfindung sind die Fig. 9a bis 9f vorgesehen, die zur Erläuterung der Datenkompression für ein spezifisches Bayer-Muster- Bildbeispiel dienen. Fig. 9a zeigt einen Abschnitt (10×4 Zeilen) von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist. Unter Verwendung eines 1/4-Rahmen-Abziehverfahrens erhält die Farbabzieheinheit 202 R/G/B-Werte für jedes Einheitsarray von 4×4. Die R/G/B-Werte für die erste Zeile und die zweite Zeile des Arrays sind in Fig. 9b gezeigt, wo die drei Werte in Klammern den zwei Farbwerten (R, G, B) für jede 4×4-Einheit des Pixelarrays entsprechen. Für das erste Array in der ersten Zeile ist daher der R-Wert gleich 32, der G-Wert gleich (24+26) /2=25, und der B-Wert gleich 50, usw. wie voranstehend beschrieben. Nach dem Farbabziehen wird die Division mit Restfortpflanzung durchgeführt. Bei diesem Beispiel wird ein Verlustwert LossV von 4 angenommen. In Fig. 9c sind die Ergebnisse der Restfortpflanzungsdivision gezeigt, wenn die Schritte 62 bis 66 in dem Flußdiagramm von Fig. 6 wiederholt werden. Bei LossV 4 ergeben sich für die ersten R/G/B-Abziehwerte (32, 25, 50) der ersten Zeile die ersten R/G/B-Quotientenfarbwerte (Rq, Gq, Bq) von (8, 6, 12). Die Restfarbwerte (Rres=0, Gres=1, Bres=2) werden fortgepflanzt und zu den zweiten R/G/B-Abziehfarbwerten (35, 23, 52) addiert, so daß man die zweiten R/G/B-Farbwerter erhält (Rn=35, Gn= 23+1=24, Bn=52+2=54. Dieser Vorgang wird für die zweiten R/G/B-Quotientenfarbwerte (Rq, Gq, Bq)=(8, 6, 13) wiederholt, mit Restfortpflanzung, was dazu führt, daß die dritten R/G/B-Farbwerte (Rn, Gn, Bn) gleich (39, 23, 55) werden. Die dritten R/G/B- Quotientenfarbwerte (Rq, Gq, Bq) werden zu (9, 7, 13), was dazu führt, daß die vierten R/G/B-Farbwerte (Rn, Gn, Bn) gleich (36, 29, 62) werden. Dieser Vorgang dauert an, bis sämtliche Farbwerte verarbeitet sind.
Fig. 9d zeigt die Quotientenfarbwerte (Rq, Gq, Bq) für jeden abgezogenen Farbwert für das 4×10-Array, das in Fig. 9a gezeigt ist. Allerdings wird darauf hingewiesen, daß bei der bevorzugten Ausführungsform, wie in dem Flußdiagramm von Fig. 6 gezeigt ist, die Funktion der Differenzierung, die von DPCM durchgeführt wird, parallel zur Funktion der Division auftritt. Wenn daher R/G/B-Farbquotientenwerte für jedes Einheitspixelarray erhalten werden, wird DPCM mit den vorherigen Farbwerten durchgeführt, bevor die Division für den nächsten R/G/B-Farbwert durchgeführt wird. Das in Fig. 9d gezeigte Array wird daher nicht tatsächlich zu irgendeinem bestimmten Zeitpunkt erhalten, und ist hier nur zu dem Zweck einer vollständigen Erläuterung des Divisionsvorgangs vorgesehen. Statt dessen repräsentiert das in Fig. 9e gezeigte Array die tatsächlichen Ausgangswerte der Kompressions- und DPCM-Einheit 204. Nimmt man die zweiten R/G/B-Farbquotientenwerte aus der ersten Zeile (8, 6, 13) und subtrahiert deren vorherigen R/G/B-Farbquotientenwert (8, 6, 12) davon, so erhält man den Wert (0,0,1). Dies wird als der neue Farbwert für den zweiten Pixel in der ersten Zeile eingegeben. Der dritte wäre (9, 7, 13)-(8, 6, 13)=(1, 1, 0), usw.
Schließlich erläutert Fig. 9f die VL-Kodierung für das Array von Differenzwerten in Fig. 9e. Nimmt man beispielsweise den roten Farbwert von dem ersten R/G/B-Differenzwert der ersten Zeile 8, so ergibt sich: Der Differenzwert wird VL-kodiert durch den Binärcode 1000, und die Größe durch 11110, was zu "111101000" führt. Entsprechend wird eine "0" VL-kodiert durch eine "0", wird eine "1" VL-kodiert durch "101", eine "2" Vl-kodiert durch "11010", und wird eine "-1" VL-kodiert durch "100".
Ein Aufaddieren der gesamten Anzahl an Bits für die beiden Zeilen in Fig. 9f (51 Bits für die erste Zeile und 57 Bits für die zweite Zeile) ergibt eine Gesamtanzahl von 108 Bits zur Darstellung der in Fig. 9a gezeigten Bilddaten. Wenn die ursprüngliche beispielhafte Bildgröße gegeben ist durch 10×4×8 Bits = 320 Bits, wird daher eine Kompression auf ein Drittel durch die Kompressionstechnik gemäß der vorliegenden Erfindung erzielt. Wenn die Länge jeder Zeile zunimmt, nimmt auch das Kompressionsverhältnis zu, so daß sogar noch größere Kompressionsverhältnisse erzielt werden. Dieses Kompressionsverhältnis ist nicht so hoch wie jenes, welches durch Algorithmen auf DCT-Grundlage ermöglicht wird, bei welchem Kompressionsverhältnisse von 1/20 bis 1/100 möglich sind. Allerdings verringert die Kompressionstechnik gemäß der vorliegenden Erfindung drastisch die Hardwareanforderungen für ihre Implementierung, da sie überhaupt keine Multiplizierer benötigt. Beispielsweise können bei der momentanen Technik die verschiedenen Funktionsblöcke der Kompressionstechnik gemäß der vorliegenden Erfindung, wie in Fig. 2 dargestellt, durch annähernd von 5000 Gates implementiert werden, wogegen eine Datenkompressionsimplementierung auf DCT-Grundlage typischerweise etwa 50000 bis 70000 Gates benötigen würde.
Darüber hinaus benötigt das Dekomprimieren von komprimierten Bildern auf DCT-Grundlage eine komplizierte Kosinusoperation, die üblicherweise mittels Software durchgeführt wird. Dies führt zu stärkeren Belastungen der CPU, verglichen mit dem vereinfachten Dekompressionsalgorithmus, der bei der vorliegenden Erfindung erforderlich ist. Bei einer verringerten Belastung der CPU bei der Dekompression gestattet die vorliegende Erfindung den gleichzeitigen Ablauf anderer Programme auf der CPU, während sich bewegende Bilder dargestellt werden. Es gibt zahlreiche Bildverarbeitungsanwendungen, bei welchen die Datenkompressionsanforderungen nicht so hoch sind, und daher eine teure Kompression auf DCT-Grundlage nicht erforderlich ist. Bestimmte Arten von Bildaufnahmegeräten, PC-Kameras, digitalen Standbildkameras oder Kamerarekordern stellen Beispiele für derartige Anwendungen dar.
In Fig. 10 ist als Blockschaltbild ein Beispiel für eine Systemanwendung der Datenkompressionseinrichtung gemäß der vorliegenden Erfindung gezeigt. Ein Bildaufnahmegerät, beispielsweise ein Kameramodul 100, weist ein Objektiv und eine Halterung 102 auf, durch welche das Bild an einem Bildsensor 104 angelegt wird. Der Bildsensor 104 kann vom CMOS-Typ sein, im Gegensatz zum CCD-Typ. Datenkompression gemäß der vorliegenden Erfindung wird entweder durch eine anwendungsspezifische integrierte Schaltung (ASIC) implementiert, oder durch ein vor Ort programmierbares Gate-Array (FPGA) 106, welches aufgenommene Bilddaten vom Bildsensor 104 empfängt. Ein Puffer, beispielsweise ein dynamischer Speicher mit wahlfreiem Zugriff (DRAM) 108, ist an die ASIC 106 angeschlossen, und stellt Speicher für die Bilddaten zur Verfügung, um die Verarbeitung der Daten zu erleichtern. Eine Steuerung 110, beispielsweise eine Steuerung des Typs USB (universeller serieller Bus), ist an die ASIC 106 und den Bildsensor 104 angeschlossen, und erleichtert die Zusammenschaltung mit USB 116. Das Kameramodul 100 enthält weiterhin einen Versorgungsspannungsregler 112, der von der USB-Steuerung 110 gesteuert wird, und elektrische Energie an die ASIC 106 und den Bildsensor 104 liefert. USB kann das Kameramodul 100 an einen Host-PC 114 anschließen, der neben weiteren Ressourcen einen USB-Gerätetreiber enthält, und Dekompressionssoftware. In einem System wie jenem, das in Fig. 10 gezeigt ist, ermöglicht es die signifikante Verringerung der Abmessungen der Datenkompressionshardware (ASIC 106), die Kompressionshardware auf demselben Chip wie dem der Steuerung zu integrieren. Dies führt zu wesentlichen Kosteneinsparungen.
Zusammenfassend stellt die vorliegende Erfindung ein Verfahren und eine Einrichtung für die Bilddatenkompression zur Verfügung, welche wesentlich die Komplexizität der Implementierung und die Kosten verringern, und die Fehlerkorrektur verbessert. Diese Verbesserungen werden an verschiedenen Implementierungsblöcken erzielt, die eine Farbabzieheinheit umfassen, die ein erstes Kompressionsniveau dadurch durchführen kann, daß die Rahmengröße auf beispielsweise 1/4 oder 1/16 verringert wird. Hierauf folgt eine Kompression mittels Division durch einen programmierbaren Verlustwert, wobei die Division den Rest fortpflanzt, um die Bitqualität zu verbessern. Dann wird bei den abgezogenen Farbwerten eine differentiell modulierte Modulation durchgeführt, um die Bilddatengröße noch weiter zu verringern. Mit dem Ergebnis wird eine Kodierung mit variabler Länge durchgeführt, unter Verwendung einer Vorgehensweise mit 1-Komplement, welche die Komplexizität der Implementierung dadurch weiter verringert, daß VL-Kodiertabellen wegfallen können. Schließlich werden die VL-kodierten, komprimierten Daten in Pakete aufgeteilt, für eine Übertragung über einen seriellen Bus, wobei die Aufteilung in Pakete die Fehlerkorrektur verbessert. Zwar wurden die bevorzugten Ausführungsformen der vorliegenden Erfindung zum Zwecke der Erläuterung beschrieben, jedoch wird Fachleuten auf diesem Gebiet deutlich werden, daß verschiedene Abänderungen, Hinzufügungen und Substitutionen möglich sind, ohne vom Wesen und Umfang der Erfindung abzuweichen, die sich aus der Gesamtheit der Anmeldeunterlagen ergeben und von den beigefügten Patentansprüchen umfaßt sein sollen.

Claims (32)

1. Bildkompressionseinrichtung zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, wobei die Einrichtung aufweist:
eine Farbabzieheinheit, die so angeschlossen ist, daß sie Eingangsbilddaten von dem Bildsensor empfängt, wobei die Farbabzieheinheit so ausgebildet ist, daß sie rote, grüne und blaue Farbwerte abzieht;
eine Datenkompressionseinheit, die an die Farbabzieheinheit angeschlossen ist, und so ausgebildet ist, daß sie die Farbwerte durch einen ausgewählten Faktor herunterteilt;
einen Kodierer mit variabler Länge, der an die Datenkompressionseinheit angeschlossen ist, und so ausgebildet ist, daß er eine Kodierung mit variabler Länge mit dem Ausgangssignal der Datenkompressionseinheit durchführt; und
eine Datenpaketvorrichtung, die an den Kodierer mit variabler Länge angeschlossen ist, und so ausgebildet ist, daß sie einen Bitstrom aus komprimierten Daten in mehrere Pakete für die serielle Übertragung aufteilt.
2. Bildkompressionseinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Datenkompressionseinheit einen Differenzmodulator aufweist, der so ausgebildet ist, daß er eine Differenz zwischen zwei heruntergeteilten Farbwerten erhält.
3. Bildkompressionseinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Farbabzieheinheit Farbwerte pixelweise aus einem Array von Pixeln in den Bilddaten abzieht.
4. Bildkompressionseinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Farbabzieheinheit mehrere Pixel in einer Arrayeinheit gruppiert, und rote, grüne und blaue Farbwerte für jede Arrayeinheit aus Pixeln innerhalb der Arrayeinheit abzieht.
5. Bildkompressionseinrichtung nach Anspruch 4, dadurch gekennzeichnet, daß jede Arrayeinheit aus einem 2×2-Array mit vier Pixeln besteht.
6. Bildkompressionseinrichtung nach Anspruch 5, dadurch gekennzeichnet, daß jede Arrayeinheit aus einem 4×4-Array mit 16 Pixeln besteht.
7. Bildkompressionseinrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Datenkompressionseinheit einen Rest fortpflanzt, wenn sie die Farbwerte durch den ausgewählten Faktor herunterteilt.
8. Bildkompressionseinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Differenz zwischen den beiden heruntergeteilten Farbwerten dadurch erhalten wird, daß eine Operation mit 1-Komplement durchgeführt wird, und daß der Kodierer mit variabler Länge die führenden Nullen löscht, wenn die Differenz positiv ist, und die führenden Einsen löscht, wenn die Differenz negativ ist.
9. Bildkompressionseinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß jedes der mehreren Pakete ein Vorspannfeld und ein Datenfeld enthält.
10. Bildkompressionseinrichtung nach Anspruch 9, dadurch gekennzeichnet, daß das Vorspannfeld in jedem Paket einen ersten Abschnitt aufweist, der Information enthält, welche die Anzahl gültiger Bits in dem Datenfeld angibt, sowie einen zweiten Abschnitt, der Information enthält, welche die Anzahl an Pixeln in dem Datenfeld angibt.
11. Verfahren zur Bilddatenkompression von Bilddaten, die von einem Bildsensor empfangen werden, mit folgenden Schritten:
Abziehen von roten, grünen und blauen Farbwerten aus den Bilddaten;
Teilen von Farbwerten durch einen ausgewählten Verlustfaktor, um Quotientenfarbwerte zu erhalten; und
Kodieren jedes Differenzwertes zu einem kodierten Farbwert in Reaktion auf die Größe des Differenzwertes.
12. Verfahren zur Bilddatenkompression nach Anspruch 11, dadurch gekennzeichnet, daß vor dem Kodierschritt das Verfahren weiterhin den Schritt aufweist, Differenzwerte zwischen einem momentanen Quotientenfarbwert und einem vorherigen Quotientenfarbwert zu erhalten.
13. Verfahren zur Bilddatenkompression nach Anspruch 12, dadurch gekennzeichnet, daß ein weiterer Schritt vorgesehen ist, in welchem kodierte Farbwerte in Paketen angeordnet werden, für eine serielle Übertragung.
14. Verfahren zur Bilddatenkompression nach Anspruch 11, dadurch gekennzeichnet, daß die Bilddaten ein Bayer-Muster-Farbarray enthalten.
15. Verfahren zur Bilddatenkompression nach Anspruch 14, dadurch gekennzeichnet, daß der Abziehschritt folgende Schritte umfaßt:
Gruppieren mehrerer Pixel in ein Einheitspixelarray; und
Zuordnung einer einzelnen Gruppe von roten, grünen und blauen Farbwerten zu jedem Einheitspixelarray auf der Grundlage individueller Pixel innerhalb des Arrays.
16. Verfahren zur Bilddatenkompression nach Anspruch 15, dadurch gekennzeichnet, daß der Zuordnungsschritt umfaßt:
wenn nur ein Pixel einer bestimmten Farbe vorhanden ist, wird der Farbwert dieses Pixels als der Wert für die Farbe des Einheitspixelarrays verwendet; und
wenn mehrere Pixel mit einem bestimmten Vorwärts vorhanden sind, werden die Farbwerte der mehreren Pixel gemittelt, um den Wert für diese Farbe für das Einheitspixelarray zu erhalten.
17. Verfahren zur Bilddatenkompression nach Anspruch 11, dadurch gekennzeichnet, daß der Divisionsschritt weiterhin die Schritte der Fortpflanzung von Restfarbwerten umfaßt.
18. Verfahren zur Bilddatenkompression nach Anspruch 17, dadurch gekennzeichnet, daß der Fortpflanzungsschritt einen Schritt umfaßt, bei welchem der Restfarbwert von einem ersten Farbwert zu einem zweiten Farbwert addiert wird, bevor der zweite Farbwert durch den ausgewählten Verlustwert dividiert wird.
19. Verfahren zur Bilddatenkompression nach Anspruch 12, dadurch gekennzeichnet, daß der Schritt des Erhaltens von Differenzwerten folgende Schritte umfaßt:
Bildung des 1-Komplements des momentanen Quotientenwerts; und
Addieren des 1-Komplements des momentanen Quotientenwertes zu dem vorherigen Quotientenwert.
20. Verfahren zur Bilddatenkompression nach Anspruch 13, dadurch gekennzeichnet, daß der Schritt der Anordnung kodierter Farbwerte in Paketen folgende Schritte umfaßt:
Gruppieren mehrerer addierter Farbwerte in einem seriellen Bitstrom einer vorgegebenen Größe innerhalb eines Datenfeldes;
Hinzufügung eines Vorspannfeldes vor dem seriellen Bitstrom, welches eine Länge der Größe des Bitstroms angibt.
21. Verfahren zur Kompression von Farbwerten, die aus Bilddaten abgezogen werden, mit folgenden Schritten:
  • (a) Initialisieren von Restfarbwerten und Quotientenfarbwerten für einen vorherigen Pixel;
  • (b) Addieren von Restfarbwerten von dem vorherigen Pixel zu Farbwerten von einem momentanen Pixel, um neue Farbwerte zu erhalten;
  • (c) Dividieren der neuen Farbwerte durch einen Verlustfaktor, um neue Quotientenfarbwerte und neue Restfarbwerte zu dem momentanen Pixel zu erhalten;
  • (d) Subtrahieren der neuen Quotientenfarbwerte für den momentanen Pixel von Quotientenfarbwerten für den vorherigen Pixel;
  • (e) Aktualisierung von Restfarbwerten und Quotientenfarbwerten für einen vorherigen Pixel durch die neuen Quotientenfarbwerte und die neuen Restfarbwerte; und
  • (f) Wiederholung der Schritte (b) bis (e) bis zum Ende einer Zeile der Pixel.
22. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß der weitere Schritt der Wiederholung der Schritte (a) bis (f) für eine nächste Pixelzeile vorgesehen ist.
23. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß der Initialisierungsschritt (a) den Schritt umfaßt, Restfarbwerte und Quotientenfarbwerte für einen vorherigen Pixel auf den Wert "0" zu initialisieren.
24. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß der Initialisierungsschritt (a) folgende Schritte umfaßt:
Unterteilung des Bereiches ausdrückbarer Farbwerte in mehrere Unterbereiche;
Kodieren jedes der mehreren Unterbereiche auf einen vorausgewählten Wert; und
Initialisierung, in Reaktion auf den Farbwert des ersten Pixels in jeder Zeile, von Quotientenfarbwerten für den vorherigen Pixel als kodierter Wert.
25. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß der Initialisierungsschritt (a) folgende Schritte umfaßt:
Unterteilung des Bereichs ausdrückbarer Farbwerte "0" bis "255" in acht Unterbereiche;
Kodierung jedes der acht Unterbereiche auf einen vorausgewählten Wert; und
Initialisierung, in Reaktion auf den Farbwert des ersten Pixels in jeder Zeile, von Quotientenfarbwerten für den vorherigen Pixel als einen von acht möglichen kodierten Werten.
26. Verfahren nach Anspruch 25, dadurch gekennzeichnet, daß der kodierte Wert durch drei (3) Bits ausgedrückt wird.
27. Bildbearbeitungssystem, welches aufweist:
ein Bildaufnahmegerät, welches enthält:
einen Bildsensor,
einen Datenkompressionsblock, der so angeschlossen ist, daß er Bilddaten von dem Bildsensor empfängt, wobei der Datenkompressionsblock so ausgebildet ist, daß er Farbwerte durch einen ausgewählten Faktor herunterteilt,
einen Datenspeicherblock, der an den Datenkompressionsblock angeschlossen ist, und
eine Steuerung, die an den Datenkompressionsblock und den Bildsensor angeschlossen ist, und
ein Host-Bildbearbeitungsgerät, welches mit dem Bildaufnahmegerät über einen seriellen Bus verbunden ist.
28. Bildbearbeitungssystem nach Anspruch 27, dadurch gekennzeichnet, daß der Bildsensor ein CMOS-Bildsensor ist.
29. Bildbearbeitungssystem nach Anspruch 28, dadurch gekennzeichnet, daß der Datenkompressionsblock durch ein umprogrammierbares Logikgerät implementiert wird, beispielsweise einen vor Ort programmierbaren Gate-Array.
30. Bildbearbeitungssystem nach Anspruch 28, dadurch gekennzeichnet, daß der Datenkompressionsblock durch eine anwendungsspezifische integrierte Schaltung implementiert wird.
31. Bildbearbeitungssystem nach Anspruch 27, dadurch gekennzeichnet, daß die Steuerung und der Datenkompressionsblock auf demselben integrierten Schaltungschip implementiert sind.
32. Bildbearbeitungssystem nach Anspruch 27, dadurch gekennzeichnet, daß das Bildaufnahmegerät ein Kameramodul ist, der serielle Bus ein universeller serieller Bus ist, und das Host- Bildbearbeitungsgerät ein PC ist.
DE19919600A 1998-04-30 1999-04-29 Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist Expired - Lifetime DE19919600B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR19980015469 1998-04-30
KR1998-15469 1998-04-30

Publications (2)

Publication Number Publication Date
DE19919600A1 true DE19919600A1 (de) 1999-11-04
DE19919600B4 DE19919600B4 (de) 2011-07-21

Family

ID=19536893

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19919600A Expired - Lifetime DE19919600B4 (de) 1998-04-30 1999-04-29 Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist

Country Status (8)

Country Link
US (1) US6614483B1 (de)
JP (1) JP4002028B2 (de)
KR (1) KR100582377B1 (de)
CN (3) CN1248510C (de)
DE (1) DE19919600B4 (de)
FR (1) FR2782592B1 (de)
NL (1) NL1011900C2 (de)
TW (1) TW391129B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10222281A1 (de) * 2002-05-18 2003-11-27 Sick Ag Verfahren zum Betrieb eines optoelektronischen Sensors und Sensor

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010059114A (ko) * 1999-12-30 2001-07-06 박종섭 이미지 센서로부터 출력되는 이미지 데이터의 압축 방법
JP3675394B2 (ja) * 2001-11-30 2005-07-27 ソニー株式会社 通信デバイス
US20040131072A1 (en) * 2002-08-13 2004-07-08 Starent Networks Corporation Communicating in voice and data communications systems
US20040135903A1 (en) * 2002-10-11 2004-07-15 Brooks Lane C. In-stream lossless compression of digital image sensor data
US7213142B2 (en) * 2003-04-22 2007-05-01 Intel Corporation System and method to initialize registers with an EEPROM stored boot sequence
CN1817012A (zh) * 2003-06-03 2006-08-09 思达伦特网络公司 用于总线上通信的系统和方法
JP4451181B2 (ja) * 2004-03-26 2010-04-14 オリンパス株式会社 画像圧縮方法及び画像圧縮装置
US7656561B2 (en) * 2004-05-31 2010-02-02 Phase One A/S Image compression for rapid high-quality imaging
JP2008501261A (ja) * 2004-05-31 2008-01-17 フェーズ・ワン・アクティーゼルスカブ 高速高品質画像処理のための画像圧縮方法
EP1605705B1 (de) * 2004-06-07 2009-01-28 STMicroelectronics S.r.l. Verfahren zur Kompression von Bilddaten erfasst von einer Bayer-Farbfilteranordnung
CN101032081B (zh) * 2004-07-14 2010-05-26 喷流数据有限公司 用于数据压缩优化的方法和系统
CN100421465C (zh) * 2005-05-10 2008-09-24 扬智科技股份有限公司 图像摄取装置压缩再解压缩图像数据的方法
US8306362B2 (en) * 2005-07-20 2012-11-06 Omnivision Technologies, Inc. Selective pixel binning and averaging based on scene illuminant
US20090094570A1 (en) * 2005-09-13 2009-04-09 Evgeny Artyomov Configurable Asic-based Sensing Circuit
US7960767B2 (en) * 2005-10-15 2011-06-14 Aptina Imaging Corporation System for programmable gate array with sensor array
CN101427565B (zh) * 2006-04-20 2011-08-03 三星电子株式会社 控制运动图像的分散记录和播放的设备和方法
KR100798386B1 (ko) * 2006-05-17 2008-01-28 김규태 영상 압축방법과 신장방법 및 그 장치
US20080007550A1 (en) * 2006-07-07 2008-01-10 Honeywell International, Inc. Current driven display for displaying compressed video
US7920086B2 (en) * 2006-07-07 2011-04-05 Honeywell International Inc. Display for displaying compressed video
US20080007637A1 (en) * 2006-07-07 2008-01-10 Honeywell International, Inc. Image sensor that provides compressed data based on junction area
US7602427B2 (en) * 2006-07-07 2009-10-13 Honeywell International Inc. Image sensor that provides raw output comprising compressed data
US20080018624A1 (en) * 2006-07-07 2008-01-24 Honeywell International, Inc. Display for displaying compressed video based on sub-division area
KR101270167B1 (ko) * 2006-08-17 2013-05-31 삼성전자주식회사 저복잡도의 이미지 압축 방법 및 장치, 저복잡도의 이미지복원 방법 및 장치
AU2008246243B2 (en) * 2008-11-19 2011-12-22 Canon Kabushiki Kaisha DVC as generic file format for plenoptic camera
CN102356635A (zh) * 2009-01-12 2012-02-15 美信集成产品公司 视频获取和处理系统
CN103443843B (zh) 2011-03-29 2016-08-17 瑞萨电子株式会社 显示装置和显示装置控制电路
US9558566B2 (en) * 2012-08-21 2017-01-31 EMC IP Holding Company LLC Lossless compression of fragmented image data
US10706492B2 (en) * 2017-09-05 2020-07-07 Texas Instruments Incorporated Image compression/decompression in a computer vision system
KR102709415B1 (ko) 2020-04-29 2024-09-25 삼성전자주식회사 이미지 압축 방법, 인코더, 및 인코더를 포함하는 카메라 모듈
CN116055743B (zh) * 2023-03-29 2023-07-14 山东云海国创云计算装备产业创新中心有限公司 一种图像压缩方法、系统、电子设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57150275A (en) * 1981-03-11 1982-09-17 Fuji Photo Film Co Ltd Adaptive quantizer
US5065229A (en) * 1989-07-24 1991-11-12 Eastman Kodak Company Compression method and apparatus for single-sensor color imaging systems
US5046119A (en) * 1990-03-16 1991-09-03 Apple Computer, Inc. Method and apparatus for compressing and decompressing color video data with an anti-aliasing mode
US5235432A (en) * 1991-11-22 1993-08-10 Creedon Brendan G Video-to-facsimile signal converter
US5493335A (en) * 1993-06-30 1996-02-20 Eastman Kodak Company Single sensor color camera with user selectable image record size
DE19616440A1 (de) 1996-04-25 1997-10-30 Eastman Kodak Co Verfahren und Vorrichtung zur Gewinnung eines vollen Farbbildes oder Multispektralbildes aus Bilddaten eines CCD-Bildsensors mit Mosaik-Farbfilter
US6130960A (en) * 1997-11-03 2000-10-10 Intel Corporation Block-matching algorithm for color interpolation
US6229578B1 (en) * 1997-12-08 2001-05-08 Intel Corporation Edge-detection based noise removal algorithm

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10222281A1 (de) * 2002-05-18 2003-11-27 Sick Ag Verfahren zum Betrieb eines optoelektronischen Sensors und Sensor
US7215835B2 (en) 2002-05-18 2007-05-08 Sick Ag Method for operating optoelectronic sensors and sensor

Also Published As

Publication number Publication date
CN1248510C (zh) 2006-03-29
US6614483B1 (en) 2003-09-02
FR2782592A1 (fr) 2000-02-25
CN1489390A (zh) 2004-04-14
DE19919600B4 (de) 2011-07-21
KR19990083399A (ko) 1999-11-25
JP4002028B2 (ja) 2007-10-31
KR100582377B1 (ko) 2006-05-23
NL1011900A1 (nl) 1999-11-02
CN1489393A (zh) 2004-04-14
CN1129312C (zh) 2003-11-26
CN1235414C (zh) 2006-01-04
TW391129B (en) 2000-05-21
FR2782592B1 (fr) 2002-02-08
JP2000032273A (ja) 2000-01-28
CN1239380A (zh) 1999-12-22
NL1011900C2 (nl) 2000-11-28

Similar Documents

Publication Publication Date Title
DE19919600B4 (de) Einrichtung und Verfahren zum Komprimieren von Bilddaten, die von einem Bildsensor empfangen werden, der ein Bayer-Muster aufweist
DE19983253B4 (de) Die Kompression von Farbbildern auf der Grundlage einer zweidimensionalen diskreten Wavelet-Transformation, die ein scheinbar verlustloses Bild hervorbringt
DE69425847T2 (de) Rechner für die inverse diskrete Cosinus-Transformation
DE69433272T2 (de) Vorrichtung zum Vermeiden von Rundungsfehlern bei der inversen Transformation von Transformationskoeffizienten eines Bewegtbildsignales
DE19983600B4 (de) Ein neuer Skalierungsalgorithmus für eine effiziente Farbdarstellung / Wiederherstellung bei Video
DE102009028743B4 (de) Verfahren und Steuergerät zur Entzerrung eines Kamerabildes
DE69636277T2 (de) Verfahren und Vorrichtung zur Erzeugung von Farbart-Forminformation einer Video-Objektebene in einem Videosignal
DE102018118362A1 (de) Systeme und verfahren zur effizienten und verlustfreien komprimierung von erfassten rohbilddaten
DE19739266B4 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
EP1371229B1 (de) Verfahren zur komprimierung und dekomprimierung von videodaten
DE60203850T2 (de) System und Verfahren zum Verarbeiten von Bildern mit aufgelöster Mosaikstruk- tur, um durch Farb-Aliasing hervorgerufenen Artefakte zu verringern.
DE60038550T2 (de) Verfahren und Vorrichtung zur Farbbilddatenbearbeitung und Kompression
DE19743202A1 (de) Verfahren und Vorrichtung zum Codieren eines Bewegungsvektors
DE69328698T2 (de) Verfahren und Vorrichtung zur Bildcodierung
DE69126525T2 (de) Digitale bildverarbeitung mit filterung der blockkanten
DE69512824T2 (de) Kompressions- und Dekompressionsverfahren für mehrdimensionale mehrwertige Farbbilder
DE4408522A1 (de) Vorrichtung und Verfahren zur Bilddatenverarbeitung, die zur Verarbeitung von Bilddaten mit hoher Geschwindigkeit in der Lage sind
DE69918980T2 (de) Videokompression mit speicherreduktion, farbrotation und kombinierter signal- und blockrandfilterung
EP0956703A1 (de) Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes
DE10218541A1 (de) Verfahren zur Videocodierung und Computerprogrammprodukt
DE69509421T2 (de) Verschiebungsstufe für einen Dekodierer von digitalen Kodes veränderlicher Länge
DE68908254T2 (de) Fernsehübertragungssystem mit differentieller Kodierung von Transformationskoeffizienten.
EP0336510B1 (de) Prädiktiver Standbildcodierer
DE69602125T2 (de) MPEG Dekoder
EP0752788A2 (de) Videocoder und -decoder

Legal Events

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

Owner name: HYNIX SEMICONDUCTOR INC., ICHON, KYONGGI, KR

8127 New person/name/address of the applicant

Owner name: MAGNACHIP SEMICONDUCTOR, LTD., CHEONGJU, KR

8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: CROSSTEK CAPITAL, LLC, WILMINGTON, DEL., US

R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCHAFT

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

R020 Patent grant now final

Effective date: 20111022

R081 Change of applicant/patentee

Owner name: INTELLECTUAL VENTURES LL LLC, ( N. D. GES. D. , US

Free format text: FORMER OWNER: CROSSTEK CAPITAL, LLC, WILMINGTON, US

Effective date: 20111223

Owner name: INTELLECTUAL VENTURES LL LLC, ( N. D. GES. D. , US

Free format text: FORMER OWNER: CROSSTEK CAPITAL, LLC, WILMINGTON, DEL., US

Effective date: 20111223

R082 Change of representative

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

Effective date: 20111223

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, DE

Effective date: 20111223

R082 Change of representative

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, DE

R071 Expiry of right