1.camera首先是通过曝光的pixel加上dummy pixel以及曝光的line加上dummy line来决定一帧的曝光时间,这一帧曝光时间的倒数就是帧率,这个没有错吧,但是看代码时候看到preview的时候软件会不断的给sensor写shutter值,环境亮暗变化时候shutter值也不断的变化。这样每一帧的曝光时间就不同了,这样的话帧率就会自动调节,不就不一定了么?

还有写shutter的值是否增加了dummy line呢?还是增加了dummy pixel呢?我以前好像看到过别人说增加dummy pixel会增加曝光时间,而增加dummy line不会增加曝光时间,这又怎么理解?

还有base shutter,pre shutter这些都是什么意思,根据什么设置?

最近在看camera的东西,看的比较难受,看的是RAW格式的代码,

现在在帧率和AE上比较纠结,搞不明白,请高手指教。

————————————————————————————————————————————————————————————————————————————————————

2.一般sensor曝光时间都是指曝光多少行,

曝光时间<帧长时,

帧率fps = PCLK/(行长x帧长)

曝光时间>帧长时,

帧率fps = PCLK/(行长x曝光时间)

————————————————————————————————————————————————————————————————————————————————————

3.曝光时间是帧率的倒数的说法是不对的,例如sensor在阳光下的曝光时间可以到1/1000s,帧率是不是就能到1000fps呢?

————————————————————————————————————————————————————————————————————————————————————

4.曝光就是让sensor感光,并把积累的电荷转换为数字,

所以曝光所需要的行数 x 每一行所需要的时间 = 曝光时间;

所需行数就会与dummy line有关,

而每一行所需的曝光时间就会与dummy pixel有关,

而整个画面的帧率就与这些有关系。

”preview的时候软件会不断的给sensor写shutter值,环境亮暗变化时shutter值不断的变化“———这就属于自动曝光控制机制;

————————————————————————————————————————————————————————————————————————————————————

5.行长和帧长可以理解为HSYNC和VSYNC的长度,假设HSYNC和VSYNC都是高有效,dummy pixel和dummy line则是增加低电平的时间。可以参考芯片的datasheet上的时序图。

————————————————————————————————————————————————————————————————————————————————————

6.sensor曝光是一行一行来做,dummy line不会占用曝光时间但是会影响帧率,dummy pixel会增加曝光时间,所以会影响帧率。

固定帧率的时候,这个时候每一行的曝光时间是固定的,但是会造成不同场景下面图像亮度不够的问题。有时候为了满足这比较暗的场景下面得到更多的光信息,这个时候需要加大曝光时间,来达到我们希望的效果,比如lowlight下增加了曝光时间,但是帧率自然就下降了。

需要帧率优先还是曝光优先,要看不同应用了,一般拍照时候是曝光优先,录像时候是帧率优先(固定帧率)

以上纯粹个人经验和理解

————————————————————————————————————————————————————————————————————————————————————

Camera帧率和AE的关系的更多相关文章

  1. RTP timestamp与帧率及时钟频率的关系

    转自:http://blog.csdn.net/jasonhwang/article/details/7316128 RTP timestamp是用时钟频率(clock rate)计算而来表示时间的. ...

  2. 【Android】[转] Android屏幕旋转使用OrientationEventListener的监听

    说明 遇到一个奇葩的问题,我在使用onConfigChanged拦截屏幕的横竖屏旋转时,发现直接进行180度的横屏/竖屏转换居然没有反应!查找原因发现仅对landscape或者portrait状态有用 ...

  3. 【转】GT 的性能测试方案解析

    前言 本文将整理腾讯GT各个性能测试项的测试方法,目的是为了帮助移动性能专项测试同学快速过一遍腾讯GT各个性能数据是如何获取的.另外对腾讯GT还不了解或者不知道它能做什么的同学可以看看这篇文章:htt ...

  4. 探索未知种族之osg类生物---器官初始化四

    上一节我们对完成了对osg生物内部非常重要器官graphicsContext的初始化工作.这样就可保证我们场景中至少有一个graphicContext存在,不至于刚出生就面临夭折.我们根据上一节中os ...

  5. FFMS2 API 译文 [原创]

    FFMS2 又称 FFmpegSource2,参阅 https://github.com/FFMS/ffms2. 原文:https://github.com/FFMS/ffms2/blob/maste ...

  6. 从CVPR 2014看计算机视觉领域的最新热点

    编者按:2014年度计算机视觉方向的顶级会议CVPR上月落下帷幕.在这次大会中,微软亚洲研究院共有15篇论文入选.今年的CVPR上有哪些让人眼前一亮的研究,又反映出哪些趋势?来听赴美参加会议的微软亚洲 ...

  7. OSG-CompositeViewer

    原文连接地址:http://www.osgchina.org/index.php?Itemid=490&id=134:usecompositiv&option=com_content& ...

  8. H.264(MPEG-4 AVC)级别(Level)、DPB 与 MaxDpbMbs 详解(转载)

    转自:http://www.cnblogs.com/zyl910/archive/2011/12/08/h264_level.html 对于H.264(MPEG-4 AVC)而言,级别(Level)是 ...

  9. python opencv —— io(帧、图像、视频的读取与保存)

    0. VideoCapture VideoCapture:构造函数: 常见成员函数: open:打开视频文件,或者捕获视频设备,该函数会首先调用 release() 函数以关闭已打开的文件或设备: P ...

随机推荐

  1. [UIImage _isCached]: message sent to deallocated instance

    本文转载至 http://zhuhaibobb.blog.163.com/blog/static/2744006720124191633375/       这几天做了个APP打开20份钟左右就强制退 ...

  2. oracle order by 字段不能为空 为空速度慢 不走索引

    oracle order by 字段不能为空 为空速度慢 不走索引

  3. Sonnet-十四行诗

    <Wish> Of our best wishes we could desire increase, That thereby rose's aroma might never die, ...

  4. 项目中整合第三方插件与SpringMVC数据格式化关于ip地址

    一.Bootstrap 响应式按钮 <div calss="col-sm-2"> <button class="btn btn-default btn- ...

  5. Hibernate的时间戳缓存区域

    时间戳:一个详细到秒的时间点,就是一个时分秒的字符串 时间戳缓存区域存放了对于查询结果相关的表进行插入, 更新或删除操作的时间戳. Hibernate 通过时间戳缓存区域来判断被缓存的查询结果是否过期 ...

  6. Cookies, Security, and Privacy Client Identification

    w HTTP The Definitive Guide Cookies themselves are not believed to be a tremendous security risk, be ...

  7. window.navigator.userAgent $_SERVER['HTTP_USER_AGENT']

    wjs php返回结果一致 <script> !function () { var UA = window.navigator.userAgent, docEl = document.do ...

  8. Linux下安装谷歌访问助手,解压缩时出现中文乱码

    1.sudo apt-get install unar 安装unar 2.unar 谷歌访问助手chrome版本.zip   注意:使用 lsar 命令可以查看压缩文件内有那些文件: 例:lsar 谷 ...

  9. 【opencv】cv::Mat转std::vector<cv::Point2d> (注意两容器中数据类型的一致性)

    获取cv::Mat大小: mymat.size() 获取cv::Mat指定位置的值:需指定数据类型,且注意数据类型应与存入时的数据类型一致,否则会导致不抛出异常的数据错误 mymat.at<,i ...

  10. 解决线上Tomcat启动慢

    vim /application/jdk/jre/lib/security/java.security # securerandom.source=file:/dev/randomsecurerand ...