本讲是Android Camera专题系列的第42讲,我们介绍Android Camera2 API专题的AF自动对焦。
更多资源:
资源 | 描述 |
---|---|
在线课程 | 极客笔记在线课程 |
知识星球 | 星球名称:深入浅出Android Camera 星球ID: 17296815 |
极客笔记圈 |
AF是什么
对焦: AF(自动对焦)和MF(手动对焦)
AF模式
CameraCharacteristics#CONTROL_AF_AVAILABLE_MODES
CONTROL_AF_MODE取值 | 描述 |
---|---|
CONTROL_AF_MODE_OFF | 手动对焦模式。AF算法的结果会被忽略,由App通过focusDistance控制镜头 |
CONTROL_AF_MODE_AUTO | 自动对焦模式,触发对焦的时机由App决定 |
CONTROL_AF_MODE_MACRO | 自动对焦模式,触发对焦的时机由App决定,当镜头离被摄物理很近时优先考虑这种模式 |
CONTROL_AF_MODE_CONTINUOUS_VIDEO | 自动对焦模式,触发对焦的时机由AF算法决定,适用于录像,对焦行为应适合于高质量的视频录制;这意味着较慢的焦点移动。 |
CONTROL_AF_MODE_CONTINUOUS_PICTURE | 自动对焦模式,触发对焦的时机由AF算法决定,适用于拍照,对焦行为应适合于静态图像捕捉;这意味着尽可能快地对焦。 |
CONTROL_AF_MODE_EDOF | 扩展景深模式(全焦模式,似乎所有物体都在焦距内)。Camera将自动产生具有扩展景深的图像;拍照前不需要做特别的对焦操作。 |
AF状态
CONTROL_AF_STATE取值 | 描述 |
---|---|
CONTROL_AF_STATE_INACTIVE | AF未触发对焦 |
CONTROL_AF_STATE_PASSIVE_SCAN | AF自动触发Scan. 当AF mode设置为CONTINUOUS_* AF mode时才会有这种状态 |
CONTROL_AF_STATE_PASSIVE_FOCUSED | AF自动触发Scan后对焦成功,随时可能再次触发对焦 |
CONTROL_AF_STATE_PASSIVE_UNFOCUSED | AF自动触发Scan后对焦失败,随时可能再次触发对焦 |
CONTROL_AF_STATE_ACTIVE_SCAN | AF被动触发Scan(App触发),当AF mode设置为AUTO or MACRO AF mode时才会有这种状态 |
CONTROL_AF_STATE_FOCUSED_LOCKED | AF被动触发Scan后对焦成功,只有再切换AF mode或主动afTrigger时才会再次对焦 |
CONTROL_AF_STATE_NOT_FOCUSED_LOCKED | AF被动触发Scan后对焦失败,只有再切换AF mode或主动afTrigger时才会再次对焦 |