浅谈GAMMA校正

浅谈GAMMA校正浅谈GAMMA校正做图像处理时需要弱化光照影响。发现Gamma校正有效果,但也仅限于知道有这个指数关系,查阅了一些博客和网站,现整理如下。1关于人眼和计算机人眼对暗部细节比较敏感。人眼不同于摄像机,接收光子来感知光线。比如:在一间小黑屋中每增加一盏灯,摄像机都能线性增加亮度。但是人眼在黑暗时增加一盏灯时感受明显,往后随着灯的个数增长人眼并不会有明显感受。如果将实验做成图表,如下图…

大家好,又见面了,我是你们的朋友全栈君。

浅谈GAMMA校正

做图像处理时需要弱化光照影响。发现Gamma校正有效果,但也仅限于知道有这个指数关系,查阅了一些博客和网站,现整理如下。


1 关于人眼和计算机

  1. 人眼对暗部细节比较敏感。

    人眼不同于摄像机,接收光子来感知光线。比如:在一间小黑屋中每增加一盏灯,摄像机都能线性增加亮度。但是人眼在黑暗时增加一盏灯时感受明显,往后随着灯的个数增长人眼并不会有明显感受。如果将实验做成图表,如下图所示,蓝色为人眼紫色为摄像机。
    img
    这种特性有一个生物学原因:它使我们的视野能够在更广泛的亮度范围内运行。否则,我们在户外遇到的典型亮度范围将太大。参考以下三图,第一幅为原始图,第二幅为 5 bits 线性编码的图像,第三幅为 5 bits Gamma编码的图像。
    smooth 8-bit gradient (256 levels)
    linearly encoded gradient
    gamma encoded gradient
    一方面,可以看出Gamma编码后的图像相比于线性编码的图像,明显有更多的暗部色阶。这是不是说明了人和数学的和谐统一?Gamma编码刚好满足了人眼对暗部细节敏感的特性。另一方面,Gamma编码后的图像色阶更均匀,可以去测试线性和Gamma编码的直方图对比也曾现出均匀分布的特性。

  2. 计算机中的图片存储和显示通常为 8 bit,也就是256个色阶。

真实自然界图像 >> 图像存储 > 显示器输出 < 人眼接受 ,通过上述两点,受限于当下有限的存储和显示,需要在图像的转移(处理)过程中尽可能保留暗部细节,用以满足人眼的暗部敏感需求。


2 Gamma 工作流程

物理显示设备上luminance的生成,通常和它输入的信号不成正比的,存在非线性的关系。例如传统的CRT电视或显示器上,是通过电子枪的发射高速电子,投射在电视平面的荧光粉上使之发光,而通过不同输出电压来调节电子束功率,就可以调节显示的Luminance。但因为电压的幂定律( power-law)响应的缘故(心理物理量和物理量并不成线性增长关系,而是幂函数的形式)。最终显示的在屏幕上的效果受电压影响大概是原理的Power 2.5左右(通常是2.35到2.55之间) 。而这个Power函数的指数数值,就是我们俗称的gamma。记作: I ∝ V s γ I \propto V_{s}^{\gamma} I∝Vsγ​

如下图所示:

img

Gamma校正工作流程其实就是一个简单的图像复现过程,因为前面提到的两个问题,所有存储时先进行Gamma压缩在显示时在Gamma还原。最后 G a m m a = = 1 \mathrm{Gamma == 1} Gamma==1。

如下图所示,对输入信号做一次关于gamma的逆处理( 1 / g a m m a = 1 / 2.2 = 0.45 ) \mathrm{1/gamma = 1/2.2 = 0.45)} 1/gamma=1/2.2=0.45)),这样两个非线性的相逆的曲线使得最终的输出成为线性。

600px-GammaFunctionGraph_svg.png

流程参考该图:

img

Ref

[1-Cn Blog][https://www.cnblogs.com/TracePlus/p/4168447.html]
[2][http://www.cambridgeincolour.com/tutorials/gamma-correction.htm]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148591.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 信贷风控模型搭建及核心风控模式分类

    信贷风控模型搭建及核心风控模式分类一、当前风控模式现状近年来,信用风险管理发展呈现出数据化、模型化、系统化、自动化和智能化的特点。传统的人工专家经验正逐步被模型与算法替代。因此,科技较为领先的金融服务公司会选择采用模型方式完成对借款人的自动评估与审批。目前,对于信贷审核来说主要基于的风控模式为IPC、信贷工厂、大数据三种,每一种都有自己不同的侧重点。二、最核心的风控模式分类1.IPC模式IPC模式起源于德国邮储银行,该模…

    2022年5月1日
  • spring源码搭建_spring实战

    spring源码搭建_spring实战在构建spring源码前,我们首先要准备好环境。spring5.x版本需要jdk1.8及以上版本的支持,jdk版本过低的同学请先升级,这里不做过多累赘。从spring5.0开始采用Gradle编译,所以需要先安装gradle,spring5官方推荐的版本gradle4.0,下载解压后按以下步骤操作即可。第一步,配置环境变量。第二步,添加环境变量“%GRADLE_HOME%\bin”。第三步,检测环境,输入

    2022年8月12日
  • java递归生成树形菜单_java递归无限层级树

    java递归生成树形菜单_java递归无限层级树java递归实现权限树(菜单树)省市县多级结构

    2022年9月15日
  • 领悟@Page指令中的AutoEventWireup

    领悟@Page指令中的AutoEventWireupAsp.NET中可以修改AutoEventWireup=”true”,使页面与某些特殊的事件方法绑定,自动识别这些具有特定名称的事件,而不需要进行委托。这些特定名称包括:Page_Init,Page_Load,Page_DataBind,Page_PreRender和Page_Unload等。.aspx设置AutoEventWireup=false情况下,Pag…

    2022年5月27日
  • 汇编 常用_汇编指令详解

    汇编 常用_汇编指令详解
    常见的基本汇编书籍 

    Windows.环境下32位汇编语言程序设计(第2版) 
    http://www.happycampus.cn/docs/957100583237@hc10/275980/ 

    汇编语言编程艺术 

    Intel汇编语言程序设计(第四版) 

    Intel汇编语言程序设计(第五版)范例 
    http://download.csdn.net/source/1523425 

    2022年10月13日
  • activate-power-mode安装与设置(去掉activate-power-mode右上角图标)[通俗易懂]

    activate-power-mode安装与设置(去掉activate-power-mode右上角图标)[通俗易懂]一.安装点击进入点击安装重启后插件即可生效二.设置刚开始相信我们用的很不爽,每次到达到多少个单词后才会有效果触发,还有如下图这个烦人的图标,现在我们怎么把它去掉呢只需要照我的设置,Window–>activate-power-mode–>去掉combo/shake,其他三个全勾上,现在用起来就很爽了,赶紧体验吧

    2022年7月14日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号