ISP-Gamma

news2024/7/6 19:25:42

参考:https://blog.csdn.net/lxy201700/article/details/24929013
http://www.cambridgeincolour.com/tutorials/gamma-correction.htm

1. 什么是Gamma

Gamma是一种指数曲线,显示器用这个指数曲线来调整真实输出到显示屏幕上的颜色值,以此更好的适应人类的视觉体验。

Gamma是显示器用来修改我们输入的颜色值的操作,那么gamma correction就是逆转显示器修改的过程,从而能够让我们这些图形开发者在一个真实的线性RGB空间中进行光照和着色

灰度是指把白色与黑色之间按对数关系分成若干级,其范围一般为0-255,白色为255,黑色为0 .

  • 一个完整的图像系统需要2个伽马值:
    (1)encoding gamma:它描述了encoding transfer function,即图像设备捕捉到的场景亮度值(scene radiance values)和编码的像素值(encoded pixel values)之间的关系。
    (2)display gamma:它描述了display transfer function,即编码的像素值和显示的亮度(displayed radiance)之间的关系。

  • Gamma校正是指对图像传感器所拍摄图像的亮度进行预调,是更暗的信号在显示器上获得更佳的显示效果技术。

2. 什么是Gamma 校正

  • 输入电压和显示出来的亮度关系不是线性的.
  • Gamma 校正是对输入图像灰度值进行的非线性操作,是输出图像灰度值与输入图像灰度值呈指数关系

经过Gamma校正后的输入和输出图像灰度值关系如图1所示:横坐标是输入灰度值,纵坐标是输出灰度值,蓝色曲线是gamma值小于1时的输入输出关系,红色曲线是gamma值大于1时的输入输出关系。可以观察到,当gamma值小于1时(蓝色曲线),图像的整体亮度值得到提升,同时低灰度处的对比度得到增加,更利于分辩低灰度值时的图像细节。

在这里插入图片描述
在这里插入图片描述

3. 为什么Gamma 校正

(1). 人眼对外界光源的感光值与输入光强不是呈线性关系的,而是呈指数型关系的。在低照度下,人眼更容易分辨出亮度的变化,随着照度的增加,人眼不易分辨出亮度的变化。而摄像机感光与输入光强呈线性关系。如图2所示

人眼和摄像机的感光与实际输入光强的关系
为方便人眼辨识图像,需要将摄像机采集的图像进行gamma校正。

(2). 为能更有效的保存图像亮度信息,需进行Gamma校正。

未经gamma校正和经过gamma校正保存图像信息如图3所示:
在这里插入图片描述
可以观察到,未经gamma校正的情况下,低灰度时,有较大范围的灰度值被保存成同一个值,造成信息丢失;同时高灰度值时,很多比较接近的灰度值却被保存成不同的值,造成空间浪费。经过gamma校正后,图像的信息更加逼近原图的信息从而改善了存储的有效性和效率.

(3) IMAGE FILE GAMMA
大多数图像文件使用1/2.2的编码伽马值(例如那些使用sRGB和Adobe RGB 1998颜色的文件),但RAW文件除外,它们使用线性伽马值.
在这里插入图片描述
(4)DISPLAY GAMMA
业界已经一致采用了2.2的标准显示伽马值.
在这里插入图片描述

3. Gamma 调试

测试环境:TL84(看到有的文档写D65光源下,D65 light 不可以调整,我选TL84),灰阶卡

测试步骤:
1.在室内,室外,暗处环境下,拍摄灰阶卡
2. 将手机调至原始分辨率,拍照菜单保持默认
3. 将灰阶卡国定在灯箱光源正中心.如图
4. 待图像稳定,完成对焦即可拍摄照片
5.open imatest ->stepchart,导入灰阶图。
6. imatest下面详解
7.生成了Excel表,在图片的位置下。
8.一般客观有要求,相邻两阶要大于8,并且这样的阶数要大于等于13阶。(这个每个公司的要求不同,依据每个公司客观标准而定)
在这里插入图片描述

4. Imatest

  1. 点击Stepchart 选项, 导入测试图片.
    colorcheck 下面那个
    在这里插入图片描述
  2. 调整roi
    在这里插入图片描述
  3. 参数设置
    基本上是默认的. Scaling 下的results 有文档中选image densilty range =1.5 . 工具提示不建议使用. so 选的 3
    在这里插入图片描述
  4. 点击 OK 后出现测试结果
    备注: 有不对的地方欢迎指出.

5. 结果查看

(1)红色花圈的是: 曝光测试和gamma的结果
在这里插入图片描述
其他图片的我也不知道, 有知道评论说下

(2)查看曲线是否符合
实际测试中我们的标准一般是亮度差值大于 8 才认为可区分, 故我们可以先保存测试结果,
然后到 stepchart_summary.csv 自己写个公式计算相邻两阶亮度的差值,得出可以区分多少
级灰阶.
在这里插入图片描述
故以上测试结果是可区分 12 阶。
计算方式就Pixel 那一列,上面减去下面(我写的可真详细)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/14613.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

卷?这份Java后端架构指南首次公开就摘星百万,肝完直接60K+

最近和各位小伙伴儿私下聊的比较多,各个阶段的朋友都有;因为大环境的内卷,导致大家在求学、求职、提升自己的各个方面都多多少少有些迷茫焦虑; 这些其实是一个非常普遍且正常的现象,会焦虑的人,往往都是对…

大学生简单个人静态HTML网页设计作品 HTML+CSS制作我的家乡杭州 DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载 HTML5期末大作业

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

蓝牙学习一(简介)

1.简介 蓝牙分为经典蓝牙(BT-Bluetooth)和低功耗蓝牙(BLE-Bluetooth Low Energy),本次主要学习BLE。 BLE分了很多个版本,现在用的比较多的就是4.2和5.X。那4.2到5.0之间有哪些升级呢?首先&#…

多肽标签X-press,DLYDDDDK

X-press Tag Peptide 是一种N-端前导肽,Anti-Xpress 抗体能够识别 Xpress 表位,因此,该多肽可用来纯化 X-press Tag 融合蛋白。X-press Tag Peptide is a tag peptide used for protein purification. X-press Tag is also an N-terminal lea…

【附源码】计算机毕业设计JAVA商院足球赛事管理

项目运行 环境配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: Springboot mybatis Maven Vue 等等组成,B/…

CAPL语言编译的那些事

CAPL是类似于C语言的面向过程语言,这是众所周知的。C或C++代码在执行前需要编译成机器语言,也就是二进制语言,如此能够更快速运行。CAPL程序也是一样的,需要编译后执行 在CAPL Browser编辑器下,Home -> Compile/Compile All,Compile编译当前打开的CAPL文件,Compile A…

基于51单片机的可调节占空比四种三种波形发生器proteus仿真

简介: 该系统显示器为LCD1602,可实时显示波形的参数情况可显示四种波形,分别是正弦波 三角波方波以及锯齿波该系统可以通过按键调节波形的占空比波形输出通过仿真软件的示波器可以查看得到波形发生器的核心芯片是利用DAC0832产生运放LM324经…

Jenkins部署的Windows爬虫机如何配置

文章目录一 安装软件1. Python爬虫必备安装包2. Visual Studio Code3. Git3.1. 备选 - OneDrive4. Java5. 向日葵二 配置Chrome1. 查看Chrome版本2. 下载ChromeDriver3. 解压放入Python的Scripts文件夹有时候, 一台Windows只是用来部署一些任务, 例如爬虫任务. 这个时候需要简单…

【人见人爱报错系列】GIt常见问题解决大全

前言 在使用的github\gitlab各种hub的过程中,会遇到各种各样的小问题,这些会给程序员们带来五光十色的烦恼,本文总结使用git的各种问题并持续更新。 一、Git用户名邮箱设置 使用git过程中,会切换不同项目但是发现提交人都是一样…

M1 芯片 MacBook 结合 MAMP 集成环境配置 PHP 环境变量

MacOS Catalina 版本之后 shell 改为使用 zsh 。 可以使用 echo $SHELL 命令查看。 配置文件分为系统级(所有用户生效)和用户级(当前登录用户生效),可以自行了解,一般不经常切换用户的话,用户…

【Java多数据源实现教程】实现动态数据源、多数据源切换方式

前言 本文为 【Java多数据源实现教程】 相关知识,由于自己最近在做导师的项目的时候需要使用这种技术,于是自学了相关技术原理与实现,并将其整理如下,具体包含:多数据源的典型使用场景(包含业务复杂场景、读…

JavaWeb:JavaWeb技术架构演进

Java Web,是用 Java 技术来解决相关web互联网领域的技术栈。web 包括:web 服务端和 web 客户端两部分。Java 在客户端的应用有 Java Applet,不过使用得很少,Java 在服务器端的应用非常的丰富,比如 Servlet,…

【MySQL数据库笔记 - 进阶篇】(四)视图/存储过程/触发器

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📚专栏地址:暂定 📝视频地址:黑马程序员 MySQL数据库入门到精通 📣专栏定位:这个专栏我将会整理 B 站黑马程序员的 MySQL…

将多张图片制作gif

如何将多张图片制作gif?gif其实也是一种比较常见的图片格式,不过gif和其它图片有很大区别,gif是一种动态图片,相信很多小伙伴都知道。我们每天几乎也会看到或者使用到gif动图,有些gif动图是由几张静态的普通图片合并而…

深入理解java虚拟机-1.自动内存管理

文章目录1、自动内存管理1.1 Java内存区域与内存溢出异常1.1.1 运行时数据区域程序计数器程序计数器为什么是私有的?java虚拟机栈本地方法栈虚拟机栈和本地方法栈为什么是私有的?Java堆创建的对象一定会放在堆中吗?方法区运行时常量池直接内存1.1.2 HotSpot虚拟机…

渗透测试之信息收集

信息收集1.域名信息收集1.1.whois查询1.1.1.whois解释1.1.2.whois收集  1.1.2.1.在线网站查询  1.1.2.2.工具查询1.2.反查1.3.备案信息查询1.3.1.备案信息收集1.4.子域名收集1.4.1.子域名解释1.4.2.子域名收集  1.4.2.1.在线网站收集  1.4.2.2.工具收集  1.4.2.3.Goo…

【教学类-13-03】20221118《数字色块图5*7*8-A4横板-横切》(大班主题《》)

效果展示(一张8个图,对半横切( 打印效果图、中间剪开成2分(白色废纸) 背景需求: 前期中3班制作5*7 *9张数字图,幼儿找出数字的人数更多 我还希望在大班进行数字图涂色练习。为了增加难度&#…

Wireshark TS | 访问网页失败

前言 访问网页失败也是日常比较常见的问题之一,导致问题的原因可能有很多种,像是客户端、浏览器、服务器或者网络等等,自然具体问题得具体分析。本篇以一个实际案例来说明下 TCP 连接相关的问题,该数据包仍然来自于 Wireshark sh…

视频m4v怎么转换成mp4?

在平时我们所使用的视频格式中除了常见的mp4,还有几十种不同的格式种类,不同的视频格式适用不同的播放设备,同时在画质,体积,编码,兼容性等方面都各具特色有所区别。其中m4v格式的视频就是适用于苹果系统的…

这波服装设计作品对女性美的诠释,十分到位

女性是温柔的、美丽的,多样的,莱佛士学生Xu Xinyi作品《Femininity&Softness》便是围绕女性展开创作。而Xinyi的作品想要传达的是:女性不应该被物化,她们是美丽且具有多样性的。 莱佛士服装设计专业学生作品在设计中&#xff…