大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
注:本文为博主参考书籍和他人文章并加上自己的理解所编,作为学习笔记使用并将其分享出去供大家学习。若涉及到引用您的文章内容请评论区告知!如有错误欢迎指正!
一、伽马校正简介
射伽马校正是图像预处理阶段经常使用的一个非线性算子,它可以去除输入辐射量和量化的像素值之间的非线性映。所谓伽玛校正就是对图像的伽玛曲线进行编辑,以对图像进行非线性色调编辑的方法,检出图像信号中的深色部分和浅色部分,并使两者比例增大,从而提高图像对比度效果。
二、伽马的概念以及为什么要校正
什么是伽马(Gammar),它为什么需要被校正呢?在黑白电视的早期时代,CRT中的用于显示TV信号的荧光材料对其输入电压的响应是非线性的。电压V和其产生的亮度Y间的关系是由称作”gamma(γ)”的数刻画的,其幂函数公式粗略为
Y=(V+e)^γ
式中的e是补偿系数,γ (gamma)是幂函数的指数约为2.2,它用来衡量非线性部件的转换特性。这种特性称为幂-律(power-law)转换特性。按照惯例,”输入”和”输出”都缩放到0~1之间。其中,0表示黑电平(黑电平指在经过一定校准的显示装置上,没有一行光亮输出的视频信号电平。定义图像数据为0时对应的信号电平,调节黑电平不影响信号的放大倍数,而仅仅是对信号进行上下平移。如果向上调节黑电平,图像将变暗,如果向下调节黑电平图像将变亮。黑电平为0时,对应0V以下的电平都转换为图像数据0,0V以上的电平则按照增益定义的放大倍数转换,最大数值为255),1表示颜色分量的最高电平。对于特定的部件,人们可以度量它的输入与输出之间的函数关系,从而找出γ值。使用CRT的电视机等显示器屏幕,由于对于输入信号的发光灰度,不是线性函数,而是指数函数,从而导致整个图像的信号要比实际情况更暗,因此必需校正。
实际的图像系统是由多个部件组成的,这些部件中可能会有几个非线性部件。如果所有部件都有幂函数的转换特性,那么整个系统的传递函数就是一个幂函数,它的指数γ 等于所有单个部件γ相乘(γ=γ1*γ2…*γn)。如果图像系统的整个γ =1,输出与输入就成线性关系。这就意味在重现图像中任何两个图像区域的强度之比率与原始场景的两个区域的强度之比率相同,这似乎是图像系统所追求的目标:真实地再现原始场景。但实际情况却不完全是这样。因为在某些场合例如放映电影以及投影幻灯片时为了在黑暗环境下获得更好的显示效果,所以我们需要进行伽马校正将最终的γ值设为1.5左右而不是1。
还有一种环境称为中间环境的“暗淡环境”,这种环境就像房间中的其他东西能够看到,但比图像中白色部分的亮度更暗。看电视的环境和计算机房的环境就属于这种情况。在这种情况下,通常认为再现图像需要γ 被校正到1.25才能看起来像“原始场景”。
三、伽马校正
所有CRT显示设备都有幂-律转换特性,如果生产厂家不加说明,那么它的γ 值大约等于2.5。用户对发光的磷光材料的特性可能无能为力去改变,因而也很难改变它的γ值。为使整个系统的γ 值接近于使用所要求的γ 值,就要有一个能够提供γ 校正的非线性部件,用来补偿CRT的非线性特性。
要重现摄像机拍摄的画面,电视和监视器必须进行伽玛补偿。这种伽玛校正可以由摄像机完成。我们对整个电视系统进行伽玛补偿的目的,是使摄像机根据入射光亮度与显像管的亮度对称而产生的输出信号,所以应对图像信号引入一个相反的非线性失真,即与电视系统的伽玛曲线对应的摄像机伽玛曲线,它的值应为1/γ,我们称为摄像机的伽玛值。电视系统的伽玛值约为2.2,所以电视系统的摄像机非线性补偿伽玛值为0.45。彩色显像管的伽玛值为2.8,它的图像信号校正指数应为1/2.8=0.35,但由于显像管内外杂散光的影响,重现图像的对比度和饱和度均有所降低,所以现在的彩色摄像机的伽玛值仍多采用0.45。在实际应用中,我们可以根据实际情况在一定范围内调整伽玛值,以获得最佳效果。另外一个需要知道的事实时,大多数的图片在摄像机中已经被预处理过了,因此存储的颜色信息已经是伽马校正了的,我们在处理纹理时需要工作在线性的颜色空间下,因此需要对输入的图片,例如JPEG纹理进行处理,保证它在线性颜色空间下。
如果要使伽马值为1,则需要进行如下式的伽马校正
Y′=Y^(1/γ)
红线表示显示器的伽马值,蓝线表示摄像机保存图片时进行的校正,紫线表示二者合成之后的结果。可以看出,显示器的gamma值越高,图像越偏暗。SRGB(gamma值为2.2时的称之为sRGB空间)标准中,通常显示设备的gamma值为约2.2。
在发射前信号通过这个非线性映射有一个有效的负效应:传输期间增加的噪声(这是在模拟时代)在噪声比较明显的较暗信号区域中(在接收器做伽马校正后)会被减少。
在彩色电视发明后,红、绿、蓝信号被分别做伽马非线性校正后再结合起来编码。
/***************************************************************时代分界线******************************************************/
过去的时代是“模拟时代”,而今已进入“数字时代”。进入计算机的电视图像依然带有γ =0.5的校正,这一点可不要忘记。虽然带有γ 值的电视在数字时代工作得很好,尤其是在特定环境下创建的图像在相同环境下工作。可是在其他环境下工作时,往往会使显示的图像让人看起来显得太亮或者太暗,因此在可能条件下就要做γ 校正。另外伽马校正是点算子的一种,即某一像素点在输出时只与原图像中对应像素点有关,后面会详细介绍。
为流行网站创建被几百万人浏览的图像是很平常的事情,因为大多数浏览者会有不同的监视器,有些计算机可能会内置部分伽马校正。此外,目前的图像标准并不包含创建图像的伽马值。因此在网站中存储图像时,一种合理的方法是用伽马值对图像进行预处理,此伽马值代表了在开放的市场中,在任意给定时间点,各种型号的监视器和计算机系统所期望的“平均值”。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/189654.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...