自动对焦学习-1

从零理解工业相机自动对焦系统:原理、硬件组成与软件实现思路

一、前言

最近在研究工业相机自动对焦系统,目标是做一套类似工业自动对焦设备的方案。系统只关注两部分:

  1. 硬件部分:相机、镜头、驱动电路、主控、电源等;
  2. 软件部分:图像采集、清晰度评价、对焦搜索算法、电机控制等。

自动对焦看起来很复杂,但本质上可以用一句话概括:

让镜头移动到不同位置,同时相机不断拍图,软件计算每一帧图像的清晰度,最后找到最清楚的位置并锁定。

本文从零开始,用比较通俗的方式梳理基于图像的自动对焦系统应该如何理解、如何设计,以及软硬件之间是如何协作的。


二、基于图像的自动对焦速度最快能做到多少?

自动对焦速度主要取决于四个因素:

  1. 相机采图速度;
  2. 图像清晰度计算速度;
  3. 镜头执行机构响应速度;
  4. 搜索算法效率。

不同执行机构的自动对焦速度差别很大。

执行机构类型 典型对焦速度 特点
液态镜头 20 ms ~ 100 ms 速度最快,适合高速工业场景
VCM 音圈马达 50 ms ~ 200 ms 手机摄像头常见,速度快,行程短
步进电机镜头局部搜索 100 ms ~ 500 ms 已知焦点附近时速度较快
步进电机镜头全范围搜索 0.5 s ~ 数秒 搜索范围大时速度较慢

所以,基于图像的自动对焦能做到多快,不能只看算法,还要看镜头执行机构。

如果使用液态镜头或 VCM,再配合高帧率相机、小 ROI 区域计算和快速搜索算法,自动对焦可以做到几十毫秒级。

如果使用普通步进电机镜头,第一版样机做到 300 ms ~ 1 s 是比较现实的目标。如果完全不知道焦点位置,需要全范围扫描,则可能需要 1 s 以上。

总结一下:

想做极致高速自动对焦,优先考虑液态镜头或 VCM。

想先做出可运行样机,步进电机镜头更容易入门。

自动对焦速度不是单靠软件决定的,而是由相机、镜头、算法、驱动系统共同决定的。


三、自动对焦的基本原理

1. 人眼手动对焦的过程

我们手动拧镜头时,大概是这个过程:

text 复制代码
画面模糊
  ↓
拧动镜头
  ↓
画面变清楚
  ↓
继续微调
  ↓
画面最清楚
  ↓
如果继续拧,画面又变模糊
  ↓
回到最清楚的位置