白平衡算法总结

合集下载

白平衡的基本原理

白平衡的基本原理

白平衡的基本原理一、白平衡的概念和作用白平衡是指在不同光源下,通过调整相机感光元件对三种基本颜色(红、绿、蓝)的接受比例,使得拍摄的图像中白色物体呈现出真实的白色。

白平衡的作用是消除不同光源下图像中颜色偏差,保证图像色彩真实自然。

二、白平衡的原理1. 光谱分析原理光线在经过物体反射后,其波长分布会发生变化。

因此,通过对反射光谱进行分析,可以确定物体反射出来的颜色。

相机利用这一原理,通过感知环境中不同光源下红绿蓝三种基本颜色成分比例的变化情况,来调整相机感光元件对这三种基本颜色接受比例。

2. 灰度均衡原理灰度均衡是指将图像中各个灰度值所占比例调整到合适的范围内,使得图像显示更加清晰明亮。

而白平衡就是一种特殊形式的灰度均衡,在保证各个灰度值所占比例的同时,还需要保证白色物体呈现出真实的白色。

3. 人眼感知原理人眼对颜色的感知具有一定的主观性,不同人对同一颜色的感受可能存在差异。

因此,相机在进行白平衡调整时,通常会参考人眼对颜色的感知结果,来确定最终的调整结果。

三、白平衡调整方法1. 自动白平衡自动白平衡是指相机自动识别环境中光源类型,并进行相应的白平衡调整。

这种方式适用于拍摄环境变化频繁或者不确定光源类型的情况。

2. 预设白平衡预设白平衡是指在拍摄前根据实际情况选择相应的预设模式进行设置。

这种方式适用于拍摄环境比较稳定或者已知光源类型的情况。

3. 手动调节手动调节是指通过手动设置相机参数来进行白平衡调整。

这种方式适用于拍摄环境复杂或者需要特殊效果时使用。

四、总结通过对白平衡原理和调整方法的了解,我们可以更好地掌握如何利用相机进行白平衡调整,从而达到更好的拍摄效果。

同时,白平衡调整也是摄影技术中非常重要的一环,掌握好白平衡调整方法可以提升我们的拍摄水平。

自动白平衡算法

自动白平衡算法

自动白平衡算法自动白平衡是数码相机中一种重要的图像处理技术,通过调整图像的色温来使得图像在不同的光照条件下呈现出真实、自然的颜色。

本文将从算法原理、应用领域和调优技巧三个方面来介绍自动白平衡算法。

一、算法原理自动白平衡算法基于摄像机的感光元件输出的图像数据,通过分析图像中的白色参考物体,计算出当前场景下的光源色温,然后调整图像的色彩来达到真实的色彩再现。

常用的自动白平衡算法有灰度世界算法、白色点算法和直方图拉伸算法。

灰度世界算法假设整个图像的色彩分布是均匀的,通过计算图像中所有像素点的RGB分量的平均值,然后将该平均值作为缩放系数应用于各个通道,从而达到白平衡的目的。

白色点算法则通过选取图像中灰度值最大的像素点作为参考点,根据参考点的三个通道值,并通过一定的数学计算,将其调整至一个预设的白色参考值,进而实现图像的白平衡。

直方图拉伸算法则是通过对图像的直方图进行拉伸,使得图像的灰度值分布更加均匀,从而达到白平衡的效果。

二、应用领域自动白平衡算法在众多领域中都有广泛的应用。

在摄影领域,自动白平衡可以使摄影师在不同光照条件下更加方便地拍摄出真实的颜色。

在监控领域,自动白平衡可以提高监控摄像头的图像质量,使得监控系统更加准确地监测场景。

在医学领域,自动白平衡算法可以改善医学图像的质量,从而提高医生的诊断准确性。

三、调优技巧在实际应用中,为了获得更好的自动白平衡效果,可以采用以下一些调优技巧。

首先,可以使用较高的色温作为预设值,以保留更多的暖色调,使得图像更加真实。

其次,可以通过人工干预来修正算法产生的不准确结果,比如提供一张纯白色参考图像来校正算法误差。

此外,还可以根据不同场景下的具体要求,通过调整算法参数来达到更好的白平衡效果。

总结起来,自动白平衡算法是数码相机中一项重要的图像处理技术。

它通过分析图像中的白色参考物体,计算出光源色温,并调整图像色彩,以实现真实、自然的颜色再现。

应用领域广泛,包括摄影、监控和医学等领域。

白平衡算法总结

白平衡算法总结
i ,j (
Cb(i, j) − Mb ) N Cr(i, j) − Mr ) N
Dr =
i ,j (
为了提高算法的稳健性,将图片分为几个区域并且计算每个区域 的 Mb、Mr、Db、Dr,如果一个区域的 Db,Dr 太小,那么这个区域 就没有足够的色彩变化,就可以丢弃掉了。这样可以避免大面积的统 一色调对结果的影响。
8
%计算 Cb、Cr 的均值 Mb、Mr% Mb=sum(sum(Cb)); Mr=sum(sum(Cr)); Mb=Mb/(x*y); Mr=Mr/(x*y); %计算 Cb、Cr 的均方差% Db=sum(sum(Cb-Mb))/(x*y); Dr=sum(sum(Cr-Mr))/(x*y); %根据阀值的要求提取出 near-white 区域的像素点% cnt=1; for i=1:x for j=1:y b1=Cb(i,j)-(Mb+Db*sign(Mb)); b2=Cr(i,j)-(1.5*Mr+Dr*sign(Mr)); if (b1<abs(1.5*Db) & b2<abs(1.5*Dr)) Ciny(cnt)=Lu(i,j); tst(i,j)=Lu(i,j); cnt=cnt+1; end end end cnt=cnt-1;
9
iy=sort(Ciny,'descend');%将提取出的像素点从亮度值大的点到小 的点依次排列% nn=round(cnt/10); Ciny2(1:nn)=iy(1:nn);%提取出 near-white 区域中 10%的亮度值较 大的像素点做参考白点% %提取出参考白点的 RGB 三信道的值% mn=min(Ciny2); c=0; for i=1:x for j=1:y if tst(i,j)<mn tst(i,j)=0; else tst(i,j)=1; c=c+1; end end end R=im(:,:,1); G=im(:,:,2); B=im(:,:,3); R=double(R).*tst;

白平衡

白平衡

一、原始的灰色世界算法要计算未知光源的特性必须从图片中提取相关的统计特性。

当我们能够仅使用一个统计特性就获得未知光源特性时,算法就变得非常简单了。

在这种情况下,未知光源必须在整幅图片上都是统一的。

均值于是就成为了此类方法之下最好的统计指标。

而灰色世界法正是利用了均值作为估算未知光源的关键统计量。

从物理意义上说,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。

在给定图片的白平衡算法中,灰色世界假设图片中的反射面足够丰富,以至于可以作为自然界景物的一个缩影。

若这幅图片是在经典光源下拍摄的,其均值就应该等于灰色。

若这幅图是在非经典光源下拍摄的,那么均值就会大于或者小于灰色值。

而该均值对于灰色的偏离程度则反映了未知光源相对于已知光源的特性。

(就是因为这个假设,实际上灰度世界对图片色彩不丰富的情况,效果不是很好)虽然这个方法比较简单,但是仍然可以从一些方面进行调整。

一个方面就是对于灰色的定义形式的选择。

包括对于光谱的定义、对于光谱成分的定义和在经典光源之下的 RGB 的响应。

另一个更加重要的调整方面就是对于灰色的选择。

不管如何定义灰色,最佳的灰色之选必然是自然界实事上出现的灰色。

但是这个值是无法获得的(除非是合成数据),所以对于灰色的选择是不同的灰色世界算法的一个重要的区别点。

一个方法是假设这个灰色就是实事上的灰色。

也就是说反射光谱是均衡的。

给定光源之下的 RGB响应是纯白色对此光源的响应值的一部分。

比方说,可以使用50%作为反射率(虽然这个灰色值对于人眼视觉习惯而言可能过于明亮)。

另一种方法,就是根据大量的数据提炼出一个均值,并把它定义为灰色。

这种方法提炼的灰色值可能因为数据库使用的不同而有所不同。

最终提炼的灰色也能仅适用于原始的数据库,而对于数据库未包括的图片的适用度就会比较差一些。

确定下来的灰色表达形式可以用来表示。

下标 i 表示信道,上标 c为canonical的首字母,表示经典光源。

白平衡的原理及应用

白平衡的原理及应用

白平衡的原理及应用一、白平衡的原理白平衡是一种摄影术语,用于调整照片中的颜色温度,使其看起来更加真实、自然。

它是通过重新分配白色点的色温来实现的,以确保白色在照片中看起来确实是白色。

白平衡通常在拍摄前或后进行设置,以保证图像的色彩准确。

1. 色温色温是用来衡量光源颜色的一个指标,单位是开尔文(K)。

较低的色温(约2500K至4000K)会使图像呈现暖色调,较高的色温(约5500K至6500K)则会呈现冷色调。

相机的白平衡设置是根据色温来进行调整的。

2. 白平衡设置在相机中,通常有几个预设的白平衡模式供选择,如自动白平衡、日光、荧光灯等。

自动白平衡是最常用的模式,相机会尝试根据场景的光照条件自动调整白平衡。

然而,自动白平衡不总是准确的,特别是在复杂的照明条件下。

二、白平衡的应用白平衡的应用广泛存在于摄影和摄像领域。

在以下场景中,白平衡的正确设置可以带来更好的图像结果:1. 室内拍摄在室内拍摄中,不同类型的光源可能会导致图像色彩失真。

例如,使用荧光灯照明的场景可能会使照片出现绿色偏色。

通过选择相机的白平衡模式,可以正确调整光源的颜色温度,使图像呈现自然色彩。

2. 夜间拍摄夜间拍摄时,常常会遇到多种不同颜色的光源,如路灯、车灯等。

使用正确的白平衡设置可以让夜景照片更加真实,避免色彩失真。

3. 回忆录影像制作在制作回忆录影像时,白平衡的准确设置尤为重要。

通过选择适当的白平衡模式,可以让我们回忆起的场景的色彩更加真实、细腻。

4. 自然风光摄影在自然风光摄影中,白平衡的设置可以改善照片的色彩,使得大自然的美景能够以最真实的形式呈现。

例如,沙滩上的海水呈现出正确的蓝色、雪山上的雪花呈现出纯净的白色。

5. 人像摄影在人像摄影中,白平衡的准确设置可以确保皮肤色彩看起来自然,避免出现偏色。

相机的自动白平衡模式通常可以很好地处理人像拍摄,但在特殊场景下,手动调整白平衡可能是必要的。

三、总结白平衡是一项重要的摄影技术,在不同的场景中,正确的白平衡设置可以带来更真实、自然的图像效果。

白平衡偏移 数学原理

白平衡偏移 数学原理

白平衡偏移的数学原理白平衡偏移,又称白平衡调整或白平衡修正,是摄影和摄像技术中的一个重要概念。

它的主要目的是纠正因光源色温不同而导致的图像色彩偏差,使得白色物体无论在何种光照条件下,都能在图像中呈现出真正的白色。

通过调整红绿蓝三原色的输出比例,摄影师能够控制图像的色温,从而改变图像的整体色调。

一、概念与定义白平衡偏移的基本概念是在白平衡调整的基础上,通过增加或减少红色和蓝色通道的输出,使图像色彩更加准确或产生特定的色彩效果。

在白平衡偏移中,通常会有一个基准点,这个点代表了正确的白平衡,也就是所谓的“中性点”。

摄影师可以通过调整偏移量,使图像的色彩偏向红色或蓝色,从而达到调整图像色调的目的。

在数字摄影中,白平衡偏移通常是通过相机或后期处理软件中的白平衡设置来实现的。

这些设置允许摄影师选择预设的白平衡值,或者手动调整红绿蓝三原色的输出比例。

二、性质与特点灵活性:白平衡偏移允许摄影师根据需要进行微调,以获得最佳的色彩效果。

与自动白平衡功能相比,白平衡偏移提供了更大的灵活性和控制力。

创意性:通过调整白平衡偏移,摄影师可以创造出特定的色彩氛围,如暖色调或冷色调,以强调或改变图像的情感表达。

准确性:在某些特殊光照条件下,自动白平衡可能无法准确还原白色物体的真实色彩。

此时,使用白平衡偏移可以手动调整色温,以获得更准确的色彩表现。

三、数学原理白平衡偏移的数学原理主要涉及颜色空间和色温的概念。

在数字图像处理中,颜色通常由红绿蓝(RGB)三个通道来表示。

每个通道的值决定了该颜色的强度和色调。

色温则是一个描述光源颜色的物理量,通常用开尔文(K)来表示。

颜色空间:在RGB颜色空间中,每个颜色都可以通过红绿蓝三个通道的值来唯一确定。

通过调整这三个通道的值,可以改变颜色的色调和强度。

白平衡偏移实际上就是在这个颜色空间中对颜色进行调整。

色温与白平衡:色温与白平衡密切相关。

不同色温的光源会产生不同的颜色偏差。

例如,暖色调的光源(如夕阳)通常具有较低的色温(约3000K),而冷色调的光源(如蓝天)则具有较高的色温(约10000K)。

yuv 白平衡 算法

yuv 白平衡 算法

yuv 白平衡算法
YUV是一种颜色编码系统,常用于数字视频和图像处理。

在YUV
编码中,Y代表亮度(Luminance),U和V代表色度(Chrominance)。

白平衡算法是用来调整图像的色温,以使白色看
起来真实且中性。

YUV白平衡算法通常涉及以下几种方法:
1. 灰世界假设(Gray World Assumption),该算法假设整个
图像的平均颜色应该是灰色,因此通过调整RGB通道的增益来实现
白平衡。

在YUV颜色空间中,可以通过调整U和V通道的增益来实现。

2. 白色点假设(White Point Assumption),该算法假设图像中存在一个已知的白色点,通过测量该点的颜色来进行白平衡调整。

这种方法通常需要用户提供白色参考点,然后根据该点进行色彩校正。

3. 直方图均衡化(Histogram Equalization),该算法通过对图像的颜色直方图进行调整,使得各个颜色通道的分布更加均匀,
从而实现白平衡效果。

4. 灰度世界假设(Grey World Assumption),该算法假设整个图像的平均颜色应该是灰色,但与灰世界假设不同的是,该算法还考虑了不同颜色通道的亮度不一致性,因此可以更好地实现白平衡效果。

总的来说,YUV白平衡算法是通过调整色度通道的增益来实现白平衡,常用的方法包括灰世界假设、白色点假设、直方图均衡化和灰度世界假设。

这些算法可以根据实际需求和图像特性进行选择和调整,以达到理想的白平衡效果。

自动白平衡方法

自动白平衡方法

自动白平衡方法
自动白平衡是一种图像处理的技术,用于自动调整图像中的白色色彩,以确保图像中白色物体的颜色看起来真实和准确。

目前常用的自动白平衡方法包括以下几种:
1. 灰度世界法(Gray World Algorithm):假设整个图像中的
灰色像素的平均值应该是中性灰色,根据这个假设调整图像的颜色。

通过计算图像中红、绿、蓝三个通道的平均值,将这个平均值视为中性灰色,然后根据这个中性灰色对图像的颜色进行调整。

2. 最大值法(Max-RGB Algorithm):假设在一张图像中,红、绿、蓝三个通道中,最大值所对应的像素应该是白色,根据这个假设调整图像的颜色。

通过找到图像中红、绿、蓝三个通道中的最大值,并将这个最大值设为白色的亮度值,然后根据这个亮度值对图像的颜色进行调整。

3. 白色补偿法(White Patch Algorithm):假设图像中存在一
个物体是白色的,通过使用这个白色物体来调整整个图像的颜色。

通过在图像中寻找最亮的像素点,并将该像素点的颜色设为白色,然后根据这个白色值对图像的颜色进行调整。

4. 边缘法(Edge-Based Algorithm):通过检测图像中边缘的
梯度信息来调整图像的颜色。

根据边缘的灰度变化情况来判断图像中的颜色偏差,然后根据颜色偏差对图像进行补偿。

以上只是几种常见的自动白平衡方法,实际应用中可以根据具体情况选择合适的方法或者结合多种方法进行处理。

白平衡算法总结

白平衡算法总结

灰色世界法(grey world method)要计算未知光源的特性必须从图片中提取相关的统计特性。

当我们能够仅使用一个统计特性就获得未知光源特性时,算法就变得非常简单了。

在这种情况下,未知光源必须在整幅图片上都是统一的。

均值于是就成为了此类方法Z下最好的统计指标。

而灰色世界法正是利用了均值作为估算未知光源的关键统计量。

从物理意义上说,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。

在给定图片的白平衡算法中,灰色世界假设图片中的反射面足够丰富,以至于可以作为自然界景物的一个缩影。

若这幅图片是在经典光源下拍摄的, 其均值就应该等于灰色。

若这幅图是在非经典光源下拍摄的,那么均值就会大于或者小于灰色值。

而该均值对于灰色的偏离程度则反映了未知光源相对于已知光源的特性。

虽然这个方法比较简单,但是仍然可以从一些方面进行调整。

一个方面就是对于灰色的定义形式的选择。

包括对于光谱的定义、对于光谱成分的定义和在经典光源Z下的RGB的响应。

另一个更加重要的调整方面就是对于灰色的选择。

不管如何定义灰色,最佳的灰色之选必然是自然界实事上出现的灰色。

但是这个值是无法获得的(除非是合成数据),所以对于灰色的选择是不同的灰色世界算法的一个重要的区别点。

一个方法是假设这个灰色就是实事上的灰色。

也就是说反射光谱是均衡的。

给定光源Z卜的RGB响应是纯白色对此光源的响应值的一部分。

比方说,可以使用50%作为反射率(虽然这个灰色值对于人眼视觉习惯而言可能过于明亮)。

另一种方法,就是根据大量的数据提炼出一个均值,并把它定义为灰色。

这种方法提炼的灰色值可能因为数据库使用的不同而有所不同。

最终提炼的灰色也能仅适用于原始的数据库,而对于数据库未包括的图片的适用度就会比较差一些。

确定下来的灰色表达形式可以用Gmyf来表示。

下标i表示信道,上标c为canonical的首字母,表示经典光源。

在确定灰色的表达形式后只要用RGB响应与经典光源下灰色的比值来归一化图片就可以了。

白平衡色温值的详尽参考值

白平衡色温值的详尽参考值

白平衡色温值的详尽参考值色温实在是一个重要的概念。

我们都知道,色温K值越小,照片越蓝,K值越大,照片越红。

但看了好多关于色温的文章,竟越看越糊涂了!比如一天中,早上的色温K值要小于傍晚日落时分的色温K值,这个大家应该不会有歧意,但说法就不一了,有的人说早上的色温要高于日落时的色温,据此理解,是不是和光圈的概念一样,数值越大色温越低呢?色温原理介绍时关于色温K值从低到高是红-橙红-黄-黄白-白-蓝白-蓝,可以理解为低色温到高色温的变化是暖色调向冷色调的过度。

但我们将手中的相机白平衡打到K(色温)上对一个固定场景测定,由低K值逐渐到高K值,发现出片2500K很蓝-4000K-5000K逐渐正常-6000k-10000K色彩就很黄,这好像与前面的说明是相反的,成了低K 到高K为冷色到暖色了,查找资料后才理解,相机的白平衡设置出在“平衡”二字,补偿才是核心!1、低色温到高色温的变化是暖色调向冷色调的过度----这是对的,但这是指场景的色光本身。

2、对于同一个场景的色光,相机的色温设置的越低,该色温和场景的实际色温的差别就越大,照片越蓝;反之则相反。

就是说,这是拍摄时实际色温和相机色温设置的差别所造成的效果,是另一个问题。

3、可以这样理解:如果现场光线色温低,相机就给补偿高点儿,反之则反。

相机上的白平衡“色温”(K)值,是一种补偿值。

当环境色温高的时候,你要调低(K)值4000--3000--或者更低。

你就理解为环境色温高,需要你给予的补偿值就少。

A不同时刻直射光的色温值:直射日光色温值(K)中午日光 5500日出后二小时 4400日落前二小时 4300日出后一个半小时 4000日出后40 分钟 2900日出后30分钟 2400日落前30分钟 2300日出后20分钟 2100日出.日落时 1900B不同季节和天气情况下自然光的色温值:自然光的变化 3-5月 6 -8月 9-10月 11-12月直射日光9-15时 5800 5800 5550 5500 直射9时前15时后 5400 5600 5000 4900 日光+天空光9-15时 6500 6500 6200 6200 日光+天空光9前15后6100 6200 5900 5700 日光+天空光 5900 5800 5900 5700阴天 6700 6950 6750 6500蓝色天空 27000 14000 12000 12000C常见人工光源的色温值:光源种类色温值电子闪光灯光 5300-60001000-5000W卤素灯 5000-6000高色温碳弧灯 5500白色碳弧灯 5000500W高色温摄影灯 3200500W摄影泛光灯 3400摄影卤素灯光 3000-40001300W新闻碘钨灯 3200200W普通灯炮 2980100W普通灯泡 290075W普通灯泡 280040W普通灯泡 2650蜡烛光 1850色温究竞是指什么? 我们知道,通常人眼所见到的光线,是由光的三原色(红绿蓝)组成的7种色光的光谱所组成。

白平衡 原理

白平衡 原理

白平衡原理
白平衡是一种数码相机和摄像机中常用的测光技术,用于调整图像中的颜色偏差,使图像中的白色保持真实和准确。

在现实世界中,我们所看到的白色通常是没有色彩偏差的纯白色。

然而,由于不同光源的不同特性,如日光、荧光灯、钨丝灯等,不同的光源产生的光的颜色也会有所不同。

这就导致了在不同光源下拍摄的照片或录制的视频中,白色看起来可能带有不同的颜色偏差。

白平衡的原理就是要根据拍摄场景中的光源特性来调整相机的色温设置,以拍摄出真实的颜色。

通常,相机会根据场景中的白色参考点(如白纸、白墙等)来进行测光,然后根据光源的颜色温度对图像中的颜色进行校正。

这样,无论是在日光下、荧光灯下还是室内温暖的灯光下拍摄的照片,白色都能够呈现出真实的颜色。

具体来说,白平衡可以通过以下几种方式进行调整:
1. 自动白平衡(AWB):相机会自动根据场景中的光源特性进行测光和调整,通常是默认设置。

2. 预设白平衡(Preset WB):根据不同的光源类型选择预设的白平衡设置,如日光、荧光灯、阴天等。

3. 手动白平衡(Manual WB):通过在特定场景中使用白平衡卡或其他具有已知颜色温度的参考物进行手动调整。

总之,白平衡原理的目的是通过校正相机的色温设置,确保照片或视频中的白色呈现真实和准确,从而提高图像的质量。

这一技术在数码摄影和摄像中非常重要,有助于消除颜色偏差,使图像更加真实自然。

深入了解白平衡如何正确的设定白平衡

深入了解白平衡如何正确的设定白平衡

深入了解白平衡如何正确的设定白平衡白平衡是摄影中非常重要的一个概念,它决定了照片中白色的呈现是否准确。

正确设定白平衡可以确保照片中的颜色真实、自然,并且能够帮助摄影师在不同光线环境下准确控制色彩。

白平衡是根据不同光源的颜色温度来进行调整的。

光源的颜色温度可以从相对冷的蓝色(较高的颜色温度)到相对热的橙色(较低的颜色温度)不等。

室内白炽灯的颜色温度约为2700K,太阳光的颜色温度约为5500K,而阴天或阴影的颜色温度可能更低。

摄影师可以通过设置白平衡来适应不同颜色温度的光源,以使图像中的白色看起来真实而准确。

以下是一些正确设定白平衡的方法:1.自动白平衡(AWB):大多数相机都提供了自动白平衡功能,它会通过计算场景中的主要光源颜色温度来自动调整白平衡。

在一般情况下,自动白平衡可以产生准确的结果,但在复杂的光线环境下,它可能会有误差。

2.预设白平衡模式:相机通常还提供了一些预设的白平衡模式,如日光、阴天、白炽灯等。

这些模式是为了方便用户在特定光线环境下快速设定白平衡。

如果你知道当前场景的光源类型,选择适当的预设模式可以获得较准确的白平衡。

3.自定义白平衡:在特殊光线条件下,如严重偏色的光源或特殊效果的灯光下拍摄,自动白平衡可能无法正确处理。

这时候,你可以通过自定义白平衡来达到更准确的结果。

具体操作方法会因相机型号而有所不同,一般需要使用一块白色或灰色纸板,将其放在场景中,并通过相机菜单或设定选项进行自定义校正。

这样相机就能正确地设定白平衡,以便在后期处理时保真地呈现颜色。

4.RAW格式拍摄:如果你使用支持RAW格式的相机,在后期处理中可以更灵活地调整白平衡。

相机将原始传感器数据保存在不经过压缩的RAW文件中,这使得你可以在后期调整白平衡、曝光和其他参数,以获得理想的色彩效果。

无论你选择哪种设定白平衡的方法,重要的是要了解光源的颜色温度,并根据实际情况进行调整。

此外,也可以通过良好的构图、光线控制和后期处理等手段来达到更准确和理想的结果。

白平衡算法

白平衡算法

白平衡算法
白平衡算法是相机自动曝光的重要一部分,它能有效调整拍摄的
照片的亮度等特征,使得其保持白色的协调,也就是白平衡。

白平衡算法的基本思路是,照片的自然色系基本上能被认为完全
由红色,绿色和蓝色三角形的点构成。

通常情况下,在日光源(例如,白天或晚上自然景观)照射下,白色画面的点应具有相同的红色,绿
色和蓝色比例,因此,照片的RGB像素值的加权平均值也应该是约等
于中性灰(128,128,128)的灰色。

在白平衡算法中,为了得到最佳的
曝光,将检测图像中所有白色画面点的RGB值,然后调整比例,以使
每一个点都处于完美的灰度需要级别。

数码相机的白平衡技术解析

数码相机的白平衡技术解析

数码相机的白平衡技术解析数码相机的白平衡技术是一项重要的功能,它可以让照片看起来更加真实和自然。

本文将对数码相机的白平衡技术进行详细解析,包括白平衡的定义、原理、调整方法以及其在不同场景下的应用。

一、白平衡的定义白平衡是指调整相机在不同光源下拍摄出来的照片中,白色或中性灰色物体的颜色保持真实,不受光源色温的影响。

由于不同光源的颜色温度不同,如太阳光、白炽灯、荧光灯等,所以拍摄照片时,图像中的白色物体可能呈现出不同的偏色。

二、白平衡的原理数码相机的白平衡技术是通过调整相机的色温来实现的。

色温是指光源的冷热程度,用单位开尔文(K)表示。

一般而言,光源的色温越高,其颜色越偏向蓝色;色温越低,其颜色越偏向黄色。

相机通过测量光源的色温并进行相应的调整,使得拍摄出来的照片中的白色物体呈现出真实的颜色。

相机使用色温计或传感器来检测光源的色温,并根据测量结果调整相机的色温设置。

三、白平衡的调整方法数码相机通常提供了多种白平衡调整方法,以适应不同的拍摄环境和需求。

以下是常见的白平衡调整方法:1.自动白平衡(AWB):相机通过内置的算法自动检测光源的色温,并进行相应的调整。

这是最常用的白平衡设置,适用于大多数情况下。

2.预设白平衡(Preset WB):相机提供了一些预设选项,如阳光、白炽灯、荧光灯等,用户可以根据实际拍摄环境选择相应的预设选项。

3.手动白平衡(Manual WB):用户可以使用白色卡片或专用工具在特定光源下进行测量,并将测量结果输入相机进行手动调整。

4.自定义白平衡(Custom WB):用户可以在特定拍摄环境下进行自定义的白平衡调整,以获得最准确的颜色还原效果。

四、白平衡在不同场景下的应用1.室内拍摄:室内的光源通常是白炽灯或荧光灯,色温较低。

在这种情况下,使用自动白平衡或者相应的预设选项可以获得更准确的颜色还原效果。

2.户外拍摄:户外的光源多为自然光,而自然光的色温随时间和天气变化而变化。

在这种情况下,使用自动白平衡可以自动调整光源的色温,确保拍摄出来的照片中的白色物体保持真实的颜色。

自动白平衡算法

自动白平衡算法

自动白平衡算法介绍自动白平衡算法是数字图像处理中的一项重要技术。

在数字相机中,相机传感器记录的图像数据往往会受到光照条件的影响,导致图像的颜色偏差。

自动白平衡算法的目标就是校正这些颜色偏差,使图像呈现出真实、自然的色彩。

问题在光源的颜色温度发生变化时,相机传感器记录的图像数据的颜色也会发生变化。

这就需要自动白平衡算法来对图像进行校正,将其恢复到真实世界中的颜色。

基本原理自动白平衡算法的基本原理是根据图像中的参考物体来估计光源的颜色温度,然后根据这个估计值来进行颜色校正。

一般来说,我们使用图像中的灰色或白色区域作为参考物体,因为这些区域的颜色应该是真实的灰色或白色,不受光源的影响。

常见的自动白平衡算法1.灰度世界算法灰度世界算法假设整个图像的平均亮度是相同的。

根据这个假设,它将图像中的所有像素的亮度值取平均,然后将各个通道的亮度进行调整,使其平均亮度达到相同的值。

步骤:1.计算图像的平均亮度。

2.计算每个通道的增益,使其平均亮度与整个图像的平均亮度相同。

3.对图像的每个像素进行颜色校正。

2.白色世界算法白色世界算法假设整个图像中的任何一个区域都应该是真实的白色。

根据这个假设,它将图像中的某个区域的颜色调整为真实的白色,然后通过调整各个通道的增益来进行校正。

步骤:1.选择图像中的一个白色区域作为参考。

2.计算参考区域的平均RGB值,将其调整为真实的白色RGB值。

3.计算各个通道的增益,使参考区域的RGB值与真实的白色RGB值相同。

4.对图像的每个像素进行颜色校正。

3.辐射度算法辐射度算法根据光源的颜色温度和图像中的参考物体的光谱来进行校正。

它对于不同的光源和不同的参考物体具有更好的适应性。

步骤:1.估计光源的颜色温度。

2.根据光源的颜色温度和参考物体的光谱,计算各个通道的增益。

3.对图像的每个像素进行颜色校正。

总结自动白平衡算法是数字图像处理中的重要技术,能够校正图像因光照条件不同而导致的颜色偏差。

数码相机的自动白平衡算法研究及实现

数码相机的自动白平衡算法研究及实现

数码相机的自动白平衡算法研究及实现一、前言数码相机是现代人生活中不可或缺的一部分,它可以记录下我们生活中的点滴,成为我们回忆的重要载体。

在拍摄过程中,白平衡是一个非常重要的因素。

本文将对数码相机的自动白平衡算法进行研究及实现。

二、什么是白平衡在日常生活中,我们看到的颜色都是由光线反射所形成的。

而不同光源下物体反射出来的颜色也不同。

因此,在拍摄过程中,相机需要根据环境光线的颜色来调整相片中物体原有颜色所呈现出来的色彩,这就是白平衡。

三、自动白平衡算法1.灰度世界算法灰度世界算法认为,在一个场景中,每种颜色所占比例应该大致相等。

因此,在图像处理时,将图像所有像素点求出RGB三个通道值得平均值作为整个图像亮度值(Luminance),然后对每个像素点进行调整。

2.最大值-最小值算法最大值-最小值算法认为,在一个场景中,应该有一种颜色通道占比较高。

因此,在图像处理时,找到R、G、B三个通道中最大值和最小值,然后用最大值和最小值的平均值作为整个图像亮度值(Luminance),对每个像素点进行调整。

3.白色点算法白色点算法认为,在一个场景中,应该有一种颜色通道占比较高,并且该颜色通道中的某些像素点应该是白色或近似白色。

因此,在图像处理时,找到R、G、B三个通道中亮度最高的像素点,并将其RGB三个通道的值作为整个图像亮度值(Luminance),对每个像素点进行调整。

四、实现过程在实现过程中,我们需要先将原始图像转换为HSV空间。

然后根据上述算法计算出整个图像的亮度值,并将其作为参考亮度。

接着对每个像素点进行调整。

五、总结自动白平衡算法是数码相机拍摄过程中非常重要的一部分。

在实现过程中,我们可以选择不同的算法来计算参考亮度,并对每个像素点进行调整。

通过合适的算法和参数设置,可以得到更加真实准确的照片效果。

白平衡算法

白平衡算法

灰色世界法(grey world method)要计算未知光源的特性必须从图片中提取相关的统计特性。

当我们能够仅使用一个统计特性就获得未知光源特性时,算法就变得非常简单了。

在这种情况下,未知光源必须在整幅图片上都是统一的。

均值于是就成为了此类方法之下最好的统计指标。

而灰色世界法正是利用了均值作为估算未知光源的关键统计量。

从物理意义上说,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。

在给定图片的白平衡算法中,灰色世界假设图片中的反射面足够丰富,以至于可以作为自然界景物的一个缩影。

若这幅图片是在经典光源下拍摄的,其均值就应该等于灰色。

若这幅图是在非经典光源下拍摄的,那么均值就会大于或者小于灰色值。

而该均值对于灰色的偏离程度则反映了未知光源相对于已知光源的特性。

虽然这个方法比较简单,但是仍然可以从一些方面进行调整。

一个方面就是对于灰色的定义形式的选择。

包括对于光谱的定义、对于光谱成分的定义和在经典光源之下的RGB 的响应。

另一个更加重要的调整方面就是对于灰色的选择。

不管如何定义灰色,最佳的灰色之选必然是自然界实事上出现的灰色。

但是这个值是无法获得的(除非是合成数据),所以对于灰色的选择是不同的灰色世界算法的一个重要的区别点。

一个方法是假设这个灰色就是实事上的灰色。

也就是说反射光谱是均衡的。

给定光源之下的RGB 响应是纯白色对此光源的响应值的一部分。

比方说,可以使用50%作为反射率(虽然这个灰色值对于人眼视觉习惯而言可能过于明亮)。

另一种方法,就是根据大量的数据提炼出一个均值,并把它定义为灰色。

这种方法提炼的灰色值可能因为数据库使用的不同而有所不同。

最终提炼的灰色也能仅适用于原始的数据库,而对于数据库未包括的图片的适用度就会比较差一些。

确定下来的灰色表达形式可以用来表示。

下标i 表示信道,上标c 为canonical 的首字母,表示经典光源。

在确定灰色的表达形式后只要用RGB 响应与经典光源下灰色的比值来归一化图片就可以了。

白平衡掌握白平衡调整技巧

白平衡掌握白平衡调整技巧

白平衡掌握白平衡调整技巧摄影是一门艺术,通过摄影,我们可以展示出真实世界的美丽和多样性。

然而,在不同的光线条件下进行摄影时,可能会遇到白平衡问题,导致照片的色温和色彩偏离真实场景。

为了解决这一问题,摄影师们需要掌握白平衡调整技巧。

本文将介绍什么是白平衡以及如何有效地进行白平衡调整。

一、什么是白平衡白平衡是指相机对不同光源下的白色参考物进行校准,以保证照片中的白色区域真实还原。

为了能够正常展示出照片的颜色和色温,摄影师需要保证白色的真实还原。

不同的光源具有不同的色温,例如日光是比较接近纯白的,草坪上的白花也应该是白色的,然而在阴影下,由于阳光透过树叶,会带有一些蓝绿色调,导致照片中白花呈现出偏蓝绿的颜色。

这时候就需要通过调整白平衡来还原真实颜色。

二、白平衡调整技巧1. 使用相机预设白平衡模式现代相机通常都有一些预设的白平衡模式,例如自动、太阳光、阴影等。

如果你是初学者,可以尝试使用相机自动模式进行拍摄。

相机会根据不同的环境光线自动调整白平衡,从而得到相对准确的颜色还原。

2. 手动白平衡调整除了相机预设模式外,还可以尝试手动白平衡调整。

最简单的方法是使用白色纸片或灰卡作为参考物。

将白纸片或灰卡放在所拍摄环境下,然后在相机设置中选择手动白平衡调整功能,按下快门。

相机将根据参考物的颜色进行校准,以实现准确的白平衡。

3. 后期调整如果在拍摄时无法进行准确的白平衡调整,还可以通过后期软件进行修正。

常见的后期调整软件有Adobe Lightroom和Photoshop等。

通过调整软件中的白平衡选项,摄影师可以对照片的色温和色彩进行微调,使其更加接近真实环境。

三、白平衡注意事项在进行白平衡调整时,需要注意以下几点:1. 照明环境:光源的类型和强度会影响白平衡调整的效果。

不同的灯光产生不同的色温,例如白炽灯的色温较低,荧光灯的色温较高。

在不同的光照环境下,应该选择相应的白平衡模式或者手动调整。

2. 参考物选择:选择一个准确的参考物对于白平衡调整非常重要。

白平衡算法总结范文

白平衡算法总结范文

白平衡算法总结范文白平衡(White Balance)是指在数字图像处理中通过调整图像中各个颜色通道的增益,使被拍摄物体的白色部分在图像中呈现出真实的白色。

由于不同的光源会产生不同颜色的光线,因此在不同的光照条件下,同一景物在拍摄出来的图像中可能呈现出不同的色彩偏差。

而白平衡算法的目的就是通过自动或手动调整图像的颜色偏差,以还原真实的色彩。

白平衡算法的主要原理是基于人眼对颜色的感知机制。

人眼在不同光照条件下会自动调整视觉感知,使物体的颜色看起来基本一致。

而相机的感光元件(CCD或CMOS)不具备人眼的自动调整功能,因此需要白平衡算法来模拟人眼的色彩感知。

1.手动白平衡算法:由用户手动设置白平衡参数,如色温和色调校正。

用户可根据实际拍摄场景,选择合适的白平衡参数来调整图像的色彩偏差。

这种算法的优点是操作简单,但需要用户具备一定的色彩判断能力。

2.自动白平衡算法:自动白平衡算法是将图像中的一些特定的像素点作为衡量白色的标准,通过衡量这些像素点的颜色偏差,来调整图像的颜色增益。

常用的自动白平衡算法有:-灰度世界算法:假设整个图像的平均亮度是一样的,根据这个假设调整图像的颜色增益,使图像的整体色彩保持平衡。

-最大值法:将图像中最亮的点设置为白色,根据这个点的颜色值调整图像的颜色增益,以达到白平衡效果。

-平均值法:选择图像中一部分代表性像素,计算它们的颜色平均值作为白色参考,根据这个参考值调整图像的颜色增益。

-直方图法:通过统计图像中每个颜色通道的像素数目,找出光线最强的颜色通道,根据这个通道的颜色值调整图像的颜色增益。

3.其他白平衡算法:除了上述的手动和自动白平衡算法外,还有一些特殊的白平衡算法。

-主观评价法:通过人工选择白色参考点,根据这个点的颜色值调整图像的颜色增益。

-色彩传递法:通过记录白平衡卡上的颜色数据,将白平衡卡的颜色信息转移到待调整的图像中。

总的来说,白平衡算法的实现原理都是通过调整颜色增益来还原真实的颜色。

Camera-AWB算法分析(汇编)

Camera-AWB算法分析(汇编)

自动白平衡(AWB)算法1,色温曲线白平衡算法---色温曲线本文大体讲解了白平衡的算法流程,适用于想了解和学习白平衡原理的筒子们.一般情况下要实现AWB算法需要专业的图像和算法基础,本文力图通过多图的方式,深入浅出,降低初学者理解上的门槛,让大家都理解到白平衡算法流程.看到这里还在继续往下瞄的同学,一定知道了色温的概念,并且知道sensor原始图像中的白色如果不经AWB处理,在高色温(如阴天)下偏蓝,低色温下偏黄,如宾馆里的床头灯(WHY!OTZ) (如下图).下面这个T恤的图片非常经典,怎么个经典后续再说,不过大体可以看出有偏黄和偏蓝的情况.虽然如此,却已经是AWB矫正以后的效果.所以,为了眼前的女神白富美在镜头里不变成阿凡达和黄脸婆,这时就需要白平衡来工作了.流程原理很简单:1,在各个色温下(2500~7500)拍几张白纸照片,假设拍6张(2500,3500…7500),可以称作色温照.2,把色温照进行矫正,具体是对R/G/B通道进行轿正,让偏色的白纸照变成白色,并记录各个通道的矫正参数.实际上只矫正R和B通道就可以,这样就得到了6组矫正参数(Rgain,Bgain). 3,上面是做前期工作,爱思考的小明发现,只要知道当前场景是什么色温,再轿正一下就可以了.事实上也就是如此.所以,AWB算法的核心就是判断图像的色温,是在白天,晚上,室内,室外,是烈日还是夕阳,还是在阳光下的沙滩上.或者是在卧室里”暖味”的床头灯下.之前拍了6张色温照以及6组矫正参数.可是6够么,当然不够, 插值一下可以得到无数个值,我们把点连成线, 得到了一个神奇的曲线------色温曲线.大概是下面这个样子.上面提到了三个值(RG,BG,色温),这应该是个三维的.没关系,我们再来一条RG跟色温的曲线,这样只要知道色温,就知道RG,知道RG,就知道BG,知道RG,BG就能轿正了,yes!至此,我们的前期工作已经全部做完了, 并得到了AWB的色温曲线,下一步只要计算得到当前色温,顺藤摸瓜就能得到当前的矫正参数(Rgain,Bgain),那白平衡的工作就作完了.(放心,当然没这么简单)第一部分先到这里,下一部分将讲解AWB算法的核心------计算图像色温.涉及到的知识点大致有图像分块, 判断白区, 根据色温曲线划分不同光源, 对不同光源加权平均得到实际色温.2. 色温计算本文主要讲解了白平衡算法中估算当前场景色温的流程.色温计算的原理并不复杂,但是要做好,还是要细心做好每一步工作,这需要大量的测试,并对算法不断完善.首先简单说一下流程:1, 取一帧图像数据,并分成MxN块,假设是25x25,并统计每一块的基本信息(,白色像素的数量及R/G/B通道的分量的均值).2, 根据第1步中的统计值, 找出图像中所有的白色块,并根据色温曲线判断色温. 3, 至此,我们得出来了图像中所有的可能色温,如果是单一光源的话,可以取色温最多的,当作当前色温.比如25x25=625 个块中,一共找出了100个有效白色块, 里面又有80个白色块代表了色温4500左右, 那当前色温基本就是4500.根据4500色温得出的Rgain,Bgain来调整当前图像,就不会差(很多!).下面我们再详细讲解一下,每一步中需要做的工作:第1步, 计算每一块的基本信息.关于白色像素统计,大家知道sensor原始图像是偏色的,怎么统计块中的白色点呢,那只有设置一个颜色范围,只要在范围中,就可以认为是白色像素,范围见下图:统计白色像素个数的用处是,1,如果块中的白色像素太少,可以抛弃掉. 2,如果白色像素太多,多到每一个像素点都是,那也要抛弃掉,因为很可能在该区域过曝了接着把统计到的白色像素点R/G/B取均值, 并得到该block 的R/G, B/G值至此,我们得到了每一块的白点数目及R/G,B/G的值. (请自动对应第1部分中色温曲线).第二步计算当前色温这个比较复杂, 大自然绚丽多彩,景色万千. 上一步中统计的”白色点”难免会有失误的地方,比较常见的如黄色皮肤容易被误判为低色温下的白点,淡蓝色的窗帘,容易被误判为高色温下的白点,一张图中既有白色,也有黄色,也有蓝色的时候,是不是感觉情况有点复杂,其它的大家可继续脑补.这时我们需要一定的策略来正确的判断出到哪个才是真的白.通常我们会把取到的白色块,计算一下到曲线的距离,再设置相应的权重.话不多说,上个图大家就都明白了.假设有上面这样一幅图,该图是在没有开AWB的前提下截取的,可以看到左边白色地方略有偏绿,当前色温是室内白炽灯,大概4000~5000k左右.(请忽略颜色不正的问题,我们在讨论白平衡)下面我们就根据之前的统计信息和测量好的色温曲线进行白平衡矫正.首先要找出白区,如下图:上面这个图中的数字标示出了检测到的白色区域,数字相同的表示一个白区,根据统计信息(白点数,rg/bg值)来区分的.可以看到有误判的地方,比如色卡左上第二块的肤色块.还有最右边从上面数第二块也是容易被判断成低色温白块的情况.针对这种误判的情况,对不同块根据统计信息进行权重设置,以求让误判的区域对最终结果影响小一些.上面这个图标注了权重,基本是根据统计信息中白点数来确定的.可以看到图中一片白色被标识了高权重.其它情况被标识了低权重. 权重高低一是看块中白色点数量,二是看rg/bg到色温曲线的距离.通过上面两个图,大家就可以明显的找到白色区,并根据曲线来矫正,即使不通过曲线矫正,把白色区的r/g,b/g值向1趋近,让r=g=b,也会得到非常好的白平衡效果.如下图所示:至此,白平衡的基本流程就讲完了,有图有真相,大家一定看着也方便.总结一下:第一次做白平衡,感觉理论很简单,不用什么基础也能看懂.实际算法调试时,可谓差之毫厘,失之千里.总是感觉不由自主就走上歪路.中间参考了大量资料,比如网上有许多基于色温/灰度世界/白点检测的白平衡算法,实际个人感觉应该把它们都结合起来,让算法强壮,健康才是我们想要的.还记得第一章中开始的那两张白色T恤的图么,算了,我再贴一下:这张图可以理解为在多光源下的白平衡调整.阴影色温比阳光下色温要高一些,如果阳光下是5000k,阴影可能是7000k.有光就有影,它们经常出现在一个镜头里,对着其中一个色温调,另一边就会偏色.为了整体效果好,要把翘翘板平衡起来,可以加一些策略在里面.下面给出一幅<怎样画马>,让大家体会一下流程.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

灰色世界法(grey world method)要计算未知光源的特性必须从图片中提取相关的统计特性。

当我们能够仅使用一个统计特性就获得未知光源特性时,算法就变得非常简单了。

在这种情况下,未知光源必须在整幅图片上都是统一的。

均值于是就成为了此类方法之下最好的统计指标。

而灰色世界法正是利用了均值作为估算未知光源的关键统计量。

从物理意义上说,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。

在给定图片的白平衡算法中,灰色世界假设图片中的反射面足够丰富,以至于可以作为自然界景物的一个缩影。

若这幅图片是在经典光源下拍摄的,其均值就应该等于灰色。

若这幅图是在非经典光源下拍摄的,那么均值就会大于或者小于灰色值。

而该均值对于灰色的偏离程度则反映了未知光源相对于已知光源的特性。

虽然这个方法比较简单,但是仍然可以从一些方面进行调整。

一个方面就是对于灰色的定义形式的选择。

包括对于光谱的定义、对于光谱成分的定义和在经典光源之下的RGB的响应。

另一个更加重要的调整方面就是对于灰色的选择。

不管如何定义灰色,最佳的灰色之选必然是自然界实事上出现的灰色。

但是这个值是无法获得的(除非是合成数据),所以对于灰色的选择是不同的灰色世界算法的一个重要的区别点。

一个方法是假设这个灰色就是实事上的灰色。

也就是说反射光谱是均衡的。

给定光源之下的RGB响应是纯白色对此光源的响应值的一部分。

比方说,可以使用50%作为反射率(虽然这个灰色值对于人眼视觉习惯而言可能过于明亮)。

另一种方法,就是根据大量的数据提炼出一个均值,并把它定义为灰色。

这种方法提炼的灰色值可能因为数据库使用的不同而有所不同。

最终提炼的灰色也能仅适用于原始的数据库,而对于数据库未包括的图片的适用度就会比较差一些。

确定下来的灰色表达形式可以用来表示。

下标i表示信道,上标c为canonical的首字母,表示经典光源。

在确定灰色的表达形式后只要用RGB响应与经典光源下灰色的比值来归一化图片就可以了。

假设RGB响应均值为,下标i表示信道,上标U为Unknown的首字母,表示未知光源。

那么归一化率的计算式为如下式所示:根据光源转换理论,从未知光源到经典光源下图片表达式的转换式如下式所定义:那么,灰色世界法的计算过程如下图所示:本实验选择的灰色值为(129,129,129),具体的matlab实现程序如下:%灰色世界法%clear all;%清屏%img=imread('b1.bmp');%读取位图的rgb值并存在名为img的三维矩阵中%AveR=mean(mean(img(:,:,1)));%计算R通道的均值%AveG=mean(mean(img(:,:,2)));%计算G通道的均值%AveB=mean(mean(img(:,:,3)));%计算B通道的均值%Qr=129/AveR;%计算R通道的归一化率Qr%Qg=129/AveG;%计算G通道的归一化率Qg%Qb=129/AveB;%计算B通道的归一化率Qb%%光源变换%img0(:,:,1)=Qr*img(:,:,1);img0(:,:,2)=Qg*img(:,:,2);img0(:,:,3)=Qb*img(:,:,3);figure,imshow(img0),title('变换后图片');%显示图片%偏蓝图片白平衡调整后的图片正常光照下的图片基于动态阀值的自动白平衡法(Automatic White Balance Method)这个算法是通过对图片的ycbcr色空间的分析来确定参考白点的,所以次算法可以说是自适应白平衡算法。

本算法选择参考白点的阀值是动态变化的,所以对于不同的图片,其阀值也不同。

通过对图片的cbcr坐标空间的分析,我们可以看到一个接近白色的区域(near-white region)是包含着参考白点的。

通过这个思路,我们可以通过对图片分区,然后找出参考白点,然后在通过von kvies model来调整图片时期实现白平衡。

这样,这个算法就包括了两个步骤了:寻找参考白点,白点调整。

寻找参考白点:为了确定一个接近白色的区域,我们就必须把RGB色空间转换成YCbCr色空间。

色空间转换后,就是计算Cb、Cr的均值Mb、Mr;然后通过下式计算Cb、Cr的均方差Db、Dr:为了提高算法的稳健性,将图片分为几个区域并且计算每个区域的Mb、Mr、Db、Dr,如果一个区域的Db,Dr太小,那么这个区域就没有足够的色彩变化,就可以丢弃掉了。

这样可以避免大面积的统一色调对结果的影响。

接下来就可以通过下面的关系式得到接近白色区域的所有像素点了:根据亮度值,我们选择接近白色区域中的10%的候选参考白点最为参考白点。

在白点确定后,就可以从参考白点中得到信道增益的值了。

为了维持整幅图片的亮度不变,亮度的最大值被用来得到信道增益。

所以信道增益不及和参考白点有关还与亮度的最大值有关,其表达式如下:其中是整幅图片像素的亮度最大值,、和是参考白点的RGB信道的均值。

最后,根据von-kvies model来调整图片,使其达到白平衡的效果。

调整的表达式如下:其中RGB是图片的像素点的三个信道值,是调整之后的图片的像素点的三个信道值。

其源程序如下:%Program for white balancing%function W=wbalance(im)clear all;close all;%读取照片的信息%[filename,pathname]=uigetfile('*.jpg;*.bmp;*.gif','Pick an image-file');if isequal(filename,0)disp('User selected Cancel');elsedisp(['User selected',fullfile(pathname,filename)]);endfname=strcat(pathname,filename);im=imread(fname);im2=im;im1=rgb2ycbcr(im);%将图片的RGB值转换成YCbCr值% Lu=im1(:,:,1);Cb=im1(:,:,2);Cr=im1(:,:,3);[x y z]=size(im);tst=zeros(x,y);%计算Cb、Cr的均值Mb、Mr%Mb=sum(sum(Cb));Mr=sum(sum(Cr));Mb=Mb/(x*y);Mr=Mr/(x*y);%计算Cb、Cr的均方差%Db=sum(sum(Cb-Mb))/(x*y);Dr=sum(sum(Cr-Mr))/(x*y);%根据阀值的要求提取出near-white区域的像素点%cnt=1;for i=1:xfor j=1:yb1=Cb(i,j)-(Mb+Db*sign(Mb));b2=Cr(i,j)-(1.5*Mr+Dr*sign(Mr));if(b1<abs(1.5*Db)&b2<abs(1.5*Dr))Ciny(cnt)=Lu(i,j);tst(i,j)=Lu(i,j);cnt=cnt+1;endendendcnt=cnt-1;iy=sort(Ciny,'descend');%将提取出的像素点从亮度值大的点到小的点依次排列%nn=round(cnt/10);Ciny2(1:nn)=iy(1:nn);%提取出near-white区域中10%的亮度值较大的像素点做参考白点%%提取出参考白点的RGB三信道的值%mn=min(Ciny2);c=0;for i=1:xfor j=1:yif tst(i,j)<mntst(i,j)=0;elsetst(i,j)=1;c=c+1;endendendR=im(:,:,1);G=im(:,:,2);B=im(:,:,3);R=double(R).*tst;G=double(G).*tst;B=double(B).*tst;%计算参考白点的RGB的均值%Rav=mean(mean(R));Gav=mean(mean(G));Bav=mean(mean(B));Ymax=double(max(max(Lu)))/15;%计算出图片的亮度的最大值% %计算出RGB三信道的增益%Rgain=Ymax/Rav;Ggain=Ymax/Gav;Bgain=Ymax/Bav;%通过增益调整图片的RGB三信道%im(:,:,1)=im(:,:,1)*Rgain;im(:,:,2)=im(:,:,2)*Ggain;im(:,:,3)=im(:,:,3)*Bgain;%显示图片%W=im;figure,imshow(im2,[]),title('原图');figure,imshow(im,[]),title('白平衡后的效果图');黄偏色图片正常光照下的图片次算法的缺点是运行速度慢,但是对图片的还原效果还是比较显著的。

其他白平衡算法镜面法(Perfect Reflector Model)根据图像形成理论,对于纯白色的反射面而言,无论光源是什么颜色,最终反射后的颜色总能完全表现出光源的颜色。

如果景物中有纯白的部分,那么就可以直接从这些像素中提取出光源信息。

基于这种思想的方法都被称为是镜面法。

与灰色世界法类似的,镜面法也有多种调整方式。

在本文中着重介绍两种。

第一种方法较为基本也较为简便。

这种方法假设图片中一定有纯白色面存在,那么在经典光源下,图片中所有像素点三个信道的最大值都应该等于255,或者是一个给定的纯白色的值。

在任何其他的光源下,图片纯白色点的像素值就会小于经典光源下的纯白色,并且这些点将代表整幅图片中最亮的点。

那么只要将各信道的值按比例规一化到最大值(纯白色)就可以获得在经典光源下的图片了。

假设经典的白色表达形式可以用来表示。

下标i表示信道,上标c表示经典光源。

假设RGB响应的最值为,下标i表示信道,上标U表示未知光源。

那么归一化率的计算式为如下式所示:根据光源转换理论,从未知光源到经典光源下图片表达式的转换同样可以用下式定义:其计算过程如下:当选择(255,255,255)为白色值的时候只需把每个信道的像素值拉伸到最大值即可。

这种镜面法最为简单,在有效性方面的表现也不错。

第二镜面法算法在第一步的基础上改进了对于白色点的定义。

它不是将白色定义为各信道值最大的点。

而是将满足某个条件的点都定义为白色点,通过计算这些点的平均色温,得到对于未知光源的估计值。

这类算法首先将对于白色的定义形式转换到了YCbCr空间:在YCbCr空间中,Y是灰度,表示图像的亮度,Cb和Cr是色度的蓝色和红色分量,代表图像的色差。

相关文档
最新文档