OV Camera AE相关的寄存器学习配置记录

2024-01-22 06:58

本文主要是介绍OV Camera AE相关的寄存器学习配置记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载来自:http://blog.csdn.net/gzzaigcnforever/article/details/44757491


自动AEC相关的寄存器配置的原理如上图。主要设置如下:
{0x3a0f, 0x40},
    {0x3a10, 0x38},
    {0x3a1b, 0x48},
    {0x3a1e, 0x30},
    {0x3a11, 0x90},
    {0x3a1f, 0x10},    



 band_step60 = preview_sysclk * 100/preview_HTS * 100/120;
 OV5640_write_i2c(0x3a0a, (band_step60 >> 8));
 OV5640_write_i2c(0x3a0b, (band_step60 & 0xff));
 max_band60 = int((preview_VTS-4)/band_step60);
 OV5640_write_i2c(0x3a0d, max_band60);
 // 50Hz
 band_step50 = preview_sysclk * 100/preview_HTS; 
 OV5640_write_i2c(0x3a08, (band_step50 >> 8));
 OV5640_write_i2c(0x3a09, (band_step50 & 0xff));
 max_band50 = int((preview_VTS-4)/band_step50);
 OV5640_write_i2c(0x3a0e, max_band50);



自动曝光时间的manual 设置:
曝光时间最好是n/100或者n/120来设置,一般设置这个曝光时间可以去除灯光闪烁的条纹现象light flicker。

假设输出一行的时间为row,曝光行数exp.
exp*row = 10*N ms(N为整数)。曝光内灯光影响均匀,不会出现受灯光强度不同的影响。
row time = 1/pclk*1792. 
exp = pclk/100/HST。

row 是通过PCLK*HST来设置,即输出一行所需的时间。
最终得到需要的exp一次可以曝光多少行,即可决定曝光时间。基本上720p的话,1/60秒之内肯定能曝光完成并输出一帧。
曝光行数需要*16倍并写入下面的0x[3500, 3502]之中。写入的曝光value后,内部会自动转为当前帧率下的曝光时间。实际上value的写入可比计算出来的exp小一些。

上述的设置,可以很好的去除flicker现象。
不过一定环境下还能做一定的曝光补偿。

这篇关于OV Camera AE相关的寄存器学习配置记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Springboot的自动配置是什么及注意事项

《Springboot的自动配置是什么及注意事项》SpringBoot的自动配置(Auto-configuration)是指框架根据项目的依赖和应用程序的环境自动配置Spring应用上下文中的Bean... 目录核心概念:自动配置的关键特点:自动配置工作原理:示例:需要注意的点1.默认配置可能不适合所有场景

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

Keepalived+Nginx双机配置小结

《Keepalived+Nginx双机配置小结》本文主要介绍了Keepalived+Nginx双机配置小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1.1 软硬件要求1.2 部署前服务器配置调优1.3 Nginx+Keepalived部署1.3

Apache伪静态(Rewrite).htaccess文件详解与配置技巧

《Apache伪静态(Rewrite).htaccess文件详解与配置技巧》Apache伪静态(Rewrite).htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令,主要的... 一、.htAccess的基本作用.htaccess是一个纯文本文件,它里面存放着Apache服务器

nginx配置多域名共用服务器80端口

《nginx配置多域名共用服务器80端口》本文主要介绍了配置Nginx.conf文件,使得同一台服务器上的服务程序能够根据域名分发到相应的端口进行处理,从而实现用户通过abc.com或xyz.com直... 多个域名,比如两个域名,这两个域名其实共用一台服务器(意味着域名解析到同一个IP),一个域名为abc

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-

springboot rocketmq配置生产者和消息者的步骤

《springbootrocketmq配置生产者和消息者的步骤》本文介绍了如何在SpringBoot中集成RocketMQ,包括添加依赖、配置application.yml、创建生产者和消费者,并展... 目录1. 添加依赖2. 配置application.yml3. 创建生产者4. 创建消费者5. 使用在

Spring Retry 实现乐观锁重试实践记录

《SpringRetry实现乐观锁重试实践记录》本文介绍了在秒杀商品SKU表中使用乐观锁和MybatisPlus配置乐观锁的方法,并分析了测试环境和生产环境的隔离级别对乐观锁的影响,通过简单验证,... 目录一、场景分析 二、简单验证 2.1、可重复读 2.2、读已提交 三、最佳实践 3.1、配置重试模板