from: http://www.cnblogs.com/haar/articles/1392227.html

一种效果很好的自动白平衡技术(WhiteBalance)

白平衡是图像处理的一个极重要概念。所谓白平衡(英文名称为White Balance),就是对白色物体的还原。当我们用肉眼观看这大千世界时,在不同的光线下,对相同的颜色的感觉基本是相同的,比如在早晨旭日初升时,我们看一个白色的物体,感到它是白的;而我们在夜晚昏暗的灯光下,看到的白色物体,感到它仍然是白的。这是由于人类从出生以后的成长过程中,人的大脑已经对不同光线下的物体的彩色还原有了适应性。但是,作为拍摄设备,如数码相机,可没有人眼的适应性,在不同的光线下,由于CCD输出的不平衡性,造成数码相机彩色还原失真。一般情况下,我们习惯性地认为太阳光是白色的,已知直射日光的色温是5200K左右,白炽灯的色温是3000K左右。用传统相机的日光片拍摄时,白炽灯光由于色温太低,所以偏黄偏红。所以通常现场光线的色温低于相机设定的色温时,往往偏黄偏红,现场光线的色温高于相机设定时,就会偏蓝。

为了解决不同色温下,引起的白色漂移现象。由于白色对色温变化的响应最大,通常用白色来作为调整的基色。通常的白平衡技术有:自动白平衡、钨光白平衡、荧光白平衡、室内白平衡、手动调节。本文仅介绍其中的一种自动白平衡。

白平衡算法通常分为两步:白色点的检测,白色点的调整。本方法采用一个动态的阀值来检测白色点。详细算法过程为:

1.  把图像w*h从RGB空间转换到YCrCb空间。

2.  选择参考白色点:

a. 把图像分成3*4个块(块数可选)。

b. 对每个块,分别计算Cr,Cb的平均值Mr,Mb。

c. 对每个块,根据Mr,Mb,分别计算Cr,Cb的方差Dr,Db。

d. 判定每个块的近白区域(near-white region)。

判别表达式为:Cb(i, j) − (Mb + Db × sign(Mb )) < 1.5× Db && Cr(i, j) − (1.5×Mr + Dr × sign(Mr )) < 1.5× Dr

设一个“参考白色点”的亮度矩阵RL,大小为w*h。

若符合判别式,则作为“参考白色点”,并把该点(i,j)的亮度(Y分量)值赋给RL(i,j);

若不符合,则该点的RL(i,j)值为0。

3.  选取参考“参考白色点”中最大的10%的亮度(Y分量)值,并选取其中的最小值Lu_min.

4.  调整RL,若RL(i,j)<Lu_min,  RL(i,j)=0; 否则,RL(i,j)=1;

5.  分别把R,G,B与RL相乘,得到R2,G2,B2。  分别计算R2,G2,B2的平均值,Rav,Gav,Bav;

6.  得到调整增益:  Ymax=double(max(max(Y)))/15;
                                    Rgain=Ymax/Rav;
                                    Ggain=Ymax/Gav;
                                    Bgain=Ymax/Bav;

7.  调整原图像:Ro= R*Rgain; Go= G*Ggain; Bo= B*Bgain;

一种效果很好的自动白平衡技术(WhiteBalance)相关推荐

  1. 自动白平衡技术(WhiteBalance)(转自Harri的blog)

    一种效果很好的自动白平衡技术(WhiteBalance) 白平衡是图像处理的一个极重要概念.所谓白平衡(英文名称为White Balance),就是对白色物体的还原.当我们用肉眼观看这大千世界时,在不 ...

  2. 一种新的Heap区溢出技术分析[转贴]

    一种新的Heap区溢出技术分析[转贴]---http://www.linuxsir.org/bbs/thread50097.html 作者:warning3 < maito:warning3@n ...

  3. 9种高性能可用高并发的技术架构

    9种高性能可用高并发的技术架构 1.分层 分层是企业应用系统中最常见的一种架构模式,将系统在横向维度上切分成几个部分,每个部分负责一部分相对简单并比较单一的职责,然后通过上层对下层的依赖和调度组成一个 ...

  4. 一种更优雅的蓝牙配对技术 - Cross-transport key derivation (CTKD)

    一种更优雅的蓝牙配对技术 - Cross-transport key derivation (CTKD)   蓝牙CTKD是蓝牙4.2版本引入的一种交叉传输密钥派生的安全机制,全称 Cross-tra ...

  5. 女孩子生理期最易达成的5种效果[女生必看,男生为了女朋友也要转

    每个月生理期总有几天不能饮酒.K歌.吃辛辣食物--但你知道这段时间其实是女人的变美期吗?丰胸.燃脂.提高记忆力.排毒等平时很难做到的事,在这个黄金期里都能轻易达成. 女人一生会经历400多次月经,每次 ...

  6. 《Photoshop修色圣典(第5版)》—第1章1.10节何时两种效果最佳

    本节书摘来自异步社区<Photoshop修色圣典(第5版)>一书中的第1章1.10节何时两种效果最佳,作者[美]Dan Margulis,更多章节内容可以访问云栖社区"异步社区& ...

  7. html css分页特效,CSS样式表实现效果很好的分页效果源代码

    CSS样式表实现效果很好的分页效果,在学习编程过程中由于文章内容比较多或者列表内容比较多,我们都需要分页!那么你想不想要一种好的分页效果呢?这个是我认为比较容易使用,同时编程方面也挺容易实现的分页,就 ...

  8. 视频抠像怎么抠的干净?教你几种效果不错的抠像方法

    想要将视频中的人像或者是物品抠出来,如何才能抠的干净呢?视频抠像是视频后期制作中很重要的一个环节.在视频制作过程中,有时需要把某个对象从原始视频中分离出来,或在另一个背景下重新定位它.视频抠像可以帮助 ...

  9. android 横向头像栏,GitHub - liushiqi0112/android-headimage-cliper: 头像上传图片裁剪,实现仿QQ、微信两种效果...

    Android头像上传之图片裁剪,实现仿QQ.微信两种效果 功能描述: 头像上传在APP中是很常见的功能,但是关于头像上传前的图片裁剪方式,如果使用系统提供的裁剪方式达不到预期效果,所以在这里提供一个 ...

最新文章

  1. SpringBoot 修改banner信息
  2. ustc linux 网络通,USTC 网络通脚本
  3. 中小企业集群ntpd服务搭建
  4. java 动态解析 xml_通过读取xml文件动态建表
  5. HTTP2还没用上,HTTP3就出来了
  6. Java2实用教程(第五版)/第五章例题
  7. 网络安全风险评估原理
  8. 一打开控制台窗口就中文输入_一起来玩SiFive的RISCV平台,玩转起来就免费得
  9. python换脸开源_Python实现AI换脸功能
  10. 学计算机在职硕士,计算机在职研究生的学习方式有哪些?
  11. Python调用xbox手柄马达震动
  12. 唯美手绘美女 性感蝴蝶天使 仙女 金发女郎
  13. Java并发编程的艺术(推荐指数:☆☆☆☆☆☆)
  14. ROG魔霸7Plus的CPU温度与 Armoury Crate 设置问题
  15. 极品冷幽默,搞笑没得说
  16. 移动端网页唤醒app
  17. 网站抢单搭建什么服务器,12306抢票、嘀嘀抢单服务器如何搭建?
  18. ppt提示内存或系统资源不足_Mac 电脑提示内存不足,一键轻松搞定
  19. html鼠标右键功能,检查鼠标右键功能
  20. python爬虫遇到的问题

热门文章

  1. 使用海康工业相机的心路历程(一)
  2. Linux中超级用户root的密码破解与防止破解方法
  3. 职场中年危机,可能只是你放水太多又不接受现实而已
  4. 矩阵论 - 9 - 线性无关、基、维数
  5. 【内推】阿里集团2015年实习生招聘
  6. 程序员年薪30万,却被丈母娘果断拒绝!网友:就不能一起奋斗吗
  7. Unity 3D 刚体(Rigidbody)|| Unity 3D 刚体实践案例
  8. Qt在 Mac系统发布程序(widgets和quick2)生成dmg安装文件。
  9. 功能测试报告的编写(版本测试报告与总结测试报告的应用)
  10. pod spec的创建及其使用