DE102004027471B4 - Method and apparatus for color correction of images with non-linear illumination changes - Google Patents

Method and apparatus for color correction of images with non-linear illumination changes Download PDF

Info

Publication number
DE102004027471B4
DE102004027471B4 DE200410027471 DE102004027471A DE102004027471B4 DE 102004027471 B4 DE102004027471 B4 DE 102004027471B4 DE 200410027471 DE200410027471 DE 200410027471 DE 102004027471 A DE102004027471 A DE 102004027471A DE 102004027471 B4 DE102004027471 B4 DE 102004027471B4
Authority
DE
Germany
Prior art keywords
color
pixel
average local
local color
original
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 - Fee Related
Application number
DE200410027471
Other languages
German (de)
Other versions
DE102004027471A1 (en
Inventor
Marc Ebner
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.)
EBNER, MARC, DR., 72639 NEUFFEN, DE
Original Assignee
Ebner, Marc, Dr.
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 Ebner, Marc, Dr. filed Critical Ebner, Marc, Dr.
Priority to DE200410027471 priority Critical patent/DE102004027471B4/en
Publication of DE102004027471A1 publication Critical patent/DE102004027471A1/en
Application granted granted Critical
Publication of DE102004027471B4 publication Critical patent/DE102004027471B4/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6083Colour correction or control controlled by factors external to the apparatus
    • H04N1/6086Colour correction or control controlled by factors external to the apparatus by scene illuminant, i.e. conditions at the time of picture capture, e.g. flash, optical filter used, evening, cloud, daylight, artificial lighting, white point measurement, colour temperature

Abstract

Verfahren zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten oder elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist, mindestens ein Objekt abbildet und eine lineare oder nicht-lineare Beleuchtung aufweist, um ein erzeugtes Bild mit zumindest einer realistischeren oder gar naturgetreuen Farbe des Objekts zu erhalten, mit den folgenden Schritten:
(a) Ermitteln der ursprünglichen Farbe von jeweils mehreren zu untersuchenden Bildpunkten des ursprünglichen Bildes,
(b) isotropes Mitteln der durchschnittlichen lokalen Farbe von benachbarten Bildpunkten für jeden untersuchten Bildpunkt,
(c) Hinzufügen der ermittelten ursprünglichen Farbe zu der durchschnittlichen lokalen Farbe benachbarter Bildpunkte, um die durchschnittliche lokale Farbe der Bildpunkte innerhalb eines Bereiches für diese Bildpunkte zu erhalten,
(d) Schätzung der Beleuchtungsänderung durch Bestimmung des Gradienten bzw. der Richtung der Änderung der durchschnittlichen lokalen Farbe des Bildpunktes,
(e) Anisotropes Mitteln der orientierten durchschnittlichen lokalen Farbe von benachbarten Bildpunkten in einer Richtung orthogonal zur geschätzten Beleuchtungsänderung für jeden untersuchten Bildpunkt,...
A method of correcting the original color of a digital, digitized or electronic original image comprising a plurality of pixels, imaging at least one object and having linear or non-linear illumination to obtain a generated image having at least a more realistic or even lifelike color of the object , with the following steps:
(a) determining the original color of each of several pixels of the original image to be examined,
(b) isotropically averaging the average local color of adjacent pixels for each pixel under investigation;
(c) adding the determined original color to the average local color of adjacent pixels to obtain the average local color of the pixels within a range for those pixels;
(d) estimating the change in illumination by determining the gradient or direction of change of the average local color of the pixel,
(e) anisotropically averages the oriented average local color of adjacent pixels in a direction orthogonal to the estimated illumination change for each pixel under investigation, ...

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft insbesondere ein Verfahren und eine Vorrichtung zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten bzw. elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist, mindestens ein Objekt abbildet und eine lineare oder nichtlineare Beleuchtung aufweist, um ein erzeugtes Bild mit zumindest einer realistischeren oder gar naturgetreuen Farbe des Objekts zu erhalten.The The invention relates in particular to a method and a device to correct the original one Color of a digital, digitized or electronic original Image that has multiple pixels, at least one object images and a linear or non-linear illumination to a generated image with at least one more realistic or even lifelike To get color of the object.

Das visuelle System des Menschen ist in der Lage, die Farbe von Objekten unabhängig von der Beleuchtung zu bestimmen. Dieser Mechanismus wird als Farbkonstanz bezeichnet. Die Farbe der Objekte hängt von der Reflektanz der Oberfläche ab. Die Reflektanz gibt den Anteil des reflektierten Lichts in Abhängigkeit von der Wellenlänge an. Das visuelle System des Menschen ist also in der Lage, die Reflektanz der Oberflächen anhand des reflektierten Lichts zu schätzen. Analoge oder digitale Kameras dagegen messen das reflektierte Licht. Das reflektierte Licht hängt jedoch in hohem Maße von der Art der Beleuchtung ab. Wenn z.B. eine Lampe mit einem gelblichen Lampenschirm zur Beleuchtung eines Raumes mit weißen Wänden verwendet wird, so erscheinen die weißen Wände auf einem Foto gelblich. Der Fotograf dagegen nimmt die Wände als weiß wahr.The human visual system is capable of the color of objects independently to determine from the lighting. This mechanism is called color consistency designated. The color of the objects depends on the reflectance of the surface from. The reflectance gives the proportion of the reflected light as a function of the wavelength at. So the visual system of man is capable of the reflectance the surfaces estimate using the reflected light. Analog or digital Cameras measure the reflected light. That reflected Light hangs however, to a large extent from the type of lighting. If e.g. a lamp with a yellowish Lampshade used to illuminate a room with white walls, this is how the white ones appear Walls up a yellowish photo. The photographer, on the other hand, perceives the walls as white.

Es existieren bereits eine Vielzahl von Algorithmen zur Farbkonstanz, die diesen Mechanismus des visuellen Systems des Menschen nachbilden sollen. Land und McCann (1971) entwickelten die sog. Retinex Theorie (siehe auch Land (1974, 1983, 1986, 1986a)). Die Retinex Theorie wurde von anderen Wissenschaftlern ergänzt und erweitert (Brainard und Wandell 1992, Brill und West 1981, Funt und Drew 1988, Horn 1974, 1986, Rahman et al. 1999). Weitere Algorithmen zur Farbkonstanz sind sog. Gamut-Constraint Methoden (Barnard et al. 1997, Forsyth 1988, 1992), perspektivische Farbkonstanz (Finlayson 1996), Farbe durch Korrelation (Barnard et al. 2000, Finlayson et al. 1997), die Annahme, daß die Welt im Mittel grau ist (Buchsbaum 1980, Gershon et al. 1987), Bestimmung von Koeffizienten von Basis-Funktionen (Funt et al. 1991, Ho et al. 1992, Maloney und Wandell 1986), Helligkeitsadaption in Verbindung mit Augenbewegungen (D'Zmura und Lennie 1992), Neuronale Netzwerke (Courtney et al. 1995, Dufort und Lumsden 1991, Funt et al. 1996, Herault 1996, Moore et al. 1991, Novak und Shafer 1992), Minimierung einer Energiefunktion (Usui und Nakauchi 1997), Umfassende Farbnormierung (Finlayson et al. 1998), Farbcluster-Rotation (Paulus et al. 1998), Komitee-basierte Methoden, die die Berechnungen mehrerer Algorithmen zur Farbkonstanz zusammenfassen (Cardei und Funt 1999), die Verwendung von genetischer Programmierung (Ebner 2001), die Kombination der Graue-Welt-Hypothese mit dem Retinex Algorithmus (Ebner 2003a), die Filterung von Regionen, die mit einem angenommenem Farbmodell nicht in Einklang stehen (Risson 2003) oder die Berechnung sog. intrinsischer Bilder (Tappen et al. 2002, Finlayson et al. 2004). Eine Software zur Farbkorrektur von Bildern wird von Digital Arts GmbH, Köln, vertrieben (Digital Arts, 2003).It already exist a variety of algorithms for color constancy, which mimic this mechanism of the human visual system should. Land and McCann (1971) developed the so-called Retinex theory (see also Land (1974, 1983, 1986, 1986a)). The Retinex theory was supplemented and expanded by other scientists (Brainard and Wandell 1992, Brill and West 1981, Funt and Drew 1988, Horn 1974, 1986, Rahman et al. 1999). Further algorithms for color consistency are so-called gamut constraint methods (Barnard et al., 1997, Forsyth 1988, 1992), perspective color constancy (Finlayson 1996), color by correlation (Barnard et al 2000, Finlayson et al., 1997), the assumption that the The world is gray on average (Buchsbaum 1980, Gershon et al., 1987) of coefficients of basis functions (Funt et al., 1991, Ho et al. 1992, Maloney and Wandell 1986), brightness adaptation with eye movements (D'Zmura and Lennie 1992), neural networks (Courtney et al., 1995, Dufort and Lumsden 1991, Funt et al. 1996, Herault 1996, Moore et al. 1991 Novak and Shafer 1992), minimization of an energy function (Usui and Nakauchi 1997), Comprehensive Color Normalization (Finlayson et al. 1998), color cluster rotation (Paulus et al., 1998), committee-based methods, which summarize the calculations of several algorithms for color constancy (Cardei and Funt 1999), the use of genetic programming (Ebner 2001), the combination of the gray world hypothesis with the retinx Algorithm (Ebner 2003a), the filtering of regions with a assumed color model (Risson 2003) or the calculation of so-called intrinsic images (Tappen et al., 2002, Finlayson et al. 2004). Software for color correction of images is provided by Digital Arts GmbH, Cologne, distributed (Digital Arts, 2003).

Der Offenbargungsgehalt der genannten Druckschriften bzw. Veröffentlichungen ist hiermit in den Offenbarungsgehalt dieser Beschreibung einbezogen.Of the Revelation content of the cited documents or publications is hereby incorporated into the disclosure of this specification.

Es ist die Aufgabe der vorliegenden Erfindung ein verbessertes Verfahren, eine verbesserte Vorrichtung, ein verbessertes System, ein verbessertes Computerprogrammen mit einer Programmcode Einrichtung, ein verbessertes Computerprogrammenprodukt, ein verbessertes Datenverarbeitungssystem und/oder entsprechende Verwendungen, Einrichtungen, wie einen CCD-Chip, eine CMOS-Chip, eine Digitalkamera, einen Flachbildschirm, ein Flachbildfernsehgerät, ein TFT-Display usw. zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten bzw. elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist und mindestens ein Objekt mit linearer oder nicht-linearer Beleuchtung abbildet, um ein erzeugtes Bild mit zumindest einer realistischeren oder gar naturgetreuen Farbe des Objekts zu erhalten, bereitzustellen.It the object of the present invention is an improved method, an improved device, an improved system, an improved one Computer programs with a program code facility, an improved Computer program product, an improved data processing system and / or corresponding uses, devices, such as a CCD chip, a CMOS chip, a digital camera, a flat screen, a flat screen TV, a TFT display etc. to correct the original one Color of a digital, digitized or electronic original Image that has multiple pixels and at least one object with linear or non-linear lighting maps to a generated Picture with at least one more realistic or even lifelike To obtain color of the object.

Diese Aufgabe wird mit den Merkmalen der entsprechenden Ansprüche gelöst.These The object is achieved with the features of the corresponding claims.

Die Erfindung betrifft insbesondere ein Verfahren und eine entsprechende Vorrichtung zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten bzw. elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist und mindestens ein Objekt mit linearer oder nichtlinearer Beleuchtung abbildet, um ein erzeugtes Bild mit zumindest einer realistischeren Farbe des Objekts zu erhalten, insbesondere mit den folgenden Schritten:

  • – Ermitteln mindestens der ursprünglichen Farbe von jeweils mehreren zu untersuchenden Bildpunkten des ursprünglichen Bildes,
  • – Gleichmäßiges Mitteln der durchschnittlichen lokalen Farbe von benachbarten Bildpunkten für jeden untersuchten Bildpunkt,
  • – Hinzufügen der ermittelten ursprünglichen Farbe jedes Bildpunktes zu der gleichmäßig gemittelten Farbe von benachbarten Bildpunkten, um die durchschnittliche lokale Farbe mindestens dieses Bildpunktes zu erhalten,
  • – Bestimmung der Richtung der Beleuchtungsänderung anhand der durchschnittlichen lokalen Farbe des Bildpunktes sowie der durchschnittlichen lokalen Farbe benachbarter Bildpunkte,
  • – Mitteln der orientierten durchschnittlichen lokalen Farbe von benachbarten Bildpunkten in einer Richtung orthogonal zur Beleuchtungsänderung,
  • – Hinzufügen der ermittelten ursprünglichen Farbe jedes Bildpunktes zu der gemittelten orientierten durchschnittlichen lokalen Farbe, um die orientierte durchschnittliche lokale Farbe mindestens dieses Bildpunktes zu erhalten.
  • – Korrigieren der Farbe eines untersuchten Bildpunktes anhand der ursprünglichen Farbe des Bildpunktes und der erhaltenen orientierten durchschnittlichen lokalen Farbe des Bildpunktes.
More particularly, the invention relates to a method and apparatus for correcting the original color of a digital, digitized or electronic original image having a plurality of pixels and imaging at least one object with linear or nonlinear illumination to produce a generated image having at least one more realistic color Obtaining an object, in particular with the following steps:
  • Determining at least the original color of a plurality of pixels of the original image to be examined,
  • Evenly averaging the average local color of adjacent pixels for each pixel under investigation,
  • Add the determined original color of each pixel to the uniformly averaged color of neighboring pixels to obtain the average local color of at least this pixel,
  • Determination of the direction of the illumination change on the basis of the average local color of the pixel as well as the average local color of adjacent pixels,
  • Averaging the oriented average local color of adjacent pixels in a direction orthogonal to the illumination change;
  • - Adding the determined original color of each pixel to the average oriented average local color to obtain the oriented average local color of at least this pixel.
  • - Correcting the color of an examined pixel based on the original color of the pixel and the obtained oriented average local color of the pixel.

Vorzugsweise wird dann im wesentlichen die senkrecht auf dem Grauvektor stehende Komponente der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes von der ursprünglichen Farbe des Bildpunktes subtrahiert, um die Farbe des Bildpunktes zu korrigieren.Preferably then becomes substantially perpendicular to the gray vector Component of the oriented average local color of a Pixel from the original Color of the pixel subtracted to the color of the pixel to correct.

Weiter bevorzugt erfolgt das Korrigieren der Farbe eines Bildpunktes im wesentlichen durch die folgenden Schritte:

  • – Skalieren der ursprünglichen Farbe eines Bildpunktes und der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes auf die Ebene r + g + b = 1 des RGB-Farbraumes,
  • – Subtrahieren der Komponente der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes, die senkrecht auf dem Grauvektor steht, von der ursprünglichen Farbe des Bildpunktes zum Erhalten der korrigierten Farbe des Bildpunktes und
  • – Skalieren der korrigierten Farbe eines Bildpunktes auf die Länge der ursprünglichen Farbe des Bildpunktes.
Further preferably, the correction of the color of a pixel takes place essentially by the following steps:
  • Scaling the original color of a pixel and the oriented average local color of a pixel to the level r + g + b = 1 of the RGB color space,
  • - Subtract the component of the oriented average local color of a pixel, which is perpendicular to the gray vector, from the original color of the pixel to obtain the corrected color of the pixel and
  • - Scaling the corrected color of a pixel to the length of the original color of the pixel.

Alternativ kann das Korrigieren der Farbe eines Bildpunktes auch durch Division mit der orientierten durchschnittlichen lokalen Farbe erfolgen. Bevorzugt wird durch zweimal der orientierten durchschnittlichen lokalen Farbe dividiert.alternative can also correct the color of a pixel by dividing done with the oriented average local color. Preference is given by twice the oriented average divided by local color.

Es ist ebenfalls eine Unterkombination der genannten Merkmale oder Schritte der Erfindung zur Verwirklichung der Farbkorrektur möglich.It is also a sub-combination of said features or Steps of the invention for the realization of the color correction possible.

Weiter bevorzugt wird erfindungsgemäß ein Gitter aus Prozessorelementen bereitgestellt, insbesondere bevorzugt für jeden Bildpunkt ein Prozessorelement. Dabei ist jedes Prozessorelement derart ausgebildet, daß es auf die gemessene Farbe des zugehörigen Bildpunktes zugreifen kann und zusätzlich zwei weitere Farben, die durchschnittliche lokale Farbe und die orientierte durchschnittliche lokale Farbe speichern kann. Die Prozessorelemente können auf den Speicherinhalt der benachbarten vier Prozessorelemente zugreifen. Es ist auch ein alternativer oder zusätzlicher Zugriff auf die schräg benachbarten Prozessorelemente möglich. Die Prozessorelemente am Rand des Gitters haben je nach Position entsprechend weniger Nachbarelemente.Further According to the invention, a grid is preferred provided from processor elements, particularly preferred for each Pixel a processor element. Here is every processor element designed so that it access the measured color of the associated pixel can and in addition two more colors, the average local color and the oriented average local color can save. The processor elements can access the memory contents of the adjacent four processor elements. It is also an alternative or additional access to the obliquely adjacent Processor elements possible. The Processor elements on the edge of the grid have corresponding to each position fewer neighboring elements.

Der Gegenstand der Erfindung betrifft vorzugsweise ein paralleles Verfahren zur Lösung des Problems der Farbkonstanz. Das Verfahren berechnet die durchschnittliche lokale Farbe und die orientierte durchschnittliche lokale Farbe mit Hilfe eines Gitters aus einfachen Prozessorelementen. Die orientierte durchschnittliche lokale Farbe wird zur Farbkorrektur eingesetzt. Damit wird eine wesentliche Verbesserung im Vergleich zu einem früheren Verfahren erreicht. Die früheren Verfahren sind in (Ebner 2002, 2003a, 2003b, 2004a, 2004b) beschrieben. Das erfindungsgemäße Verfahren kann auch bei einer nicht-linearen Änderung der Beleuchtung eingesetzt werden.Of the The invention preferably relates to a parallel method to the solution the problem of color constancy. The procedure calculates the average local color and the oriented average local color using a grid of simple processor elements. The oriented average local color is used for color correction. This will be a significant improvement compared to a previous procedure reached. The earlier ones Methods are described in (Ebner 2002, 2003a, 2003b, 2004a, 2004b). The inventive method can also be used in a non-linear change of lighting become.

Die Erfindung bzw. bevorzugte Ausführungsformen werden nachfolgend anhand der beiliegenden Figuren beispielhaft beschriebenen. Es zeigen:The Invention or preferred embodiments will be exemplified below with reference to the accompanying drawings described. Show it:

1 Ein Gitter mit 8×8 Prozessorelementen mit Vierer-Nachbarschaft ist links dargestellt. Rechts ist ein 8×8 Gitter mit Achter-Nachbarschaft dargestellt. 1 A grid of 8x8 processor elements with quad neighborhood is shown on the left. On the right is an 8 × 8 grid with figure-eight neighborhood.

2 Lineare Änderung der Beleuchtung von links nach rechts. Die rechte Grafik zeigt den Verlauf der Beleuchtung. Die durchschnittliche lokale Farbe, die von einem Prozessorelement auf der linken Seite berechnet wird, ist kleiner als die durchschnittliche lokale Farbe des aktuellen Prozeßorelements. Die durchschnittliche lokale Farbe, die von einem Prozessorelement auf der rechten Seite berechnet wird, ist größer als die des aktuellen Prozessorelements. Werden die beiden Werte gemittelt, so gleichen sich diese Unterschiede exakt aus. Es entstehen vertikale Streifen. 2 Linear change of illumination from left to right. The right graphic shows the course of the illumination. The average local color computed by a processor element on the left side is less than the average local color of the current processor element. The average local color calculated by a processor element on the right side is larger than that of the current processor element. If the two values are averaged, these differences are similar exactly. There are vertical stripes.

3 Nicht-lineare Änderung der Beleuchtung von links nach rechts. Die rechte Grafik zeigt den Verlauf der Beleuchtung. Die durchschnittliche lokale Farbe, die von dem Prozessorelement auf der linken Seite berechnet wird, ist deutlich kleiner, als die des aktuellen Elements. Die durchschnittliche lokale Farbe, die von dem Prozessorelement auf der rechten Seite berechnet wird, ist nur geringfügig größer, als die des aktuellen Elements. Bei der Mittelung der beiden Werte erhalten wir daher einen Wert, der kleiner ist, als die Beleuchtung an diesem Punkt. 3 Non-linear change of lighting from left to right. The right graphic shows the course of the illumination. The average local color calculated by the processor element on the left side is much smaller than that of the current element. The average local color calculated by the processor element on the right is only slightly larger than that of the current element. When averaging the two values, we therefore obtain a value that is smaller than the illumination at that point.

4 Eine nichtlineare Änderung der Beleuchtung kann näherungsweise als linear betrachtet werden, falls der Bereich, für den die durchschnittliche lokale Farbe berechnet wird, klein genug ist (links). In der Regel berechnen wir die durchschnittliche lokale Farbe aber über einen großen Bereich. Andernfalls wäre die Annahme, daß die Welt im Mittel grau ist, nicht korrekt. Daher ist davon auszugehen, daß sich der Bereich, für den die durchschnittliche lokale Farbe berechnet wird, sich auch über Nichtlinearitäten ausdehnt. In diesem Fall wäre die durchschnittliche lokale Farbe eine schlechte Schätzung der Beleuchtung (rechts). 4 A nonlinear change in illumination can be considered approximately linear if the area for which the average local color is calculated is small enough (left). In general, we calculate the average local color but over a large area. Otherwise the assumption that the world is gray on average would not be correct. Therefore, the range for which the average local color is calculated is expected to expand beyond nonlinearities. In this case, the average local color would be a poor estimate of the illumination (right).

5 Nicht-lineare Änderung der Beleuchtung. Die Pfeilrichtung zeigt die Richtung des Gradienten. Die Iso-Beleuchtungslinie verläuft senkrecht zur Richtung des Gradienten. 5 Non-linear change of lighting. The direction of the arrow shows the direction of the gradient. The iso-illumination line is perpendicular to the direction of the gradient.

6 Lokales Koordinatensystem, das in Richtung des Gradienten gedreht ist. Die Richtungen vorne/hinten weisen in Richtung des Gradienten. Die Richtungen links/rechts weisen entlang der Iso-Beleuchtungslinie. 6 Local coordinate system rotated in the direction of the gradient. The directions forward / back point in the direction of the gradient. The directions left / right point along the iso illumination line.

7 Zwei Interpolationsmethoden: (a) Die Farbe am Punkt P wird durch Interpolation der Farben an den Punkten A und B berechnet. (b) Falls auch diagonal Verbindungen vorhanden sind, können wir die bilineare Interpolation einsetzen. In diesem Fall wird die Farbe am Punkt P durch Interpolation der Farben der Punkte A, B, C und D berechnet. 7 Two interpolation methods: (a) The color at point P is calculated by interpolating the colors at points A and B. (b) If there are also diagonal connections, we can use bilinear interpolation. In this case, the color at point P is calculated by interpolating the colors of points A, B, C and D.

8 Prozessorelemente am Rand des Bildes bedürfen einer besonderen Beachtung. Die Farbe der Bildpunkte, die außerhalb des Bildes liegen, ist nicht bekannt. Um die Berechnungen nicht zu verfälschen, sollten über diese Punkte keine Annahmen gemacht werden. Daher werden nur die Daten des aktuellen Elements und der Wert entlang der Iso-Beleuchtungslinie innerhalb des Bildes gemittelt. 8th Processor elements on the edge of the image require special attention. The color of pixels outside the image is not known. In order not to falsify the calculations, no assumptions should be made about these points. Therefore, only the data of the current element and the value along the iso-illumination line within the image are averaged.

9 Falls die Iso-Beleuchtungslinie gekrümmt ist, muß die Krümmung der Line berücksichtigt werden. Sonst werden Daten gemittelt, die nicht auf der Iso-Beleuchtungslinie liegen. 9 If the iso-illumination line is curved, the curvature of the line must be taken into account. Otherwise, data that is not on the iso illumination line is averaged.

10 Um Werte entlang der Iso-Beleuchtungslinie zu mitteln, müssen wir zunächst die Schnittpunkte des Einheitskreises mit dem Kreis um das Krümmungszentrum berechnen. Wir nehmen für die Berechnung an, daß das Krümmungszentrum an der Position (0, r) liegt, wobei r der Krümmungsradius ist. Es seien P1 und P2 die beiden Schnittpunkte. Daher müssen wir die Werte an den Punkten P1 und P2 durch Interpolation bestimmen. 10 To average values along the Iso illumination line, we first need to compute the intersections of the unit circle with the circle around the center of curvature. For the calculation we assume that the center of curvature is at the position (0, r), where r is the radius of curvature. Let P 1 and P 2 be the two intersections. Therefore, we have to determine the values at points P 1 and P 2 by interpolation.

11 Die Realisation eines Verfahrens zur Farbkonstanz bestehend aus 4 Stufen. Die ursprüngliche Farbe des Bildpunktes wird in Stufe 1 bereitgestellt, die durchschnittliche lokale Farbe wird in Stufe 2 berechnet. Die orientierte durchschnittliche lokale Farbe wird in Stufe 3 berechnet. Die korrigierte Farbe wird in Stufe 4 berechnet. 11 The realization of a process for color consistency consisting of 4 stages. The original color of the pixel is provided in level 1, the average local color is calculated in level 2. The oriented average local color is calculated in level 3. The corrected color is calculated in step 4.

Das erfingsgemäße Verfahren arbeitet auf einem Gitter aus Prozessorelementen, wobei für jeden Bildpunkt ein Prozessorelement bereitgestellt wird. Jedes Prozessorelement kann auf die gemessene Farbe an diesem Bildpunkt zugreifen. Es sei ci(x, y) die gemessene Intensität des Farbkanals i mit i ∊ {r, g, b} an der Position (x, y) im Gitter. Es sei c(x, y) = [cr(x, y), cg(x, y), cb(x, y)] die gemessene Farbe an der Position (x, y) im Gitter. Zusätzlich hat das Prozessorelement Zugriff auf die Daten der vier direkt benachbarten Prozessorelemente. Ein Zugriff auf die vier diagonalen Nachbarn ist entweder alternativ oder zusätzlich möglich. Im letzteren Fall hat ein Prozessorlement acht Nachbarn (1). Die Prozessorelemente am Rand des Gitters haben je nach Position entsprechend weniger Nachbarelemente. Die Nachbarschaftsbeziehung sei durch N(x, y) = {(x', y')|(x', y') ist Nachbarelement von Element (x, y)}definiert. Die durchschnittliche lokale Farbe wird iterativ durch Mittelung der Daten benachbarter Elemente berechnet. Hierzu nehmen wir an, daß ai(x, y) mit i ∊ {r, g, b} die bisher ermittelte durchschnittliche lokale Farbe am Punkt (x, y) des Gitters ist. In der ersten Iteration kann dieser Wert beliebig gewählt werden. Ferner sei p ein kleiner Wert größer Null. Die folgenden Schritte werden vorzugsweise in ausreichender Zahl, weiter bevorzugt quasi endlos (permanente Verarbeitung solange die entsprechende Vorrichtung im Betrieb ist), wiederholt:

Figure 00050001
The erfingsgemäße method operates on a grid of processor elements, wherein a processor element is provided for each pixel. Each processor element can access the measured color at that pixel. Let c i (x, y) be the measured intensity of the color channel i with i ε {r, g, b} at the position (x, y) in the grating. Let c (x, y) = [c r (x, y), c g (x, y), c b (x, y)] be the measured color at position (x, y) in the grid. In addition, the processor element has access to the data of the four directly adjacent processor elements. Access to the four diagonal neighbors is either alternatively or additionally possible. In the latter case, one processor element has eight neighbors ( 1 ). The processor elements at the edge of the grid have correspondingly fewer neighboring elements, depending on the position. The neighborhood relationship is through N (x, y) = {(x ', y') | (x ', y') is the neighboring element of element (x, y)} Are defined. The average local color is calculated iteratively by averaging the data of neighboring elements. Assume that a i (x, y) with i ε {r, g, b} is the average local color determined so far at the point (x, y) of the grid. In the first iteration, this value can be chosen arbitrarily. Further, let p be a small value greater than zero. The following steps are preferably repeated in sufficient number, more preferably virtually endlessly (permanent processing while the corresponding device is in operation):
Figure 00050001

Im ersten Schritt wird vorzugsweise die bisher berechnete durchschnittliche lokale Farbe der benachbarten Prozessorelemente gemittelt. Alternativ können wir auch den berechneten Wert des aktuellen Elements bei der Mittelung berücksichtigen. In diesem Fall wird

Figure 00050002
berechnet. Im zweiten Schritt wird vorzugsweise die Farbe des Bildpunktes ci(x, y) zum Mittelwert hinzugefügt. Wir erhalten so die durchschnittliche lokale Farbe für jeden Bildpunkt. Der Parameter p definiert den Bereich, für den die durchschnittliche lokale Farbe berechnet wird. Die Farbe des Prozessorelements (x, y) wird mit einem Anteil p zum bisher berechneten Ergebnis hinzugefügt. Falls p klein ist, wird für einen relativ großen Bereich die durchschnittliche lokale Farbe berechnet. Falls p groß ist, wird nur für einen relativ kleinen Bereich die durchschnittliche lokale Farbe berechnet. Die bisher berechnete durchschnittliche lokale Farbe wird mit dem Anteil (1 – p) multipliziert. Daher kann die Initialisierung dieser Werte beliebig sein. Werte im Abstand r vom aktuellen Element beeinflussen dieses nur mit einem Anteil von (1 – p)r. Wichtig für die Berechnung der durchschnittlichen lokalen Farbe ist, daß die Intensitäten linear sind. Falls dies nicht zutrifft, muß zuvor eine Gamma-Korrektur durchgeführt werden.In the first step, the previously calculated average local color of the adjacent processor elements is preferably averaged. Alternatively, we can also consider the calculated value of the current element in averaging. In this case will
Figure 00050002
calculated. In the second step, the color of the pixel c i (x, y) is preferably added to the mean value. We get the average local color for each pixel. The parameter p defines the area for which the average local color is calculated. The color of the processor element (x, y) is added with a fraction p to the previously calculated result. If p is small, the average local color is calculated for a relatively large area. If p is large, the average local color is calculated only for a relatively small area. The previously calculated average local color is multiplied by the fraction (1 - p). Therefore, the initialization of these values can be arbitrary. Values at the distance r from the current element affect this only with a share of (1 - p) r . Important for the calculation of the average local color is that the intensities are linear. If this is not the case, a gamma correction must first be performed.

Die Berechnung der durchschnittlichen lokalen Farbe ist äquivalent zur Faltung des Eingangsbildes mit der Funktion e–|r|σ wobei

Figure 00060001
den Abstand zum aktuellen Prozessorelement angibt und σ ein Skalierungsfaktor ist. Die durchschnittliche lokale Farbe a ist also durch
Figure 00060002
gegeben, wobei k so gewählt wird, daß
Figure 00060003
ist. Diese Art der Berechnung kann mit Hilfe eines Gitters aus Widerständen berechnet werden (Horn 1986, Moore et al. 1991).The calculation of the average local color is equivalent to the convolution of the input image with the function e - | r | σ in which
Figure 00060001
indicates the distance to the current processor element and σ is a scaling factor. The average local color a is so through
Figure 00060002
given, where k is chosen so that
Figure 00060003
is. This type of calculation can be calculated using a grid of resistors (Horn 1986, Moore et al., 1991).

In 2 ist eine nicht-uniforme Beleuchtung der Szene dargestellt, bei der sich die Beleuchtung linear von einer Seite des Bildes zur anderen ändert. Ein Prozessorelement mittelt die durchschnittliche lokale Farbe der vier benachbarten Prozessorelemente. Betrachten wir den Fall, daß die Mittelwerte bereits konvergiert sind. Der Mittelwert, der von dem Prozessorelement auf der linken Seite berechnet wurde, wird etwas kleiner sein und der Mittelwert des Prozessorelements auf der rechten Seite wird etwas höher als der aktuelle Mittelwert sein. Dagegen werden die Mittelwerte der Prozessorelemente über und unter dem aktuellen Element den gleichen Wert besitzen. Wenn nun der Durchschnitt der vier benachbarten Prozessorelemente berechnet wird, so gleicht sich der etwas niedrigere Wert des linken Prozessorelements mit dem etwas höheren Wert des rechten Prozessorelements aus. Dies ist auf der rechten Seite von 2 dargestellt. Der neue Mittelwert ist identisch mit dem zuvor berechneten Mittelwert. Auf diese Weise entstehen eine Reihe von vertikalen Streifen. Das eingangs beschriebene Verfahren, ist also in der Lage, bei einer linearen Änderung der Beleuchtung diese zu schätzen.In 2 shows a non-uniform illumination of the scene, in which the illumination changes linearly from one side of the image to the other. A processor element averages the average local color of the four adjacent processor elements. Consider the case that the averages have already converged. The average calculated by the left-side processor element will be slightly smaller and the average of the right-side processor element will be slightly higher than the current average. In contrast, the mean values of the processor elements above and below the current element will have the same value. Now, if the average of the four adjacent processor elements is calculated, the slightly lower value of the left processor element balances with the slightly higher value of the right processor element. This is on the right side of 2 shown. The new mean is identical to the previously calculated mean. This creates a series of vertical stripes. The method described above, that is able to estimate this with a linear change in the lighting.

Wir nehmen nun an, daß die Änderung der Beleuchtung nicht-linear ist. Dies ist in 3 dargestellt. Die Beleuchtung variiert wieder von links nach rechts. Der Mittelwert, der von den Prozessorelementen über und unter dem aktuellen Element berechnet wird, ist wieder identisch mit dem Mittelwert des aktuellen Elements. Dagegen wird der Mittelwert des linken Prozessorelements deutlich kleiner sein als der Mittelwert des aktuellen Elements. Der Mittelwert des rechten Prozessorelements wird dagegen nur geringfügig größer sein. In diesem Fall gleichen sich die Mittelwerte der linken und rechten Seite nicht mehr aus. Für den hier dargestellten Fall wird der berechnete Mittelwert kleiner sein als tatsächlich. Dies ist auf der rechten Seite von 3 dargestellt. Das bisher beschriebene Verfahren kann also nicht für eine nicht-lineare Änderung der Beleuchtung verwendet werden.We now assume that the change in illumination is non-linear. This is in 3 shown. The lighting varies again from left to right. The mean value that comes from the processor elements via and under the current element is again identical to the mean of the current element. By contrast, the mean value of the left processor element will be significantly smaller than the mean value of the current element. By contrast, the mean value of the right-hand processor element will only be slightly larger. In this case, the mean values of the left and right sides are no longer equal. For the case shown here, the calculated mean value will be smaller than actually. This is on the right side of 3 shown. The method described so far can not be used for a non-linear change of lighting.

Eine nichtlineare Änderung der Beleuchtung kann näherungsweise als linear betrachtet werden, wenn der Bereich für den die durchschnittliche lokale Farbe berechnet wird, klein genug ist. Der Bereich, für den die durchschnittliche Farbe berechnet wird, wird durch den Parameter p definiert. Damit die Graue-Welt-Hypothese erfüllt ist, müssen wir einen kleinen Wert für den Parameter p verwenden. D.h., wir berechnen die durchschnittliche lokale Farbe für einen relativ großen Bereich. Dies bedeutet aber gleichzeitig, daß evtl. vorhandene Nichtlinearitäten im Bild von allen Bereichen überdeckt werden. Dies ist in 4 dargestellt.A nonlinear change in illumination may be considered approximately linear if the area for which the average local color is calculated is small enough. The area for which the average color is calculated is defined by the parameter p. For the gray world hypothesis to be satisfied, we must use a small value for the p parameter. That is, we calculate the average local color for a relatively large area. At the same time, however, this means that any existing nonlinearities in the image are covered by all areas. This is in 4 shown.

Eine genauere Schätzung der Beleuchtung können wir erhalten, indem wir die Daten, nicht wie zuvor beschrieben, gleichmäßig mitteln. Solch eine nicht-uniforme Glättung der Daten wird häufig zur Segmentierung von Bildern eingesetzt und ist unter dem Namen anisotropische Diffusion bekannt (Weickert 1997, Weickert et al. 1998). Nehmen wir an, daß wir eine nichtlineare Beleuchtungsänderung haben, die von links nach rechts verläuft. Die Beleuchtung ist in diesem Fall konstant entlang der Vertikalen. Wir nennen diese Linie die Iso-Beleuchtungslinie. Jedes Prozessorelement hat eine eigene Iso-Beleuchtungslinie. Für diesen einfachen Fall verläuft die Iso-Beleuchtungslinie für alle Prozessorelemente vertikal. Wenn wir nur die Werte von den über und unter dem aktuellen Element liegenden Prozessorelementen mitteln, so können wir die Beleuchtung entlang der Iso-Beleuchtungslinie schätzen, wenn die Szene entlang dieser Linie ausreichend komplex ist, so daß die Graue-Welt-Hypothese erfüllt ist. D.h., die Zahl der Farben, über die entlang der Iso-Beleuchtungslinie gemittelt wird, muß ausreichend groß sein. Falls die Iso-Beleuchtungslinie vertikal oder horizontal verläuft, so können wir die Daten entweder nur entlang der Vertikalen oder nur entlang der Horizontalen mitteln. In der Praxis ist ein horizontaler oder vertikaler Verlauf der Iso-Beleuchtungslinie aber nicht unbedingt gegeben. Die Iso-Beleuchtungslinie kann eine beliebige Orientierung besitzen. Tatsächlich muß es sich nicht um eine gerade Linie handeln. Die Linie kann auch gekrümmt sein. Dies kann bei einer lokalen Beleuchtung, wie z.B. einem Strahler, der Fall sein.A more accurate estimate the lighting can we obtained by using the data, not as previously described, evenly. Such a non-uniform smoothing the data becomes common used for segmentation of images and is under the name Anisotropic diffusion is known (Weickert 1997, Weickert et al. 1998). Let us assume that we a non-linear lighting change that runs from left to right. The lighting is in This case is constant along the vertical. We call this line the iso lighting line. Each processor element has its own Iso-illumination line. For this simple case runs the iso-lighting line for all processor elements vertical. If only we have the values of the over and under We can average the processor elements lying on the current element the lighting along the iso lighting line estimate, if the scene along this line is sufficiently complex, so that the gray-world hypothesis Fulfills is. That is, the number of colors, over which is averaged along the iso-illumination line must be sufficient be great. If the iso lighting line is vertical or horizontal, then can we either only scroll along the vertical or just along the data average the horizontal. In practice, a horizontal or vertical course of the iso-illumination line but not necessarily given. The iso-illumination line can be any orientation have. Indeed it must not to be a straight line. The line can also be curved. This can be done with local lighting, e.g. a spotlight that Be a case.

Gekrümmte Iso-Beleuchtungslinien behandeln wir weiter unten. Zunächst müssen wir die Richtung der Iso-Beleuchtungslinie berechnen. 5 zeigt den diagonalen Verlauf einer nichtlinearen Beleuchtung. Der Pfeil markiert die Richtung des Gradienten. Die Iso-Beleuchtungslinie verläuft senkrecht zum Gradienten. Wenn wir die Werte entlang der Iso-Beleuchtungslinie mitteln, erhalten wir eine Schätzung der Beleuchtung entlang dieser Linie, die nicht durch die Nichtlinearität verfälscht wird. Das Ergebnis ist in diesem Fall näherungsweise unabhängig von dem Parameter p, der den Bereich definiert, für den die durchschnittliche lokale Farbe berechnet wird. Wir müssen also bei einer nicht-linearen Beleuchtungsänderung entlang einer Vorzugsrichtung mitteln.Curved iso illumination lines are discussed below. First, we need to calculate the direction of the iso illumination line. 5 shows the diagonal course of a nonlinear illumination. The arrow marks the direction of the gradient. The iso-illumination line is perpendicular to the gradient. If we average the values along the iso-illumination line, we get an estimate of the illumination along that line, which is not corrupted by the nonlinearity. The result in this case is approximately independent of the parameter p, which defines the area for which the average local color is calculated. So we have to average in a non-linear lighting change along a preferred direction.

Um die Richtung der Iso-Beleuchtungslinie zu bestimmen, berechnen wir den Gradienten der Beleuchtung. Die Beleuchtung ist aber nicht bekannt. Wir verwenden die durchschnittliche lokale Farbe als Approximation der Beleuchtung. Die durchschnittliche lokale Farbe wird wie oben beschrieben berechnet. Es sei ai(x, y) die durchschnittliche lokale Farbe am Punkt (x, y) für den Farbkanal i. Der Gradient der durchschnittlichen lokalen Farbe berechnet sich dann wie folgt:

Figure 00070001
To determine the direction of the iso-illumination line, we calculate the gradient of the illumination. The lighting is not known. We use the average local color as an approximation of the illumination. The average local color is calculated as described above. Let a i (x, y) be the average local color at the point (x, y) for the color channel i. The gradient of the average local color is then calculated as follows:
Figure 00070001

Die Berechnung der durchschnittlichen lokalen Farbe sollte in allen drei Farbkanälen gleichmäßig erfolgen. Daher müssen die Gradienten der einzelnen Farbkanäle in geigneter Weise zu einem einzigen Gradienten kombiniert werden. Es sei (dx, dy) der kombinierte Gradient. Bei der Kombination der Gradienten haben wir mehrere Möglichkeiten. Wir können z.B. den Mittelwert der Gradienten berechnen:

Figure 00080001
The calculation of the average local color should be uniform in all three color channels. Therefore, the gradients of the individual color channels must be suitably combined into a single gradient. Let (dx, dy) be the combined gradient. When combining the gradients, we have several options. For example, we can calculate the mean of the gradients:
Figure 00080001

Alternativ können wir auch den Farbkanal wählen, in dem der Gradient maximal ist:

Figure 00080002
Alternatively, we can also choose the color channel in which the gradient is maximal:
Figure 00080002

Eine weitere Möglichkeit ist die Gradienten der Farbkanäle entsprechend ihres Betrags gewichtet zu mitteln

Figure 00080003
Another possibility is to weight the gradients of the color channels according to their amount
Figure 00080003

Die Richtung α des Gradienten (dx, dy) ist durch

Figure 00080004
gegeben (Gonzalez und Woods 1992).The direction α of the gradient (dx, dy) is through
Figure 00080004
given (Gonzalez and Woods 1992).

Wir definieren nun ein lokales Koordinatensystem, das von der Richtung des Gradienten der Lichtquelle abhängt. Die Richtungen vorne/hinten weisen in Richtung des Gradienten. Die Richtungen links/rechts sind orthogonal zum Gradienten orientiert. Dies wird in 6 illustriert. Um die Daten innerhalb dieses Koordinatensystems zu mitteln, müssen wir die Werte, die wir von den benachbarten vier bzw. acht Prozessorelementen erhalten, in geeigneter Weise interpolieren. Zur Interpolation können wir entweder eine Vierer- oder eine Achter-Nachbarschaft verwenden. Beispiele für unterschiedliche Interpolationsmethoden sind in 7 dargestellt.We now define a local coordinate system that depends on the direction of the gradient of the light source. The directions forward / back point in the direction of the gradient. The directions left / right are oriented orthogonal to the gradient. This will be in 6 illustrated. To average the data within this coordinate system, we must properly interpolate the values we get from the adjacent four or eight processor elements. For interpolation, we can use either a quad or a eight-neighborhood. Examples of different interpolation methods are in 7 shown.

Die erste Interpolationsmethode (a) berechnet die Farbe des Bildpunktes c(P) am Punkt P, indem die Daten der Punkte der Positionen A und B interpoliert werden. Es sei c(A) und c(B) die Farbe der Bildpunkte an den Positionen A und B. Ferner sei α die Richtung des Gradienten des aktuellen Prozessorelements. Dann wird die Farbe an der Position P wie folgt berechnet c(P) = (1 – s)c(A) + sc(B),wobei s = π definiert wird. Anstatt den Winkel anhand des Gradienten zu berechnen, was die Verwendung einer trigonometrischen Operation notwendig macht, können wir auch folgende Interpolationsmethode verwenden.The first interpolation method (a) calculates the color of the pixel c (P) at the point P by interpolating the data of the points of the positions A and B. Let c (A) and c (B) be the color of the pixels at positions A and B. Further, let α be the direction of the gradient of the current processor element. Then, the color at the position P is calculated as follows c (P) = (1-s) c (A) + sc (B), in which s = π is defined. Instead of calculating the angle based on the gradient, which requires the use of a trigonometric operation, we can also use the following interpolation method.

Figure 00080005
Figure 00080005

Diese Interpolationsmethode hat fast den gleichen Effekt. Die Differenz zwischen den beiden Varian

Figure 00080006
This interpolation method has almost the same effect. The difference between the two Varians
Figure 00080006

Die zweite Variante bietet sich besonders dann an, wenn die Verwendung trigonometrischer Operationen zu aufwendig ist.The second variant is particularly useful when the use Trigonometric operations is too expensive.

Sind die Prozessorelemente auch entlang der Diagonalen verbunden, d.h., wir haben eine Achter-Nachbarschaft, so können wir die bilineare Interpolation verwenden (b). Es seien c(A), c(B), c(C), c(D) die Farben, die an den angrenzenden Elementen gespeichert sind. Dann wird die Farbe an der Position P wie folgt berechnet. c(P) = (1 – u)c(E) + uc(F) If the processor elements are also connected along the diagonal, that is, we have a figure-of-eight neighborhood, we can use bilinear interpolation (b). Let c (A), c (B), c (C), c (D) be the colors stored at the adjacent elements. Then, the color at the position P is calculated as follows. c (P) = (1-u) c (E) + uc (F)

Dabei ist c(E) = (1 – ν)c(C) + νc(B) und c(F) = (1 – ν)c(A) + c(D), u = cos(α) und ν = sin(α). Hier wird also zunächst entlang der Vertikalen und dann entlang der Horizontalen interpoliert.there c (E) = (1-ν) c (C) + vc (B) and c (F) = (1-ν) c (A) + c (D), u = cos (α) and ν = sin (α). So here will be first interpolated along the vertical and then along the horizontal.

Es seien ă(vorne), ă(hinten), ă(links), und ă(rechts) die interpolierten Farben des gedrehten Koordinatensystems. Ferner sei c(x, y) die gemessene Farbe des aktuellen Prozessorelements. Wir können nun die orientierte durchschnittliche lokale Farbe ăi für den Farbkanal i berechnen, indem wir die Daten von links und von rechts in unserem lokalen Koordinatensystem entlang der Iso-Beleuchtungslinie mitteln.Let ă (front), ă (back), ă (left), and ă (right) be the interpolated colors of the rotated coordinate system. Further, let c (x, y) be the measured color of the current processor element. We can now calculate the oriented average local color i for the color channel i by averaging the left and right data in our local coordinate system along the iso illumination line.

Figure 00090001
Figure 00090001

Dabei ist p wieder eine kleine Zahl größer als Null. Die Daten entlang der beiden Richtungen vorne/hinten, können auch hinzugezogen werden. Wir führen hierzu einen zusätzlichen Parameter ω mit ω ∊ [0, 0.25] ein.there p is again a small number larger than Zero. The data along the two directions front / back, too, can be involved. We lead this an additional Parameter ω with ω ε [0, 0.25].

Figure 00090002
Figure 00090002

Falls ω gleich Null ist, werden nur die Daten entlang der Iso-Beleuchtungslinie gemittelt. Für kleine Werte von ω wird die Mittelung hauptsächlich entlang der Iso-Beleuchtungslinie durchgeführt. Zusätzlich fließt ein kleiner Anteil auch entlang der beiden Richtungen vorne/hinten in Richtung des aktuellen Prozessorelements.If ω is the same Zero is only the data along the iso-illumination line averaged. For small values of ω becomes the averaging mainly performed along the iso-lighting line. In addition, a small proportion also flows along the two directions front / back in the direction of the current Processor element.

Alternativ können wir auch das aktuelle Element in die Mittelung einbeziehen. Wir können eine der beiden vorgenannten Operationen zur Mittelung der Daten verwenden, um ă'i zu berechnen und dann den berechneten Wert des aktuellen Elements hinzufügen.Alternatively, we can also include the current element in the averaging. We can use one of the two aforementioned data averaging operations to compute ă ' i and then add the calculated value of the current element.

Figure 00090003
Figure 00090003

Nun fügen wir die gemessene Farbe des Eingangsbildes langsam zur orientierten durchschnittlichen lokalen Farbe hinzu. ăi(x, y) = ă''i(x, y)·(1 – p) ± ci(x, y)·p Now we slowly add the measured color of the input image to the oriented average local color. ă i (x, y) = ă '' i (x, y) · (1 - p) ± c i (x, y) · p

Wenn wir diesen Vorgang oft genug iterieren, erhalten wir ein Bild, bei dem jeder Bildpunkt die orientierte durchschnittliche lokale Farbe entlang der Iso-Beleuchtungslinie zeigt.If If we iterate this process often enough, we get a picture each pixel is oriented average local color along the iso-lighting line shows.

Die bisher beschriebene Mittelung entlang der Iso-Beleuchtungslinie ist nur für Prozessorelemente durchführbar, die sich nicht am Rand des Gitters aus Prozessorelementen befinden. Für die Elemente am Rand des Bildes muß das erfindungsgemäße Verfahren leicht abgewandelt werden. Es reicht nicht aus, die Bildpunkte am Rand zu duplizieren. Dies würde das Ergebnis verfälschen. Nehmen wir an, daß sich das Licht diagonal über das Bild ändert. Wenn wir nun die Bildpunkte am Rand duplizieren, so würde ein S-förmiger Verlauf des Lichts entstehen. Dies kommt dadurch zustande, daß wir die durchschnittliche lokale Farbe für einen großen Bereich berechnen. Es werden kleine Werte für p verwendet. Somit beeinflussen die Punkte am Rand des Bildes, die von allen Prozessorelementen berechnete, durchschnittliche lokale Farbe. Daher ist es sinnvoll, keine Annahmen über Bildpunkte zu machen, die sich außerhalb des Bildes befinden. Daher mitteln wir die Daten für den Bereich des Bildes, der bekannt ist. Dies ist in 8 dargestellt. In dem gezeigten Beispiel werden nur die Werte des aktuellen Prozessorelements und der interpolierte Wert entlang der Iso-Beleuchtungslinie gemittelt.The as-described averaging along the iso illumination line can only be carried out for processor elements which are not located at the edge of the grid of processor elements. For the elements at the edge of the image, the inventive method must be slightly modified. It is not enough to duplicate the pixels on the edge. This would falsify the result. Suppose that the light changes diagonally across the image. If we now duplicate the pixels on the edge, an S-shaped course of the light would arise. This is because we calculate the average local color for a large area. Small values for p are used. Thus, the dots at the edge of the image affect the average local color calculated by all processor elements. Therefore, it makes sense not to make assumptions about pixels that are outside the image. Therefore, we average the data for the area of the image that is known. This is in 8th shown. In the example shown, only the values of the current processor element and the interpolated value along the iso-illumination line are averaged.

Bisher haben wir nur Beleuchtungen berücksichtigt, die in einer beliebigen Richtung gerade über das Bild verlaufen. Die Iso-Beleuchtungslinie kann aber auch gekrümmt sein. In diesem Fall muß die Krümmung der Linie mitberücksichtigt werden, da sonst Daten interpoliert würden, die nicht auf der Iso-Beleuchtungslinie liegen. Dies ist in 9 dargestellt. Wir berechnen daher die Krümmung der Intensität der Lichtquelle für jedes Prozessorelement. Ist die Krümmung der Intensität der Lichtquelle bekannt, so können wir die Werte auch entlang einer gekrümmten Iso-Beleuchtungslinie mitteln. Die Krümmung K eines Punktes (x, y) auf einer Oberfläche F(x, y) ist wie folgt definiert (Bronstein und Semendjajew 1989):

Figure 00100001
dabei ist Fx = ∂F/∂x, Fy = ∂F/∂y, Fxy = ∂F/∂x∂ y, Fyx = ∂F/∂y ∂x, Fxx = ∂2F/∂x2 Fyy = ∂2F/∂y2. Wir berechnen die Krümmung der Iso-Beleuchtungslinie, indem wir Fx = dx, Fy = dy, Fxy = ∂/∂x dy, Fyx = ∂/∂y dx, Fxx = ∂/∂x dx und Fyy = ∂/∂y dy setzen, wobei (dx, dy) der kombinierte Gradient der durchschnittlichen lokalen Farbe ist. Mit Hilfe der Krümmung K können wir den Krümungsradius r der Kurve am Punkt (x, y) berechnen.So far, we have only considered lighting that runs straight across the image in any direction. The iso-illumination line can also be curved. In this case, the curvature of the line must be taken into account, otherwise data would be interpolated, which are not on the iso-illumination line. This is in 9 shown. We therefore calculate the curvature of the intensity of the light source for each processor element. If the curvature of the intensity of the light source is known, we can also average the values along a curved iso-illumination line. The curvature K of a point (x, y) on a surface F (x, y) is defined as follows (Bronstein and Semendjajew 1989):
Figure 00100001
where F x = ∂F / ∂x, F y = ∂F / ∂y, F xy = ∂F / ∂x∂ y, F yx = ∂F / ∂y ∂x, F xx = ∂ 2 F / ∂ x 2 F yy = ∂ 2 F / ∂y 2 . We calculate the curvature of the iso-illumination line by taking F x = dx, F y = dy, F xy = ∂ / ∂x dy, F yx = ∂ / ∂y dx, F xx = ∂ / ∂x dx and Set F yy = ∂ / ∂y dy, where (dx, dy) is the combined gradient of the average local color. With the help of the curvature K we can calculate the curvature radius r of the curve at the point (x, y).

Figure 00100002
Figure 00100002

Der Radius r ist daher durch

Figure 00100003
gegeben. Das Vorzeichen der Krümmung K sagt uns, auf welcher Seite der Kurve das Zentrum der Krümmung liegt. Falls K > 0, so liegt das Zentrum auf der positiven Seite der Krümmungsnormalen. Das Zentrum liegt auf der negativen Seite der Krümmungsnormalen, falls K < 0. Für den Fall K = 0 wird die Kurve zu einer Linie.The radius r is therefore through
Figure 00100003
given. The sign of curvature K tells us which side of the curve is the center of curvature. If K> 0, the center is on the positive side of the normal of curvature. The center lies on the negative side of the curvature normal, if K <0. For the case K = 0, the curve becomes a line.

Nachdem das Zentrum der Krümmung bekannt ist, können wir die Schnittpunkte zwischen dem Krümmungskreis und dem Einheitskreis um das aktuelle Element berechnen. Dies ist in 10 dargestellt. Zur Berechnung der Schnittpunkte nehmen wir an, daß das Zentrum der Krümmung am Punkt (0, r) liegt. Dies vereinfacht die Berechnung der Schnittpunkte. Wir berechnen nun die Schnittpunkte P1 und P2. Der Einheitskreis und der Kreis um das Krümmungszentrum sind durch die folgenden beiden Gleichungen beschrieben. x2 + y2 = 1 (x – r)2 + y2 = r2 After the center of curvature is known, we can calculate the intersections between the circle of curvature and the unit circle around the current element. This is in 10 shown. To calculate the points of intersection, assume that the center of the curvature is at point (0, r). This simplifies the calculation of the intersections. We now calculate the points of intersection P 1 and P 2 . The unit circle and the circle around the center of curvature are described by the following two equations. x 2 + y 2 = 1 (x - r) 2 + y 2 = r 2

Wir setzen die erste Gleichung in die zweite Gleichung ein und lösen dann nach x auf.We insert the first equation into the second equation and then solve after x.

Figure 00110001
Figure 00110001

Die beiden y-Koordinaten erhalten wir dann aus x2 + y2 = 1.The two y-coordinates are then obtained from x 2 + y 2 = 1.

Figure 00110002
Figure 00110002

Liegt das Zentrum der Krümmung nicht entlang der Y-Achse, so müssen die berechneten Schnittpunkte noch in geeigneter Weise gedreht werden. Wir können nun die Daten an den Schnittpunkten (x, y1/2) mit einem der oben beschriebenen Interpolationsverfahren extrahieren. Falls nur die Daten entlang der Iso-Beleuchtungslinie berücksichtigt werden, führen wir folgende Berechnungen durch. Es sei ăi(x, y) mit i ∊ {r, g, b} die bisher ermittelte orientierte durchschnittliche lokale Farbe am Punkt (x, y) des Gitters.If the center of the curvature is not along the Y-axis, then the calculated intersections must still be rotated appropriately. We can now extract the data at the intersections (x, y 1/2 ) using one of the interpolation methods described above. If only the data along the iso illumination line is taken into account, we perform the following calculations. Let i (x, y) be iε {r, g, b} with the previously determined oriented average local color at the point (x, y) of the lattice.

Figure 00110003
Figure 00110003

Die Daten entlang der beiden Richtungen vorne/hinten, können auch hinzugezogen werden

Figure 00110004
wobei ω ∊ [0, 0.25] den Datenfluß in Gradientenrichtung definiert. Wir können eine der beiden vorgenannten Operationen zur Mittelung der Daten verwenden, um ă'i zu berechnen und dann den berechneten Wert des aktuellen Elements hinzufügen.The data along the two directions front / back, can also be included
Figure 00110004
where ω ε [0, 0.25] defines the data flow in the gradient direction. We can use one of the two aforementioned data averaging operations to compute ă ' i and then add the calculated value of the current element.

Figure 00110005
Figure 00110005

Schließlich wird die Farbe des aktuellen Elements ci hinzugefügt. ăi(x,y) = ă''i(x,y)·(1 – p) + ci(x,y)·p Finally, the color of the current element c i is added. ă i (x, y) = ă '' i (x, y) · (1 - p) + c i (X, y) * p

Dabei ist p wieder eine kleine Zahl größer als Null. Diese Schritte werden vorzugsweise in ausreichender Zahl, weiter bevorzugt quasi endlos (permanente Verarbeitung solange die entsprechende Vorrichtung im Betrieb ist) wiederholt. Mit dem erfindungsgemäßen Verfahren können wir also die Bildpunkte auch dann entlang der Iso-Beleuchtungslinie mitteln, wenn diese gekrümmt ist. Dies ist z.B. dann der Fall, wenn die Beleuchtung durch lokale Lichtquellen (Strahler) gegeben ist.there p is again a small number larger than Zero. These steps are preferably sufficient in number, more preferably quasi endless (permanent processing as long as the corresponding device in operation is repeated). With the method according to the invention can So we then the pixels along the Iso-illumination line averaging when these are curved is. This is e.g. then the case when lighting through local Light sources (spotlights) is given.

Nachdem wir nun die Beleuchtung durch Ermittelung der orientierten durchschnittlichen lokalen Farbe entlang der Iso-Beleuchtungslinie geschätzt haben, können wir diese zur Korrektur der gemessenen Farbe verwenden. Es sei ăi die orientierte durchschnittliche lokale Farbe entlang der Iso-Beleuchtungslinie für den Farbkanal i. Nach der Grauen-Welt-Hypothese kann mit Hilfe der durchschnittlichen lokalen Farbe die Beleuchtung geschätzt werden (Ebner 2001, 2002, 2004b). Hier verwenden wir die orientierte durchschnittliche lokale Farbe zur Approximation der Beleuchtung. Die Beleuchtung Li mit i ∊ {r, g, b} wird durch Li(x, y) = 2ăi(x, y)approximiert. Nachdem nun die Farbe der Lichtquelle für jeden Bildpunkt bekannt ist, kann die Reflektanz Ri für den Farbkanal i an dem Bildpunkt berechnet werden.Now that we have estimated the illumination by determining the oriented average local color along the iso-illumination line, we can use it to correct the measured color. Let ă i be the oriented average local color along the iso illumination line for the color channel i. According to the gray-world hypothesis, the lighting can be estimated using the average local color (Ebner 2001, 2002, 2004b). Here we use the oriented average local color to approximate the illumination. The illumination L i with i ε {r, g, b} is by L i (x, y) = 2ă i (x, y) approximated. Now that the color of the light source for each pixel is known, the reflectance R i for the color channel i at the pixel can be calculated.

Figure 00120001
Figure 00120001

Daher berechnen wir den korrigierten Farbwert als

Figure 00120002
wobei Θ eine Schwellwertoperation ist, die als
Figure 00120003
definiert ist. D.h., Werte, die außerhalb des Farbwürfels liegen, werden auf den gültigen Bereich zurückgesetzt. Alternativ kann die Farbkorrektur auch durch eine Farbverschiebung in Richtung des Grauvektors erfolgen (Ebner 2003b, 2004a). In diesem Fall wird die Korrektur durch oi = Θ(ci – ăi + ă),durchgeführt, wobei
Figure 00120004
ist. Bei einer normierten Farbverschiebung wird die Korrektur er gemessenen Farbe durch
Figure 00120005
durchgeführt, wobei
Figure 00120006
ist. Die einzelnen Stufen des Verfahrens sind in 11 dargestellt.Therefore, we calculate the corrected color value as
Figure 00120002
where Θ is a thresholding operation called
Figure 00120003
is defined. That is, values that are outside the color cube are reset to the valid range. Alternatively, the color correction can also be effected by a color shift in the direction of the gray vector (Ebner 2003b, 2004a). In this case, the correction is done by O i = Θ (c i - ă i + ă ) performed, where
Figure 00120004
is. In a normalized color shift, the correction of the measured color is accomplished
Figure 00120005
performed, where
Figure 00120006
is. The individual stages of the procedure are in 11 shown.

Zitierter in die Offenbarung einbezogener Stand der Technik bzw. LiteraturQuoted in the disclosure included State of the art or literature

  • Barnard, K., Finlayson, G., and Funt, B. (1997). Color constancy for scenes with varying illumination. Computer Vision and Image Understanding, 65(2):311-321.Barnard, K., Finlayson, G., and Funt, B. (1997). Color constancy for scenes with varying illumination. Computer Vision and Image Understanding, 65 (2): 311-321.
  • Barnard, K., Martin, L., and Funt, B. (2000). Colour by correlation in a three dimensional colour space. In Vernon, D., editor, Proceedings of the 6th European Conference on Computer Vision, Dublin, Ireland, pages 375-389, Berlin. Springer-Verlag.Barnard, K., Martin, L., and Funt, B. (2000). Color by correlation in a three dimensional color space. In Vernon, D., editor, Proceedings of the 6th European Conference on Computer Vision, Dublin, Ireland, pages 375-389, Berlin. Springer.
  • Brainard, D. H. and Wandell, B. A. (1992). Analysis of the retinex theory of color vision. In Healey, G. E., Shafer, S. A., and Wolff, L. B., editors, Color, pages 208-218, Boston. Jones and Bartlett Publishers.Brainard, D.H. and Wandell, B.A. (1992). Analysis of the Retinx theory of color vision. In Healey, G.E., Shafer, S.A., and Wolff, L.B., editors, Color, pages 208-218, Boston. Jones and Bartlett Publishers.
  • Brill, M. and West, G. (1981). Contributions to the theory of invariance of color under the condition of varying illumination. Journal of Mathematical Biology, 11:337-350.Brill, M. and West, G. (1981). Contributions to the theory of invariance of color under the condition of varying illumination. Journal of Mathematical Biology, 11: 337-350.
  • Bronštein, I. N. and Semendjajew, K. A. (1989). Taschenbuch der Mathematik. Verlag Harri Deutsch, Thun und Frankfurt/Main, vierundzwanzigste edition.Bronstein, I.N. and Semendjajew, K.A. (1989). Paperback of mathematics. Publisher Harri Deutsch, Thun and Frankfurt / Main, twenty-fourth edition.
  • Buchsbaum, G. (1980). A spatial processor model for object colour perception. Journal of the Franklin Institute, 310(1):337-350.Boxwood, G. (1980). A spatial processor model for object color perception. Journal of the Franklin Institute, 310 (1): 337-350.
  • Cardei, V. C. and Funt, B. (1999). Committee-based color constancy. In Proceedings of the IS&T/SID Seventh Color Imaging Conference: Color Science, Systems and Applications, Scottsdale, Arizona, pages 311-313.Cardei, V.C. and Funt, B. (1999). Committee-based color constancy. In Proceedings of the IS & T / SID Seventh Color Imaging Conference: Color Science, Systems and Applications, Scottsdale, Arizona, pages 311-313.
  • Digital Arts GmbH (2003). Xe847.com.http://www.xe847.com.Digital Arts GmbH (2003). Xe847.com.http: //www.xe847.com.
  • Courtney, S. M., Finkel, L. H., and Buchsbaum, G. (1995). A multistage neural network for color constancy and color induction. IEEE Transactions on Neural Networks, 6(4):972-985.Courtney, S.M., Finkel, L.H., and Buchsbaum, G. (1995). A multistage neural network for color constancy and color induction. IEEE Transactions on Neural Networks, 6 (4): 972-985.
  • Dufort, P. A. and Lumsden, C. J. (1991). Color categorization and color constancy in a neural network model of v4. Biological Cybernetics, 65:293-303.Dufort, P.A. and Lumsden, C.J. (1991). Color categorization and color constancy in a neural network model of v4. Biological Cybernetics, 65: 293-303.
  • D'Zmura, M. and Lennie, P. (1992). Mechanisms of color constancy. In Healey, G. E., Shafer, S. A., and Wolff, L. B., editors, Color, pages 224-234, Boston. Jones and Bartlett Publishers.D'Zmura, M. and Lennie, P. (1992). Mechanisms of color constancy. In Healey, G.E., Shafer, S.A., and Wolff, L.B., editors, Color, pages 224-234, Boston. Jones and Bartlett Publishers.
  • Ebner, M. (2001). Evolving color constancy for an artificial retina. In Miller, J., Tomassini, M., Lanzi, P. L., Ryan, C., Tettamanzi, A. G. B., and Langdon, W. B., editors, Genetic Programming: Proceedings of the Fourth European Conference, EuroGP 2001, Lake Como, Italy, April 18-20, pages 11-22, Berlin. Springer-Verlag.Ebner, M. (2001). Evolving color constancy for an artificial retina. In Miller, J., Tomassini, M., Lanzi, P.L., Ryan, C., Tettamanzi, A.G.B., and Langdon, W.B. editors, Genetic Programming: Proceedings of the Fourth European Conference, EuroGP 2001, Lake Como, Italy, April 18-20, pages 11-22, Berlin. Springer-Verlag.
  • Ebner, M. (2002). A parallel algorithm for color constancy. Technical Report 296, Universität Würzburg, Lehrstuhl für Informatik II, Am Hubland, 97074 Würzburg, Germany.Ebner, M. (2002). A parallel algorithm for color constancy. Technical Report 296, University Würzburg, Chair for Computer Science II, Am Hubland, 97074 Würzburg, Germany.
  • Ebner, M. (2003a). Combining white-patch retinex and the gray world assumption to achieve color constancy for multiple illuminants. In Michaelis, B. and Krell, G., editors, Pattern Recognition, Proceedings of the 25th DAGM Symposium, Magdeburg, Germany, pages 60-67, Berlin. Springer-Verlag.Ebner, M. (2003a). Combining white-patch retinex and the gray World assumption to achieve color constancy for multiple illuminants. In Michaelis, B. and Krell, G., editors, Pattern Recognition, Proceedings of the 25th DAGM Symposium, Magdeburg, Germany, pages 60-67, Berlin. Springer-Verlag.
  • Ebner, M. (2003b). Verfahren und Vorrichtung zur Farbkorrektur von Bildern. Deutsche Patentanmeldung, Anmeldenr. 14302756, 28 Seiten, 6. Oktober.Ebner, M. (2003b). Method and apparatus for color correction of pictures. German patent application, registration no. 14302756, 28 pages, October 6th.
  • Ebner, M. (2004a). Color constancy using local color shifts. In European Conference on Computer Vision, 2004.Ebner, M. (2004a). Color constancy using local color shifts. In European Conference on Computer Vision, 2004.
  • Ebner, M. (2004b). A parallel algorithm for color constancy. Journal of Parallel and Distributed Computing, 64(1):79-88.Ebner, M. (2004b). A parallel algorithm for color constancy. Journal of Parallel and Distributed Computing, 64 (1): 79-88.
  • Finlayson, G. D. (1996). Color in perspective. IEEE Transactions on Pattern Analysis and Machine Intelligence, 18(10):1034-1038.Finlayson, G.D. (1996). Color in perspective. IEEE Transactions on Pattern Analysis and Machine Intelligence, 18 (10): 1034-1038.
  • Finlayson, G. D., Hubel, P. M., and Hordley, S. (1997). Color by correlation. In Proceedings of IS&T/SID. The Fifth Color Imaging Conference: Color Science, Systems, and Applications, Nov 17-20, The Radisson Resort, Scottsdale, AZ, pages 6-11.Finlayson, G.D., Hubel, P.M., and Hordley, S. (1997). color by correlation. In Proceedings of IS & T / SID. The Fifth Color Imaging Conference: Color Science, Systems, and Applications, Nov 17-20, The Radisson Resort, Scottsdale, AZ, pages 6-11.
  • Finlayson, G. D., Schiele, B., and Crowley, J. L. (1998). Comprehensive colour image normalization. In Burkhardt, H. and Neumann, B., editors, Fifth European Conference on Computer Vision (ECCV '98), Freiburg, Germany, pages 475-490, Berlin. Springer-Verlag.Finlayson, G.D., Schiele, B., and Crowley, J.L. (1998). Comprehensive color image normalization. In Burkhardt, H. and Neumann, B., editors, Fifth European Conference on Computer Vision (ECCV '98), Freiburg, Germany, pages 475-490, Berlin. Springer-Verlag.
  • Finlayson, G. D., Drew, M. S., and Lu, C. (2004). Intrinsic Images by Entropy Minimization. In Pajdla, T. and Matas, J., editors, Proceedings of the 8th European Conference on Computer Vision, Part III, Prague, Czech Republic, May, pages 582-595, Berlin. Springer-Verlag.Finlayson, G.D., Drew, M.S., and Lu, C. (2004). intrinsic Images by Entropy Minimization. In Pajdla, T. and Matas, J., editors, Proceedings of the 8th European Conference on Computer Vision, Part III, Prague, Czech Republic, May, pages 582-595, Berlin. Springer.
  • Forsyth, D. A. (1988). A novel approach to colour constancy. In Second international Conference on Computer Vision (Tampa, FL, Dec. 5-8), pages 9-18. IEEE Press.Forsyth, D.A. (1988). A novel approach to color constancy. Second International Conference on Computer Vision (Tampa, FL, Dec. 5-8), pages 9-18. IEEE Press.
  • Forsyth, D. A. (1992). A novel algorithm for color constancy. In Healey, G. E., Shafer, S. A., and Wolff, L. B., editors, Color, pages 241-271, Boston. Jones and Bartlett Publishers.Forsyth, D.A. (1992). A novel algorithm for color constancy. In Healey, G.E., Shafer, S.A., and Wolff, L.B., editors, Color, pages 241-271, Boston. Jones and Bartlett Publishers.
  • Funt, B., Cardei, V., and Barnard, K. (1996). Learning color constancy. In Proceedings of the IS&T/SID Fourth Color Imaging Conference, pages 58-60, Scottsdale.Funt, B., Cardei, V., and Barnard, K. (1996). Learning color constancy. In Proceedings of the IS & T / SID Fourth Color Imaging Conference, pages 58-60, Scottsdale.
  • Funt, B. V. and Drew, M. S. (1988). Color constancy computation in near-mondrian scenes using a finite dimensional linear model. In Jain, R. and Davis, L., editors, Proceedings of the Computer Society Conference on Computer Vision and Pattern Recognition, Ann Arbor, Mi, pages 544-549. Computer Society Press.Funt, B.V. and Drew, M.S. (1988). Color constancy computation in near-mondrian scenes using a finite dimensional linear model. In Jain, R. and Davis, L., editors, Proceedings of the Computer Society Conference on Computer Vision and Pattern Recognition, Ann Arbor, Wed, pages 544-549. Computer Society Press.
  • Funt, B. V., Drew, M. S., and Ho, J. (1991). Color constancy from mutual reflection. International Journal of Computer Vision, 6(1):5-24.Funt, B.V., Drew, M.S., and Ho, J. (1991). Color constancy from mutual reflection. International Journal of Computer Vision, 6 (1): 5-24.
  • Gershon, R., Jepson, A. D., and Tsotsos, J. K. (1987). From [R,G,B] to surface reflectance: Computing color constant descriptors in images. In McDermott, J. P., editor, Proceedings of the Tenth International Joint Conference on Artificial Intelligence, Milan, Italy, volume 2, pages 755-758. Morgan Kaufmann.Gershon, R., Jepson, A.D., and Tsotsos, J.K. (1987). from [R, G, B] to surface reflectance: Computing color constant descriptors in images. In McDermott, J.P., editor, Proceedings of the Tenth International Joint Conference on Artificial Intelligence, Milan, Italy, volume 2, pages 755-758. Morgan merchant.
  • Gonzalez, R. C. and Woods, R. E. (1992). Digital Image Processing. Addison-Wesley Publishing Company, Reading, Massachusetts.Gonzalez, R.C. and Woods, R.E. (1992). Digital Image Processing. Addison-Wesley Publishing Company, Reading, Massachusetts.
  • Herault, J. (1996). A model of colour processing in the retina of vertebrates: From photoreceptors to colour opposition and colour constancy phenomena. Neurocomputing, 12:113-129.Herault, J. (1996). A model of color processing in the retina of vertebrates: From photoreceptors to color opposition and color constancy phenomena. Neurocomputing, 12: 113-129.
  • Ho, J., Funt, B. V., and Drew, M. S. (1992). Separating a color signal into illumination and surface reflectance components: Theory and applications. In Healey, G. E., Shafer, S. A., and Wolff, L. B., editors, Color, pages 272-283, Boston. Jones and Bartlett Publishers.Ho, J., Funt, B.V., and Drew, M.S. (1992). Separating a color signal into illumination and surface reflectance components: Theory and applications. In Healey, G.E., Shafer, S.A., and Wolff, L. B., editors, Color, pages 272-283, Boston. Jones and Bartlett Publishers.
  • Horn, B. K. P. (1974). Determining lightness from an image. Computer Graphics and Image Processing, 3:277-299.Horn, B.K.P. (1974). Determining lightness from an image. Computer Graphics and Image Processing, 3: 277-299.
  • Horn, B. K. P. (1986). Robot Vision. The MIT Press, Cambridge, Massachusetts.Horn, B.K.P. (1986). Robot Vision. The MIT Press, Cambridge, Massachusetts.
  • Land, E. H. (1974). The retinex theory of colour vision. Proc. Royal Inst. Great Britain, 47:23-58.Land, E.H. (1974). The retinex theory of color vision. Proc. Royal Inst. Great Britain, 47: 23-58.
  • Land, E. H. (1983). Recent advances in retinex theory and some implications for cortical computations: color visioonsn and the natural image. Proc. Natl. Acad. Sci. USA, 80:5163-5169.Land, E.H. (1983). Recent advances in retinex theory and some implications for cortical computations: color visions and the natural image. Proc. Natl. Acad. Sci. USA, 80: 5163-5169.
  • Land, E. H. (1986a). An alternative technique for the computation of the designator in the retinex theory of color vision. Proc. Natl. Acad. Sci. USA, 83:3078-3080.Land, E.H. (1986a). An alternative technique for the computation of the designator in the retinex theory of color vision. Proc. Natl. Acad. Sci. USA, 83: 3078-3080.
  • Land, E. H. (1986b). Recent advances in retinex theory. Vision Res., 26(1):7-21.Land, E.H. (1986b). Recent advances in retinex theory. vision Res., 26 (1): 7-21.
  • Land, E. H. and McCann, J. J. (1974). Lightness and retinex theory. Journal of the Optical Society of America, 61(1):1-11.Land, E.H. and McCann, J.J. (1974). Lightness and Retinx theory. Journal of the Optical Society of America, 61 (1): 1-11.
  • Maloney, L. T. and Wandell, B. A. (1986). Color constancy: a method for recovering surface spectral reflectance. Journal of the Optical Society of America A3, 3(1):29-33.Maloney, L.T. and Wandell, B.A. (1986). Color constancy: a method for recovering surface spectral reflectance. Journal of the Optical Society of America A3, 3 (1): 29-33.
  • Moore, A., Allman, J., and Goodman, R. M. (1991). A real-time neural system for color constancy. IEEE Transactions on Neural Networks, 2(2):237-247.Moore, A., Allman, J., and Goodman, R.M. (1991). A real-time neural system for color constancy. IEEE Transactions on Neural Networks, 2 (2): 237-247.
  • pervised color constancy for machine visioNovak, C. L. and Shafer, S. A. (1992). Sun. In Healey, G. E., Shafer, S. A., and Wolff, L. B., editors, Color, pages 284-299, Boston. Jones and Bartlett Publishers.pervised color constancy for machine visioNovak, C.L. and Shafer, S.A. (1992). Sun. In Healey, G.E., Shafer, S.A., and Wolff, L. B., editors, Color, pages 284-299, Boston. Jones and Bartlett Publishers.
  • Paulus, D., Csink, L. and Niemann, H. (1998). Color Cluster Rotation. In Proceedings of the International Conference on Image Processing (ICIP), pages 161-165, 1998.Paul, D., Csink, L. and Niemann, H. (1998). Color Cluster Rotation. In Proceedings of the International Conference on Image Processing (ICIP), pages 161-165, 1998.
  • Rahman, Z., Jobson, D. J., and Woodell, G. A. (1999). Method of improving a digital image. United States Patent No. 5,991,456.Rahman, Z., Jobson, D.J., and Woodell, G.A. (1999). method of improving a digital image. United States Patent. 5,991,456.
  • Risson, V. J. (2003). Determination of an illuminant of digital color image by segmentation and filtering. United States Patent Application, Pub. No. US 2003/0095704 A1 .Risson, VJ (2003). Determination of an illuminant of digital color image by segmentation and filtering. United States Patent Application, Pub. No. US 2003/0095704 A1 ,
  • Tappen, M. F., Freeman, W. T., and Adelson, E. H. (2002). Recovering Intrinsic Images from a Single Image. Massachusetts Institute of Technology, Artificial Intelligence Laboratory, AI Memo 2002-015, Sept.Tappen, M.F., Freeman, W.T., and Adelson, E.H. (2002). Recovering Intrinsic images from a single image. Massachusetts Institute of Technology, Artificial Intelligence Laboratory, AI Memo 2002-015, Sept.
  • Usui, S. and Nakauchi, S. (1997). A neurocomputational model for colour constancy. In Dickinson, C., Murray, I., and Carden, D., editors, John Dalton's Colour Vision Legacy. Selected Proceedings of the International Conference, pages 475-482, London. Taylor & Francis.Usui, S. and Nakauchi, S. (1997). A neurocomputational model for color constancy. In Dickinson, C., Murray, I., and Carden, D., editors, John Dalton's Color Vision Legacy. Selected Proceedings of the International Conference, pages 475-482, London. Taylor & Francis.
  • Weickert, J. (1997). A Review of Nonlinear Diffusion Filtering. In ter Haar Romeny, B., Florack L., Koenderink, J., Viergever, M., editors, Scale-Space Theory in Computer Vision, pages 3-28, Berlin. Springer-Verlag.Weickert, J. (1997). A Review of Nonlinear Diffusion Filtering. In ter Haar Romeny, B., Florack L., Koenderink, J., Viergever, M., editors, Scale-Space Theory in Computer Vision, pages 3-28, Berlin. Springer-Verlag.
  • Weickert, J., ter Haar Romeny, B., Viergever, M. A. (1998). Efficient and Reliable Schemes for Nonlinear Diffusion Filtering. In IEEE Transactions on Image Processing, 7(3):398-410.Weickert, J., ter Haar Romeny, B., Viergever, M.A. (1998). Efficient and Reliable Schemes for Nonlinear Diffusion Filtering. In IEEE Transactions on Image Processing, 7 (3): 398-410.

Claims (33)

Verfahren zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten oder elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist, mindestens ein Objekt abbildet und eine lineare oder nicht-lineare Beleuchtung aufweist, um ein erzeugtes Bild mit zumindest einer realistischeren oder gar naturgetreuen Farbe des Objekts zu erhalten, mit den folgenden Schritten: (a) Ermitteln der ursprünglichen Farbe von jeweils mehreren zu untersuchenden Bildpunkten des ursprünglichen Bildes, (b) isotropes Mitteln der durchschnittlichen lokalen Farbe von benachbarten Bildpunkten für jeden untersuchten Bildpunkt, (c) Hinzufügen der ermittelten ursprünglichen Farbe zu der durchschnittlichen lokalen Farbe benachbarter Bildpunkte, um die durchschnittliche lokale Farbe der Bildpunkte innerhalb eines Bereiches für diese Bildpunkte zu erhalten, (d) Schätzung der Beleuchtungsänderung durch Bestimmung des Gradienten bzw. der Richtung der Änderung der durchschnittlichen lokalen Farbe des Bildpunktes, (e) Anisotropes Mitteln der orientierten durchschnittlichen lokalen Farbe von benachbarten Bildpunkten in einer Richtung orthogonal zur geschätzten Beleuchtungsänderung für jeden untersuchten Bildpunkt, (f) Hinzufügen der ermittelten ursprünglichen Farbe jedes Bildpunktes zu der anisotrop gemittelten orientierten durchschnittlichen lokalen Farbe, um die orientierte durchschnittliche lokale Farbe dieses Bildpunktes zu erhalten, (g) Korrigieren der Farbe eines untersuchten Bildpunktes anhand der ursprünglichen Farbe des Bildpunktes und der erhaltenen orientierten durchschnittlichen lokalen Farbe des Bildpunktes.A method of correcting the original color of a digital, digitized or electronic original image comprising a plurality of pixels, imaging at least one object and having linear or non-linear illumination to obtain a generated image having at least a more realistic or even lifelike color of the object , comprising the steps of: (a) determining the original color of each of a plurality of pixels to be examined of the original image, (b) averaging the average local color of adjacent pixels for each pixel under investigation, (c) adding the determined original color to the original pixel average local color of adjacent pixels to obtain the average local color of the pixels within a range for these pixels; (d) estimate the change in illumination by determining the gradient or direction of change of the average locally color of the pixel, (e) anisotropic averaging of the oriented average local color of adjacent pixels in a direction orthogonal to the estimated illumination change for each pixel under investigation; (f) adding the determined original color of each pixel to the anisotropically averaged oriented average local color to obtain the oriented average local color of that pixel; (g) correcting the color of an inspected pixel based on the original color of the pixel and the obtained oriented average local color of the pixel. Verfahren nach Anspruch 1, wobei insbesondere vor dem Schritt 1(a) ein Gitter aus Prozessorelementen bereitgestellt wird. The method of claim 1, wherein in particular before Step 1 (a) provides a grid of processor elements becomes. Verfahren nach Anspruch 2, wobei für jeden Bildpunkt ein Prozessorelement bereitgestellt wird.The method of claim 2, wherein for each Pixel a processor element is provided. Verfahren nach Anspruch 2 oder 3, wobei jedes Prozessorelement derart ausgebildet ist, daß es auf die gemessene Farbe des zugehörigen Bildpunktes zugreifen kann und zusätzlich zwei weitere Farben, die durchschnittliche lokale Farbe und die orientierte durchschnittliche lokale Farbe speichern kann.The method of claim 2 or 3, wherein each processor element is designed such that it access the measured color of the associated pixel can and in addition two more colors, the average local color and the oriented average local color can save. Verfahren nach einem der vorhergehenden Ansprüche, wobei jedes Prozessorelement derart ausgebildet ist, daß es auf den Speicherinhalt der benachbarten Prozessorelemente oben, unten, rechts, links und/oder schräg oben links, schräg oben rechts, schräg unten links, schräg unten rechts zugreifen kann.Method according to one of the preceding claims, wherein each processor element is adapted to be on the memory contents of the adjacent processor elements above, below, right, left and / or oblique top left, sloping top right, sloping bottom left, sloping bottom right can access. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Schritte 1(b) und 1(c) mit folgenden Berechnungen wiederholt werden:
Figure 00180001
wobei folgendes gilt: die Nachbarschaftsbeziehung ist durch N(x, y) = {(x', y')|(x', y') ist Nachbarelement von Element (x, y)}gegeben, ai(x, y) mit i ∊ {r, g, b} ist der bisher berechnete durchschnittliche lokale Farbwert für den Farbkanal i an der Position (x, y), ci(x, y) ist die Intensität des Farbkanals i an der Position (x, y) im Bild, c(x, y) [cr(x, y), cg(x, y), cb(x, y)] ist der gemessene Farbwert an der Position (x, y) und p ist ein kleiner Wert größer Null.
Method according to one of the preceding claims, wherein steps 1 (b) and 1 (c) are repeated with the following calculations:
Figure 00180001
where: the neighborhood relationship is through N (x, y) = {(x ', y') | (x ', y') is the neighboring element of element (x, y)} Given that a i (x, y) with i ε {r, g, b} is the average local color value calculated so far for the color channel i at position (x, y), c i (x, y) is the intensity of Color channel i at the position (x, y) in the image, c (x, y) [c r (x, y), c g (x, y), c b (x, y)] is the measured color value at the Position (x, y) and p is a small value greater than zero.
Verfahren nach einem der vorhergehenden Ansprüche, wobei die Schritte 1(b) und 1(c) mit folgenden Berechnungen wiederholt werden:.
Figure 00180002
wobei die durchschnittliche lokale Farbe des Elements bei der Mittelung miteinbezogen wird.
Method according to one of the preceding claims, wherein steps 1 (b) and 1 (c) are repeated with the following calculations:
Figure 00180002
the average local color of the element being included in the averaging.
Verfahren nach Anspruch 6 oder 7, wobei die Schritte 1(b) und 1(c) quasi endlos durchgeführt werden.Method according to claim 6 or 7, wherein the steps 1 (b) and 1 (c) are carried out almost endlessly. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Verfahren mit Hilfe eines Gitters aus Widerständen durchgeführt wird bzw. gefaltet wird, insbesondere mit der Funktion ke–|r|σ mit
Figure 00190001
d.h.
Figure 00190002
mit der Randbedingung
Figure 00190003
Method according to one of the preceding claims, wherein the method is carried out with the aid of a grid of resistors or folded, in particular with the function ke - | r | σ With
Figure 00190001
ie
Figure 00190002
with the boundary condition
Figure 00190003
Verfahren nach einem der Ansprüche 1 bis 8, wobei das Verfahren mit Hilfe einer Faltung des Bildes, insbesondere mit folgender Gauß-Funktion mit
Figure 00190004
durchgeführt wird:
Figure 00190005
Method according to one of claims 1 to 8, wherein the method by means of a convolution of the image, in particular with the following Gaussian function with
Figure 00190004
is carried out:
Figure 00190005
Verfahren nach einem der Ansprüche 1 bis 10, wobei im Schritt 1(d) die Richtung der Beleuchtungsänderung α durch
Figure 00190006
berechnet wird, wobei dx und dy aus dem Mittelwert der Gradienten der durchschnittlichen lokalen Farbe ∇ai berechnet wird:
Figure 00190007
Method according to one of claims 1 to 10, wherein in step 1 (d) the direction of the illumination change α by
Figure 00190006
where dx and dy are calculated from the average of the gradients of the average local color ∇a i :
Figure 00190007
Verfahren nach einem der Ansprüche 1 bis 10, wobei im Schritt 1(d) die Richtung der Beleuchtungsänderung α durch
Figure 00190008
berechnet wird, wobei dx und dy durch den maximalen Gradienten des Farkbkanals der durchschnittlichen lokalen Farbe gegeben ist
Figure 00200001
Method according to one of claims 1 to 10, wherein in step 1 (d) the direction of the illumination change α by
Figure 00190008
where dx and dy are given by the maximum gradient of the farkb channel of the average local color
Figure 00200001
Verfahren nach einem der Ansprüche 1 bis 10, wobei im Schritt 1(d) die Richtung der Beleuchtungsunderung α durch
Figure 00200002
berechnet wird und dx und dy durch die gewichtete Summation der Gradienten der Farbkanäle der durchschnittlichen lokalen Farbe gegeben ist
Figure 00200003
Method according to one of claims 1 to 10, wherein in step 1 (d) the direction of the illumination omission α
Figure 00200002
is calculated and dx and dy is given by the weighted summation of the gradients of the color channels of the average local color
Figure 00200003
Verfahren nach einem der Ansprüche 11 bis 13, wobei die Schritte 1(e) und 1(f) mit folgenden Berechnungen wiederholt werden:
Figure 00200004
wobei ă(links), und ă(rechts) interpolierte Farben des in Richtung des Gradienten gedrehten Koordinatensystems sind und p ein kleiner Wert größer Null ist.
Method according to one of claims 11 to 13, wherein the steps 1 (e) and 1 (f) are repeated with the following calculations:
Figure 00200004
where ă (left), and ă (right) are interpolated colors of the coordinate system rotated in the direction of the gradient and p is a small value greater than zero.
Verfahren nach einem der Ansprüche 11 bis 13, wobei die Schritte 1(e) und 1(f) mit folgenden Berechnungen wiederholt werden:
Figure 00200005
wobei ă(vorne), ă(hinten), ă(links), und ă(rechts) interpolierte Farben des in Richtung des Gradienten gedrehten Koordinatensystems sind und ω ∊ [0, 0.25] ist.
Method according to one of claims 11 to 13, wherein the steps 1 (e) and 1 (f) are repeated with the following calculations:
Figure 00200005
where ă (front), ă (back), ă (left), and ă (right) are interpolated colors of the coordinate system rotated in the direction of the gradient and ω ε [0, 0.25].
Verfahren nach einem der Ansprüche 14 oder 15, wobei für die orientierte durchschnittliche lokale Farbe anstatt von ăi(links) der Wert ăi(P1) und anstatt von ăi(rechts) der Wert ăi(P2) verwendet wird wobei die Punkte P1 und P2 sich aus den Schnittpunkten des Einheitskreises und des Krümmungskreises des aktuellen Prozessorelementes ergeben, wobei die Krümmung K durch
Figure 00210001
geben ist, und Fx = dx, Fy = dy, Fxy = ∂/∂x ∂y, Fyx = ∂/∂y ∂x, Fxx = ∂/∂x Fyy = ∂/∂y dy, und (dx, dy) der kombinierte Gradient der durchschnittlichen lokalen Farbe ist und der Krümmungskreis den Radius r
Figure 00210002
hat.
Method according to one of claims 14 or 15, wherein for the oriented average local color instead of ã i (left) the value ã i (P 1 ) and instead of ã i (right) the value ã i (P 2 ) is used the points P 1 and P 2 result from the intersections of the unit circle and the circle of curvature of the current processor element, wherein the curvature K by
Figure 00210001
F x = dx, F y = dy, F xy = ∂ / ∂x ∂y, F yx = ∂ / ∂y ∂x, F xx = ∂ / ∂x F yy = ∂ / ∂y dy, and (dx, dy) is the combined gradient of the average local color and the circle of curvature is the radius r
Figure 00210002
Has.
Verfahren nach einem der Ansprüche 14, 15 oder 16, wobei der Schritt 2.) von Anspruch 14 bzw. 15 durch
Figure 00210003
ersetzt wird.
A method according to any one of claims 14, 15 or 16, wherein step 2) of claim 14 and 15, respectively
Figure 00210003
is replaced.
Verfahren nach einem der Ansprüche 14 bis 17, wobei die interpolierte orientierte durchschnittliche lokale Farbe an dem Punkt P mit P ∊ {links, rechts, vorne, hinten, P1, P2} durch ă(P) = (1 – s)ă(A) + să(B), berechnet wird, wobei A bzw. B die jeweiligen benachbarten Prozessorelemente des aktuellen Prozessorelements um P sind, s = π ist und α die Richtung der Beleuchtungsänderung ist.A method according to any one of claims 14 to 17, wherein the interpolated oriented average local color at the point P with P ε {left, right, front, back, P 1 , P 2 } ă (P) = (1 - s) ă (A) + să (B), A and B are the respective adjacent processor elements of the current processor element by P, s = π and α is the direction of the illumination change. Verfahren nach einem der Ansprüche 14 bis 17, wobei die interpolierte orientierte durchschnittliche lokale Farbe an dem Punkt P mit P ∊ {links, rechts, vorne, hinten, P1, P2} durch
Figure 00220001
berechnet wird, wobei A bzw. B die jeweiligen benachbarten Prozessorelemente des aktuellen Prozessorelements um P sind, dx und dy die Richtung der Beleuchtungsänderung angibt.
Method according to one of claims 14 to 17, wherein the interpolated oriented average lo kale color at the point P with P ε {left, right, front, back, P 1 , P 2 }
Figure 00220001
where A and B are the respective adjacent processor elements of the current processor element by P, dx and dy indicating the direction of illumination change.
Verfahren nach einem der Ansprüche 14 bis 17, wobei eine Verbindung zu den diagonal benachbarten Prozessorelementen besteht und die interpolierte orientierte durchschnittliche lokale Farbe an dem Punkt P mit P ∊ {links, rechts, vorne, hinten, P1, P2} durch ă(P) = (1 – u)ă(E) + uă(F)berechnet wird, dabei ist ă(E) = (1 – ν)ă(C) + νă(B) und ă(F) = (1 – ν)ă(A) + νă(D), u = cos(α) und ν = sin(α), wobei A, bzw. B die jeweiligen benachbarten Prozessorelemente des aktuellen Prozessorelements um P sind, C das aktuelle Prozessorelement ist, D das diagonal gegenüberliegende Prozessorelement von C in Richtung von A und B ist und α die Richtung der Beleuchtungsänderung ist.Method according to one of claims 14 to 17, wherein a connection to the diagonally adjacent processor elements and the interpolated oriented average local color at the point P with P ε {left, right, front, back, P 1 , P 2 } by ă (P) = (1 - u) ă (E) + uă (F) is calculated, where ă (E) = (1 - ν) ă (C) + νă (B) and ă (F) = (1 - ν) ă (A) + νă (D), u = cos (α ) and ν = sin (α), where A, B respectively are the respective adjacent processor elements of the current processor element by P, C is the current processor element, D is the diagonally opposite processor element of C in the direction of A and B, and α is the direction the lighting change is. Verfahren nach einem der Ansprüche 14 bis 20, wobei die Schritte 1(e) und 1(f) quasi endlos durchgeführt werden.A method according to any one of claims 14 to 20, wherein the steps 1 (e) and 1 (f) are carried out almost endlessly. Verfahren nach einem der Ansprüche 1 bis 21, wobei in Schritt 1(g) das Korrigieren der gemessenen Farbe eines Bildpunktes anhand der ursprünglichen Farbe des Bildpunktes und der erhaltenen orientierten durchschnittlichen lokalen Farbe des Bildpunktes durch Subtraktion der im wesentlichen senkrecht auf dem Grauvektor stehende Komponente der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes von der ursprünglichen Farbe des Bildpunktes erreicht wird wobei
Figure 00230001
ist und der korrigierte Farbwert o = [or, og, ob] durch
Figure 00230002
gegeben ist.
A method according to any one of claims 1 to 21, wherein in step 1 (g) correcting the measured color of a pixel based on the original color of the pixel and the obtained oriented average local color of the pixel by subtracting the component of the pixel substantially perpendicular to the gray vector Oriented average local color of a pixel is achieved by the original color of the pixel
Figure 00230001
and the corrected color value o = [o r , o g , o b ]
Figure 00230002
given is.
Verfahren nach einem der Ansprüche 1 bis 21, wobei in Schritt 1(g) das Korrigieren der gemessenen Farbe eines Bildpunktes im wesentlichen durch die folgenden Schritte erfolgt: (a) Skalieren der ursprünglichen Farbe eines Bildpunktes und der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes auf die Ebene r + g + b = 1 des RGB-Farbraumes, (b) Subtrahieren der Komponente der orientierten durchschnittlichen lokalen Farbe eines Bildpunktes, die senkrecht auf dem Grauvektor steht, von der ursprünglichen Farbe des Bildpunktes zum Erhalten der korrigierten Farbe des Bildpunktes und (c) Skalieren der korrigierten Farbe eines Bildpunktes auf die Länge der ursprünglichen Farbe des Bildpunktes, der korrigierte Farbwert o = [or, og, ob] ist dann durch
Figure 00230003
gegeben, wobei
Figure 00230004
ist.
The method of any one of claims 1 to 21, wherein in step 1 (g), correcting the measured color of a pixel is substantially accomplished by the steps of: (a) scaling the original color of a pixel and the oriented average local color of a pixel to Plane r + g + b = 1 of the RGB color space, (b) subtracting the component of the oriented average local color of a pixel perpendicular to the gray vector from the original color of the pixel to obtain the corrected color of the pixel and (c ) Scaling the corrected color of a pixel to the length of the original color of the pixel, the corrected color value o = [o r , o g , o b ] is then through
Figure 00230003
given, where
Figure 00230004
is.
Verfahren nach einem der Ansprüche 1 bis 21, wobei in Schritt 1(g) das Korrigieren der gemessenen Farbe eines Bildpunktes anhand der ursprünglichen Farbe des Bildpunktes und der erhaltenen orientierten durchschnittlichen lokalen Farbe des Bildpunktes durch Division mit der orientierten durchschnittlichen lokalen Farbe erfolgt, wobei der korrigierte Farbwert o = [or, og, ob] dann durch
Figure 00230005
gegeben ist, wobei der Faktor f bevorzugt auf 2 gesetzt wird.
A method according to any one of claims 1 to 21, wherein in step 1 (g) correcting the measured color of a pixel based on the original color of the pixel and the obtained oriented average local color of the pixel by division with the oriented average local color corrected color value o = [o r , o g , o b ] then through
Figure 00230005
is given, wherein the factor f is preferably set to 2.
Verfahren nach einem der Ansprüche 22 bis 24, wobei der korrigierte Farbwert auf den Bereich [0,1] begrenzt wird.The method of any of claims 22 to 24, wherein the corrected Color value is limited to the range [0,1]. Verfahren nach einem der Ansprache 1 bis 25, wobei das Verfahren für mehrere Bildpunkte, vorzugsweise alle Bildpunkte, eines ursprünglichen Bildes durchgeführt wird.Method according to one of the addresses 1 to 25, wherein the procedure for several pixels, preferably all pixels, of an original one Image performed becomes. Verfahren nach einem der vorhergehenden Ansprache, wobei das Verfahren mittels Transistoren in VLSI durchgeführt wird.Method according to one of the preceding remarks, the method being performed by means of transistors in VLSI. Vorrichtung zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten oder elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist und mindestens ein Objekt abbildet, und eine lineare oder nichtlineare Beleuchtung aufweist, um ein erzeugtes Bild mit zumindest einer realistischeren Farbe des Objekts zu erhalten, insbesondere zum Durchführen eines Verfahrens nach einem der vorhergehenden Ansprüche, mit: (a) Einer Einrichtung zum Ermitteln der ursprünglichen Farbe von jeweils mehreren zu untersuchenden Bildpunkten des ursprünglichen Bildes, (b) einer Einrichtung zum isotropen Mitteln der durchschnittlichen lokalen Farbe von benachbarten Bildpunkten für jeden untersuchten Bildpunkt, (c) einer Einrichtung zum Hinzufügen der ermittelten ursprünglichen Farbe zu der durchschnittlichen lokalen Farbe benachbarter Bildpunkte, um die durchschnittliche lokale Farbe der Bildpunkte innerhalb eines Bereiches für diese Bildpunkte zu erhalten, (d) einer Einrichtung zur Schätzung der Beleuchtungsänderung durch Bestimmung des Gradienten bzw. der Richtung der Änderung der durchschnittlichen lokalen Farbe des Bildpunktes, (e) einer Einrichtung zum anisotropen Mitteln der orientierten durchschnittlichen lokalen Farbe von benachbarten Bildpunkten in einer Richtung orthogonal zur geschätzten Beleuchtungsänderung für jeden untersuchten Bildpunkt, (f) einer Einrichtung zum Hinzufügen der ermittelten ursprünglichen Farbe jedes Bildpunktes zu der anisotrop gemittelten orientierten durchschnittlichen lokalen Farbe, um die orientierte durchschnittliche lokale Farbe dieses Bildpunktes zu erhalten, (g) einer Einrichtung zum Korrigieren der Farbe eines untersuchten Bildpunktes anhand der ursprünglichen Farbe des Bildpunktes und der erhaltenen orientierten durchschnittlichen lokalen Farbe des Bildpunktes.Device for correcting the original Color of a digital, digitized or electronic original Image that has multiple pixels and at least one object having linear or non-linear illumination, a generated image with at least a more realistic color of the object, in particular for performing a method according to one of the preceding claims, With: (a) A facility for determining the original Color of each of several pixels to be examined of the original image, (b) an average isotropic means local color of neighboring pixels for each pixel examined, (C) a device for adding the determined original Color to the average local color of adjacent pixels, around the average local color of the pixels within a Area for to get these pixels, (d) a facility for the estimation of light change by determining the gradient or the direction of the change the average local color of the pixel, (e) one Establishment for anisotropic means of oriented average local color of adjacent pixels in one direction orthogonal to the esteemed light change for each examined pixel, (f) means for adding the determined original Color of each pixel to the anisotropically averaged oriented average local color to the oriented average get local color of this pixel, (g) a device to correct the color of an inspected pixel the original one Color of the pixel and the obtained oriented average local color of the pixel. Computerprogramm mit einer Programmcode-Einrichtung, das ein Verfahren nach einem der Ansprüche 1 bis 27 durchführt, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer program with a program code device, which performs a method according to any one of claims 1 to 27, when the computer program is running on a computer. Computerprogrammprodukt mit einer Programmcode-Einrichtung, die auf einem computerlesbaren Datenträger gespeichert ist, das ein Verfahren nach einem der Ansprüche 1 bis 27 durchführt, wenn das Programmprodukt auf einem Computer ausgeführt wird.Computer program product with a program code device, which is stored on a computer-readable medium, the Method according to one of the claims 1 to 27, if the program product is running on a computer. Verwendung eines Verfahrens nach einem der Ansprache 1 bis 27, einer Vorrichtung nach Ansprach 28, eines Computerprogramms nach Anspruch 29 und/oder eines Computerprogrammprodukts nach Anspruch 30 zum Korrigieren der ursprünglichen Farbe eines digitalen, digitalisierten bzw. elektronischen ursprünglichen Bildes, das mehrere Bildpunkte aufweist und mindestens ein Objekt abbildet und eine lineare oder nichtlineare Beleuchtung aufweist, um ein erzeugtes Bild zumindest mit einer realistischeren Farbe des Objekts zu erhalten.Use of a method after one of the addresses 1 to 27, a device according to spoke 28, a computer program according to claim 29 and / or a computer program product according to claim 30 to correct the original Color of a digital, digitized or electronic original Image that has multiple pixels and at least one object and has linear or non-linear illumination, a generated image, at least with a more realistic color of the object. CMOS-Einrichtung, CCD-Einrichtung, Digitalkamera, Flachbildschirm, Flachbildfernsehgerät und/oder TFT-Display zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 27, mit einer Vorrichtung nach Anspruch 28, mit einem Computerprogramm nach Anspruch 29 und/oder mit einem Computerprogrammprodukt nach Anspruch 30.CMOS device, CCD device, digital camera, Flat screen, flat screen TV and / or TFT display for Carry out A method according to any one of claims 1 to 27, comprising a device according to claim 28, with a computer program according to claim 29 and / or with a computer program product according to claim 30. Digitalkamera, Flachbildschirm und/oder Flachbildfernsehgerät zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 27, mit einer Vorrichtung nach Anspruch 28, mit einem Computerprogramm nach Anspruch 29 und/oder mit einem Computerprogrammprodukt nach Anspruch 30, wobei ein aufgenommenes bzw. dargestelltes Bild vor dem Speichern bzw. vor der Darstellung korrigiert wird.Digital camera, flat screen and / or flat screen TV to perform a Method according to one of the claims 1 to 27, with a device according to claim 28, with a computer program according to Claim 29 and / or with a computer program product according to claim 30, wherein a captured or displayed image before storing or corrected before the presentation.
DE200410027471 2004-06-04 2004-06-04 Method and apparatus for color correction of images with non-linear illumination changes Expired - Fee Related DE102004027471B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200410027471 DE102004027471B4 (en) 2004-06-04 2004-06-04 Method and apparatus for color correction of images with non-linear illumination changes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200410027471 DE102004027471B4 (en) 2004-06-04 2004-06-04 Method and apparatus for color correction of images with non-linear illumination changes

Publications (2)

Publication Number Publication Date
DE102004027471A1 DE102004027471A1 (en) 2005-12-29
DE102004027471B4 true DE102004027471B4 (en) 2008-01-03

Family

ID=35454933

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200410027471 Expired - Fee Related DE102004027471B4 (en) 2004-06-04 2004-06-04 Method and apparatus for color correction of images with non-linear illumination changes

Country Status (1)

Country Link
DE (1) DE102004027471B4 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006003222A1 (en) * 2006-01-24 2007-07-26 Ebner, Marc, Dr. Light color determining method for use in e.g. digital camera, involves estimating weighted average of determined color of light source over different regions so that color of light source is made available for several image points
DE102006061972B4 (en) * 2006-11-15 2009-02-19 Julius-Maximilians-Universität Würzburg System for adjusting the hue and brightness of digital images by means of compression transformations
US8929682B2 (en) 2011-04-28 2015-01-06 Hewlett-Packard Development Company, L.P. Calibrating image sensors

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5294989A (en) * 1991-09-17 1994-03-15 Moore Color, Inc. Saturable smoothing grid for image processing
US20030053688A1 (en) * 2001-09-17 2003-03-20 Ramot University Authority For Applied Research And Industrial Development Ltd. Method for improved automatic partial color constancy correction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5294989A (en) * 1991-09-17 1994-03-15 Moore Color, Inc. Saturable smoothing grid for image processing
US20030053688A1 (en) * 2001-09-17 2003-03-20 Ramot University Authority For Applied Research And Industrial Development Ltd. Method for improved automatic partial color constancy correction

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EBNER, M.: A parallel algorithm for color constan- cy. In: Journal of Parallel and Distributed Compu- ting, Jg. 64, Heft 1 (Januar 2004), S. 79-88
EBNER, M.: A parallel algorithm for color constancy. In: Journal of Parallel and Distributed Computing, Jg. 64, Heft 1 (Januar 2004), S. 79-88 *

Also Published As

Publication number Publication date
DE102004027471A1 (en) 2005-12-29

Similar Documents

Publication Publication Date Title
DE102015116599B4 (en) Electronic device and method for controlling their cameras
DE102011106052B4 (en) Shadow removal in an image captured by a vehicle based camera using a nonlinear illumination invariant core
DE102011106050B4 (en) Shadow removal in an image captured by a vehicle-based camera for detection of a clear path
US7751641B2 (en) Method and system for digital image enhancement
DE112007000371T5 (en) Object recognition system and method
DE102015209822A1 (en) Detecting means, detecting program, detecting method, vehicle equipped with detecting means, parameter calculating means, parameter calculating parameters, parameter calculating program, and method of calculating parameters
DE102011106072A1 (en) SHADOW REMOVAL IN A PICTURE BASED ON A VEHICLE-BASED CAMERA USING AN OPTIMIZED LINEAR AXIS
EP3381012B1 (en) Method and system for generating an output image from a plurality of corresponding input image channels
DE112017005193T5 (en) Image processing apparatus, image processing method and image pickup apparatus
KR20020037113A (en) Method and apparatus for measuring color-texture distance, and method and apparatus for sectioning image into a plurality of regions using the measured color-texture distance
Guo et al. Automatic image haze removal based on luminance component
Ebner Color constancy using local color shifts
Ebner Evolving color constancy
DE112020005911T5 (en) SIGNAL PROCESSING DEVICE, SIGNAL PROCESSING METHOD AND DETECTION SENSOR
DE102016121755A1 (en) Method for determining a composite image of a surrounding area of a motor vehicle with adaptation of brightness and / or color, camera system and power vehicle
DE112017005207B4 (en) Method for identifying light sources, corresponding system and computer program product
EP3844943B1 (en) Method for displaying a model of an environment, control apparatus and vehicle
DE102004027471B4 (en) Method and apparatus for color correction of images with non-linear illumination changes
DE102014102011A1 (en) System and method for generating an image with a wide dynamic range
DE10346348B4 (en) Method and device for color correction of images
DE112017004093T5 (en) Information processing apparatus and program
Celik et al. Grey-wavelet: unifying grey-world and grey-edge colour constancy algorithms
DE102012007838A1 (en) High Dynamic Range Image Acquisition with Multiple Exposure
Zhou et al. Advantages of multiscale product filters for dynamic range compression in images
DE102006061972B4 (en) System for adjusting the hue and brightness of digital images by means of compression transformations

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8122 Nonbinding interest in granting licenses declared
8120 Willingness to grant licenses paragraph 23
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: EBNER, MARC, DR., 72639 NEUFFEN, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130101