3. AF对焦原理与海思AF算法框架
自动对焦(Auto Focus, AF)是摄像头模组获取清晰图像的核心环节。在安防、车载、机器视觉等嵌入式场景中,海思平台通常集成多种对焦技术,并根据场景动态切换或融合。本章深入剖析对比度对焦(CDAF)、相位对焦(PDAF)、激光/TOF辅助对焦的原理,并拆解海思AF算法框架的层级与数据流。
3.1 对比度对焦(CDAF)
CDAF基于图像本身的清晰度评价函数,通过搜索透镜位置使评价函数值最大。其核心是“爬山算法”:在透镜移动过程中,实时计算当前帧的对比度值,若值上升则继续同向移动,若下降则反向搜索,直至找到峰值。
关键评价函数(Focus Value, FV):常用Tenengrad(Sobel梯度)、Laplacian、Brenner、方差(Variance)等。海思ISP内部通常使用经过优化的多尺度梯度累加器,兼顾灵敏度与抗噪性。
工程避坑:CDAF在低对比度场景(如白墙、夜空)容易陷入局部极值或来回振荡。海思ISP通常配置“死区阈值”和“滞回比较器”,避免透镜在平坦区域无效微动。
3.2 相位对焦(PDAF)
PDAF通过在sensor像素阵列中嵌入专用相位检测像素(左/右半遮光像素),直接计算入射光的角度差,从而一次性判断对焦方向与距离,无需反复搜索。海思平台支持On-Sensor PDAF和基于ISP的PDAF后处理两种模式。
| 特性 | CDAF | PDAF |
|---|---|---|
| 对焦速度 | 慢(需多次搜索) | 快(一次计算方向) |
| 精度 | 高(依赖图像内容) | 中高(受像素遮挡影响) |
| 低照度性能 | 差(噪声干扰FV) | 较好(相位信号独立) |
| 硬件成本 | 低(纯算法) | 高(需专用sensor) |
| 海思支持 | 全系列ISP | Hi3519A/Hi3559A等高端型号 |
3.3 激光/TOF辅助对焦
激光测距(TOF)通过发射红外脉冲并测量飞行时间,直接获取物距。海思平台通过I²C/SPI接口读取TOF模块的距离值,将其作为AF搜索的初始位置参考或置信度权重,大幅缩短搜索范围。
- 激光辅助:适用于近距离(0.1~2m),精度±1cm,在微距场景下优势明显。
- TOF辅助:适用于中远距离(0.3~5m),可输出深度图,辅助多目标对焦决策。
- 融合策略:海思AF框架支持“TOF粗定位 + CDAF精调”或“PDAF主对焦 + TOF防误判”两种典型模式。
联调注意:激光/TOF模块的帧同步必须与sensor VSYNC对齐,否则距离数据与图像帧错位会导致对焦抖动。海思VI模块支持外部触发同步,需在sensor驱动中配置GPIO中断。
3.4 海思AF算法框架
海思AF算法运行在ISP的AE/AWB/AF 3A统计引擎之上,采用分层模块化设计。整体框架分为:驱动层(VCM/I²C控制)、算法层(FV计算、PDAF解析、融合决策)、策略层(场景识别、搜索策略、防抖逻辑)。
3.4.1 关键数据结构
海思AF算法通过结构体 ISP_AF_ATTR_S 传递配置参数,以下为典型成员:
typedef struct {
HI_BOOL bEnable; // AF使能
HI_U32 u32SearchStep; // 搜索步长(单位:VCM code)
HI_U32 u32StableThr; // 合焦稳定阈值
HI_U32 u32ZoomPos; // 当前变焦位置(影响无穷远对应code)
HI_U32 u32InitPos; // 初始位置(TOF辅助时使用)
HI_U32 u32MaxPos; // VCM最大限位
HI_U32 u32MinPos; // VCM最小限位
ISP_AF_MODE_E enAfMode; // CDAF / PDAF / HYBRID
} ISP_AF_ATTR_S;
3.4.2 典型联调流程
- sensor初始化:配置sensor输出分辨率、帧率、PDAF像素使能(若支持)。
- VCM校准:通过I²C扫描VCM的全程位置,记录近端/远端code与物理距离映射表。
- AF参数配置:设置搜索步长、稳定阈值、场景模式(风景/微距/运动)。
- 实时统计:ISP每帧输出FV值和PDAF相位差,AF算法线程以帧同步为节拍运行。
- 决策输出:算法层计算目标位置,驱动层通过I²C写入VCM寄存器。
- 闭环验证:读取VCM回读位置,与目标位置比较,误差超过阈值时触发补偿。
海思调试工具:使用海思提供的
AF_TuningTool 可以实时观察FV曲线、PDAF置信度、VCM位置波形,是联调阶段最核心的辅助手段。