一、AF概述与基础:自动对焦,到底在干什么?
大家好,我是老张。做嵌入式图像这行十几年了,今天咱们聊聊自动对焦。说白了,AF就是让摄像头自己找到最清晰的那个位置。你想想看,手机拍照时“咔”一下就对上了,背后其实是一套精密的控制逻辑在跑。
我个人习惯把AF比作“调眼镜”。近视的人转眼镜旋钮,直到看清为止。摄像头也一样——它得移动镜头,找到那个让图像最锐利的点。嗯,这里要注意,这个“最锐利”可不是人眼判断的,是算法算出来的。
1.1 自动对焦的基本概念
自动对焦,英文叫Auto Focus,简称AF。它的核心任务只有一个:调整镜头位置,使被摄物体清晰成像在传感器上。
我在项目中遇到过不少新手,以为AF就是“按一下快门”。其实没那么简单。AF系统包含三个环节:
- 检测环节:判断当前图像清不清晰
- 计算环节:算出镜头该往哪走、走多少
- 执行环节:驱动马达,把镜头推到目标位置
这三个环节缺一不可。我曾经调试一个模组,检测环节没问题,但马达响应慢了一拍,结果画面一直在“拉风箱”——来回对焦就是定不住。后来换了驱动芯片才解决。
核心要点:AF不是“一次到位”的,它是一个闭环反馈过程。每次对焦都是“检测→计算→执行→再检测”的循环。
1.2 工作原理:从模糊到清晰
AF的工作原理,其实就一句话:找到图像对比度最高的位置。
为什么会这样?因为镜头在焦点位置时,图像边缘最锐利,相邻像素的亮度差异最大。这个差异,我们叫它“对比度”。
我举个例子。你拍一张黑白条纹的照片:
- 对焦准确时:黑白边界分明,像素值从0跳到255
- 对焦不准时:边界模糊,像素值从0慢慢过渡到255
AF算法就是通过计算这种“跳变”的剧烈程度,来判断当前是否合焦。
我的经验:实际调试时,别只看峰值。我习惯同时看“峰值宽度”——也就是清晰度曲线的陡峭程度。曲线越陡,对焦精度越高,但稳定性也越差。这是个trade-off。
1.3 AF的分类:三种主流方案
市面上常见的AF方案有三种。我按出现时间顺序给你捋一捋。
| 类型 | 原理 | 优点 | 缺点 |
|---|---|---|---|
| 反差对焦(CDAF) | 计算图像对比度,找最大值 | 精度高,算法简单 | 速度慢,会“拉风箱” |
| 相位对焦(PDAF) | 通过相位差判断离焦方向和距离 | 速度快,一次到位 | 需要专用像素,暗光差 |
| 激光对焦(Laser AF) | 发射激光,测量飞行时间 | 暗光强,不受纹理影响 | 距离有限,有安全隐患 |
反差对焦(CDAF)
这是最传统的方式。说白了就是“爬山法”——镜头从一端走到另一端,每走一步算一次对比度,找到最大值就停下。
我记得刚入行时调一个CDAF模组,在低对比度场景下,对比度曲线几乎是一条平线。算法根本找不到峰值,镜头就在那来回晃。后来我加了一个“死区检测”——如果连续几步对比度变化小于阈值,就认为已经合焦了。
避坑指南:我曾经遇到过一个坑——CDAF在拍摄纯色墙壁时,对比度始终很低,算法会误判为“已经合焦”。实际上镜头还在远端。解决方案是:在AF开始前,先做一个“预扫描”,确认当前场景是否有足够的纹理信息。
相位对焦(PDAF)
PDAF是现在的主流。它在传感器上埋了一部分“相位检测像素”,这些像素成对出现,能直接算出离焦的方向和距离。
你想想看,CDAF需要“走一遍”才能知道哪里最清晰,而PDAF看一眼就知道“该往哪走”。这就是速度差异的来源。
我在调试PDAF时发现一个问题:相位检测像素会牺牲一部分成像质量。因为那些像素被遮挡了一半,导致最终图像上出现“暗点”。后来通过软件插值算法才把这个问题压下去。
激光对焦(Laser AF)
激光对焦是个“暴力”方案。它直接发射红外激光,测量反射回来的时间,算出距离。然后根据距离直接驱动镜头到对应位置。
这个方案在暗光下特别强。因为CDAF和PDAF都依赖图像信息,暗光下信噪比低,容易出错。激光对焦完全不受光照影响。
但要注意,激光对焦的有效距离一般只有几米。拍远处的山?激光对焦就歇菜了。所以很多手机是“激光+相位”混合使用。
1.4 AF在摄像头模组中的重要性
说AF不重要的人,八成没吃过“跑焦”的苦。我调过一款安防摄像头,客户投诉说“白天清楚晚上模糊”。查了一周,发现是AF算法在低照度下收敛到了错误位置。
AF的重要性体现在三个方面:
- 用户体验:对焦慢、不准,用户直接骂娘。手机拍照“秒对焦”的背后,是PDAF+算法优化的功劳。
- 系统性能:AF占用了CPU、ISP和马达资源。调不好,整个系统都在空转。
- 成本控制:好的AF算法可以用便宜的马达和镜头,达到接近高端模组的效果。我见过一个项目,通过优化AF算法,把马达成本降了30%。
总结一下:AF不是“有就行”,而是“快、准、稳”。快——对焦时间短;准——合焦位置精确;稳——不来回抖动。这三个指标,是衡量AF系统好坏的黄金标准。
好了,这一章就聊到这。下一章我们深入讲讲AF的硬件架构——马达、驱动芯片、镜头,这些东西怎么选、怎么配。到时候我会分享一些我踩过的硬件坑,保证实用。