zoukankan      html  css  js  c++  java
  • PDAF

    今天来讲一讲PDAF(相位对焦)的基本原理。

    在自动对焦的时候总是有一个困惑,知道图像是不清楚的,但是lens应该向前还是向后移动呢?总是要前后移动lens一下才知道,普通的反差法对焦就是这么做的,爬山嘛。PDAF的出现就是为了解决这个lens移动的问题,可以根据图像,预判lens运动的方向。

    PDAF最早运用在单反上,已经是非常成熟的技术了,原理如下图。

    左图为CCD在焦后的情况,右图为焦前。当CCD在焦后时,在线阵CCD1和CCD2上会发现聚焦点CCD1的在左,反之,则聚焦点CCD2的在左(图中红色标记的光线)。

    这种方法需要加额外的一个半透半反镜,还需要加两个透镜,两个线阵CCD,结构复杂,不适用于手机等便携式设备中。所以pdaf sensor应运而生。

    PDAF sensor的原理和单反中的略有不同。

    以轴上点为例,紫色光线代表经过上半部分透镜的光线,而蓝色代表经过下半部分透镜的光线,可以看到,当CCD在焦前的时候,上半部分的CCD接收到的是上半部分的光线,而下半部分的CCD则接收到的是下半部分的光线,反之,在焦后的时候恰好相反。那么如果我们可以区分光线是来自透镜的上半部分还是下半部分,我们就可以知道是焦前还是焦后了。不难发现,CCD越接近理想成像面,两色光线在CCD上所成像越接近,当恰好成像清晰时,两色光线是重合成一点的。

     PDAF sensor的一种实现如下图所示,在CMOS上面一半的位置加了金属遮盖,这样,被遮住左边一半的像素点就只能接受左边来的光,同理,pair的被遮住右边一般的像素点就只能接受右边来的光。一般在CMOS中,遮住左边和遮住右边的像素点是在相邻位置会成对出现。

    按照这种原理,我们就可以知道,上图的轴上点发出的光在位于焦前的CCD上所成像应如下图所示。横坐标为pixel的x轴坐标,以光轴中心为0,纵坐标是像素接收到的光强。可以看到,左边遮挡的像素(L)和右边遮挡的像素(R)所得到的图像是关于光轴对称的。所以,我们可以通过求自相关得到两个图像的shift,进而求得sensor需要移动的距离(当然要通过tunning获得这样的对应关系)。

    讲到这里,应该是没毛病的,对于轴上一点,pdaf是可以有效的得到相位信息的。

    那么对于轴外一点呢?如下图所示,当然也是可以的。

    细心的可能会发现这里有个问题,轴上点和轴外点在CCD上面的成像会彼此交叠,这样,应该会对pdaf的效果产生影响的。好在我们平常的场景中,一般都有一些中低频物体,那么对这些物体的话应该是影响很小的。

     PDAF的最终效果还和什么有关系呢?

    1. 相机的F数,F数越小,PDAF的效果越精确。F数越小,景深越小,那么在物体离焦时,得到的弥散斑越大,L和R的shift越大

    2. 相机的曝光时间理论上不影响PDAF的效果,但是如果曝光时间过短,图像噪点过大,是会造成pdaf的L和R shift不准确的

    3. 物体距离相机越近,pdaf的效果越精确。物体距离相机越近,物体移动相同距离的shift比在物距远时要大,这个跟景深是吻合的

    4. 物体的pattern,当物体的pattern呈某种特定形状,会使得pdaf的像素检测不到shift,比如纯色或重复的pattern

    5. 轴外点的精度低于轴上点。同样的离焦情况下,轴上点的shift比轴外点要大。

    6.物体本身的颜色。当pdaf的像素都是G时,如果物体本身的颜色为R或者B,则会导致pdaf接收到的光能过小,从而影响pdaf的准确性

  • 相关阅读:
    BZOJ_2588_Spoj 10628. Count on a tree_树剖+主席树
    BZOJ_1901_Zju2112 Dynamic Rankings_树状数组+主席树
    单例模式
    JDBC连接数据库查询信息的步骤(提取成配置文件方式)
    JDBC访问数据库查询信息的步骤(硬编码格式)
    大数据
    accp
    递归
    struts2中Action到底是什么,怎么理解
    转发和重定向的区别(简单解释)
  • 原文地址:https://www.cnblogs.com/sunny-li/p/9131017.html
Copyright © 2011-2022 走看看