4.4.3 自动对焦引擎Auto Focus Engine自动对焦引擎的工作方式从视频流中提取每个绿色像素Gr 或 Gb根据 A‑律是否开启对像素值减去固定偏移量 128 或 512。该偏移后的数值送入 IIR 滤波器滤波器输出取绝对值即为对焦值 FV。硬件会同时输出FV和FV²。 FV 与 FV² 既可以做累加运算也可以对每行 / 每列取最大值后再累加。当 FV 模式配置为峰值模式peak mode时会获取每个 Paxel 内各行的 FV 或 FV² 最大值。4.4.3.1 Paxel 提取Paxel ExtractionPaxel是 ISP AF 硬件内部定义的对焦统计块区别于图像原始像素 Pixel是自动对焦引擎做清晰度统计的最小窗口单元。硬件会在整帧 Bayer 图像上划分若干个独立的 Paxel 窗口每个 Paxel 内部单独提取像素、计算 FV 对焦评价值固件通过多个 Paxel 的 FV 分布判断对焦位置、离焦方向。Paxel 提取模块核心任务在 Bayer 原始图像上按照指定起点、窗口大小、采样跳步、Bayer 相位模式从 2×2 Bayer 单元里挑选 R/Gr/Gb/B 像素送入后续 FV 计算通路水平 IIR 或垂直 FIR。4.4.3.2、Paxel 窗口定位起始坐标与窗口尺寸PAXSH / PAXSVPaxel 起始坐标PAXSH水平起始坐标PAXSV垂直起始坐标。 坐标原点是整帧图像的第一个像素用来标记 Paxel 网格左上角在 Bayer 图像上的位置。关键特性PAXSH/PAXSV 决定了 Bayer 相位也就是 Paxel 窗口落在 Bayer 2×2 马赛克网格的哪个位置直接决定提取哪一类 G 像素Gr/Gb。 当开启垂直对焦 Vertical Focus时PAXSH/PAXSV 直接决定提取的像素颜色不再由寄存器模式选择。PAXW / PAXHPaxel 宽、高定义单个 Paxel 窗口总像素尺寸PAXW(宽度像素数) × PAXH(高度像素数)。硬件约束PAXW、PAXH 必须是偶数保证窗口对齐 Bayer 2×2 网格不会跨 Bayer 单元错位采样。4.3.3.3、内部稀疏采样AFINCH / AFINCV 跳步抽取Paxel 内部不需要逐像素全部计算 FV支持稀疏采样降低硬件算力开销AFINCHHorizontal Skip水平跳行间隔水平 FVHFVIIR 通路每AFINCH行采样 1 行其余行跳过不处理。AFINCVVertical Skip垂直跳列间隔垂直 FVVFVFIR 通路每AFINCV列采样 1 列其余列跳过不处理。硬件约束AFINCH、AFINCV 也必须为偶数。 目的保证每次采样到的 G 像素是同一种全部 Gr或者全部 Gb不会在同一个 Paxel 里混合 Gr 与 Gb避免 Bayer 相位混杂导致 FV 计算异常。列数量上限单个 Paxel 最多支持 32 列采样。 公式floor(PAXW / AFINCV) ≥ 32时硬件只处理前 32 列超出部分丢弃。IIRSH水平 FV 的 IIR 滤波器的起始列位置IIR 从该列开始运算。4.4.3.4、Bayer 像素选取逻辑Bayer 原始 2×2 单元Gr R B Gb图 111 展示 6 种 POS 位置模式每种 POS 对应从 2×2 Bayer 单元挑选不同像素组合送入 AF 通路仅在【垂直对焦关闭】时由寄存器选择 POS 模式垂直对焦开启时像素选择由 PAXSH/PAXSV 决定。像素提取规则常规 AF 默认优先提取绿色像素 Gr 或 Gb作为对焦清晰度计算的数据源人眼对绿光敏感度最高信噪比更好。硬件本身不强制只能用 GR、B 像素也可以参与 FV 计算。2 个 G 像素的合并规则重点Bayer 2×2 网格内有两个绿色像素 Gr、Gb。 当提取绿色通道时FV 累加器会把 Gr、Gb 两路 FV 输出相加合并成一个 Paxel 统计值。⚠️固件必须注意绿色通道 FV 幅值来自2 个像素叠加而 R 通道、B 通道每个单元只提取1 个像素。 固件做阈值、权重判读时要对 G/R/B 幅值差异做补偿不能直接对比原始 FV。R、B 像素可互换寄存器配置中R 像素位置与 B 像素位置可以交换。图 111 POS 模式简要说明每一行 POS 分为 4 个子图完整 2×2 Bayer 单元提取的绿色像素位置提取的红色像素位置提取的蓝色像素位置POS0G 取左上 GrR 取右上B 取右下POS1G 取左下 GbR 取左上B 取右下POS2G 取左上 GrR 取右上B 取左下POS3G 取左下 GbR 取左上B 取右下POS4G 取上下两个 GR 取左下B 取右下POS5G 取下方两个 GR 取左下B 取右下不同 POS 本质就是改变 2×2 单元内采样点的选取适配不同 Bayer 起始相位的传感器。4.4.3.5、Paxel 提取后的数据流向从 Bayer 图像按 Paxel 窗口、AFINCH/AFINCV 跳步、POS 模式提取选定 R/G/B 像素像素送入水平对焦值计算器HFVIIR 滤波器如果开启垂直对焦则同时送入垂直对焦值计算器VFVFIR 滤波器滤波器计算 FV 对焦评价值送入 HFV/VFV 累加器在 Paxel 内部做 FV、FV² 累加 / 峰值统计统计结果通过 DMA 传给固件固件读取每个 Paxel 的 FV构建对焦清晰度曲线驱动马达完成对焦。图 111 红、绿、蓝像素提取示例 每个 Paxel 尺寸为 PAXW × PAXH宽 × 高。在单个 Paxel 内部水平 FV 可以跳行工作每间隔AFINCH行处理一行垂直 FV 可以跳列工作每间隔AFINCV列处理一列。单个 Paxel 最多支持 32 列。 若floor(PAXW/AFINCV) ≥ 32硬件仅处理前 32 列。 PAXW、PAXH、AFINCV、AFINCH 均要求为偶数保证 AF 始终采样同一种绿色像素 Gr 或 Gb。 水平 FV 的 IIR 滤波器从IIRSH指定列开始运算。4.4.3.6 水平对焦值计算器Horizontal Focus Value Calculator对焦值计算器接收提取得到的无符号像素数据根据 A‑律是否开启减去偏移 128 或 512把数据映射到 [-128,127] 或者 [-512,511] 数值区间。 去除偏移量之后数据送入两级 IIR 滤波器每级 IIR 滤波器包含 11 个系数每个系数位宽 12bit小数位 6bitS12Q6 定点格式。 每一行图像IIR 滤波器移位寄存器都会被清零滤波器运算起始位置由 IIR 水平起始寄存器配置。 滤波器输出取绝对值16bit 位宽小数位 4bitU16Q4送入累加模块。 对焦值计算过程会执行有符号限幅输入为 m 位有符号数期望输出 n 位小于(-2^{n‑1}\)的值钳位为(-2^{n‑1})大于等于的值钳位为\(2^{n‑1})。图 113 展示该处理流程。图 113 IIR 滤波器框图4.4.3.7 HFV 累加器HFV AccumulatorHFV 累加器接收水平 IIR 滤波器输出的 FV 值对每个 Paxel 完成 FV、FV² 的统计累加。Paxel 的尺寸、数量均可通过寄存器配置。峰值模式Peak Mode累加最大值求和模式Sum Mode累加 Paxel 内全部 FV 值硬件存在阈值寄存器HFV_THR用于和 FV、FV² 做比较。当 FV/FV² 超过阈值时进行数值累加同时计数器加一。allRout abs(IIRout); HFV (allRout threshold) ? allRout - threshold : 0; if(allRout threshold) HFVcount; HFVsq (HFV * HFV RNDADD) RNDSHIFT ;RNDADD、RNDSHIFT由像素位宽8bit/10bit决定实现 8bit 或 10bit 下的向下舍入。4.4.3.8 垂直对焦值计算器Vertical Focus Value Calculator对焦值计算器将提取出的无符号像素数据送入两级 FIR 滤波器每级 FIR 滤波器包含 5 个系数每个系数位宽 8bit小数位 4bitS8Q4 定点格式。 FIR 输出右移 4bit取绝对值得到 16 位无符号数值再送入阈值与平方运算逻辑生成 FV、FV‑sq。关闭垂直对焦时HFVcount、HFVsq不会送至 DMA 接口开启垂直对焦时DMA 仅传输绿色通道数据。4.4.3.9 VFV 累加器VFV AccumulatorVFV 累加器接收垂直 FIR 滤波器输出的 VFV、VFVsq在每个 Paxel 内部做水平、垂直方向的累加统计同时维护每个 Paxel 的 FVcount 计数值。FIR_coef [coef_0, coef_1, coef_2, coef_3, coef_4]; /* S8.4格式系数 */ aFIRout abs(FIR_out); FIR_out (inner_product(extracted_G, FIR_coef) 8) 4; VFV (aFIRout threshold) ? aFIRout - threshold : 0; if (aFIRout threshold) FVcount; VFVsq (VFV * VFV RNDADD) RNDSHIFT ;RNDADD、RNDSHIFT由像素位宽8bit/10bit决定完成 8bit/10bit 模式下向下舍入。术语对照表英文中文Auto Focus Engine自动对焦引擎FV(Focus Value)对焦评价值Paxel对焦统计块硬件自定义块区别图像像素 PixelPeak Mode峰值模式Sum Mode求和模式IIR filter无限冲激响应滤波器FIR filter有限冲激响应滤波器A‑lawA 律压缩S12Q6 / S8Q4定点数格式符号位 整数位 小数位HFV水平对焦评价值VFV垂直对焦评价值HFVsq / VFVsq对焦评价值平方AFINCH / AFINCV水平 / 垂直采样间隔PAXSH PAXSVPaxel 起始坐标PAXW PAXHPaxel 宽高
企业数字化 ERP 产品动态
相关推荐
Unity轻量级MVVM框架:数据绑定与UI解耦实战解析 1. 为什么要写这套Unity GUI MVVM系列:先从痛点说起做Unity客户端开发这几年,我花在UI逻辑上的时间远超预期。刚开始写界面,无非是拖几个Button挂OnClick回调,改个Text就完事。可项目一旦做大,界面和逻辑就会纠缠在一起… · 2026/9/25 21:26:29
UE5按目录拆分Chunk:减小Pak体积与实现模块化更新实战 做UE5项目的后期,最让人头疼的问题之一就是“下载和更新包变得太大”。尤其是把整个游戏打成一个Pak来发布时,哪怕只改了一个UI按钮材质,玩家也得重新把一个十几个GB的包从头拖一遍。于是Chunk(分块)这个概念被越来越多… · 2026/9/25 21:26:29
AI 生成工具实测:用 Step-5-Preview 跑通 3D 游戏、金融分析与网页设计 1. Step-5-Preview:一次跑完三个方向的 AI 生产力工具先给结论:Step-5-Preview 是一个面向开发者和设计师的 AI 生成与预览工具,我上手之后最大的感受是它把“从需求到成品”的工作流连起来了。以前做 3D 游戏,我得先搭 Three.js … · 2026/9/26 4:44:25
Raft 与 Paxos 的异同与工程化选型:从规范到实现清单 Raft 与 Paxos 的异同与工程化选型:从规范到实现清单在分布式强一致性共识协议的浩瀚星空中,Paxos(Leslie Lamport 提出)被公认为分布式共识的理论鼻祖与数学奠基石,而 Raft(Diego Ongaro 提出)… · 2026/9/26 4:44:19
TS码流分析实战:PAT/PMT/PCR结构解析与播放排障 简介:一款专为TS流结构学习与广电故障排查设计的码流分析软件,以树形视图完整呈现节目关联表(PAT)、节目映射表(PMT)、业务描述表(SDT)、事件信息表(EIT)及字… · 2026/9/26 4:44:19
openclaw实战:用LLM代理搭建自主教育游戏开发流水线 开头最近一个月,我基本把全部业余时间都压在了同一件事上:用 openclaw 搭一条 Autonomous Educational Game Development Pipeline,让 LLM 代理自主完成"从需求到可试玩教育游戏"的整个链路。这期间最让我上头的不是生成的游戏本身… · 2026/9/26 4:44:19
Windows下MinGW-w64免安装版配置与GCC编译实战 简介:一份已在Windows 64位环境下亲测可用的MingW64编译器工具集,面向需要在Windows平台编写C、C或Fortran程序的开发者,可直接解压启用,免去官方安装流程的配置困扰,也适合作为便携式GCC环境随用随取。压缩包共3125个… · 2026/9/26 4:44:19
Linux磁盘与文件系统全攻略:从分区、格式化到挂载实战 1. 开篇:当拿到一台陌生的Linux服务器,我该先看什么说实话,我见过太多人一接触Linux就急着去敲各种花哨的命令,结果磁盘满了我不知道,分区表错了不会修,最后只能看着系统一步步卡死。我自己刚入行那两年也干… · 2026/9/26 4:44:19
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46