AE 的软件、硬件、驱动控制、调试策略(没有算法)

#灵感# AE是个值得推敲再推敲的模块,有意思。

目录

相关的硬件-光圈:

相关的软件-曝光-ISO:

ISP中的sensor AE 组成:

sensor AE的流程及控制:

tuning时AE的一些策略:

相关的硬件-光圈:

光圈(F-Number)光圈(相对孔径),光圈是镜头里控制光线进量的装置。

F=f/D,f为焦距,D为通光孔直径。焦距相等, F 越小表示通光孔径越大。

F数以 √2 倍增长,F数每增加一档,通光量减少一半。

光圈除了控制光线进量外,还与景深相关。在其他因素相同的条件下,光圈越小景深越大,光圈越大,景深就越小。

光圈变化对亮度影响:

相关的软件-曝光-ISO:

sensor的曝光时间(快门时间)指的是sensor的感光时间。曝光(快门)时间越长,图像就越亮。

当延长快门时间,仍然达不到期望的亮度,就需要调节sensor的感光度(ISO)。

CMOS sensor的感光度就是它的增益(gain)。增益是用模拟或数字的方法进行放大,不可避免的会放大噪声。ISO 用100、200等表示,通常100=1倍的增益,200表示2倍的增益。

光圈、曝光(快门)、ISO 的组合结果是乘积倍数关系。达到同样的亮度,光圈小一倍,曝光时间就需要增加一倍,或者 ISO增加一倍。

扩展阅读链接:如何理解 ISO、快门、光圈、曝光这几个概念? - 知乎 (zhihu.com)

ISP中的sensor AE 组成:

 因为多数中低端项目(手机、车载、监控等)的光圈是固定的,所以想调整拍摄的画面亮度,只能依赖曝光时间和增益的配合。

sensor 的AE (auto exposure)调节分为两部分:

AEC(auto exposure control) 调节曝光时间;

AGC(auto gain control) 调节增益值。

sensor本身没有 auto功能的,需要通过后端平台实现 。在整个 AEC/AGC过程中,以图像过暗的情况为例,调整策略为曝光时间优先(此时增益关闭),曝光时间已经最长无法继续调整时,开启并调整增益。

需要明确指出的是,仅曝光时间加大,噪声并不会明显增加,有助于提升图像信噪比。而增益开启,将直接导致平均噪声呈倍数放大;

调整AGC时,一般情况下 优先调节模拟gain值 ,模拟 gain调节到上限时, 如果要继续增大图像亮度,可以调节数字 gain值。

以上段落文字参考:

自动曝光AEC和自动增益AGC控制 - 简书 (jianshu.com)

sensor AE的流程及控制:

AE分为算法模块和统计模块,统计模块是和硬件相关的,包含在 ISP pipeline 里,这部分通常需要强大的算力,吐出亮度直方图,亮度区域统计值,当前亮度,环境亮度。算法模块,即我们需要调试的模块,这部分的参数由isp调试传入,依据前面的AE统计值进行运算后决定AE行为。如果需要进行AE收敛,则设置sensor内部shutter 和gain 或者ISP gain。

AE 算法模块计算出合适的shutter和gain 通过驱动接口,下到sensor寄存器中。

驱动中AE的控制:

1>、首先配置曝光时间

根据 sensor datasheet 配置好最大最小积分时间(integration_time,以行为单位,通常也称为曝光行,minLineCnt、maxLineCnt, 或写作exposure_line等)。可以从sensor手册获得此值,以及生效的寄存器地址。

AE 算法模块计算出合适的shutter,在寄存器地址,写入index 对应的exposure time值。

范围:min_integration_time(有时候=1) <= integration_times <= VTS - frame_offset(frame_offset是指最小的dummy_line,或者写为VB_min.[dummy_line=用来填充V_Blank的行,这个也可以从sensor datesheet中获得])我恨!为啥不统一命名。

VTS = frame_length = V_Size + V_Blank  // 帧长; 

fps = pclk/(VTS * HTS) = pclk/(frame_length*line_length) = 1 / (frame_length * line_time)

不占用曝光时间,即可以通过调节V_Blank,调节帧长,从而改变帧率,但不会改变画面的亮度(曝光)。一般情况下,帧率可以由sensor供应商的FAE 提供配置。

2>、配置sensor 模拟增益、数字增益

一般我们只需配置 sensor 模拟增益(maxAnalogGain、minAnalogGain可以查sensor datasheet 或者找FAE 获得此值),不用特别配置数字增益。(很多时候在暗环境为了达到合适的信噪比,sensor 的模拟增益并不会用到最大值,所以也用不上数字增益。)但有时候会用到isp 数字增益,它是 AE 算法控制的,不用在 sensor 驱动中去配置。

sensor 模拟增益的控制,一种是写入 sensor Again 寄存器的值。sensor datasheet 会有一个 Again_table,配置好平台与 Sensor 的匹配精度(几倍增益对应写入哪个寄存器)。

AE 算法模块计算出合适的gain后 ,驱动通过查 Again_table 写入寄存器regValTable 生效。

3>、验证AE 生效:

通过调试工具手动写入积分时间、模拟增益,观察画面亮度变化。并通过读 sensor 相应的寄存器地址,根据读出的值来判断曝光数据是否正确写入,以此来检查驱动中的相关配置是否正确。

生效帧:曝光时间及增益若在第 N 帧写入,则第 N+2 帧生效。

原文链接:https://blog.csdn.net/qq_25109183/article/details/107179744

此段参考:​​​​​​【精选】Sensor 调试流程_sensor模拟增益和数字增益-CSDN博客

tuning时AE的一些策略:

1、设置帧率:

2、避免flicker:

3、避免异常噪声:

4、避免拖影:

(先烂个尾,明天再封顶)
 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

低代码平台排名及评析一览:谁是最具潜力的Top5?

在数字化时代&#xff0c;低代码平台已经逐渐成为企业快速开发应用的首选工具。众多低代码平台涌现市场&#xff0c;但谁才是最具潜力的Top 5呢&#xff1f;本文将为您揭示并评析这些领先的平台。 云表平台&#xff1a;能开发复杂管理系统的企业级低代码平台 一、平台背景 云表…

Spring Cloud Netflix微服务组件-Hystrix

目录 Hystrix的主要功能 传统容错手段 超时机制 应用容错三板斧 超时机制 舱壁隔离 熔断降级 侵入式Command用法 改进版一&#xff1a;ribbon与hystrix组合 改进版二&#xff1a;feign与hystrix组合 Hystrix三态转换图 源码分析 流程图 核心逻辑流程图 核心实现…

ICCV 23丨3D-VisTA:用于 3D 视觉和文本对齐的预训练Transformer

来源&#xff1a;投稿 作者&#xff1a;橡皮 编辑&#xff1a;学姐 论文链接&#xff1a;https://arxiv.org/abs/2308.04352 开源代码&#xff1a;http://3d-vista.github.io 摘要&#xff1a; 3D视觉语言标定&#xff08;3D-VL&#xff09;是一个新兴领域&#xff0c;旨在将…

【Java 进阶篇】JQuery 遍历:发现元素的魔法之旅

欢迎来到 JQuery 的奇妙世界&#xff0c;一个充满活力和灵感的地方。在这个世界里&#xff0c;我们将一起探讨 JQuery 的遍历功能&#xff0c;这是一个让你轻松发现和操作网页元素的神奇工具。无需太多前端经验&#xff0c;只要有一颗探险的心&#xff0c;你就能在 JQuery 遍历…

一个项目进行测试的一些最基本环境

在一个项目开发到发布的整个过程中&#xff0c;会使用到很多个环境进行测试和运行项目。最基本的开发环境、测试环境、准生产环境、生成环境 一、开发环境 开发环境顾名思义就是我们程序猿自己把项目放到自己的电脑上&#xff0c;配置好以后&#xff0c;跑起来项目&#xff0…

分享6个超绝的设计素材网站,绝对好用!

设计师平时都去哪里找素材呢&#xff1f;收藏好这6个网站&#xff0c;绝对能解决你80%的素材需求&#xff0c;话不多说&#xff0c;直接上干货。 设计素材 1、菜鸟图库 https://www.sucai999.com/?vNTYxMjky 菜鸟图库是一个非常大的素材库&#xff0c;站内包含设计、办公、自…

差分详解(附加模板和例题)

一、一维差分 1.一维差分运用 设a[N]为原数组,b[N]为差分数组&#xff0c;c[N]为进行操作后得到的新数组 (1).先求出差分数组b[N] for(i1;i<n;i) {cin>>a[i];b[i]a[i]-a[i-1]; } (2).进行差分操作&#xff0c;利用void insert(int l,int r,int c)函数 void ins…

MathType2024最新word公式编辑器

使用word进行论文编写时&#xff0c;常需要使用公式编辑器&#xff0c;但有些word中并没有公式编辑器&#xff0c;这时应该怎么办呢&#xff1f;本文将围绕word里没有公式编辑器怎么办&#xff0c;word中的公式编辑器怎么用的内容进行介绍。 一、word里没有公式编辑器怎么办 …

ARM 自动资源管理

Java 7 增加了一个新特性&#xff0c;该特性提供了另外一种管理资源的方式&#xff0c;这种方式能自动关闭文件。这个特性有时被称为自动资源管理(Automatic Resource Management, ARM)&#xff0c; 该特性以 try 语句的扩展版为基础。自动资源管理主要用于当不再需要文件&…

Linux :远程访问的 16 个最佳工具(一)

通过远程桌面协议 (RDP) 可以访问远程 Linux 桌面计算机&#xff0c;这是 Microsoft 开发的专有协议。它为用户提供了一个图形界面&#xff0c;可以通过网络连接连接到另一台/远程计算机。 FreeRDP 是 RDP 的免费实现。 RDP以客户端/服务器模型工作&#xff0c;其中远程计算机必…

echarts双轴右边的轴刻度不显示

图表单轴的时候&#xff0c;yAxis 和 series 是一个对象&#xff0c;但是当双轴显示的时候&#xff0c;yAxis 和 series 就都是一个数组里面包含两个对象&#xff0c;如果是多轴&#xff0c;就是多个对象 看下代码&#xff0c;关键代码 yAxisIndex: 1, 多轴的时候需要指定ind…

大数据架构Lambda-架构师(六十九)

随着信息时代技术的发展&#xff0c;数据量的快速增加逐渐飙升到了惊人的数量级别。并且数据的采集与处理技术还在更新加快。大数据中&#xff0c;结构化占比百分之15左右&#xff0c;其余百分之85都是非结构化数据&#xff0c;他们大量存在于社交网络、互联网和电子商务等领域…

candence出现no connect property onpin,,,,错误,该怎么办?

原因是上面有引脚添加了 属性no connect&#xff0c;但依然连接了网络&#xff0c;这个时候需要把线剪切&#xff0c;然后看到引脚上有个X, 解决方法&#xff1a; 工具栏&#xff02;place >no connect "X 再连上线&#xff0c;再生成网标的时候&#xff0c; 就不报错了…

Vue 简介

1.Vue是什么&#xff1f; Vue 是一个用于 构建用户界面 的 渐进式 框架 1. 构建用户界面&#xff1a;基于 数据 动态 渲染 页面 2. 渐进式&#xff1a; 循序渐进 的学习&#xff0c;理解一部分即可进行实现 3. 框架&#xff1a;一套完整的项目解决方案&#xff0c; 提…

锐捷练习-ospf虚链路及rip路由相互引入

一、相关知识补充 1、ospf基本概述 OSPF&#xff08;Open Shortest Path First&#xff09;是一种链路状态路由协议&#xff0c;用于在计算机网络中进行路由选择。它是内部网关协议&#xff08;IGP&#xff09;之一&#xff0c;常用于大规模企业网络或互联网服务提供商的网络…

Web UI 自动化测试方案(超级干货)看完不会你找我!

项目讨论 一、项目中符合自动化测试的部分有哪些&#xff1f;(目标和范围 scope&#xff0c; 准入准出标准) 1、稳定的需求点、变动较少的页面 2、每日构建后的测试验证 daily build 3、比较频繁的回归测试 4、需要在多平台上运行的相同测试案例、组合遍历型的测试、大量的重…

SystemVerilog学习 (7)——面向对象编程

一、概述 对结构化编程语言,例如Verilog和C语言来讲&#xff0c;它们的数据结构和使用这些数据结构的代码之间存在很大的沟壑。数据声明、数据类型与操作这些数据的算法经常放在不同的文件里,因此造成了对程序理解的困难。 Verilog程序员的境遇比C程序员更加棘手,因为 Verilog …

Vue h5页面手指滑动图片

场景&#xff1a; 四张图&#xff0c;要求随着手指滑动而滑动 代码&#xff1a; imgs是父盒子 poster-item是每个图片 .imgs {white-space: nowrap;overflow: hidden;overflow-x: auto;margin-bottom: 17px;.poster-item {display: inline-block;vertical-align: middle;wid…

渗透测试——2

zoomeye是一个非常厉害的搜索引擎。