摄像头模组 PDAF对焦(Phase Detection Auto Focus)

摄像头模组 PDAF对焦(Phase Detection Auto Focus)http://blog.csdn.net/sylorchen/article/details/54618912本文主要是最近看的两个文档的总结,相对零散的笔记,包括《imx298softwarereferencePDAF》与《PDAFTruly》。1、PDAF功能的实现需要使用到shieldpixel的概念,包括right-half-shield与left-half-

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

http://blog.csdn.net/sylorchen/article/details/54618912


本文主要是最近看的两个文档的总结,相对零散的笔记,包括《imx298 software reference PDAF》与《PDAF Truly》。

1、PDAF功能的实现需要使用到shield pixel的概念,包括right-half-shield与left-half-shield两种,起到模仿左右眼的类似功能,参考如下图片。

摄像头模组 PDAF对焦(Phase Detection Auto Focus)摄像头模组 PDAF对焦(Phase Detection Auto Focus)


2、shield pixels主要分布在芯片居中的92%范围内,其中的32×32规格的pixel array被标称为1个block,shield pixel在这一个block中的占比为1/64,即每个block中有16个shield pixel,right-half-shield与left-half-shield各8个,不同厂家之间组织方式会有区别,可能出于规避专利的问题。


3、使用PDAF功能是需要进行模组校正(Calibration),包括SPC(shield pixel calibration)与DCC(defocus conversion coefficient)。严格意义上讲,SPC功能才是正常的校正动作,而DCC功能非校正而是生成DAC与Focus的系数关系,进而实现PDAF功能。


4、SPC:为了实现PDAF功能,芯片的像素矩阵中,部分G pixel进行了遮光结构设计,光能信号比正常的G pixel要弱一些。因此,为了达到正常G pixel的能效水平,需要对此类型的G pixel增加额外的增益,此动作称之为SPC。校正前后的效果可参考下面图示,其中横坐标为像高对应位置,而纵坐标则为pixel感光效能。

摄像头模组 PDAF对焦(Phase Detection Auto Focus)


5、如上图所示,两根不同走势dash线分别表示right-half-shield与left-half-shield两种情况,通过调整pixel的增益,是的其效能水平与其他正常的G pixel一致。此校正过程使用的是纯白的背透式标靶,拍摄纯白标靶后通过线性插值获得各个对应位置的增益,并把此增益写入OTP位置,此OTP数据称为SPC Map,共两份Map,right-half-shield与left-half-shield各一份。


6、下图是SPC Map的组织方式,总共将成像区域划分为9×7个block,其中每个block包含512×512个pixels,最左上角的第一个block中心点为(280,212)。这63个blocks的中心点被称为Knots(绳子打结处的节点),生成63个插值后的数据,数据大概计算方式为G-pixel/PD-pixel,只有G pixel有shield pixel,其他没有。

摄像头模组 PDAF对焦(Phase Detection Auto Focus)


7、DCC:在讨论PDAF功能的时候,大部分情况下我们都会声称通过该功能模组能够知道当前被摄物的距离。其实我们并非物理上知道被摄物的距离,而是通过左右shield pixel之间的差异来将被摄物映射到镜头移动距离中的某个位置。系统在进行对焦的时候,需要将检测到的相位差(phase difference)转换为离焦率(Defocus Value),这个转换过程应用到的表单数据称为DCC(defocus conversion coefficient)。


8、DCC的测试计算方式包括如下的动作:

将模组的有效对焦行程切分为10等分,即(近焦DAC – 远焦DAC)/10,以此来覆盖马达的对焦范围;

在每个对焦DAC位置进行对焦,并记录当前对焦DAC位置的相位差;

完成马达对焦行程后取一组10pcs的对角DAC与获得的PD数据进行做比(PD/DAC);

生成10pcs相近的比值记为k,DAC与PD组成的二维数据进行描线可以通过算法拟合出逼近斜率为k的直线;


9、由于模组之间的个体差异,DCC需要每一模组单独测量,而且由于镜头的场曲、shading之类的问题,同一模组的四周与中心同样存在差异,不能以同一系数进行转换,一般而言四周的系数会比中心的系数要高一些。一般而言将区域划分为小的M×N个blocks,每个block通过上面⑧的过程获得单独的k。而后计算时离焦率跟离焦系数与相位差之间按如下的换算方式进行:Defocus Value = Phase Difference × Coefficient,如下图所示:

摄像头模组 PDAF对焦(Phase Detection Auto Focus)


10、DCC校正过程中,需要使用到黑白相间的背透式标靶,拍摄距离按照15cm进行。由于现行shield pixel只有L、R两个方向,所以校正标靶的黑白条案有走向要求,需要平行于LR shield pixel方向才能被识别并检测;——————————-此项待确认。


11、PDAF检测过程(from Truly document):

获得被摄物对焦位置的某一行或若干行的数据信息;

读取right-half-shield与left-half-shield数列信息;

使用right-half-shield与left-half-shield所生成的数列①中所获取的行信息进行卷积分计算(卷积分计算会是原来行信息只携带对应卷积序列的信息);

将卷积后的两个新数列做平滑微分插值等预处理,获得两个平滑切相对位移的数据;

将此两数据的相位差传入系统中,应用PDAF库及DCC数据进行计算获得离焦率;

通过该离焦率向马达下达对应DAC动作的指令并完成对焦;

上述是一个简单的原理介绍,实际的第⑤步骤中还需要混入置信区间的概念,以此作为是否合焦等的确认。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196487.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java 删除文件 被占用 已解决

    Java 删除文件 被占用 已解决我一直在使用一段特定的代码来删除文件夹中的文件,但事实证明它很成问题,因为我可能忘了关闭一两个InputStream.我的代码是如此之大,以至于我无法看到所有未关闭的输入流.有没有办法删除文件是否有一个打开的InputStream?解决方法:简单粗暴有效Filefin=newFile(“C:/ABCStatementsfinal/”);File[]finlist…

    2022年6月3日
    35
  • nginx自动重启_nginx无法启动

    nginx自动重启_nginx无法启动http://blog.csdn.net/zqinghai/article/details/71125045ps-ef|grepnginx平滑重启命令:kill-HUP住进称号或进程号文件路径或者使用/usr/nginx/sbin/nginx-sreload注意,修改了配置文件后最好先检查一下修改过的配置文件是否正确,以免重启后Nginx出现错误影响服务器稳定运行。判断Nginx配置…

    2022年8月13日
    6
  • 【2025最新win】Idea 2025.1激活教程+一键激活永久使用

    【2025最新win】Idea 2025.1激活教程+一键激活永久使用

    2025年5月9日
    32
  • 161018–NOIP模拟

    161018–NOIP模拟

    2022年2月21日
    48
  • 全网最详细完备的class类文件结构解析

    全网最详细完备的class类文件结构解析写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答Class文件是一组以8位字节为基础单位的二进制流,不同的数据项目严格按照顺序紧凑地排列在Class文件之中,中间没有任何空隙存在。这些数据项目由无符号数和表来存储数据,按照顺序依次是:1.魔数和Class文件的版本2.常量池3.访问标志4.类索引、父类索引与接口索引集合5.字段表

    2022年5月6日
    58
  • request content was evicted from inspector cache

    request content was evicted from inspector cache问题:浏览器无法查看返回数据,但是功能页面数据渲染没问题,原因:响应报文被截断,超出浏览器响应报文的最大量,浏览器自动截断,解决方式,:后端处理,减少该接口返回的数据量

    2022年5月17日
    143

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号