一.效果图

如图所示,左侧为原图,右侧是白平衡处理后的图片

二.实现原理

白平衡的意义在于,对在特定光源下拍摄时出现的偏色现象,通过加强对应的补色来进行补偿,使白色物体能还原为白色。

完美反射算法是白平衡各种算法中较常见的一种,比灰度世界算法更优。它假设图像世界中最亮的白点是一个镜面,能完美反射光照;基于白点,将三通道的数值进行适当地调整,以达到白平衡效果;除此之外,还需要统计最亮的一定区间的三通道均值,该均值与该通道最大值的差距决定了该通道调整的力度。

通俗的讲,若图像中绿色分量最大值是255,但是绿色最亮的前百分之10个点的平均值只有80,说明原图的绿色分量整体较低,需要对其加强;若最大值只有100,那么加强的系数就较低,白平衡的效果就不达预期。这就是完美反射算法比较依赖图像中存在白点的原因,白点的三通道灰度值接近【255,255,255】。

<

JavaCV - 白平衡(完美反射算法)相关推荐

  1. 白平衡之完美反射算法

    一.算法背景   白平衡是图像处理比较常见的一个概念,在采集图像的过程中,相机的感光元件或者镜头会对原始色彩造成影响,而白平衡技术通常可以用来校正这种光线和镜头对颜色影响.所以现在先记录一个白平衡算法 ...

  2. OpenCV-白平衡(完美反射算法)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 实现原理 白平衡的意义在于,对在特定光源下拍摄时出现的偏色现象,通过加强对应的补色来进行补偿,使 ...

  3. 自动白平衡之完美反射算法原理及C++实现

    自动白平衡之完美反射算法原理及C++实现 原文:https://blog.csdn.net/just_sort/article/details/85982871 算法原理 https://www.cn ...

  4. 白平衡算法简单原理以及灰色世界、完美反射实现

    这篇文章是一次课程作业,发到网上以供参考,由于时间有点紧张导致有些部分不够详尽以及有些方法没有实现,之后如果有机会再进行补充. 作业要求 以下两题任选一道完成,自选合适的测试图象,提交代码.实验结果和 ...

  5. 基于灰度世界、完美反射、动态阈值等图像自动白平衡算法的原理、实现及效果...

    原文:http://www.cnblogs.com/Imageshop/archive/2013/04/20/3032062.html 白平衡是电视摄像领域一个非常重要的概念,通过它可以解决色彩还原和 ...

  6. 基于灰度世界、完美反射、动态阈值等图像自动白平衡算法

    文章目录 一.灰度世界算法 二.完美反射算法 三.动态阈值算法 一.灰度世界算法 C++ 算法: 灰度世界 灰度世界算法(Gray World)是以灰度世界假设为基础的,该假设认为对于一幅有着大量色彩 ...

  7. 如果做白平衡C语言算法,一种暗通道优先的快速自动白平衡算法

    1 引言 色彩校正对于许多基于图像处理的应用非常重要,色彩的偏差可能导致图像处理结果的错误,如颜色识别.图像分类.图像重建.图像目标检测及跟踪等.人类的视觉系统能够自适应光源的变化,还原场景中真实的颜 ...

  8. opencv 白平衡之灰度世界算法

    简述 OpenCV对图像进行处理时,有时图像RGB受光照影响比较严重,转换到HSV等空间也解决不了时,可以用白平衡算法进行修正,使其发黄.发蓝.发红的照片更加趋于自然光下的图像. 白平衡算法有很多种, ...

  9. 白平衡之灰度世界算法

    一.算法背景   白平衡是图像处理比较常见的一个概念,在采集图像的过程中,相机的感光元件或者镜头会对原始色彩造成影响,而白平衡技术通常可以用来校正这种光线和镜头对颜色影响.所以现在先记录一个白平衡算法 ...

最新文章

  1. 算法设计思想(3)— 迭代法
  2. LEGO EV3 中执行 VSCode Python 代码过程分析
  3. 安全专家在硬盘固件中发现NSA的网络间谍程序
  4. C++成员函数重载、覆盖和隐藏的区别
  5. 领域应用 | ​英文抗生素药物医学知识图谱 IASO1.0 版发布 线上试用正式启动
  6. 图解 Java 中的数据结构及原理,傻瓜也能看懂!
  7. python 基类是什么,python 基类是什么意思
  8. 如何获取计算机网络地址,如何查看电脑网卡获取的IP地址是多少?
  9. WinSxS目录下文件的清除
  10. iview upload 上传时携带额外参数
  11. DM8168 Uboot使用EMAC1(TI源码使用默认的EMAC0)
  12. dos界面启动xampp中mysql
  13. QGridLayout(表格布局)详细使用说明
  14. bitset 用法 (转)
  15. 二级python——绘制七彩圆圈
  16. SVN教程 服务端/客户端
  17. 22-JavaScript 冒泡事件、事件捕获、默认事件、事件委托 DAY18(5.5)
  18. AUTOSAR ComM模块介绍
  19. 阿汤哥的四条领导力经验
  20. 天马行空,用星巴克指数分析长沙地产发展

热门文章

  1. 解决el-radio-group进行表单校验时首次不生效问题
  2. 上百套高端大气网站后台html源码模板-代码库
  3. Mysql安装部署及语法汇总
  4. 如何在微信收发邮件,邮箱品牌有哪些?
  5. HIVE-TEZ引擎配置安装
  6. Flux脚本语言基础使用-查询数据(InFluxDB 查询语言)
  7. 个人计算机组装主板,组装一台电脑需要哪些配件【详细列举】
  8. xp桌面计算机隐藏设置方法,XP系统桌面右下角隐藏图标不见了,怎么调出来?
  9. clinux 防火墙增加白名单_linux防火墙白名单设置方法
  10. 初五接财神,新的一年“不差钱”