AE (3)_主观亮度和对比度调试

2023-12-13 19:20

本文主要是介绍AE (3)_主观亮度和对比度调试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

#灵感# 画面的亮度、对比度是最直接,观看者最先获得的感受。所以有必要花时间认真调整。

------哈哈,虽然调试的时间其实不如磨清晰度多。

目录

举个图例:

三个参数AE、gamma、LTM:

调试顺序:

举个图例:

看下面这张图,

第一眼一般是 “右边这张亮、左面那张暗”,

然后再观察,才会发现“右边绿草更嫩,树叶有一些红色的”

如果你再放大,才会继续发现“楼下的红车、前景的绿植轮廓”,说不定还发现一些噪声。

三个参数AE、gamma、LTM:

这三个参数段几乎是所有平台都会有的,主要的对亮度、对比度进行调节的参数。

AE 需要配置曝光表。主观调试 target,控制画面的曝光,使画面有个合适的亮度。

gamma 需要采集灰阶卡raw 图进行校准,虽然可以自行修改曲线,平台一般建议使用他们提供的默认曲线。 (比如sRGB对应的是Gamma0.45所在的空间。经过0.45幂运算,再由显示器经过2.2次幂输出,最后的颜色就和实际物理空间的一致了。)

左(Gamma0.45) 中(Gamma2.2) 右(线性物理空间)

gamma校正是指对sensor所捕获的亮度进行预调,属于一个全局像素的非线性映射。根据上图也可以看出,主要的作用区域在低、中亮度区域。所以客观校准前后是这样的:

客观的标准一般也是相邻两阶灰阶亮度差要大于8,并且这样的阶数要大于等于12阶/14阶。

-------------废话又说多了

LTM (local tone mapping ) 主要在主观调试阶段,手动根据当前效果进行调整。作用是使暗区或亮区的细节更加明显,令对比度增强。一般包括Dark 相关参数,控制暗部区域的提亮效果。一个strength 参数,控制LTM 整体强度。 一个bright 相关参数,抑制亮处区域的效果。比如:

调试顺序:

AE ——> gamma ——> LTM

先用AE 给画面配置一个基础的亮度,可以对着平坦区域(白墙、灰卡),调整target的值,使调试机和对比机的亮度差不多。再换一个有高亮区域的场景,观察高亮区域的过曝程度。如果对比机没有过曝,但是调试机过曝了,还是需要减小 AE target 值。下图灯光下的过曝,可以通过减小target值缩小过曝区域面积。

----------不建议一味的缩小过曝面积,画面中如果缺少高亮信息,通透性会不足,画面会显得灰暗。

基础亮度配置好后,在亮度变化丰富的实景场景,观察全局的亮度和对比度。

画面如果发灰、发暗,则需要调整gamma的global、contrast、或者微调gamma 节点的数值。亮处过暗则抬高亮部值(可能会略微放大过曝的光晕),暗处过亮则降低暗部数值,以拉大对比度,减弱发灰、发蒙。中部的数值控制场景中的主体亮度,如果没有明显亮度差异,可以不调整。gamma 调整的终点是在 AE target 上,使画面亮度、对比度更靠向对比机

如果提高了gamma 的强度,画面暗处亮度增加,导致画面整体有些发灰。比如下图右。则将这部分强度留在LTM 模块进行。使gamma 的调整维持一个较好的亮度、对比度。

建议是所有亮度下,统一用一条gamma 曲线,可以避免切换场景,亮度和对比度有跳跃变化。

LTM的主要作用是提高暗部亮度,增加画面中暗部区域的细节可见性。但缺点是,如果平台的算法不佳,对比度会有明显的损失。优点是调整的程度比较温和,根据index 可以适应多个场景,对gamma的调整效果进行补充。

这篇关于AE (3)_主观亮度和对比度调试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/489642

相关文章

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

vscode中文乱码问题,注释,终端,调试乱码一劳永逸版

忘记咋回事突然出现了乱码问题,很多方法都试了,注释乱码解决了,终端又乱码,调试窗口也乱码,最后经过本人不懈努力,终于全部解决了,现在分享给大家我的方法。 乱码的原因是各个地方用的编码格式不统一,所以把他们设成统一的utf8. 1.电脑的编码格式 开始-设置-时间和语言-语言和区域 管理语言设置-更改系统区域设置-勾选Bata版:使用utf8-确定-然后按指示重启 2.vscode

起点中文网防止网页调试的代码展示

起点中文网对爬虫非常敏感。如图,想在页面启用调试后会显示“已在调试程序中暂停”。 选择停用断点并继续运行后会造成cpu占用率升高电脑卡顿。 经简单分析网站使用了js代码用于防止调试并在强制继续运行后造成电脑卡顿,代码如下: function A(A, B) {if (null != B && "undefined" != typeof Symbol && B[Symbol.hasInstan

php 7之PhpStorm + Nginx + Xdebug运行调试

操作环境: windows PHP 7.1.10 PhpStorm-2017.2.4 Xdebug 2.5.4 Xdebug helper 1.6.1 nginx-1.12.2 注意查看端口占用情况 netstat -ano //查看所以端口netstat -aon|findstr "80" //查看指定端口占用情况 比如80端口查询情况 TCP 0.0.0.0:8

【2025】基于Python的空气质量综合分析系统的设计与实现(源码+文档+调试+答疑)

博主介绍:     ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。 技术范围:     我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT

VS Code 调试go程序的相关配置说明

用 VS code 调试Go程序需要在.vscode/launch.json文件中增加如下配置:  // launch.json{// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information,

转:android ro.debuggable属性调试修改(mprop逆向)

android ro属性调试修改(mprop逆向)      大家都知道如果需要调试android 的程序,以下两个条件满足一个就行。第一是apk的配置文件内的AndroidManifest.xml的 android:debuggable=”true”,第二就是/default.prop中ro.debuggable=1。两种方式第一种通常是解包添加属性再打包,随着加壳软件以及apk校验等,容易出