具体实施方式
首先,假想以下实验。三个科学家在向其施加各种力和应力的同时测量物质的温度。在多次施加相同应力的情况下,简单地测量温度对所施加的应力量,从而获得数据(可以想象较高的应力将导致较高的温度)。现在,科学家们希望比较其结果。但是,问题在于:科学家1具有以开氏温度为单位的测量结果,科学家2具有以摄氏温度为单位的测量结果,而科学家3具有以华氏温度为单位的测量结果。科学家们如何比较他们的数据?当然,答案很简单:查阅参考书,并找出换算温度的公式。例如,根据C=0.56F-17.78将华氏温度映射到摄氏温度,以及根据C=K-273.2将开氏温度映射到摄氏温度。应当注意,每种情况下的校正都是线性的。现在,让我们考虑图像的线性校正(但其原理可以推广到一般的数字信号)。设(R,G,B)表示记录在数字图像中的红、绿、蓝数值。这些数值通常用于驱动如监视器或数字打印机等再现处理。已知的是,对于良好的近似,通过预先发送的红、绿、蓝数量,充分地显示多种颜色(参见参考文献[1])。重要的是意识到驱动画面创建的RGB通常是世界的表示(例如,数字图像)。此外,在再现中,通常对图像进行调整,从而使其“看上去”更好或具有特定的信号属性。这两种观察(信号是世界的测量结果,以及我们可以改变这些测量)是重要的考虑因素。例如,假设我们取偏白的光线下的白色表面的画面。对应RGB=(1,1,1)(白色是相等的红色、绿色和蓝色)。现在,我们改变光源,所以其偏黄,并且现在,记录(2,2,1)是偏黄的颜色。在数学上,可以将其总结为:
明显地,(1)中的被乘数2、2和1将会把来自偏白的所有图像颜色映射为偏黄的光线(参见参考文献[2])。总之,RGB可以根据以下公式在光源之间进行映射:
每个缩放因子用于控制图像测量结果的亮度。
现在,想象我们获取其中存在显著阴影的场景画面。当在监视器上观察该画面时,将发现不能看到阴影中的任何细节:各种事物都太暗了。假设驱动监视器的信号在0和1之间,我们可以通过应用小于1的指数函数(α)来展宽暗数值(以压缩亮度值为代价):
此外,可以为每个颜色信道施加单独的幂项。有用的是将幂项看作改变图像中的对比度(明暗数值的相对重要性)。对(2)和(3)进行组合,得到:
对于第一近似,相同场景但针对不同的观察条件而捕获并被改变来驱动不同的再现处理或表明个人颜色偏好的两幅图像将根据(4)而彼此相关。改变图像的感观最容易的方式是改变其亮度和对比度。如上所述,(4)中的关系是非线性的。但是,对两边取对数揭示了内在的线性结构:
在原理上,公式(5)对应于上述温度实验。
左侧的RGB类似于一个科学家所做出的测量结果,而右侧的那些是由第二个科学家所做出的测量结果。如果我们知道我们正在测量什么,则易于将坐标从一侧变换到另一侧。事实上,在颜色世界中,现在能够校准(将坐标映射到基准测量空间中)如摄像机、扫描仪、打印机和监视器等彩色设备(参见参考文献[3])。这意味着如果我们知道如何产生针对观察条件的基准集合的良好感观图像,原理上将能够产生针对所有条件的良好感观图像。我们简单地将我们的图像映射到基准条件。事实上,在工作室环境中,我们可以遵循这种做法,并获取已知基准图表的画面,如Macbeth Colour Checker(参见参考文献[4])。然后,我们映射颜色图RGB,从而使其看起来“正确”。将相同的校正应用于画面的其余部分将得到良好感观的图像。当然,处理事实上要比这复杂。例如,因为人们喜欢看到日落的颜色,将日落处的颜色的偏红感观去除是不正确的(为了去除由于照明而导致的颜色偏置)。然而,可以利用基准信息进行校准的思想广泛地用在彩色成像中,并将在大多数情况下提供令人满意的结果。
问题在于如果校准不可能将如何进行处理。回到科学家及其温度测量,假设不仅测量的单位不同,而且所使用的设备也是不可靠的。具体地,三个科学家中的每一个均使用已经搁置在实验室中一段时间的测量设备,并且不能确保其测量精度。对于第一近似,测量结果(无论是以华氏温度、摄氏温度还是以开氏温度为单位)是其应当的数值的线性组合,尽管这种线性组合是未知的。例如,可以写出:真正的摄氏温度=A*测得的摄氏温度+B,其中A和B是未知的。当然,通过测量已知物理过程的温度(例如,水的沸点和冰点),可以求解A和B。如果科学家在一段时间之前进行他们的实验,即使其现在校准仪器,也不能确保其校准能够对准其先前的结果。假设科学家希望回答特定的问题的话,即使这样不利,仍然可以完成一些事情。假设科学家对于确定(在三个实验中的每一个中)所记录的温度的频率曲线图是否具有相同的形状感兴趣。图1示出了针对两个实验、以摄氏温度为单位的温度分布(假设其中一组是以华氏温度为单位进行的,然后将其转换为摄氏温度)。清楚地,频率曲线图看上去形状相似。
此外,它们之间的主要区别将表现为较小的偏移和较小的延伸。为了证实情况是否如此,我们可以将温度测量结果映射到所谓的z记分(标准坐标的一个示例)。根据公式(6)对温度进行线性变换:
C=aT+b (6)
选择a和b,从而使C的平均值(即μ(C))等于0,并且C的标准偏差(即σ(C))等于1。N个测量结果的集合的平均值和标准偏差等于:
其中应当理解的是,标准偏差用于测量分布距平均值的扩展(较大的标准偏差意味着测量结果的较大扩展,而较小的标准偏差意味着较小的扩展)。其直接表明:
所以
图2示出了图1所示的两个分布,其中已经根据(9)将温度映射到标准坐标(其中分别映射每个分布)。因此,图2表示两个数据集合的Z记分的频率曲线图是相同的。(这意味着潜在的数据分布由于线性变换而不同)
清楚地,分布是相同的,所以可以做出一些推论,例如,对于两个实验,小测量结果和大测量结果的数目是相同的。但是,重要的是意识到,映射到z记分标准坐标并非补救方法,由于其对于完全校准的执行而言不够有力。这很容易证明。简单地,选取10个数字,并根据(9)计算标准坐标。现在,将另外10个数字添加到分布中,并重新计算标准坐标。现在,因为数据的平均值和标准偏差将改变,数据集合中的原始10个数字的标准坐标也必须改变。返回图像示例,我们可以看到,等式(5)表明图像中的RGB根据亮度和对比度线性偏移。根据前述讨论,应当能够清楚的是,针对图像RGB而计算出的标准坐标与亮度和对比度无关。将ln X表示为x
本发明基于(10)是图像处理的有用代表的思想。我们不仅丢弃了未知事物(亮度和对比度),而且我们按照直观的方式来进行。让我们来考虑当我们看世界时我们自身所面临的挑战。当我们看到场景时,我们面临着摄像机所面临的相同图像处理挑战。例如,我们可以观察在晴天里坐在树荫中的男孩。
到达我们眼睛的物理信号在100000比1的数量级上(明亮的阳光比阴影)。但是,并没有证据表明在视觉皮层上对这么宽的动态范围进行编码。相反,我们需要采用以较小的动态范围来编码图像的策略。根据本发明的实施例,进行这种编码的一种方式是根据标准单位来记录RGB。即,我们对图像测量结果进行转换,从而使其独立于亮度和对比度,即,对其进行归一化。总而言之,将局部地进行这种归一化。可以证明这样进行了直观的感知。例如,可以将在其他亮像素的环境中所看到的亮像素编码为比平均值高3个标准单位。类似地,在其他黯淡像素的环境中所看到的黯淡像素可以比平均值高3个标准单位。即,原理上,可以将两个完全不同的物理测量结果编码为相同的数值,并在编码之后,表现出等同的亮度。实际上,利用附近的像素来计算图像上的标准偏差比那些较远的像素更为重要。只要明智地选择加权函数,尽管在阴影和高亮中绘出细节,图像的亮区域总体上表现得比暗区域更亮。
在本发明的实施例中,将信号解译为由不同设备做出的测量结果的合成(尽管实际上只使用了一个设备)。现在,我们考虑测量结果之间的差异是所用的单位不同且未知。通过将所有测量结果转换为标准坐标,我们有效地强制所有设备以相同的单位工作。对于图像,此处理使我们能够表明图像亮度、动态范围和对比度的变化。可以将100000比1的信号记录为(例如)100比1,从而我们可以清晰地看到阴影中的男孩以及阳光直射下的物体的细节。我们可以这样做是因为现在,在图像中,局部地使用了相同的单位。
我们将信号解译为根据一个或多个逻辑测量设备而做出的测量结果。如果存在许多设备,则假设每一个与信号的局部连通部分相关。假设每个设备测量的单位随时间而不同,并且在整个信号中,好像每个信号中都存在多于一个设备。但是,假设所有测量单位彼此通过线性变换相关。对于给定的测量结果集合,通过测量结果的线性组合来定义标准坐标。例如,通过从测量结果中减去平均值并除以测量结果的标准偏差来计算Z记分(一个特定的标准坐标)。标准坐标具有其不随线性变换而改变的属性。通过计算标准坐标,将所测得的信号(时间上或位置上)变换为相同的单位。
对用于显示的图像进行编码是巨大的研究工作和应用问题(例如,参见1993年到2002年的彩色成像会议系列)。找出等式(2)中的ρ、γ和β缩放因子通常被称为色恒定性,而这本身就涉及几百篇文章;(参见参考文献[5、6]),以便回顾其主要解决方案。确定对比度存在更大的问题,而且几乎没有文章详尽地阐述如何恢复(5)中的幂项α。近来,本发明人已经考虑了如何能够实现幂项不变性,参见参考文献[7]。
对比度和亮度的问题通常是图像增强和动态范围压缩算法中所固有的。类似于(5)的这些算法倾向于在对数空间进行操作,但要么考虑亮度,要么考虑对比度,而没有同时考虑亮度和对比度。为了了解这些算法如何操作,定义一些符号和两个简单的图像变换是有用的。
首先,假设rk(x,y)表示图像中的位置(x,y)对颜色信道k=R,G,B的对数响应。其次,我们定义从rgb到亮度l(x,y)、红色-绿色rg(x,y)和黄色-蓝色yb(x,y)的坐标变换:
l(x,y)=rR(x,y)+rG(x,y)+rB(x,y)
rg(x,y)=rI(x,y)-rG(x,y) (11)
yb(x,y)=rR(x,y)+rG(x,y)-(2*rB(x,y))
类似于(11)的等式经常出现在彩色参考文献中(例如,参见参考文献[1、8])。它们是所谓的‘对立’颜色信道:l是黑白(宽松地,亮度)的测量结果,rg是红色和绿色(对立的)的测量结果,以及yb是黄色和蓝色(对立的)的测量结果。这里,两个技术观察是重要的。第一,在下面的讨论中,上述等式被称为对立信道。但是,存在多种计算对立信道的方式(在所述方法中可以不使用上述精确等式)。第二,(11)是一组线性等式,因此,能够根据l、rg和yb来计算r、g和b(等式是可逆的)。等式(11)是有用的,因为其允许非色度(achromatic)或亮度(l)与颜色的色度信号(rg,yb)之间的分离(如果我们将RGB与缩放因子x相乘,只有l将发生改变)。用于动态范围压缩的一些算法寻求只改变非色度方面(l),而保持色度方面不变。
根据第一现有技术方法,减去平均值来抵消亮度。根据(5),我们看到通过对数空间中的相加项来建模亮度的变化。由于所有像素具有相同的相加偏移,其允许通过此偏移来改变平均颜色响应。这样,减去平均值消除了对亮度的依赖性。将a()表示为计算局部平均值(或平均)的函数,其遵循
rk(x,y)-a(rk(x,y)) (12)
与亮度无关。
根据第二现有技术方法,减去最大值来抵消亮度。根据(5),我们看到通过对数空间中的相加项来建模亮度的变化。由于所有像素具有相同的相加偏移,其允许通过此偏移来改变最大颜色响应。这样,减去最大值消除了对亮度的依赖性。将M()表示为计算局部最大值的函数,其遵循
rk(x,y)-M(rk(x,y)) (13)
与亮度无关。
现在,将对一些用于动态范围压缩/图像增强的现有算法进行讨论。
1)NASA通用换算retinex(MSR)
此算法(参见参考文献[9])扣除R、G和B颜色信道中的局部亮度。上述表达式(12)与定义为三个高斯的和(给出了相当平滑的平均运算符)的本地平均运算符a()一起使用。并未明确地考虑对比度,尽管进行了特定的全局调整。
应当注意,因为减去了局部平均,图像通常看上去欠饱和(或略带灰色)。此问题导致了特别的(且令人不满的)再饱和阶段。可以在www.truview.com找到MSR性能的示例。
2)亮度修改MSR
此算法利用色度信道rg和yb来扣除l非色度信道中的局部亮度,进行全局调整(参见参考文献[10])。上述表达式(12)与定义为三个高斯的和(给出了相当平滑的平均运算符)的本地平均运算符a()一起使用。与MSR情况一样,使用相同的滤波。
应当注意,相对于原始MSR方法并未观察到任何实际的改进。事实上,此算法的作者建议全局调整也可以同样好地进行操作。
3)Retinex
多年来,Edwin Land和John McCann已经开发了此算法的多种变体(例如,参见参考文献[11、12、13])。理论上,表达式(13)描述了其解决方案。但是,其局部最大值的定义相当复杂(是非线性的和迭代的)。当Retinex工作良好时,其可以产生令人愉悦的图像。与MSR相比,Retinex工作得更好,因为减去局部最大值倾向于将颜色保持为看上去与其应当的一样(并不存在与利用MSR一样的欠饱和问题)。不幸地,当Retinex失败时,其倾向于非常不好地进行操作。
应当注意,并未真正提及幂函数,尽管需要通过适当的查找表来获得输出值。
4)修改Retinex
因为局部最大函数复杂,存在多种变体。值得提及的是Brainard和Wandell的工作(参见参考文献[14],其呈现了可以应用表达式(12)和(13)的框架)、Funt等人的算法工作(参见参考文献[15],提出了第一‘可接受’算法)、以及Sobel和McCann最近的工作(参见参考文献[16],修改了局部最大值的定义,以考虑图像中的重叠的较大局部改变)。Retinex的一个优点是其基于人类观察员所做出的心理观察。Spitzer最近的工作(参见参考文献[17])已经延续了这种解决方法,并展示了视觉处理的可操作模型,解决了一些亮度和对比度问题。但是,该解决方法基于对视觉处理的了解而并未基于需要解决的问题。事实上,完全没有对其进行讨论。Spitzer公开了一种在全部三个对立信道上执行计算的方法。而且,Land也投机地提出了一种能够在对立信道上执行的Retinex型计算(参见参考文献[18])。
应当注意,Retinex仍然存在问题。从未明确表示其试图解决的问题。利用用户的干涉不能得到良好的结果。所有retinex算法都具有必须以每幅图像为基础进行‘扭转’的自由参数。
5)非线性掩码:
与前述方法不同,Moroney(参见参考文献[19])关注于对比度而非亮度。原理上,如果将对数响应除以其局部平均
l(x,y)/a(l(x,y)) (14)
则对比度必须抵消(如果我们改变图像的对比度,则通过抵消的相同因子对分母和分子进行缩放)。这里,a的定义是高斯,但具有非常大的标准偏差(从而只将比较远数值稍大的权重赋予局部数值)。应当注意,在亮度信道内执行计算,而保持色度信号不变。此外,作为技术注释,按照与前述稍微不同的方式来计算局部平均(尽管对于我们的目的而言,细节并不重要)。
还应当注意,非线性掩码非常好地进行操作。部分原因是因为其是最小侵入的(将具有较大标准偏差的高斯选为平均滤波器装置,对比度的定义比局部更为全局)。但是,其并未提及亮度,从而不能表明如颜色等简单的假像。
在根据本发明实施例的***和方法中,将图像解译为由不同但未知的测量设备所做出的测量结果(通过不同的设备来测量图像的不同相干部分)。这只是逻辑假设。图像通常由单一设备捕获。但是,我们希望改变图像不同部分中的图像单位(例如,为了改变动态范围),将图像看作来自一组设备的测量结果的合成是有用的。假设每个设备所测量的单位通过线性变换而彼此不同。对图像进行局部线性校正,有效地计算图像上的标准坐标。局部标准坐标与亮度和对比度无关,图像中对这些变换的回弹也是如此。亮度和对比度的变换有效地表明了相同场景的图像之间的绝大多数差异。此外,以标准坐标来编码图像展现出对我们自身的视觉***必须面对的成像问题的似是而非的解决方案。
标准坐标
将测量结果表示为xi(i=1,2,.....n)X={x1,x2,.....xn}。对这些坐标进行线性变换:yi=axi+b,Y={y1,y2,....yn}。在X和Y上所定义的标准坐标是相同的。可以如下计算大量的标准坐标(标准坐标是再现与亮度和对比度无关的数据的线性变换):
Z记分:
最大-最小记分:
最小-平均值记分:
为了观察(15)的操作,设X=10、20、30、40且Y=10、30、50、30(yi=2xi-10)。针对X或Y计算(15)将得到集合:-1.162、-0.3873、0.3873、1.16。针对X或Y计算(16)将得到集合:0、0.333、0.667、1。针对X或Y计算(15)将得到集合:0、0.5、1、1.5。当然,存在多种其他标准坐标***。记分(15)到(17)的优点在于:其基于简单且较好理解的统计运算符:平均、最大和最小。但是,存在多种形式15到17的等式,将去除亮度和对比度;这些只是“标准坐标”的示例,而并非穷尽列表。
计算局部标准坐标
我们假设图像可以被看作由一组不同的区域构成,并且每个区域具有不同单位的测量结果。如果我们能够局部标准化坐标,其将遵循前述假定。
计算局部平均值
这较为容易实现,并且文献中给出了可能的算法。最普通的方法是利用如高斯等平均滤波器对图像进行卷积。高斯在原点附近具有较大的数值,并且这些数值作为距离平均值的距离的函数单调递减。为了描述如何进行卷积,假设[1,2,2,2,5,5,5]为1-d信号,且[0.5,0.5]为平均滤波器。我们简单地将平均滤波器设置在信号的顶部(在给定的位置),将滤波器与信号相乘,并求和。针对沿着信号的每个位置,重复此过程。按照这种方式进行操作,我们看到卷积的输出为[1.5,2,2,3.5,5,5]。我们需要进行一些注释。第一,注意,已经按照比例减小了边缘(1到2和2到5)。这是因为我们将期望我们局部平均图像。第二,我们以7个输入开始,但只具有6个输出。其原因在于我们还没有定义我们在信号的边缘怎么做。对于二维信号,我们可以假设图像外部的任何事物都是零(这些被称为Dirichlet边界条件(参见参考文献[20]))。或者,信号在边界处不是恒定的(Neumann条件(参见参考文献[20]))。对于每个假设将要做些什么将是易于理解的(并且其是细节)。我们暗含地假设在以下的讨论中对此问题进行处理。如果s(x,y)是二维信号(如图像)且a(x,y)是平均滤波器,则数学上将卷积定义为:
其中假设
如果s(x,y)=k(在所有位置为相同数值),则此信号的平均值应当是1。
计算局部最大值
确定局部最大值的可能方式是我们将计算距离位置(x,y)5个像素以内的所有像素的局部最大值。可以将其表示为M5(x,y)。也可以计算距离10以内的最大值:M10(x,y)。总之,我们可以将局部最大值定义为:
其中wi是随着i的增加而减小的权重,以及权重的和是1。
注意,重要的是意识到,(19)只是可以定义局部最大值的多种方式之一。
计算局部最小值
与最大值的情况相同,我们可以定义局部最小值函数,其返回(x,y)处、距(x,y)d个像素以内的所有像素的最小值。将图像的局部最小值定义为:
其中,权重的和还是1。
计算局部标准偏差
在等式(7)中描述了标准偏差。这是平均值的平方偏差的平均值的平方根。清楚地,我们可以根据以下公式局部地进行计算:
其中平均滤波器a()可以与用于计算平均值的滤波器相同或不同。
计算局部标准坐标
总之,我们将(18)到(21)代入记分(15)到(17)。例如,以下给出了z记分的局部定义:
类似地,简单定义局部最小-最大记分或最小-平均值记分。
示例
图3、4和5给出了处理图像的方案。总之,我们获取图像,转换为对数对立坐标,然后以z记分代替亮度信号,并形成输出图像。结果是较好地平衡了亮暗区域中的细节的图像。此外,图像通常看起来更令人愉悦。具体地,此特定实施例的步骤如下:
1)I(x,y)是输入图像项
2)由R(x,y)、G(x,y)和B(x,y)(RGB颜色信道)构成
3)取对数,给出:r(x,y)、g(x,y)和b(x,y)
4)我们根据等式(11)计算对立响应
5)我们计算亮度信道的平均值和标准偏差的局部估计:(18)和(21);这些步骤与前面提及的加权函数有关;
6)将其用于计算z记分(22)。当然,z记分将具有一些负值和一些正值。为了将z记分看组对数域中的亮度信号,我们必须使z信号全部为负。这容易实现:我们简单地计算整幅图像上最大的z记分,然后,从每个单独的z记分(每个像素处)中减去最大的z记分。在此操作之后,z记分将相对于最大值0全部为负。如果根据(16)或(17)来计算标准坐标,则其将全部为正。再次减去全局最大值将导致能够用作亮度值的全部负值。
应当注意,红绿和蓝黄信道具有其对比度但未调整的亮度(通过对亮度信道的求和)。根据经验,发现为了获得良好感观的图像需要三个信道中的每一个中的类似对比度。
7)进行反转(11),并求解log R、G和B
8)反转对数,并且图像准备好用于显示。
尽管上述给出的其他方法步骤将产生其中绘出了图像中的细节的图像,是步骤5和6中将数据记录为所述示例中的z记分(以及广义上为标准坐标)具有突出的优点。但是,其他方法步骤也是重要的,尤其是如果目的是要产生用于显示的、令人愉悦的图像。但是,可以计算对立信道、标准坐标等的方法太多而不能一一列举。用户可以适当地选择其他方法步骤,即1到4、7和8。但是,公共的实现步骤是标准坐标计算。当根据前述方案处理如照片等输入图像时,获得了能够勾画出细节的灰度级输出图像(例如,阴影区域的输出)。如果将饱和度定义为RGB与白矢量之间的夹角,则在z记分计算前后,此夹角发生改变。
图6示出了计算如等式16所给出的最小-最大记分S的第二实施例的相应步骤3到8。
图7示出了计算如等式17所给出的最小-平均值记分S的第三实施例的相应步骤。
我们再次强调:关键步骤是计算亮度图像的标准坐标,然后将此亮度信息与原始图像重新结合,以得到输出RGB。不必明确地计算rg和yb对立信道,我们可以代替地如下进行处理:
1.表示对数亮度(与以前一样)l(x,y)
2.将新对数亮度(上述步骤6中所计算)表示为o(x,y)
3.对这些数值进行指数运算,给出非对数亮度L(x,y)=exp(l(x,y))以及O(x,y)=exp(o(x,y))
4.然后,根据以下的3个公式改变原始图像的RGB:
Rnew(x,y)=R(x,y)*O(x,y)/L(x,y)
Gnew(x,y)=G(x,y)*O(x,y)/L(x,y)
Bnew(x,y)=B(x,y)*O(x,y)/L(x,y)
上述步骤1到4在参考文献(10)中也进行了讨论,并得到在整幅图像中更好地平衡了细节的彩色图像。
我们还注意到,尽管我们发现令人愉悦的图像导致对亮度标准坐标的计算,还能够针对r(x,y)、g(x,y)和b(x,y)分离地计算标准坐标。
经验上,发现对亮度的精确定义对图像的感观存在影响。其中以保留饱和度(以RGB来计算饱和度,并且输入饱和度等于输出饱和度)的约束条件反转(11)的可选反转(步骤7)得到了改进的灰度级图像。如果将前一段中所定义的夹角保持固定,则可以保留饱和度。可以只在亮度上执行计算,并且结合新的亮度以形成彩色图像。
1995.
sor transformations for improved color constancy.J.Opt.Soc.Am.A,11(5):1553-1563,May 1994.
[3]H.R.Kang.Color Technology for electronic imagingdevices.SPIE,1997.
[4]C.S.McCamy,H.Marcus,and J.G.Davidson.Acolor-rendition chart.J.App.Photog.Eng.pages 95-99,1976.
[5]G.D.Finlayson.Coefficient color constancy,1995.MScthesis,Simon Fraser University,School of Computing Science.
[6]G.D.Finlayson,S.D.Hordley,and P.M.Hubel.Color bycorrelation:A simple,unifying framework for color constancy.IEEETransactions on pattern analysis and machine intelligence,23(11):1209-1221,November 2001.
[7]G.D.Finlayson and R.Xu.Log gamma normalization.InIS&T 10th color imaging conference.November 2002.to appear.
[8]B.A.Wandell.Foundations of Vision.Sinauer Associates,lst edition,1995.
[9]Zia ur Rahman,Daniel Jobson,and Glenn Woodell.Methodof improving a digital image.United States Patent No.5,991,456(23November 1999),1999.
[10]K.Barnard and B Funt.Investigations into multi-scaleretinex(msr).In Colour Imaging Vision and Technology,ed.L.W.MacDonald and M.R.Luo,pages 17-36.1999.
[11]E.H.Land.The retinex theory of color vision.ScientificAmerican,pages 108-129,1977.
[12]E.H.Land and J.J.McCann.Lightness and retinex theory.J.Opt.Soc.Amer.61:1-11,1971.
[13]J.J.McCann.Lessons learned from mondrians applied toreal images and color gamuts.In IS&T and SID′s 7th Color ImagingConference.1999.
[14]D.A.Brainard and B.A.Wandell.Analysis of the reinextheory of color vision.J.Opt.Soc.Am..A,36:1651-1661,1986.
[15]B.V.Funt,F.Cuirea,and J.McCann.Retinex in matlab.In IS&T and SID′s 8th Color Imaging Conference,pages 112-121.2000.
[16]R.Sobel.Improving retinex algorithm for rendering widedynamic range photographs.In Human Vision and Electronic ImagingVII,volume 4662,pages 341-348.2002.
[17]Hedva Spitzer.Method for automatic partial white balancecorrection.United States Patent No.5,771,312(23rd June 1998),1998.
[18]E.H.Land.Recent advances in retinex theory and someimplications for cortical computations:Color vision and the natural image.Proc.Natl.Acad.Sci,80:5163-5169,1983.
[19]N.Moroney.Local color correction using non-linear masking.In IS&T and SID′s 8th Color Imaging Conference,pages 108-111.2000.
[20]D.L.Kreider,R.G.Kuller,D.R.Ostberg,and F.W.Perkins.An introduction to linear analysis.Addison Wesley,1966.