RAW

RAW文件记录的是影像原始数据:传感器上每个像素记录的单个颜色(红、绿、或蓝)的强度。因为Raw文件比Jpeg文件有更大的位深,它能记录更强的光,即能记录下更大的动态范围。

Raw文件需要几个步骤转换成Jpeg或Tiff图像,如下图:

去马赛克过程通过插值给每个像素补上缺失的另外两个颜色。白平衡定义了照片中的色彩校准和平衡。色阶曲线、对比度、颜色饱和、锐化,是对图像的优化过程,使图像更适合眼睛的视觉。最后Raw文件转化成8位深的压缩Jpeg文件输出。

数码传感器和人的眼睛感受光线的方式不一样。数码传感器以线性的方式记录光强,而人眼对光强的感受是非线性的,接近于对数方式。为了把记录下的原始影像转换成适合人眼观看的,必须对图像数据应用色阶曲线。上图左边和中间图像比最后的右边图像看起来要暗,是由影像传感器的线性记录方式造成的。通过应用色阶曲线调整,最后的图像(右图)更适合眼睛观看。

去马赛克的过程会导致图像锐度下降(中间图像比左边的图像模糊),必须通过锐化提高影像的锐度。

去马赛克是个复杂的数值过程,一般来讲相机内的软件都没有计算机里边的软件做的好。这导致的后果是由相机直接出的Jpeg图像比在计算机通过处理Raw文件得到的Jpeg图像锐度和分辨率要差。所以,如果不是马上就需要Jpeg图像,最好使用Raw拍摄再上传到计算机用专门处理Raw文件的软件来处理图像。(相机记录Raw文件的速度比记录Jpeg文件要慢,所以对连拍速度会有一些影响。)

人眼和数码传感器对光线的明暗反应不同。数码传感器对光强的反应是线性的,而人眼的反应是非线性的:人眼对暗光反应比传感器要更灵敏,而对强光的反应要迟缓一些。人眼的这个特性使得人眼能适应非常宽广的光强动态范围。如果不是这样,我们通常在室外看到的光线会对人眼来说就会太强。

Gamma

Gamma用来联系数码传感器记录的光强和我们人眼看到的光强,它定义了如何把数码传感器记录的光强数值“翻译”成人眼看到的明亮度。数学上,Gamma的定义是:Vout = Vingamma,Vout是输出的明度,Vin是输入的明度或实际的明度。

数码传感器记录光线的时候,每个记录单元(像素)记录下打在那个单元上的三个颜色之一的光子数目,即单色光强。这样记录下来的是Raw文件。用软件(相机内的或者计算机里边的)处理Raw文件的时候,必须先把光强按照人眼感觉的方式来分布,而不是以数码传感器的线性记录方式来分布。Gamma加密可以把线性分布的光强转换成人眼感知分布的光强(这样可以最高效地利用给定的位深),方法是使用前边的公式来变换,用来加密的Gamma<1。

线性加密和Gamma加密的光强分布区别如下图:

在人眼看来,线性加密导致的亮端分辨率太高,暗端分辨率太低;而Gamma加密导致的光强明度分布基本上是均匀的。

当把由Raw文件转换成的Jpeg或Tiff图像在显示屏上显示的时候,图像即人眼可看的图像的时候,必须通过Gamma解密(又叫Gamma修正)来把光强分布还原成原始的光强分布;这是Gamma加密的逆过程,一般由计算机的显示器和图形卡自动完成。解密过程Gamma>1。

Gamma加密和解密过程如下图所示:

理想的情况是解密Gamma(显示器Gamma)正好抵消加密Gamma(图像Gamma)的效果,得到一个线性的系统伽马(Gamma=1)。偏离线性系统伽马会影响图像的影调,如图:

简言之,加密Gamma(Encoding Gamma,Image Gamma)用来记录图像,解密Gamma(Decoding Gamma,Display Gamma)用来显示图像。Raw文件使用的是线性加密Gamma(Gamma=1);转换成Jpeg文件的时候使用非线性加密Gamma(比如,Gamma=1/2.2)。Photoshop中的色阶曲线本质上是一种Gamma调制。除了保证最高效地利用图像数据,在给定位深下的加密Gamma对图像的动态范围也有影响(这点通过色阶曲线的调整可以看到)。

gamma分布_RAW和Gamma相关推荐

  1. Gamma分布和逆Gamma分布

    Gamma分布和逆Gamma分布 Gamma分布 Gamma function 参数 图形 Probability density function Cumulative distribution f ...

  2. R语言使用rgamma函数生成符合Gamma分布的随机数、使用plot函数可视化符合Gamma分布的随机数(Gamma Distribution)

    R语言使用rgamma函数生成符合Gamma分布的随机数.使用plot函数可视化符合Gamma分布的随机数(Gamma Distribution) 目录

  3. R语言使用dgamma函数生成Gamma分布密度函数数据、使用plot函数可视化Gamma分布密度函数数据(Gamma Distribution)

    R语言使用dgamma函数生成Gamma分布密度函数数据.使用plot函数可视化Gamma分布密度函数数据(Gamma Distribution) 目录

  4. Gamma分布与逆Gamma分布

    Gamma分布与逆Gamma分布 Gamma分布 若随机变量X的密度函数为 ⎧⎩⎨⎪⎪λαΓ(α)xα−1e−λx,x≥00,x<0GammaΓ(α)=∫+∞0xα−1e−xdx \begin{ ...

  5. python 求 gamma 分布_Python stats.gamma方法代码示例

    本文整理汇总了Python中scipy.stats.gamma方法的典型用法代码示例.如果您正苦于以下问题:Python stats.gamma方法的具体用法?Python stats.gamma怎么 ...

  6. 笔记 | gamma分布

    gamma分布简介 大写:Γ 小写:γ Gamma 函数在概率统计中频繁现身,众多的统计分布,包括常见的统计学三大分布(t 分布,χ2 分布,F分布).Beta分布. Dirichlet 分布的密度公 ...

  7. Nakagami-m分布、Gamma分布的无线信道及Python代码

    Nakagami-m分布 无线信道中产生分布为Nakagami的信道 Nakagami-m分布 特征 1.概率密度函数PDF(Probability Density Function) 2.累积密度函 ...

  8. gamma分布_轻松理解gamma分布

    gamma函数与gamma分布 上一篇讲到了gamma函数,今天讲一下gamma分布.既然二者的名字都含有gamma,必然是有联系的.我们先从gamma函数来讲gamma分布,完全是从数学的角度,然后 ...

  9. gamma分布 pytorch_Probability distributions - torch.distributions

    概率分布 - torch.distributions distributions 包含可参数化的概率分布和采样函数. 这允许构造用于优化的随机计算图和随机梯度估计器. 这个包一般遵循 TensorFl ...

最新文章

  1. Tomcat 调优及 JVM 参数优化
  2. BF,KMP,BM三种字符串匹配算法性能比较
  3. CSS学习摘要-数值和单位及颜色
  4. 设计模式 命令模式 实例_根据您的命令-命令设计模式
  5. 《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一1.1 计算机科学和工程的课程体系及职业发展...
  6. Kafka启动报错:Timed out waiting for connection while in state: CONNECTING
  7. 策略设计模式_设计模式之策略者模式
  8. bzoj 3631: [JLOI2014]松鼠的新家(LCA+树上差分)
  9. Java EE入门教程系列第二章JSP(一)——第一个JSP程序
  10. 推荐几款流行的开源报表工具
  11. C++11 emplace_back
  12. 高性能`锁库存`/`释放库存`重构实战
  13. 浙大计算机学院考研复试上机试题,浙大计算机学院考研复试上机试题.doc
  14. 机器人操作系统ROS(4)话题编程
  15. python 谁是小偷_python 小偷程序
  16. 计算机专业要不要考研——写的很棒
  17. h1283 linux内核,复苏老客 » 发布一个开博尔H1283双核固件
  18. 安卓文字绘制和歌词器的简单实现
  19. 图片模块右上角添加hot、news小图标
  20. 2022广西省安全员C证考试试题及答案

热门文章

  1. python对文件操作实例_Python对文件文件夹的操作实例
  2. 2021-01-08随感
  3. 根据前一个元素的check状态决定其他元素disable
  4. python访问网页被拒_Python Requests.get访问网页403错误
  5. python 如何快速判断列表是否相同_python如何判断两个list是否相等
  6. Could not connect to SMTP host: smtp.qq.com, port: 465, response: -1 clojure邮箱发送
  7. 解决MYSQL不报错误详细信息的问题 Can‘t find error-message file
  8. Oracle转义符处理
  9. mysql5.6开启binlog日志
  10. 结构体含有指针的写入文件