DE60314692T2 - Digitalbildverfahren und -vorrichtung zum Zusammenfügen von Entfernung des Mosaikeffekts und Korrektur von schlechten Pixeln - Google Patents

Digitalbildverfahren und -vorrichtung zum Zusammenfügen von Entfernung des Mosaikeffekts und Korrektur von schlechten Pixeln Download PDF

Info

Publication number
DE60314692T2
DE60314692T2 DE60314692T DE60314692T DE60314692T2 DE 60314692 T2 DE60314692 T2 DE 60314692T2 DE 60314692 T DE60314692 T DE 60314692T DE 60314692 T DE60314692 T DE 60314692T DE 60314692 T2 DE60314692 T2 DE 60314692T2
Authority
DE
Germany
Prior art keywords
sensor values
pixels
sensor
values
interpolated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60314692T
Other languages
English (en)
Other versions
DE60314692D1 (de
Inventor
Ramakrishna Sunnyvale Kakarala
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.)
Aptina Imaging Corp
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Application granted granted Critical
Publication of DE60314692D1 publication Critical patent/DE60314692D1/de
Publication of DE60314692T2 publication Critical patent/DE60314692T2/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
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4015Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/843Demosaicing, e.g. interpolating colour pixel values
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/60Noise processing, e.g. detecting, correcting, reducing or removing noise
    • H04N25/68Noise processing, e.g. detecting, correcting, reducing or removing noise applied to defects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Color Television Image Signal Generators (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

  • Technisches Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft im allgemeinen digitale Farbbildsensoren und insbesondere die Bildverarbeitung von Sensorwerten.
  • Beschreibung des Stands der Technik
  • Es gibt vorwiegend zwei Arten von elektronischen Bildsensoren: CCDs (ladungsgekoppelte Vorrichtungen) und CMOS-APS (Aktive Pixelsensoren aus Komplementärer-Metall-Oxid-Halbleitern). Diese beiden Arten von Sensoren umfassen üblicherweise einen Array von Photodetektoren, die in einem Muster angeordnet sind und Farbe in einem Bild abtasten. Jeder der Photodetektoren gehört zu einem Pixel eines Bildes und mißt die Intensität des Lichts des Pixels in einem oder mehreren Wellenlängenbereichen, die zu einer oder mehreren wahrgenommenen Farben gehören.
  • Zusätzlich können beide Arten von Sensoren einen Farbfilterarray (CFA) umfassen, wie etwa den CFA, der im U.S.-Patent Nr. 3 971 065 von Bayer beschrieben wird (im folgenden als Bayer bezeichnet). In dem Bayer-CFA empfangt jedes Pixel nur einen Wellenlängenbereich, der zu den wahrgenommenen Farben Rot, Grün oder Blau gehört. Um die Sensorwerte für alle drei Primärfarben an einem einzelnen Pixelort zu erhalten, ist es notwendig, die Farbsensorwerte von angrenzenden Pixeln zu interpolieren. Dieses Verfahren der Interpolation wird Demosaik-Technik genannt. Es gibt eine Anzahl von Demosaik-Verfahren, die heute im Stand der Technik bekannt sind. Als Beispiel, aber nicht als Einschränkung, umfassen verschiedene Demosaik-Verfahren replizierte Pixel, bilineare Interpolation und Median-Interpolation.
  • Damit das Demosaik-Verfahren ein visuell ansprechendes Bild erzeugt, müssen alle Sensorwerte, die von dem digitalen Bildsensor erzeugt werden, korrekt sein. Trotz Fortschritten beim Herstellungsverfahren enthalten digitale Bildsensoren jedoch oft als Folge von Fertigungsfehlern, wie etwa Fremdstoffverunreinigungen, einige fehlerhafte Pixel. Fehlerhafte Pixel reagieren unangemessen auf das einfallende Licht und erzeugen daher inkorrekte Sensorwerte. Ein fehlerhaftes Pixel kann normalerweise identifiziert werden, indem die Differenz zwischen der Sensorreaktionen des fehlerhaften Pixels und seines unmittelbaren Nachbarpixels auf die gleiche Beleuchtung untersucht wird. Sobald sie identifiziert ist, kann der Sensorwert eines fehlerhaften Pixels mit einem geschätzten Sensorwert von Pixeln in der Nachbarschaft des fehlerhaften Pixels ersetzt werden.
  • Das Verfahren des Detektierens und Korrigierens von fehlerhaften Pixeln wird als Schlechte-Pixel-Korrektur (BPC) bezeichnet. Es werden heute eine Anzahl von Algorithmen für BPC auf dem Markt angeboten. Zum Beispiel detektiert ein BPC-Verfahren für Farbbildsensoren, das von Maynants & Diercickx in „A circuit for the correction of Pixel defects in image sensor", Proceedings of the 24th European Solid-State Circuits Conference, Den Haag, Niederlande, 22.-24. Sept. 1988, S. 312-315 vorgeschlagen wurde, schlechte Pixel, indem es die Sensorwerte eines aktuellen Pixels mit Sensorwert-Vorhersagen von benachbarten Pixeln der gleichen Farbe in der gleichen Zeile vergleicht. Das Maynants & Diercickx-BPC-Verfahren vergleicht jedoch nicht Sensorwerte, die räumlich an das aktuelle Pixel angrenzen, und hat daher den Nachteil, daß es lokale Kanten in dem Bild löscht, wenn die Sensorwerte Spitzen oder einen Tiefstand erreichen. Darüber hinaus vergleicht das Maynants & Diercickx-BPC-Verfahren Sensorwerte nicht vertikal und hat daher den zusätzlichen Nachteil, dünne vertikale Linien zu löschen.
  • Ein anderes BPC-Verfahren für Farbbildsensoren, das von Tan & Acharya in „A robust sequential approach for the detection of defective Pixels in an Image sensor", Proceedings of the 1999 International Conference an Acoustics, Speech and Signal Processing, Phoenix, Ariz., 15.-19. März 1999, S. 2239-2242 vorgeschlagen wurde, erstellt eine Schlechte-Pixel-Karte, indem es das Ergebnis von Schlechte-Pixel-Detektionen über eine Folge von Bildern erfaßt, basierend auf einer minimalen Differenz zwischen einem gegebenen Pixel und seinem unmittelbaren Nachbarn von der gleichen Farbe. Das Tan & Acharaya-Verfahren erfordert es jedoch, daß die Schlechte-Pixel-Karte in nichtflüchtigem Speicher gespeichert wird. Das Vorsehen von nichtflüchtigem Speicher in einem Bildsensor oder einem Bildverarbeitungs-Chip stellt einen wesentlichen Kostenpunkt dar. Darüber hinaus vergleicht das Tan & Acharaya-Verfahren auch nicht räumlich angrenzende Sensorwerte, wenn es die Schlechte-Pixel-Karte herstellt.
  • Noch ein weiteres BPC-Verfahren für Farbbildsensoren wird von Kalevo & Rantanen in „Noise Reduction Techniques for Bayer-Matrix Images", Proc. of the SpiE, Bd. 4669, Seiten 348-359 vorgeschlagen. Die Rauschminderung kann entweder vor oder nach der Interpolation des Farbfilterarrays angewendet werden.
  • EP 1 003 332 A2 beschreibt ein Verfahren und eine Vorrichtung zur Korrektur von fehlerhaften Pixelwerten, basierend auf den Werten einer Mehrzahl von benachbarten Pixeln. Das Filtern jedes der Pixelwerte verwendet den Wert des aktuellen Pixels als Teil eines Datensatzes, der die Werte von benachbarten Pixeln umfaßt. In einer ersten Filterstufe wird das aktuelle Pixel mit den am höchsten und den am niedrigsten eingeordnete Pixelwerten in seiner Nachbarschaft verglichen; wenn der Wert des aktuellen Pixels größer als der am höchsten eingeordnete Wert ist, ersetzt dieser am höchsten eingeordnete Wert das aktuelle Pixel. Wenn der Wert des aktuellen Pixels niedriger als der am niedrigsten eingeordnete Wert ist, ersetzt dieser am niedrigsten eingeordnete Wert das aktuelle Pixel. Diese erste Filterstufe wirkt als ein allgemeiner Rauschminderungsfilter. In einer zweiten Filterstufe wird der Medianwert derjenigen Pixel berechnet, die dem aktuellen Pixel benachbart sind. Der verwendete Medianwert ist der Mittelwert der beiden Pixel, die in der Mitte eingeordnet sind. Die Werte des aktuellen Pixels und der benachbarten Pixel werden in eine Reihenfolge sortiert, und der aktuelle Pixelwert wird auf Basis seiner Position in der genannten Reihenfolge modifiziert.
  • Was daher benötigt wird, ist ein Schlechte-Pixel-Korrekturalgorithmus, der effektiv und korrekt fehlerhafte Pixel detektiert und korrigiert mittels räumlich angrenzender Sensorwerte, um fehlerhafte Pixel in der Nähe von Kanten und in Bereichen mit Muster zu identifizieren. Darüber hinaus wurden die Schlechte-Pixel-Korrektur (PBC) und das Demosaik-Verfahren herkömmlicherweise in zwei getrennten Stufen durchgeführt, entweder in Software oder in einer digitalen Schaltung, die in Hardware implementiert ist. Jede Stufe trägt zu den Ausgaben und der Komplexität der Verarbeitung von Sensorwerten für die endgültige Ausgabe auf einer Anzeigevorrichtung bei. Was daher benötigt wird, ist ein Verfahren, das einen korrekten BPC-Algorithmus mit einem Demosaik-Verfahren in einer einzigen Stufe verbindet.
  • ERFINDUNGSABRISS
  • Die vorliegende Erfindung gibt ein digitales Bildsystem nach Anspruch 1 und ein Verfahren zur Korrektur von Sensorwerten, die von den Pixeln erzeugt werden, nach Anspruch 5 an.
  • Ausführungen der vorliegenden Erfindung geben ein digitales Bildsystem und -verfahren zum Detektieren und Korrigieren von fehlerhaften Pixeln an, indem Sensorwerte von Pixeln, die an ein aktuelles untersuchtes Pixel angrenzen, interpoliert werden und die interpolierten Sensorwerte mit den Sensorwerten des aktuellen Pixels verglichen werden, um zu ermitteln, ob das aktuelle Pixel fehlerhaft ist. Weitere Ausführungen der vorliegenden Erfindung ermöglichen die Kombination von Schlechte-Pixel-Korrektur und Demosaik-Verfahren in einer einzigen Stufe, indem sie die interpolierten Werte, die für die Detektion von fehlerhaften Pixeln ermittelt wurden, für das Demosaik-Verfahren nutzen.
  • In einer Ausführung detektiert der Schlechte-Pixel-Algorithmus fehlerhafte Pixel mittels interpolierter Werte in der gleichen Farbebene wie das aktuelle untersuchte Pixel von den Pixeln, die an das aktuelle Pixel räumlich unmittelbar angrenzen. Die interpolierten Werte werden mittels einer Median-Interpolationstechnik berechnet, um sicherzustellen, daß alle fehlerhaften Sensorwerte isoliert bleiben. Wenn die Sensorwerte des aktuellen untersuchten Pixels um mehr als eine konfigurierbare Schwellwertgröße über dem Maximum der (tatsächlichen und/oder interpolierten) Sensorwerte der räumlich unmittelbar angrenzenden Nachbarn oder unter dem Minimum der Sensorwerte der räumlich unmittelbar angrenzenden Nachbarn liegt, wird bestimmt, daß das aktuelle Pixel fehlerhaft ist. Für jedes der detektierten fehlerhaften Pixel wird der Sensorwert des fehlerhaften Pixels unter Verwendung eines geschätzten Sensorwerts ersetzt, der aus den tatsächlichen Sensorwerten der benachbarten Pixel in derselben Farbebene und/oder den interpolierten Werten von räumlich unmittelbar angrenzenden benachbarten Pixeln berechnet wird.
  • In weiteren Ausführungen können die vorher interpolierten Werte, die zum Detektieren von fehlerhaften Pixeln verwendet werden, während des Demosaik-Verfahrens angewendet werden. Somit können, sobald die interpolierten Werte für die Schlechte-Pixel-Korrektur (BPC) berechnet wurden, diese interpolierten Werte als die interpolierten Werten für Zwecke des Demosaik-Verfahrens verwendet werden.
  • Daher können, indem die interpolierten Werte sowohl für die BPC als auch für das Demosaik-Verfahren verwendet werden, die beiden Verfahren (BPC und Demosaik-Verfahren) in einer einzigen Stufe ausgeführt werden. Zusätzlich bietet die Verwendung von interpolierten Werten während der PBC den zusätzlichen Vorteil, fehlerhafte Pixel in der Nähe von Kanten und Bereichen mit Muster zu identifizieren, da sowohl vertikale als auch horizontale Pixelnachbarn, die am nächsten an dem untersuchten Pixel liegen, bei der Berechnung der interpolierten Werte verwendet werden. Weiter sieht die Erfindung Ausführungen mit anderen Merkmalen und Vorteilen zusätzlich zu denen oder anstatt derer, die oben behandelt wurden, vor. Viele dieser Merkmale und Vorteile werden aus der Beschreibung unten mit Bezug auf die folgenden Zeichnungen deutlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die offenbarte Erfindung wird mit Bezug auf die beigefügten Zeichnungen beschrieben, die wichtige Ausführungsbeispiele der Erfindung zeigen und die in der Patentschrift durch Bezugnahme eingeschlossen sind und bei denen:
  • 1 ein Blockdiagramm ist, das ein Digitalbildsystem darstellt, das einen Schlechte-Pixel-Korrektur(BPC)- und -Demosaik-Algorithmus nach beispielhaften Ausführungen der vorliegenden Erfindung darstellt;
  • 2 ein Logik-Flußdiagramm ist, das beispielhafte Logik zur Implementierung des BPC-Algorithmus nach beispielhaften Ausführungen der vorliegenden Erfindung darstellt;
  • 3 ein Flußbild ist, das beispielhafte Schritte zur Durchführung des BPC-Algorithmus, der in 2 dargestellt ist, darstellt;
  • 4 ein beispielhafter 5×5-Block von Pixeln ist, der beispielhafte rohe grüne Sensorwerte und interpolierte grüne Sensorwerte, die in Übereinstimmung mit Ausführungen des BPC-Algorithmus der vorliegenden Erfindung erzeugt wurden, darstellt;
  • 5 eine Flußbild ist, das beispielhafte Schritte zur Durchführung des BPC-Algorithmus, um die grünen Sensorwerte zu interpolieren, wie sie in 4 gezeigt sind, nach Ausführungen der vorliegenden Erfindung darstellt;
  • 6A und 6B einen beispielhaften 5×5-Block von Pixeln, der rohe rote Sensorwerte und interpolierte rote Sensorwerte, die in Übereinstimmung mit Ausführungen des BPC-Algorithmus der vorliegenden Erfindung erzeugt wurden, darstellt;
  • 7 ein Flußbild ist, das beispielhafte Schritte zur Durchführung des BPC-Algorithmus zur Interpolation von roten Sensorwerten, wie sie in 6 gezeigt sind, nach Ausführungen der vorliegenden Erfindung darstellt;
  • 8 ein Logik-Flußdiagramm ist, das beispielhafte Logik zur Implementierung des BPC- und -Demosaik-Algorithmus nach Ausführungen der vorliegenden Erfindung darstellt; und
  • 9 ein Flußdiagramm ist, das die beispielhaften Schritte zur Durchführung des BPC- und -Demosaik-Algorithmus, die in 8 gezeigt sind, darstellt.
  • DETAILLIERTE BESCHREIBUNG DER BEISPIELHAFTEN AUSFÜHRUNGEN DER ERFINDUNG
  • Die vielen erfinderischen Lehren der vorliegenden Erfindung werden mit Bezug auf die beispielhaften Ausführungen beschrieben. Es versteht sich jedoch, daß diese Ausführungen nur wenige Beispiele der vielen nützlichen Verwendungen der erfinderischen Lehren hierin bereitstellen. Im allgemeinen beschränken die in der Patentschrift getroffenen Aussagen nicht notwendigerweise irgendwelche der verschiedenen beanspruchten Erfindungen. Des weiteren können manche Aussagen auf manche erfinderische Merkmale zutreffen, nicht jedoch auf andere.
  • Die 1 zeigt ein Digitalbildsystem 10, das einen Schlechte-Pixel-Korrektur(BPC)-Algorithmus, der mit einem Demosaik-Algorithmus kombiniert werden kann, nach der vorliegenden Erfindung implementiert. Das Digitalbildsystem 10 kann aus irgendeiner digitalen Bildgebungsvorrichtung, wie etwa einer Digitalkamera, einer Videokamera, einer medizinischen Bildgebungsvorrichtung etc., bestehen. Das Digitalbildsystem 10 kann auch aus einem Computersystem bestehen, wie etwa einem Personalcomputer oder Server, mit einem Speicher darin, um Bilddaten zu speichern. Somit kann der Algorithmus in einer digitalen Bildgebungsvorrichtung angeordnet sein oder einen Teil einer Bildverarbeitungssoftware bilden, die auf einem Personalcomputer oder Server läuft.
  • Das Digitalbildsystem 10 kann einen Digitalbildsensor 20, wie etwa einen CMOS-Sensorchip oder einen CCD-Sensorchip, umfassen, der einen zweidimensionalen Array von Pixeln 25 aufweist, die in Zeilen und Spalten angeordnet sind. Es versteht sich, daß dann, wenn das Digitalbildsystem 10 ein Computersystem ist, der Digitalbildsensor 20 nicht in dem Digitalbildsystem eingeschlossen ist, sondern statt dessen dem Digitalbildsystem 10 Sensorwerte bereitstellt. Der Digitalbildsensor 20 kann so mit einem Farbfilterarray (CFA) überdeckt sein, daß jedes der Pixel 25 nur eine Farbe erfaßt. Der CFA kann beispielsweise aus dem verbreiteten Bayer-CFA bestehen, bei dem Chrominanz-Farben (Rot und Blau) zwischen ein Schachbrettmuster von Luminanz-Farben (Grün) eingefügt sind. Das folgende ist ein Beispiel des Bayer-CFA:
    R G R G R
    G B G B G
    R G R G R
    G B G B G
    R G R G R
  • Es versteht sich, daß andere CFAs anstatt des Bayer-CFAs, der hier beschrieben ist, verwendet werden können. Es versteht sich auch, daß andere Farbräume wie etwa Gelb, Cyan und Magenta anstatt des hier behandelten Farbraumes mit Rot, Grün und Blau verwendet werden können.
  • Der Digitalbildsensor 20 liefert rohe Sensorwerte 30, welche die originalen Rot-, Blau- und Grün-Pixelwerte aufweisen, an einen digitalen Signalprozessor 40, der den BPC-(und Demosaik-)Algorithmus der vorliegenden Erfindung auf die Sensorwerte 30 anwendet, um fehlerhafte Pixel zu detektieren und zu korrigieren und Sensorwerte zu interpolieren, um ein vollständiges Bild herzustellen. Die Sensorwerte 30 werden dem digitalen Signalprozessor 40 blockweise bereitgestellt. Daher werden die Sensorwerte 30 in einem Puffer 50 gespeichert, bis die nötige Anzahl von Sensorwerten 30 vorhanden ist, um die Verarbeitung zu beginnen.
  • Die Anzahl von Sensorwerten 30, die benötigt werden, um die Verarbeitung zu beginnen, hängt von der Art der Verarbeitung ab. Zum Beispiel werden die Sensorwerte 30 üblicherweise aus dem Sensor 20 mit einer Zeile auf einmal ausgelesen. In einer Ausführung werden, damit der Vorgang des Detektierens und Korrigierens von fehlerhaften Pixeln und des Auflösens der Mosaikstruktur der Sensorwerte beginnen kann, mindestens fünf Zeilen von Sensorwerten 30 in dem Puffer 50 gespeichert. Die Zeilen schließen die aktuelle Zeile, einschließlich des Sensorwertes des aktuellen, gerade untersuchten Pixels, sowie die zwei Zeilen direkt über und direkt unter der aktuellen Zeile ein, um Sensorwerte für die räumlich unmittelbar angrenzenden Nachbarn des aktuellen Pixels zu interpolieren. Es versteht sich, daß die räumlich unmittelbar angrenzenden Nachbarn diejenigen Pixel sind, die direkt an ein bestimmtes Pixel angrenzen, so daß keine anderen Pixel zwischen dem bestimmten Pixel und einem der räumlich unmittelbar angrenzenden Pixel liegen. Zusätzlich können ein oder mehrere Bilder in dem Puffer 50 zugleich gespeichert werden, weil die meisten Digitalkameras mehrere Bilder aufnehmen, um sicherzustellen, daß die Belichtung korrekt ist, bevor sie das Bild auswählen, das dauerhaft gespeichert werden soll.
  • Sobald ihre Mosaikstruktur aufgelöst ist, können die interpolierten Farbebenen (mit aufgelöster Mosaikstruktur) in nachfolgender Verarbeitung (nicht gezeigt) verwendet werden. Die interpolierten Farbebenen können beispielsweise mittels eines Kompressionsverfahrens (nicht gezeigt) wie etwa dem JPEG-Standard komprimiert werden, bevor sie an eine Ausgabevorrichtung (nicht gezeigt) wie etwa einem Bildschirm, Computermonitor oder Drucker ausgegeben werden.
  • Bezieht man sich nun auf 2, so detektiert und korrigiert der digitale Signalprozessor 40 fehlerhafte Pixel 25 für Sensorwerte in jedem der Bilder, die in dem Puffer 50 gespeichert sind, gemäß einer Logik, die mit dem BPC-Algorithmus verknüpft ist. Der BPC-Prozessor 40 nimmt die rohen Sensorwerte 30 als Eingang, die von dem Puffer 50 bereitgestellt werden. Die rohen Sensorwerte 30 umfassen den Sensorwert 35 des aktuellen Pixels (Wert1 Pixelx) und Sensorwerte 30 von benachbarten Pixeln in der aktuellen Zeile des aktuellen Pixels und/oder der/den Zeile(n) direkt über oder direkt unter der aktuellen Zeile. Interpolationslogik 100 in dem BPC-Prozessor 40 berechnet interpolierte Sensorwerte 105 für die räumlich unmittelbar angrenzenden benachbarten Pixel des aktuellen Pixels aus den rohen Sensorwerten 30 der benachbarten Pixel, die das aktuelle Pixel in der gleichen Farbebene wie das aktuelle Pixel umgeben. Es versteht sich, daß der Begriff „Logik", wie er hier verwendet wird, Hardware, Software und/oder Firmware zur Durchführung der angegebenen Funktionen bezeichnet. Eine Interpolationslogik 100 verwendet eine Median-Interpolationstechnik, um sicherzustellen, daß irgendwelche fehlerhaften Sensorwerte isoliert bleiben.
  • Man nehme beispielsweise an, daß die folgenden rohen Sensorwerte 30 der Interpolationslogik 100 zugeführt werden:
    B1 G1 B2
    G2 R1 G3
    B3 G4 B4
  • Um den Grün-Wert an dem Roter-Pixel-Ort (R1) mittels Median-Interpolation zu interpolieren, werden der maximale und der minimale Sensorwert aus G1, G2, G3 und G4 herausgefiltert, und der Durchschnitt der übrigen zwei Sensorwerte wird als der interpolierte Grün-Wert für den Roter-Pixel-Ort (R1) verwendet. Ebenso werden, um den Blau-Wert an dem Roter-Pixel-Ort (R1) mittels der Median-Interpolation zu interpolieren, der maximale und der minimale Sensorwert aus B1, B2, B3 und B4 herausgefiltert, und der Durchschnitt der übrigen zwei Sensorwerte wird als der interpolierte Blau-Wert für den Roter-Pixel-Ort (R1) verwendet. In dem der Durchschnitt von ausschließlich den zwei mittleren Werten genommen wird, können alle fehlerhaften Sensorwerte herausgefiltert werden, um es zu vermeiden, daß die interpolierten Werte, die für die Schlechte-Pixel-Detektion, und letztendlich für das Auflösen der Mosaikstruktur des Bildes, verwendet werden, verzerrt werden.
  • Wendet man sich wieder 2 zu, so werden die interpolierten Werte 105, und in manchen Ausführungen die Rohdatenwerte 30 (wie unten in Verbindung mit den 4-7 behandelt wird), an die Bereichslogik 110 bereitgestellt, um einen Bereich von Sensorwerten 115 in derselben Farbebene wie das aktuelle Pixel aus den räumlich unmittelbar angrenzenden benachbarten Pixeln zu ermitteln. In einer Ausführung kann der Bereich von Sensorwerten 115 beispielsweise einen maximalen Sensorwert und einen minimalen Sensorwert von den interpolierten Werten für das räumlich unmittelbar angrenzende Pixel umfassen.
  • Die rohen Sensorwerte 30 können weiter einer Schwellwertlogik 120 bereitgestellt werden, um eine Schwellwertgröße 125 zu berechnen. In einer Ausführung kann die Schwellwertgröße 125 variabel sein, abhängig von den Lichtverhältnissen in dem Bild. Bei schlechten Lichtverhältnissen sind die Sensorwerte niedrig und das Signal-Rausch-Verhältnis ist niedrig, so daß eine niedrigere Schwellwertgröße 125 benötigt wird, um zu ermitteln, ob ein Pixel fehlerhaft ist. Im Gegensatz dazu sind bei normalen oder hellen Lichtverhältnissen die Sensorwerte hoch und das Signal-Rausch-Verhältnis ist hoch, was dazu führt, daß eine höhere Schwellwertgröße 125 festgesetzt wird, um zu ermitteln, ob ein Pixel fehlerhaft ist. Bei vielen Kameras werden die Lichtverhältnisse durch das Belichtungsautomatik-System gemessen. Bei schlechten Lichtverhältnissen öffnet die Belichtungsautomatik beispielsweise den Verschluß für einen längeren Zeitraum als bei normalen oder hellen Lichtverhältnissen. Deshalb kann die Schwellwertgröße 125 basierend auf dem Belichtungsautomatik-System der Kamera festgesetzt werden. Zusätzlich kann, indem die Schwellwertgröße 125 bei schlechten Lichtverhältnissen gesenkt wird, das BPC-Verfahren zusätzlich dazu dienen, die Rauschpegel bei Bildern mit wenig Licht zu verbessern. Somit kann in manchen Ausführungen die Schwellwertgröße 125 während des Herstellungsverfahrens durch einen Bediener des Digitalbildsystems oder mittels einer Wertetabelle für den Schwellwert, basierend auf Lichtverhältnissen etc., festgesetzt werden. In anderen Ausführungen kann die Schwellwertgröße 125 fixiert oder vorher konfiguriert sein, basierend auf dem verwendeten Sensor und dem CFA.
  • Die Schwellwertgröße 125, der Wertebereich 115 und der Sensorwert 35a des aktuellen Pixels (z.B. Wert1 Pixelx) werden der Vergleichslogik 130 bereitgestellt, um zu ermitteln, ob das aktuelle Pixel ein fehlerhaftes Pixel ist. Die Vergleichslogik 130 vergleicht den Sensorwert 35a des aktuellen Pixels mit dem Wertebereich 115, und wenn der Sensorwert 35a des aktuellen Pixels um mehr als die Schwellwertgröße 125 größer als das Maximum des Bereiches von Sensorwerten 115 oder kleiner als das Minimum des Bereichs von Sensorwerten 115 ist, wird ermittelt, daß das aktuelle Pixel ein fehlerhaftes Pixel ist.
  • Für jedes detektierte fehlerhafte Pixel berechnet eine Ersetzungslogik 140 mittels der Sensorwerte der benachbarten Pixel einen Ersatz-Sensorwert 35b (z.B. Wert2 Pixelx) und ersetzt die Sensorwerte 35a der fehlerhaften Pixel mit den Ersatz-Sensorwerten 35b. In einer Ausführung kann der Ersatz-Sensorwert 35b beispielsweise durch den Median der interpolierten Werte 105 der Pixel, die räumlich unmittelbar an das aktuelle Pixel angrenzen, gebildet werden. In einer anderen Ausführung kann der Ersatz-Sensorwert 35b durch den Median aller räumlich unmittelbar angrenzenden Sensorwerte gebildet werden, einschließlich sowohl der tatsächlichen Sensorwerte 30 als auch der interpolierten Sensorwerte 105. Es versteht sich jedoch, daß andere Ersatz-Sensorwerte 35b wie etwa ein bilinearer Wert oder ein replizierter Pixelwert verwendet werden können.
  • Beispielhafte Schritte des BPC-Algorithmus werden in 3 gezeigt. Anfangs werden die Sensorwerte am aktuellen Pixelort und benachbarten Pixelorten gemessen und dem Digitalbild-Prozessor bereitgestellt, um zu ermitteln, ob das aktuelle Pixel ein fehlerhaftes Pixel ist. Beim Abrufen der benötigten Anzahl von benachbarten Sensorwerten von dem Puffer, um den Sensorwert für das aktuelle Pixel zu analysieren (Schritt 300), kann eine Schwellwertgröße festgesetzt werden (Schritt 305), um die Anzahl von falschen Schlechte-Pixel-Detektionen zu verringern. Beispielsweise kann die Schwellwertgröße entweder vorher festgesetzt sein, basierend auf dem Sensor, den Präferenzen des Bedieners oder dem CFA, oder variabel sein, abhängig von den Lichtverhältnissen des Bildes.
  • Die Sensorwerte in derselben Farbebene wie das aktuelle Pixel werden für räumlich unmittelbar angrenzende Pixel in anderen Farbebenen mittels einer Median-Interpolationstechnik interpoliert (Schritt 310), um sicherzustellen, daß irgendwelche fehlerhaften Sensorwerte isoliert bleiben. Aus diesen interpolierten Werten und allen räumlich unmittelbar angrenzenden rohen (tatsächlichen) Sensorwerten in der gleichen Farbebene, werden eine maximale Schätzung (Schritt 315) und eine minimale Schätzung (Schritt 320) für den Sensorwert des aktuellen Pixels ermittelt. Die Schwellwertgröße wird zu der maximalen Schätzung addiert, um eine obere Grenze zu berechnen (Schritt 325), und von der niedrigen Schätzung subtrahiert, um eine untere Grenze zu berechnen (Schritt 330). Wenn der Sensorwert des aktuellen untersuchten Pixels die obere Grenze übersteigt (Schritt 335) oder unter der unteren Grenze liegt (Schritt 340), wird bestimmt, daß das aktuelle Pixel fehlerhaft ist (Schritt 345), und der Sensorwert des aktuellen Pixels wird mit einem Ersatz-Sensorwert er setzt, der aus den räumlich unmittelbar angrenzenden Nachbarpixeln geschätzt wird (Schritt 350). Wenn der Sensorwert jedoch weder über der oberen Grenze noch unter der unteren Grenze liegt, ist das aktuelle Pixel nicht fehlerhaft (Schritt 355) und keine Änderungen werden an dem Sensorwert des aktuellen Pixels vorgenommen.
  • Abhängig von dem verwendeten CFA können grüne (Luminanz-)Pixel geringfügig anders verarbeitet werden als rote oder blaue (Chrominanz-)Pixel. Die 4 zeigt eine Beispiel eines 5×5-Blocks von Pixeln 25, die beispielhafte rohe grüne Sensorwerte und interpolierte grüne Sensorwerte, die in Übereinstimmung mit Ausführungen des BPC-Algorithmus und der vorliegenden Erfindung erzeugt wurden, darstellen. Der Sensorwert 35 des aktuellen geprüften Pixels wird mit G5 bezeichnet, die rohen Sensorwerte 30, die von Pixeln erhalten werden, die dieselbe Farbe wie das aktuelle Pixel haben, werden mit „Gn" bezeichnet, und die interpolierten Sensorwerte 105, die von benachbarten rohen Sensorwerten erhalten wurden, werden mit „gn" bezeichnet. Es werden keine Sensorwerte für diejenigen Pixel gezeigt, die nicht bei der Ermittlung, ob das aktuelle Pixel fehlerhaft ist, verwendet werden.
  • In dem Beispiel, das in 4 gezeigt wird, werden sowohl die aktuelle Zeile 28a von Sensorwerten 30, die den aktuellen Sensorwert 35 umfaßt, als auch die zwei Zeilen 28b über und die unter der aktuellen Zeile 28a in dem Puffer gespeichert und verarbeitet, um zu ermitteln, ob das aktuelle Pixel „G5" ein fehlerhaftes Pixel ist. Die Sensorwerte 30 der zwei Zeilen 28b darüber und darunter sind die minimal nötige Anzahl, um die Median-Interpolation für alle die unterschiedlichen räumlich unmittelbar an das aktuelle Pixel angrenzenden Farbpixel für eine Bayer-Farbfilter-Mosaikstruktur durchzuführen. Mehr oder weniger Zeilen von Sensorwerten können jedoch bei dem Interpolationsverfahren verwendet werden. Es kann beispielsweise nur die eine Zeile darüber und die eine Zeile darunter gespeichert werden, um ausschließlich die horizontal räumlich unmittelbar angrenzenden Sensorwerte zu interpolieren. Zusätzlich können in anderen Ausführungen nur diejenigen Sensorwerte, die zur Interpolation von räumlich unmittelbar angrenzenden Werten nötig sind, in dem Puffer gespeichert oder verarbeitet werden.
  • Der 5×5-Block von Pixeln 25 in 4 kann verwendet werden, um eine Beispiel-Implementierung des BPC-Algorithmus darzustellen, der ermitteln soll, ob ein grünes Pixel fehlerhaft ist, indem er grüne Sensorwerte von räumlich unmittelbar angrenzenden unterschiedlichen Nachbar-Farbpixeln interpoliert, wie in den beispielhaften Schritten von 5 dargestellten ist. Für grüne Pixel zeigt eine Untersuchung des oben beschriebenen Bayer-Musters, daß die diagonalen Nachbarn auch grün sind, daß aber die horizontalen und vertikalen Nachbarn nicht grün sind. Deshalb können, für ein grünes aktuelles Pixel, die grünen Werte für die horizontalen und vertikalen Nachbarn mittels einer Median-Interpolationstechnik geschätzt werden, um grüne Werte an allen Pixelorten, die räumlich an das aktuelle grüne Pixel angrenzen, bereitzustellen.
  • Für jeden der fehlenden grünen Werte beginnt das Interpolationsverfahren mit dem Abrufen der Sensorwerte der vier an den Pixelort des fehlenden grünen Wertes räumlich unmittelbar angrenzenden grünen Nachbarpixel (Schritt 500). Aus diesen vier Sensorwerten wird ein interpolierter Wert mittels des Medians von vier räumlich unmittelbar angrenzenden Nachbarn berechnet (Schritt 510). Zum Beispiel ist, wie in 4 gezeigt ist, der interpolierte Wert g11 für den oberen vertikalen Nachbarn des aktuellen Pixels G5 der Median der Sensorwerte der vier unmittelbar benachbarten grünen Pixel G1, G2, G3 und G5. Ähnlich ist der interpolierte Wert g21 für den linken horizontalen Nachbarn der Median der Sensorwerte der vier unmittelbar benachbarten grünen Pixel G2, G4, G5 und G7. Die interpolierten Werte g31 und g22 können auf eine ähnliche Weise berechnet werden. Als Beispiel beträgt, wenn die Werte von G3, G5, G6 und G8 11, 13, 45 bzw. 15 betragen, der interpolierte Wert g22: (13 + 15)/2 = 14.
  • Durch die Verwendung des Medians der vier räumlich unmittelbar angrenzenden grünen Nachbarn des fehlenden grünen Pixels als den interpolierten Wert, wird, wenn einer der vier grünen Nachbarn ein fehlerhafter Pixel ist, der fehlerhafte Wert nicht in irgendeinen der interpolierten Werte „verschmiert". Dies kann man leicht aus dem obigen Beispiel erkennen. Von den oben aufgelisteten Sensorwerten G3, G5, G6 und G8 ist der Sensorwert von G6 (45), aufgrund der großen Differenz, verglichen mit den umliegenden Werten, möglicherweise indikativ für ein fehlerhaftes Pixel. Da die Median-Interpolation die hohen und die niedrigen Werte entfernt, wird der Wert von G6 gefiltert und nicht zur Berechnung des interpolierten Wertes verwendet. Daher isoliert die Median-Interpolation fehlerhafte Pixelwerte, um sicherzustellen, daß fehlerhafte Pixelwerte die interpolierten Werte nicht verzerren.
  • Dieses Verfahren wird wiederholt, bis alle fehlenden grünen Werte für die räumlich an das aktuelle grüne Pixel unmittelbar angrenzenden Pixel interpoliert wurden (Schritt 520). Sobald die Interpolation durchgeführt wurde, ändert sich das Muster der grünen Pixel, wie in 4 gezeigt ist (wobei die interpolierten Werte in Kleinschreibung gezeigt sind). Nun kann der aktuellen grüne Sensorwert (G5 in 4) mit den räumlich unmittelbar angrenzenden Nachbarn verglichen werden, um zu ermitteln, ob der aktuelle grüne Sensorwert fehlerhaft ist. Für normale Pixel impliziert die Glätte, die von der Optik auferlegt wird und die Stetigkeit von Objekten, daß der Sensorwert eines Pixels nicht die Sensorwerte von allen den unmittelbaren Nachbarn um mehr als eine Schwellwertgröße übersteigen sollte, und analog, daß der Sensorwert des Pixels nicht unter die Sensorwerte von allen den unmittelbaren Nachbarn um mehr als eine Schwellwertgröße sinken sollte.
  • Um das Pixel zu testen, werden der maximale Sensorwert und der minimale Sensorwert der räumlich unmittelbar angrenzenden Nachbarn als die Basis verwendet, um zu ermitteln, ob das aktuelle Pixel fehlerhaft ist. Bei einem Bayer-CFA haben grüne Pixel räumlich unmittelbar angrenzende diagonale grüne Nachbarn. Daher können, wenn der maximale und der minimale Sensorwert ermittelt werden, entweder alle der räumlich unmittelbar angrenzenden Werte (einschließlich der rohen Sensorwerte von den angrenzenden grünen Pixeln) verwendet werden (Schritte 530 und 540) oder es können nur die interpolierten räumlich unmittelbar angrenzenden Pixel verwendet werden (Schritte 530 und 550). Da die interpolierten Werte nicht durch fehlerhafte Pixel verzerrt sind (wie oben erläutert), kann die ausschließliche Verwendung der interpolierten Werte eine genauere Schätzung des maximalen und des minimalen Wertes bereitstellen. Aus dem maximalen und dem minimalen Wert können die obere und die untere Grenze mittels der konfigurierbaren Schwellwertgröße (T) berechnet werden (Schritt 560). Als ein Beispiel ist ein Wert von T = 7 für 8-Bit-Systeme für die meisten Bilder geeignet. Es versteht sich jedoch, daß der Wert von T, abhängig von dem Rauschpegel des Bildes, angepaßt werden kann.
  • Unter Verwendung des Beispiels in 4 wird das aktuelle Pixel G5 als fehlerhaft angesehen, wenn entweder: G5 > max(G2, g11, G3, g21, g22, G7, g31, G8) + Toder G5 < min(G2, g11, G3, g21, g22, G7, g31, G8) – T.
  • Alternativ kann das aktuelle Pixel G5 als fehlerhaft angesehen werden, wenn entweder: G5 > max(g11, g21, g22, g31) + Toder G5 < min(g11, g21, g22, g31) – T.
  • Wenn G5 aufgrund eines der Tests fehlerhaft ist (Schritt 570), wird der Sensorwert von G5 unter Verwendung eines Ersatz-Sensorwerts ersetzt, der aus den Sensorwerten von benachbarten Pixeln geschätzt wird (Schritt 580). Der Sensorwert kann beispielsweise durch den Median der vier interpolierten Werte {g11, g21, g22, g31} ersetzt werden. Man beachte, daß alternative Ersatz-Sensorwerte wie etwa ein bilinearer Wert oder ein replizierter Pixelwert möglich sind. Der gesamte Vorgang wird für jedes der grünen Pixel in dem Bild wiederholt (Schritt 590).
  • In anderen Ausführungen kann eine Variante der Rangordnungsstatistik als der Test verwendet werden, ob ein Pixel fehlerhaft ist. Zum Beispiel kann, anstatt den Maximalwert und den Minimalwert zu verwenden, ein Median- oder ein Mittelwert verwendet werden. Als Beispiel würde, wenn der Median verwendet würde, das Pixel G5 als fehlerhaft angesehen, wenn entweder: G5 > median(G2, g11, G3, g21, g22, G7, g31, G8) + Toder G5 < median(G2, g11, G3, g21, g22, G7, g31, G8) – T.
  • Alternativ kann das aktuelle Pixel G5 als fehlerhaft angesehen werden, wenn entweder: G5 > median(g11, g21, g22, g31) + Toder G5 < median(g11 ' g21, g22, g31) – T.
  • Es versteht sich, daß wenn der Median (oder der Mittelwert) verwendet wird, die Schwellwertgröße (T) normalerweise größer wäre, als wenn der Maximalwert oder der Minimalwert verwendet werden.
  • Wendet man sich nun den 6A und 6B zu, so wird ein beispielhafter 5×5-Block von Pixeln 25, der rohe rote Sensor-Beispielwerte 30 und interpolierte rote Sensorwerte 105 nach Ausführungen des BPC-Algorithmus der vorliegenden Erfindung darstellt, gezeigt. Der Sensorwert 35 des aktuellen untersuchten Pixels wird mit R5 bezeichnet, die rohen Sensorwerte 30, die von Pixeln erhalten werden, die dieselbe Farbe wie das aktuelle Pixel haben, werden mit „Rn" bezeichnet, und die interpolierten Sensorwerte 105, die von benachbarten rohen Sensorwerten erhalten wurden, werden mit „rn" bezeichnet. Es werden keine Sensorwerte für diejenigen Pixel gezeigt, die nicht bei der Ermittlung, ob das aktuelle Pixel fehlerhaft ist, verwendet werden.
  • In dem in den 6A und 6B gezeigten Beispiel werden sowohl die aktuelle Zeile 28a von Sensorwerten 30, die den aktuellen Sensorwert 35 umfaßt, als auch die zwei Zeilen 28b über und die unter der aktuellen Zeile 28a in dem Puffer gespeichert und verarbeitet, um zu ermitteln, ob das aktuelle Pixel „R5" ein fehlerhaftes Pixel ist. Die Sensorwerte 30 der zwei Zeilen 28b darüber und darunter sind die minimale Anzahl, die für eine Bayer-Farbfilter-Mosaikstruktur notwendig ist, um die Median-Interpolation für alle die unterschiedlichen räumlich unmittelbar an das aktuelle Pixel angrenzenden Farbpixel durchzuführen. Mehr oder weniger Zeilen von Sensorwerten können jedoch bei dem Interpolationsverfahren verwendet werden. Es kann beispielsweise nur die eine Zeile darüber und die eine Zeile darunter gespeichert werden, um ausschließlich die horizontal räumlich unmittelbar angrenzenden Sensorwerte zu interpolieren. Zusätzlich können in anderen Ausführungen nur diejenigen Sensorwerte, die zur Interpolation von räumlich unmittelbar angrenzenden Werten nötig sind, in dem Puffer gespeichert oder verarbeitet werden.
  • Der 5×5-Block von Pixeln 25 in den 6A und 6B kann verwendet werden, um eine Beispiel-Implementierung des BPC-Algorithmus darzustellen, der ermitteln soll, ob ein rotes Pixel fehlerhaft ist, indem er rote Sensorwerte von räumlich unmittelbar angrenzenden unterschiedlichen Nachbar-Farbpixeln interpoliert, wie in den beispielhaften Schritten von 7 dargestellten ist. Es versteht sich, daß obwohl es nicht gezeigt ist, ein ähnliches Verfahren für blaue Pixel verwendet wird. Anders als bei grünen Pixeln gibt es in dem Bayer-Muster keine räumlich unmittelbar angrenzenden roten Nachbarn für ein rotes Pixel. Daher müssen für ein aktuelles rotes Pixel die roten Werte für die horizontal, vertikal und diagonal räumlich unmittelbar angrenzenden Nachbarn mittels einer Median-Interpolationstechnik geschätzt werden, um rote Werte an allen Pixelorten, die räumlich unmittelbar an das aktuelle rote Pixel angrenzen, bereitzustellen.
  • Die Median-Interpolation für Chrominanz-Pixel (rote und blaue Pixel) weist zwei Schritte auf. Als erstes werden fehlende Werte, die vier diagonal räumlich unmittelbar angrenzende Nachbarn aufweisen, mittels des Medians der vier diagonalen Nachbarn interpoliert. Als zweites werden die übrigen fehlenden Pixel mittels der im Norden, Süden, Osten und Westen räumlich unmittelbar angrenzenden Nachbarn interpoliert. Es werden also anfangs die fehlenden roten Werte für die diagonal räumlich unmittelbar an das aktuelle Pixel angrenzenden Nachbarn berechnet, da jeder der diagonal räumlich unmittelbar an das aktuelle Pixel angrenzenden Nachbarn vier rote diagonal räumlich unmittelbar angrenzende Nachbarn aufweist. Für jeden der fehlenden diagonalen roten Werte beginnt das Interpolationsverfahren mit dem Abrufen der Sensorwerte der vier roten diagonalen Nachbarpixel des fehlenden diagonalen roten Wertes (Schritt 700). Aus diesen vier Sensorwerten wird ein interpolierter Wert mittels des Medians der vier unmittelbaren Nachbarn berechnet (Schritt 710).
  • Zum Beispiel ist, wie in 6A gezeigt ist, der interpolierte Wert r11 für den oberen linken diagonalen Nachbarn des aktuellen Pixels R5 der Median der Sensorwerte der vier diagonalen roten Nachbarpixel: R1, R2, R4 und R5. Ähnlich ist interpolierte Wert r13 für den oberen rechten diagonalen Nachbarn der Median der Sensorwerte der vier diagonalen roten Nachbarpixel R2, R3, R5 und R6. Die interpolierten Werte r31 und r33 können auf eine ähnliche Weise berechnet werden. Dieses Verfahren wird wiederholt, bis alle fehlenden diagonalen roten Werte r11, r13, r31 und r33 interpoliert worden sind (Schritt 720).
  • Daraufhin werden die fehlenden roten Werte für die horizontal und vertikal (im Norden, Süden, Osten und Westen) räumlich unmittelbar angrenzenden Nachbarn des aktuellen roten Pixels mittels der roten Sensorwerte der sie umgebenden roten Nachbarpixel und der diagonalen interpolierten roten Werte berechnet. Für jeden der fehlenden horizontalen oder vertikalen roten Werte beginnt das Interpolationsverfahren, indem es die rohen Sensorwerte und die interpolierten Sensorwerte für die vier benachbarten Pixelorte des Pixelortes des fehlenden roten Wertes abruft (Schritt 730). Aus diesen vier Sensorwerten wird ein interpolierter Wert mittels des Medians der vier räumlich unmittelbar angrenzenden Nachbarn berechnet (Schritt 740).
  • Der interpolierte Wert r12 für den oberen vertikalen Nachbarn des aktuellen Pixels R5 ist beispielsweise, wie in 6B gezeigt ist, der Median der Sensorwerte von den vier Nachbarpixeln: R2, r11, R5 und r13. Ähnlich ist der interpolierte Wert r22 für den rechten horizontalen Nachbarn der Median der Sensorwerte der vier Nachbarpixel R6, r33, R5 und r13. Die interpolierten Werte r21 und r32 können auf ähnliche Weise berechnet werden. Dieses Verfah ren wird wiederholt, bis alle fehlenden horizontalen (r21 und r22) und vertikalen (r12 und r32) roten Werte interpoliert worden sind (Schritt 750).
  • Sobald die Interpolation durchgeführt wurde, verändert sich das Muster von roten Pixeln so, wie es in 6B gezeigt ist (mit den interpolierten Werten in Kleinschreibung). Daraufhin werden der maximale Sensorwert und der minimale Sensorwert der räumlich unmittelbar angrenzenden interpolierten roten Werte als Basis verwendet, um zu ermitteln, ob das aktuelle Pixel fehlerhaft ist (Schritt 760). Aus dem maximalen und dem minimalen Wert können die obere und die untere Grenze mittels der konfigurierbaren Schwellwertgröße (T) berechnet werden (Schritt 770). Die Schwellwertgröße T, die für die rote Farbebene und für die blaue Farbebene verwendet wird, kann dieselbe wie diejenige sein, die für die grüne Farbebene verwendet wird, obwohl Änderungen der Schwellwertgröße zwischen den Farben auftreten können.
  • Unter Verwendung des Beispiels in 6B wird das aktuelle Pixel als fehlerhaft angesehen, wenn entweder: R5 > max(r11, r12, r13, r21, r22, r31, r32, r33) + Toder R5 < min(r11, r12, r13, r21, r22, r31, r32, r33) – T.
  • Wenn R5 nach einem der Tests fehlerhaft ist (Schritt 780), werden die Sensorwerte von R5 unter Verwendung eines Sensorwertes ersetzt, der aus den Sensorwerten der benachbarten Pixel geschätzt wird (Schritt 790). Der Sensorwert kann beispielsweise durch den Median all der interpolierten Werte {r11, r12, r13, r21, r22, r31, r32, r33} ersetzt werden. Man beachte, daß alternative Ersatz-Sensorwerte wie etwa ein bilinearer Wert oder ein replizierter Pixelwert möglich sind. Das gesamte Verfahren wird für jeden der roten Pixel in dem Bild wiederholt (Schritt 795).
  • In weiteren Ausführungen können die interpolierten Werte, die während des Schlechte-Pixel-Korrekturverfahrens berechnet wurden, während des Auflösens der Mosaikstruktur wiederverwendet werden, wie in 8 gezeigt wird. Wenn die rohen Sensorwerte 30 bei dem digitalen Signalprozessor 40 eintreffen, werden die rohen Sensorwerte 25 in drei rohe Farbebenen 80 getrennt, die jeweils fehlende Elemente aufweisen. Der digitale Signalprozessor 40 wendet Interpolationslogik 100 auf die rohen Farbebenen 80 an, um die fehlen den Werte an jedem der Orte zu ermitteln. Die Interpolationslogik 100 interpoliert beispielsweise mittels Median-Interpolation, wie oben in Verbindung mit den 4-7 erläutert wurde, den grünen Wert an jedem der roten oder blauen Pixelorte, den roten Wert an jedem der grünen oder blauen Pixelorte und den blauen Wert an jedem der grünen oder roten Pixelorte. Alle fehlenden Sensorwerte werden interpoliert, um alle der räumlich unmittelbar angrenzenden Sensorwerte für jedes der Pixel bereitzustellen. Die resultierenden Farbebenen mit aufgelöster Mosaikstruktur 85 umfassen sowohl die Originalwerte, die durch Großbuchstaben dargestellt werden (G, R und B), als auch die interpolierten Werte, die durch Kleinbuchstaben dargestellt werden (g, r und b).
  • Die Farbebenen mit aufgelöster Mosaikstruktur 85 werden von der Schlechte-Pixel-Korrekturlogik 150 verwendet, um sowohl mittels der interpolierten räumlich angrenzenden Sensorwerte einen Bereich von Werten für jedes der Pixel zu ermitteln als auch jeden der Sensorwerte mit seinem zugehörigen Bereich von Werten zu vergleichen, um zu ermitteln, ob das Pixel fehlerhaft ist. Alle fehlerhaften Pixel werden mittels Ersatz-Sensorwerten, die aus den benachbarten Pixeln geschätzt werden, ersetzt. Die korrigierten Farbebenen mit aufgelöster Mosaikstruktur 85 werden als das Farbbild mit aufgelöster Mosaikstruktur ohne weitere Verarbeitung ausgegeben. Somit wird sowohl die BPC als auch das Auflösen der Mosaikstruktur in einer einzigen Stufe durchgeführt.
  • Die 9 stellt beispielhafte Schritte zur Durchführung der Schlechte-Pixel-Korrektur und zum Auflösen der Mosaikstruktur in einer einzigen Stufe dar. Anfangs empfangt der Prozessor die rohen Sensorwerte und interpoliert alle fehlenden Sensorwerte (wie oben im Zusammenhang mit den 4-7 beschrieben wurde)(Schritt 900). Die interpolierten Farbebenen werden verwendet, um fehlerhafte Pixel zu detektieren (Schritt 910), und wenn irgendwelche fehlerhaften Pixel detektiert werden (Schritt 920), werden die Sensorwerte der fehlerhaften Pixel unter Verwendung von Ersatz-Sensorwerten, die aus den benachbarten Pixeln geschätzt wurden, ersetzt. (Schritt 930). Die korrigierten, interpolierten Farbebenen werden als das Bild mit aufgelöster Mosaikstruktur ausgegeben (Schritt 940), um in nachfolgender Verarbeitung verwendet zu werden, wie etwa Komprimierung oder Umwandlung, um in einer Anzeigevorrichtung angezeigt zu werden.
  • Wie der Fachmann bemerken wird, können die erfinderischen Konzepte, die in der vorliegenden Erfindung beschrieben wurden, in einem breiten Bereich von Anwendungen modifiziert und variiert werden. Daher soll der Schutzumfang des patentierten Gegenstandes nicht durch irgendwelche der beispielhaften behandelten Lehren begrenzt sein, sondern ist dagegen durch die folgenden Ansprüche definiert.

Claims (10)

  1. Digitalbildsystem (10) zum Korrigieren von Sensorwerten (30), die von Pixeln (25) innerhalb einer Anordnung aus Pixeln erzeugt wurden, wobei jedes der Pixel (25) innerhalb der Anordnung aus Pixeln jeweils einen der Sensorwerte (30) für ein Farbbild erzeugt, wobei das Digitalbildsystem (10) einen Puffer (50) zum Speichern wenigstens eines Teils der Sensorwerte (30) aufweist, die von den Pixeln (25) für das Bild erzeugt wurden, wobei einer der gespeicherten Sensorwerte (30) ein aktueller Sensorwert (35) in einer ersten Farbebene (80) ist, der von einem aktuellen Pixel der Pixel (25) erzeugt wurde; und einen Sensor (40) aufweist, der so angeschlossen ist, daß er die Sensorwerte (30), die in dem Puffer (50) gespeichert sind, empfangt, interpolierte Sensorwerte (105) in der ersten Farbebene (80) für Pixel (25), die zu einer Farbebene gehören, welche nicht die erste Farbebene ist, und die dem aktuellen Pixel (25) räumlich benachbart sind, unter Verwendung der gespeicherten Sensorwerte (30) berechnet und ermittelt, ob das aktuelle Pixel (25) fehlerhaft ist, dadurch gekennzeichnet, daß der Prozessor die interpolierten Sensorwerte dazu verwendet zu ermitteln, ob das aktuelle Pixel (25) fehlerhaft ist, und daß der Prozessor dazu konfiguriert ist, die interpolierten Sensorwerte (105) unter Verwendung einer Interpolationstechnik zu berechnen, welche sicherstellt, daß jeder fehlerhafte Sensorwert isoliert bleibt.
  2. Digitalbildsystem (10) nach Anspruch 1, wobei der Prozessor (40) ferner dazu konfiguriert ist, eine Schwellwertgröße (125) zu ermitteln und einen Bereich von Sensorwerten (115) für das aktuelle Pixel (25) unter Verwendung wenigstens der interpolierten Werte (105) zu berechnen, wobei das aktuelle Pixel (25) fehlerhaft ist, wenn der aktuelle Sensorwert (35) um mehr als die Schwellwertgröße (125) außerhalb des Bereiches der Sensorwerte (115) liegt.
  3. Digitalbildsystem (10) nach Anspruch 2, wobei der Prozessor (40) ferner dazu konfiguriert ist, den aktuellen Sensorwert (35a) durch einen Ersatzsensorwert (35b), der unter Verwendung der interpolierten Sensorwerte (105) berechnet wurde, zu ersetzen, wenn das aktuelle Pixel (25) fehlerhaft ist.
  4. Digitalbildsystem (10) nach Anspruch 3, wobei der Prozessor (40) ferner dazu konfiguriert ist, die Sensorwerte (30) mittels einer die Demosaik-Technik unter Verwendung der interpolierten Sensorwerte (105) und der Ersatzsensorwerte (35b) zu verarbeiten.
  5. Digitalbildsystem (10) nach einem der vorangehenden Ansprüche, wobei der Prozessor (40) ferner dazu konfiguriert ist, die interpolierten Sensorwerte (105) unter Verwendung einer Median-Interpolationstechnik zu berechnen.
  6. Verfahren zum Korrigieren von Sensorwerten (30), welche von Pixeln (25) innerhalb einer Anordnung aus Pixeln erzeugt wurden, wobei jedes der Pixel (25) innerhalb der Anordnung aus Pixeln jeweils einen Sensorwert (30) für ein Farbbild erzeugt, mit folgenden Verfahrensschritten: Empfangen (Schritt 300) wenigstens eines Teils der Sensorwerte (30), die von den Pixeln (25) für das Bild erzeugt wurden, wobei einer der empfangenen Sensorwerte (30) ein aktueller Sensorwert (35) in einer ersten Farbebene (80) ist, der von einem aktuellen Pixel der Pixel (25) erzeugt wurde; Berechnen (Schritt 310) interpolierter Sensorwerte (105) einer ersten Farbebene (80) für Pixel (25), die zu einer Farbebene gehören, welche nicht die erste Farbebene ist, und die dem aktuellen Pixel (25) räumlich benachbart sind, unter Verwendung der empfangenen Sensorwerte (30); und Ermitteln (Schritte 335 und 340), ob das aktuelle Pixel (25) fehlerhaft ist, gekennzeichnet durch die Verwendung der interpolierten Sensorwerte (105), um zu ermitteln, ob das aktuelle Pixel fehlerhaft ist, und dadurch, daß der Berechnungsschritt eine Interpolationstechnik verwendet, die sicherstellt, daß jeder fehlerhafte Sensorwert isoliert bleibt.
  7. Verfahren nach Anspruch 6, wobei der Schritt des Ermittelns ferner umfaßt: Ermitteln (Schritt 305) einer Schwellwertgröße (125); Berechnen (Schritte 315-330) eines Bereichs von Sensorwerten (115) für das aktuelle Pixel (25) unter Verwendung wenigstens der interpolierten Sensorwerte (105), und Ermitteln (Schritte 335 und 340), daß das aktuelle Pixel (25) fehlerhaft ist, wenn der aktuelle Sensorwert (35) um mehr als die Schwellwertgröße (125) außerhalb des Bereiches der Sensorwerte (30) liegt.
  8. Verfahren nach Anspruch 7, mit dem weiteren Verfahrensschritt: Ersetzen (Schritt 350) des aktuellen Sensorwertes (35a) durch einen Ersatzsensorwert (35b), der unter Verwendung der interpolierten Sensorwerte (105) berechnet wurde, wenn das aktuelle Pixel (25) fehlerhaft ist.
  9. Verfahren nach Anspruch 8, mit dem weiteren Verfahrensschritt: Demosaik-Verarbeitung (Schritt 930) der Sensorwerte (30) unter Verwendung der interpolierten Sensorwerte (105) und der Ersatzsensorwerte (35b).
  10. Verfahren nach einem der Ansprüche 6 bis 9, wobei das Berechnen ferner umfaßt: Berechnen (Schritt 310) der interpolierten Sensorwerte (105) unter Verwendung einer Median-Interpolationstechnik.
DE60314692T 2002-08-16 2003-04-30 Digitalbildverfahren und -vorrichtung zum Zusammenfügen von Entfernung des Mosaikeffekts und Korrektur von schlechten Pixeln Expired - Lifetime DE60314692T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US222150 1998-12-29
US10/222,150 US7015961B2 (en) 2002-08-16 2002-08-16 Digital image system and method for combining demosaicing and bad pixel correction

Publications (2)

Publication Number Publication Date
DE60314692D1 DE60314692D1 (de) 2007-08-16
DE60314692T2 true DE60314692T2 (de) 2008-04-10

Family

ID=30770648

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60314692T Expired - Lifetime DE60314692T2 (de) 2002-08-16 2003-04-30 Digitalbildverfahren und -vorrichtung zum Zusammenfügen von Entfernung des Mosaikeffekts und Korrektur von schlechten Pixeln

Country Status (4)

Country Link
US (1) US7015961B2 (de)
EP (1) EP1389771B1 (de)
JP (1) JP4374488B2 (de)
DE (1) DE60314692T2 (de)

Families Citing this family (119)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283164B2 (en) * 2002-09-18 2007-10-16 Micron Technology, Inc. Method for detecting and correcting defective pixels in a digital image sensor
JP4225795B2 (ja) * 2003-01-22 2009-02-18 オリンパス株式会社 撮像システム、画像処理プログラム
JP2004320128A (ja) * 2003-04-11 2004-11-11 Mega Chips Corp 欠陥画素補正装置
US9171577B1 (en) 2003-04-25 2015-10-27 Gopro, Inc. Encoding and decoding selectively retrievable representations of video content
JP3914216B2 (ja) * 2003-05-15 2007-05-16 松下電器産業株式会社 画像欠陥補正装置、及び、画像欠陥補正方法
US8471852B1 (en) 2003-05-30 2013-06-25 Nvidia Corporation Method and system for tessellation of subdivision surfaces
US7269295B2 (en) * 2003-07-31 2007-09-11 Hewlett-Packard Development Company, L.P. Digital image processing methods, digital image devices, and articles of manufacture
US7430334B2 (en) * 2003-07-31 2008-09-30 Hewlett Packard Development Company, L.P. Digital imaging systems, articles of manufacture, and digital image processing methods
US20050151860A1 (en) * 2004-01-08 2005-07-14 Silverstein D. A. Image sensing device and method
US7369711B2 (en) * 2004-02-26 2008-05-06 Ge Medical Systems Global Technology Company, Llc Asynchronous calibration and correction of a solid-state detector
DE102004015876A1 (de) * 2004-03-31 2005-10-27 Siemens Ag Verfahren zum Auslesen eines Flächendetektors
JP2005354278A (ja) * 2004-06-09 2005-12-22 Seiko Epson Corp 撮像手段の撮像した画像の画像データを処理する画像データ処理
US8204306B2 (en) * 2004-06-14 2012-06-19 Xerox Corporation Method for image segmentation based on block clustering for improved processing of touching characters
EP1613091B1 (de) * 2004-07-02 2009-08-26 Mitsubishi Electric Information Technology Centre Europe B.V. Intra-Bildprädiktion für zeitlich Hochpass gefilterte Bilder in Wavelet-Videokodierung
TWI256847B (en) * 2004-08-30 2006-06-11 Via Tech Inc Method and apparatus for dynamically detecting pixel values
CN1301621C (zh) * 2004-09-08 2007-02-21 威盛电子股份有限公司 动态检测像素数值的方法与装置
JP4533124B2 (ja) * 2004-12-21 2010-09-01 イーストマン コダック カンパニー 画素欠陥補正装置
KR100636971B1 (ko) * 2004-12-30 2006-10-19 매그나칩 반도체 유한회사 이미지센서의 포커스 데이타 생성 장치 및 방법
JP4375269B2 (ja) * 2005-03-29 2009-12-02 セイコーエプソン株式会社 印刷制御方法、印刷制御装置、及び印刷制御プログラム
US7683948B2 (en) * 2005-03-31 2010-03-23 Freescale Semiconductor, Inc. System and method for bad pixel replacement in image processing
JP4388909B2 (ja) * 2005-04-25 2009-12-24 イーストマン コダック カンパニー 画素欠陥補正装置
US8416323B2 (en) * 2005-05-19 2013-04-09 Mstar Semiconductor Inc. Noise reduction method and noise reduction apparatus
US8274715B2 (en) * 2005-07-28 2012-09-25 Omnivision Technologies, Inc. Processing color and panchromatic pixels
US8139130B2 (en) 2005-07-28 2012-03-20 Omnivision Technologies, Inc. Image sensor with improved light sensitivity
US8089537B2 (en) * 2005-08-23 2012-01-03 Nikon Corporation Image processing system and image processing program for defective pixel correction
JP4961182B2 (ja) * 2005-10-18 2012-06-27 株式会社リコー ノイズ除去装置、ノイズ除去方法、ノイズ除去プログラム及び記録媒体
US8571346B2 (en) * 2005-10-26 2013-10-29 Nvidia Corporation Methods and devices for defective pixel detection
US7885458B1 (en) 2005-10-27 2011-02-08 Nvidia Corporation Illuminant estimation using gamut mapping and scene classification
US7750956B2 (en) * 2005-11-09 2010-07-06 Nvidia Corporation Using a graphics processing unit to correct video and audio data
US20070133902A1 (en) * 2005-12-13 2007-06-14 Portalplayer, Inc. Method and circuit for integrated de-mosaicing and downscaling preferably with edge adaptive interpolation and color correlation to reduce aliasing artifacts
US8588542B1 (en) 2005-12-13 2013-11-19 Nvidia Corporation Configurable and compact pixel processing apparatus
CN100546335C (zh) * 2005-12-21 2009-09-30 比亚迪股份有限公司 一种实现异常点数值校正的色彩插值方法
US8737832B1 (en) * 2006-02-10 2014-05-27 Nvidia Corporation Flicker band automated detection system and method
US8605797B2 (en) * 2006-02-15 2013-12-10 Samsung Electronics Co., Ltd. Method and system for partitioning and encoding of uncompressed video for transmission over wireless medium
US8014597B1 (en) 2006-03-22 2011-09-06 Woodman Labs Method for efficient compression and decoding of single sensor color image data
CN101060643B (zh) * 2006-04-17 2011-12-28 北京大学深圳研究生院 一种用于数字摄像的自适应坏点去除方法
US7646910B1 (en) * 2006-04-19 2010-01-12 Ambarella, Inc. Digital video camera non-integer-ratio Bayer domain scaler
US7756355B2 (en) 2006-05-05 2010-07-13 Aptina Imaging Corp. Method and apparatus providing adaptive noise suppression
US7916362B2 (en) * 2006-05-22 2011-03-29 Eastman Kodak Company Image sensor with improved light sensitivity
DE102006028735B4 (de) * 2006-06-20 2009-04-09 Sci-Worx Gmbh Einrichtung zur Interpolation und Filterung von digitalen Bilddaten
US20080158396A1 (en) * 2006-08-07 2008-07-03 Transchip, Inc. Image Signal Processor For CMOS Image Sensors
US8594441B1 (en) 2006-09-12 2013-11-26 Nvidia Corporation Compressing image-based data using luminance
US7649555B2 (en) * 2006-10-02 2010-01-19 Mtekvision Co., Ltd. Apparatus for processing dead pixel
US8031258B2 (en) 2006-10-04 2011-10-04 Omnivision Technologies, Inc. Providing multiple video signals from single sensor
US7925074B2 (en) * 2006-10-16 2011-04-12 Teradyne, Inc. Adaptive background propagation method and device therefor
US20080100725A1 (en) * 2006-10-27 2008-05-01 Abadeer Wagdi W Circuits for enhancing yield and performance of cmos imaging sensors
US20080215261A1 (en) * 2006-10-27 2008-09-04 International Business Machines Corporation Design structure for enhancing yield and performance of cmos imaging sensors
US7860335B2 (en) * 2006-12-04 2010-12-28 The Boeing Company Method and apparatus for smart signal averaging
US8723969B2 (en) * 2007-03-20 2014-05-13 Nvidia Corporation Compensating for undesirable camera shakes during video capture
US8885076B2 (en) * 2007-03-30 2014-11-11 Hewlett-Packard Development Company, L.P. Camera sensor defect correction and noise reduction
US8237830B2 (en) 2007-04-11 2012-08-07 Red.Com, Inc. Video camera
KR101503227B1 (ko) 2007-04-11 2015-03-16 레드.컴 인코포레이티드 비디오 카메라
US8564687B2 (en) * 2007-05-07 2013-10-22 Nvidia Corporation Efficient determination of an illuminant of a scene
US7889921B2 (en) * 2007-05-23 2011-02-15 Eastman Kodak Company Noise reduced color image using panchromatic image
US8698917B2 (en) * 2007-06-04 2014-04-15 Nvidia Corporation Reducing computational complexity in determining an illuminant of a scene
US8842739B2 (en) * 2007-07-20 2014-09-23 Samsung Electronics Co., Ltd. Method and system for communication of uncompressed video information in wireless systems
US8724895B2 (en) 2007-07-23 2014-05-13 Nvidia Corporation Techniques for reducing color artifacts in digital images
US8243823B2 (en) 2007-08-29 2012-08-14 Samsung Electronics Co., Ltd. Method and system for wireless communication of uncompressed video information
US8570634B2 (en) * 2007-10-11 2013-10-29 Nvidia Corporation Image processing of an incoming light field using a spatial light modulator
JP5180795B2 (ja) * 2007-12-10 2013-04-10 キヤノン株式会社 撮像装置及びその制御方法
US8780128B2 (en) * 2007-12-17 2014-07-15 Nvidia Corporation Contiguously packed data
US9177368B2 (en) 2007-12-17 2015-11-03 Nvidia Corporation Image distortion correction
US8035704B2 (en) * 2008-01-03 2011-10-11 Aptina Imaging Corporation Method and apparatus for processing a digital image having defective pixels
US8698908B2 (en) 2008-02-11 2014-04-15 Nvidia Corporation Efficient method for reducing noise and blur in a composite still image from a rolling shutter camera
JP5056501B2 (ja) * 2008-03-12 2012-10-24 株式会社Jvcケンウッド 撮像装置及びこれに用いる欠陥画素補正方法
JP5110289B2 (ja) * 2008-03-24 2012-12-26 株式会社メガチップス ノイズ低減装置およびデジタルカメラ
US9379156B2 (en) * 2008-04-10 2016-06-28 Nvidia Corporation Per-channel image intensity correction
JP5311916B2 (ja) * 2008-07-31 2013-10-09 株式会社エルモ社 撮像装置
US8164660B2 (en) * 2008-10-28 2012-04-24 Omnivision Technologies, Inc. Single row based defective pixel correction
US8373718B2 (en) 2008-12-10 2013-02-12 Nvidia Corporation Method and system for color enhancement with color volume adjustment and variable shift along luminance axis
US9369759B2 (en) * 2009-04-15 2016-06-14 Samsung Electronics Co., Ltd. Method and system for progressive rate adaptation for uncompressed video communication in wireless systems
US8749662B2 (en) * 2009-04-16 2014-06-10 Nvidia Corporation System and method for lens shading image correction
JP5169994B2 (ja) * 2009-05-27 2013-03-27 ソニー株式会社 画像処理装置、撮像装置及び画像処理方法
EP2487565A4 (de) * 2009-10-07 2014-07-09 Sharp Kk Berührungstafel
US8698918B2 (en) * 2009-10-27 2014-04-15 Nvidia Corporation Automatic white balancing for photography
JP5120441B2 (ja) * 2009-11-26 2013-01-16 株式会社ニコン 画像処理装置
KR101696672B1 (ko) * 2010-05-10 2017-01-17 삼성전자주식회사 영상 신호 처리 방법 및 이를 이용하는 영상 촬영 방법
US8774544B1 (en) * 2010-07-23 2014-07-08 Xilinx, Inc. Determining outlier pixels of successive frames
US8351696B2 (en) 2010-09-17 2013-01-08 Foveon, Inc. Correcting defective pixels in digital color images
WO2012063265A2 (en) * 2010-11-12 2012-05-18 Indian Institute Of Technology, Kharagpur Method and apparatus for detecting the bad pixels in sensor array and concealing the error
US20120188406A1 (en) * 2011-01-20 2012-07-26 Apple Inc. Reduced power consumption filter
WO2012117616A1 (ja) * 2011-02-28 2012-09-07 富士フイルム株式会社 撮像装置及び欠陥画素補正方法
US8891866B2 (en) * 2011-08-31 2014-11-18 Sony Corporation Image processing apparatus, image processing method, and program
TWI456991B (zh) 2011-12-02 2014-10-11 Ind Tech Res Inst 壞點偵測方法與電腦程式產品
JP5600812B2 (ja) * 2011-12-28 2014-10-01 富士フイルム株式会社 撮像装置
US8976161B2 (en) 2012-03-01 2015-03-10 Apple Inc. Systems and methods for image processing
US9798698B2 (en) 2012-08-13 2017-10-24 Nvidia Corporation System and method for multi-color dilu preconditioner
US9508318B2 (en) 2012-09-13 2016-11-29 Nvidia Corporation Dynamic color profile management for electronic devices
US9307213B2 (en) 2012-11-05 2016-04-05 Nvidia Corporation Robust selection and weighting for gray patch automatic white balancing
TW201419853A (zh) * 2012-11-09 2014-05-16 Ind Tech Res Inst 影像處理器及其影像壞點偵測方法
US9521384B2 (en) 2013-02-14 2016-12-13 Red.Com, Inc. Green average subtraction in image data
DE102013209165A1 (de) 2013-05-17 2014-11-20 Arnold & Richter Cine Technik Gmbh & Co. Betriebs Kg Pixelkorrekturverfahren
US9418400B2 (en) 2013-06-18 2016-08-16 Nvidia Corporation Method and system for rendering simulated depth-of-field visual effect
US9756222B2 (en) 2013-06-26 2017-09-05 Nvidia Corporation Method and system for performing white balancing operations on captured images
US9826208B2 (en) 2013-06-26 2017-11-21 Nvidia Corporation Method and system for generating weights for use in white balancing an image
WO2015119574A1 (en) * 2014-02-05 2015-08-13 Nanyang Technological University Methods and systems for demosaicing an image
KR20150141821A (ko) * 2014-06-10 2015-12-21 삼성전자주식회사 불균일 특성을 보정하는 디스플레이 장치 및 그 제어 방법
WO2016022374A1 (en) * 2014-08-05 2016-02-11 Seek Thermal, Inc. Local contrast adjustment for digital images
FR3033116B1 (fr) * 2015-02-20 2017-03-24 Stmicroelectronics (Grenoble 2) Sas Procede de selection d’une solution de placement des pixels d’une image en fonction du rendu visuel
JP2017055308A (ja) * 2015-09-10 2017-03-16 キヤノン株式会社 撮像装置及びその制御方法
JP2017055309A (ja) 2015-09-10 2017-03-16 キヤノン株式会社 撮像装置及びその制御方法
KR102326167B1 (ko) * 2015-11-10 2021-11-17 엘지디스플레이 주식회사 유기 발광 표시장치와 그 구동 방법
US10878533B2 (en) * 2016-01-21 2020-12-29 Sony Mobile Communications Inc. Method and device for demosaicing of color images
US10867371B2 (en) 2016-06-28 2020-12-15 Seek Thermal, Inc. Fixed pattern noise mitigation for a thermal imaging system
US10158815B2 (en) * 2016-07-18 2018-12-18 Samsung Electronics Co., Ltd. Method and system for bad pixel correction in image sensors
CN109565533B (zh) 2016-08-02 2021-04-16 株式会社富士 头分离型相机及作业机
JP7313330B2 (ja) 2017-07-05 2023-07-24 レッド.コム,エルエルシー 電子機器でのビデオ画像データ処理
KR102496377B1 (ko) 2017-10-24 2023-02-06 삼성전자주식회사 저항변화 물질층을 가지는 비휘발성 메모리소자
TWI670977B (zh) * 2017-11-06 2019-09-01 瑞昱半導體股份有限公司 不良像素補償方法與裝置
CN109788217B (zh) * 2017-11-13 2021-05-25 瑞昱半导体股份有限公司 不良像素补偿方法与装置
JP7081200B2 (ja) * 2018-02-22 2022-06-07 セイコーエプソン株式会社 画像表示装置、及び画像表示装置の制御方法
KR102666666B1 (ko) 2018-06-01 2024-05-20 삼성전자주식회사 이미지 부호화 장치 및 이미지 복호화 장치
JP6932260B2 (ja) * 2018-06-27 2021-09-08 三菱電機株式会社 画素補間装置及び画素補間方法、並びに画像処理装置、並びにプログラム及び記録媒体
US11276152B2 (en) 2019-05-28 2022-03-15 Seek Thermal, Inc. Adaptive gain adjustment for histogram equalization in an imaging system
CN111340721B (zh) * 2020-02-18 2021-02-12 国网电子商务有限公司 一种像素的修正方法、装置、设备及可读存储介质
KR20220048496A (ko) 2020-10-12 2022-04-20 삼성전자주식회사 이미지 센서의 프로세서, 이미지 처리 장치 및 이의 제어 방법
KR102604109B1 (ko) * 2020-12-09 2023-11-21 에스케이하이닉스 주식회사 이미지 센싱 장치
US11252359B1 (en) * 2021-06-21 2022-02-15 Allegro Microsystems, Llc Image compensation for sensor array having bad pixels
CN114038428A (zh) * 2021-11-24 2022-02-11 惠州华星光电显示有限公司 显示面板的补偿方法及补偿装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8614212D0 (en) * 1986-06-11 1986-07-16 Kodak Ltd Image processing method
EP0496573B1 (de) * 1991-01-24 1995-12-20 Matsushita Electric Industrial Co., Ltd. Schaltung zur Beseitigung von Bildelementdefekten für Festkörper-Bildaufnehmer
US5652621A (en) * 1996-02-23 1997-07-29 Eastman Kodak Company Adaptive color plane interpolation in single sensor color electronic camera
JP4115574B2 (ja) * 1998-02-02 2008-07-09 オリンパス株式会社 撮像装置
GB9825086D0 (en) 1998-11-17 1999-01-13 Vision Group Plc Defect correction in electronic imaging systems
US6806902B1 (en) * 1999-06-08 2004-10-19 Chrontel, Inc. System and method for correcting bad pixel data in a digital camera
US6724945B1 (en) * 2000-05-24 2004-04-20 Hewlett-Packard Development Company, L.P. Correcting defect pixels in a digital image
JP2002010274A (ja) * 2000-06-20 2002-01-11 Olympus Optical Co Ltd カラー画像処理装置
JP2002027324A (ja) 2000-07-04 2002-01-25 Victor Co Of Japan Ltd 不良画素補正装置及び方法
US6985180B2 (en) * 2001-06-19 2006-01-10 Ess Technology, Inc. Intelligent blemish control algorithm and apparatus

Also Published As

Publication number Publication date
EP1389771B1 (de) 2007-07-04
JP4374488B2 (ja) 2009-12-02
DE60314692D1 (de) 2007-08-16
US20040032516A1 (en) 2004-02-19
US7015961B2 (en) 2006-03-21
EP1389771A2 (de) 2004-02-18
EP1389771A3 (de) 2005-05-04
JP2004080761A (ja) 2004-03-11

Similar Documents

Publication Publication Date Title
DE60314692T2 (de) Digitalbildverfahren und -vorrichtung zum Zusammenfügen von Entfernung des Mosaikeffekts und Korrektur von schlechten Pixeln
DE60304785T2 (de) Verfahren zum Detektieren von defekten Bildpunkten in einem digitalen Bildsensor
DE112009005418B4 (de) Bildverarbeitungsgerät
DE60104632T2 (de) Verfahren und System zur Rauschbeseitigung für ein spärlich abgetastetes Bild mit erweitertem Dynamikbereich
DE60211870T2 (de) System und verfahren zur asymmetrischen entfernung des mosaikeffektes in rohbilddaten unter verwendung eines farbunterschiedausgleichs
DE69733978T2 (de) Bilddateninterpolationsgerät
DE69729648T2 (de) Aktivpixelsensormatrix mit mehrfachauflösungsausgabe
DE602005005553T2 (de) Abbildungsvorrichtung und Abbildungsverfahren
DE69733882T2 (de) Kamera mit einem einzigen bildaufnehmer
DE60221757T2 (de) Verfahren und Vorrichtung zur gleichzeitigen Entfernung des Mosaikeffekts und Grössenänderung von Rohbilddaten
DE60026201T2 (de) Abtastverfahren für einen Fotosensor mit mehreren verschieden großen Abtastflächen
DE10344397B4 (de) Vorrichtung und Verfahren zur Kantenhervorhebung bei der Bildverarbeitung
DE112013003422B4 (de) Farbbildaufnahmeelement und Bildaufnahmevorrichtung
DE102015111787A1 (de) Entschachteln eines verschachtelten Hoch-Dynamik-Bereich-Bildes mittels eines Benutzens von YUV-Interpolation
DE112013003464B4 (de) Farbbildgebungselement und Bildgebungsvorrichtung
DE102012213189B4 (de) Bildgebungs-Array mit Fotodioden unterschiedlicher Lichtempfindlichkeiten und zugehörige Bildwiederherstellungsverfahren
DE112009005314B4 (de) Bildaufnahmegerät
DE60104508T2 (de) Verfahren und vorrichtung zum erzeugen eines bildes geringer auflösung aus einem spärlich abgetasteten bild mit erweitertem dynamikbereich
DE102011006272A1 (de) Bildverarbeitungsvorrichtung und Verfahren des Steuerns von dieser
DE112011101066T5 (de) Bildverarbeitungsgerät und steuerungsverfahren für ein bildverarbeitungsgerät
DE102011113546A1 (de) Korrektur fehlerhafter pixel in digitalen farbbildern
DE112017007695T5 (de) Facettenaugen-bildaufnahmevorrichtung, bildverarbeitungsverfahren, programm und aufzeichnungsmedium
DE112011101632T5 (de) Zweidimensionale Superresolutions-Skalierung
DE60131949T2 (de) Verfahren und Vorrichtung zur Durchführung von Tonwertskalenmodifikationen
DE102006050864B4 (de) Verfahren und Vorrichtung zur Korrektur fehlerhafter Pixel für eine bildgebende Festkörpervorrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: APTINA IMAGING CORP., GRAND CAYMAN, CAYMAN ISL, KY