1:Color Constancy?

世界上并不存在颜色。颜色仅仅是我们的眼睛和大脑对不同可见光的波长进行的一层映射。也就说颜色只是我们大脑和视网膜处理的结果。

1.1 关键问题

我们的视觉系统有一个特殊的功能就是在光源变化的情况下,依然能够确定物体的真实颜色,这种鲁棒性是计算机等处理机器所不具有的。

同一个红彤彤的苹果,在不同颜色的光源(比如卖猪肉的地方的灯是红色光源,比如户外装饰树的小灯有的是蓝色光源)下,摄像头拍摄出来的照片与我们眼睛看到的苹果是不一致的。

这种不一致性就是要解决的“图片的颜色在不同光源下,不恒定的问题”

1.2 关键目标

色彩的恒常性,也就可以简单的理解为,在外界光源变化的情况下,依然能够保留物体原始的色彩。

我们研究色彩恒常性,提出各种算法,目的就是让计算机也具有人类视觉系统的这个特殊功能,在不同光源的照射下还原图像的本来颜色。

example:一块白色的桌布,在偏黄色的灯光照射下,手机拍摄的照片显示出:这块桌布偏黄色。此时就需要一种算法将该图片恢复成白色。

人的视觉系统具有颜色恒常性,能从变化的光照环境和成像条件下获取物体表面颜色的不变特性,但成像设备不具有这样的调节功能。

不同的光照环境会导致采集的图像颜色与真实颜色存在一定程度的偏差,需要选择合适的颜色平衡(校正)算法,消除光照环境对颜色显现的影响。

总结下就是:Colour constancy refers to the task of revealing the true colour of an object despite ambient(环境的) presence of intrinsic illuminant(光源).

1.3 什么是Color constancy?

Color constancy is the ability to recognize colors of objects invariant(• adj. 不变的) of the color of the light source.

Color constancy 是指【照片中物体的颜色】相对于【光源的颜色】,保持恒定不变。

如果发现【图片中物体的颜色】有失真,就需要通过特定的算法进行修正。那什么算法可以对失真的图片进行修正呢?

此时就必须引入著名的The Grey-World hypothesis灰度世界假说理论了。

2 灰色世界假说 The Grey-World Hypothesis

2.1 灰度世界假说

灰度世界假说是通过大量的图片分析发现,正常的图片具备一种统计特征:对于一幅有着大量色彩变化的图像(R,G,B),三个分量的平均值趋于同一灰度值。

灰度世界算法是最常用平衡算法。

  • 从物理意义上讲,灰色世界假设自然界景物对于光线的反射的均值在总体上是个定值,这个定值近似地为“灰色”。
  • 颜色平衡算法将这一假设强制应用于待处理图像,可以从图像中消除【环境光】的影响,获得原始场景图像。

2.2 灰度世界算法步骤

灰度世界算法简单快速,但是当图像场景颜色并不丰富时,尤其出现大块单色物体时,该算法常会失效。

3 各种不同算法的性能比较

Reference

  • [Paper] Color constancy based on the Grey-edge hypothesis
  • [Paper] Learning to Enhance Low-Light Image via Zero-Reference Deep Curve Estimation

Color Constancy 颜色恒定性的更多相关文章

  1. 深度学习白平衡(Color Constancy,AWB):ICCV2019论文解析

    深度学习白平衡(Color Constancy,AWB):ICCV2019论文解析 What Else Can Fool Deep Learning? Addressing Color Constan ...

  2. 白*衡(Color Constancy,无监督AWB):CVPR2019论文解析

    白*衡(Color Constancy,无监督AWB):CVPR2019论文解析 Quasi-Unsupervised Color Constancy 论文链接: http://openaccess. ...

  3. Android:认识R类、findViewById方法查找组件、@string查找字符、@color查找颜色、@drawable查找图片、@dimen某个组件尺寸定义、项目引入资源国际化

    导入 之前都是断断续续的看了一些于如何使用android开发的文章.资料等,到目前位置很多基础的东西都不清楚,于是去学习了别人的课程,才了认识了R类.findViewById方法查找组件.项目引入资源 ...

  4. (转)System.Drawing.Color的颜色对照表

    经常使用System.Drawing.Color, 本篇介绍一下颜色与名称及RGB值的对应关系. 1. 颜色与名称的对照表(点击下图放大看): 2. 颜色与RGB值对照表: Color.AliceBl ...

  5. HTML5的input color系统颜色选择器

    前两天,我写了一篇<推荐两款jQuery色盘选择器>介绍,那是使用JavaScript实现的色盘,今天我给大家介绍HTML5的色盘选择器.HTML5有一个input类型为color,即颜色 ...

  6. QTabWiget Change Color 改变颜色

    Qt中的QTabWiget 类提供了一个标签控件,但是这个控件默认初始化的颜色是白色,和原窗口的颜色不同,看起来非常的违和,所以我们希望将其的背景颜色设为当前窗口的背景颜色.我们所要做的就是先将应用程 ...

  7. iTween基础之Color(变换颜色)

    一.基础介绍:二.基础属性 原文地址: http://blog.csdn.net/dingkun520wy/article/details/51065275 一.基础介绍 ColorTo:从当前颜色变 ...

  8. QTabWiget Change Color 改变颜色(每个QWidget都有一个自己的调色板palette,设置它的颜色,然后setAutoFillBackground即可)

    Qt中的QTabWiget 类提供了一个便签控件,但是这个控件默认初始化的颜色是白色,和原窗口的颜色不同,看起来非常的违和,所以我们希望将其的背景颜色设为当前窗口的背景颜色.我们所要做的就是先将应用程 ...

  9. 基于神经网络的颜色恒常性—Fully Convolutional Color Constancy with Confidence-weighted Pooling

    论文地址: http://openaccess.thecvf.com/content_cvpr_2017/papers/Hu_FC4_Fully_Convolutional_CVPR_2017_pap ...

随机推荐

  1. calcite物化视图详解

    概述 物化视图和视图类似,反映的是某个查询的结果,但是和视图仅保存SQL定义不同,物化视图本身会存储数据,因此是物化了的视图. 当用户查询的时候,原先创建的物化视图会注册到优化器中,用户的查询命中物化 ...

  2. npm vue项目的创建

    一.创建项目之前需要先下载一个node.js 官方网址:https://nodejs.org/en/  二.创建 (1)建一个文件夹,进入这个文件夹输入cmd打开小黑窗: Vue.js文档:https ...

  3. 逆置单链表(基于c语言)

    直接插入全部代码:(reverseLinklist函数是逆置操作) #include <stdio.h> #include <stdlib.h> #include <as ...

  4. 一个简单的用户态赋值语句,cpu都做了哪些操作

    如int a = 0;这样一个赋值语句,cpu做了哪些操作.

  5. Spring Security实现统一登录与权限控制

    1  项目介绍 最开始是一个单体应用,所有功能模块都写在一个项目里,后来觉得项目越来越大,于是决定把一些功能拆分出去,形成一个一个独立的微服务,于是就有个问题了,登录.退出.权限控制这些东西怎么办呢? ...

  6. 如何移植sqlite3到嵌入式平台

    本人也时常看其他人的blog,搜索资料的目的是尽快解决当前的问题,例如如何移植一个ssh,尽快要明白所需的东西,方能移植完成. 移植sqlite3的步骤如下: 1. 到官方网站下载指定的源码包:htt ...

  7. 您使用了哪些 starter maven 依赖项?

    使用了下面的一些依赖项 spring-boot-starter-activemq spring-boot-starter-security 这有助于增加更少的依赖关系,并减少版本的冲突.

  8. kafka中的 zookeeper 起到什么作用,可以不用zookeeper么?

    zookeeper 是一个分布式的协调组件,早期版本的kafka用zk做meta信息存储,consumer的消费状态,group的管理以及 offset的值.考虑到zk本身的一些因素以及整个架构较大概 ...

  9. maven常用命令含义

    今天在开发过程中,对一个mapper.xml文件的sql进行了改动,重启tomcat后发现没有生效,首先考虑是不是远程服务开启着,导致代码没有走本地,确认远程服务是关闭的,的确是本地修改没有生效,于是 ...

  10. java-設計模式-原型模式

    原型模式 是一种创建型设计模式, 使你能够复制已有对象, 而又无需使代码依赖它们所属的类. 問題: 如果我們要複製一個類實例: 首先, 你必须新建一个属于相同类的对象. 然后, 你必须遍历原始对象的所 ...