OpenISP 模块拆解 · 第4讲:抗混叠滤波 (AAF)

OpenISP 模块拆解 · 第4讲:抗混叠滤波 (AAF)

模块作用

AAF 是抗混叠滤波模块,位于 BLC/LSC 之后、AWB/CFA 之前。它在 Bayer RAW 域做轻微低通,降低高频纹理在 demosaic 时产生伪彩和摩尔纹的概率。

openISP 实现

源码类名为 AAF(img),没有外部参数。execute() 使用 scipy.ndimage.correlate 对 RAW 图做 5x5 滤波。

卷积核为:

text 复制代码
1 0 1 0 1
0 0 0 0 0
1 0 8 0 1
0 0 0 0 0
1 0 1 0 1

整体除以 16。中心权重是 8,周围隔点位置权重为 1,体现了尽量使用同色或相近采样位置的思路。

为什么需要 AAF

Bayer 采样对高频图案很敏感。细密纹理、条纹和重复图案可能超过采样频率,demosaic 会把这些高频误解释为颜色变化,形成伪彩。

AAF 的代价是牺牲部分真实高频细节,换取更稳定的颜色插值。

学习重点

  • AAF 是锐度和伪彩的权衡。
  • AAF 越强,图像越干净但越软。
  • AAF 太弱,CFA 后可能出现彩边、锯齿和摩尔纹。

调参方向

虽然源码没有暴露参数,但可通过 kernel 调节:

  • 增大中心权重:保锐度,抗混叠弱。
  • 增大周围权重:更平滑,抗混叠强。
  • 扩大 kernel:低通更强,计算更重。

面试问答

Q1: AAF 和普通 blur 有什么区别?

AAF 的目标不是单纯模糊,而是在采样和 demosaic 前抑制会造成混叠的高频。设计时要考虑 Bayer 结构,尽量避免直接混合不该混合的颜色采样。

Q2: AAF 太强有什么问题?

图像会变软,纹理细节损失,后续 EE 可能需要更强锐化来补偿,从而带来 halo 或噪声放大。

Q3: 光学低通和数字 AAF 有什么关系?

光学低通在光进入传感器前就抑制高频,数字 AAF 在采样后处理。数字 AAF 更灵活,但无法完全恢复采样前已经混叠的信息。

Q4: 为什么 AAF 放在 CFA 前?

伪彩通常在 demosaic 时被放大。CFA 前降低 Bayer 高频异常,可以减少插值产生错误颜色。

Q5: AAF 是否总是需要?

不一定。现代高像素传感器和复杂 demosaic 算法可能减少 AAF 强度,甚至依赖后续伪彩抑制。但在教学 pipeline 中,AAF 有助于理解抗混叠位置。

相关推荐
几司2 小时前
OpenISP 模块拆解 · 第11讲:非局部均值降噪 (NLM)
人工智能·算法·均值算法·isp
几司18 小时前
OpenISP 模块拆解 · 第8讲:颜色校正矩阵 (CCM)
isp
几司2 天前
OpenISP 模块拆解 · 第2讲:黑电平补偿 (BLC)
isp
北山有鸟6 天前
解决香橙派没有适配ov13855的3A算法
linux·c++·相机·isp
岁月蹉跎的一杯酒7 天前
【RKAIQ ISP21】RK3568 平台 SHARP_V3 锐化增强模块详解(GC2053 实战)
isp
岁月蹉跎的一杯酒7 天前
【RKAIQ ISP21】RK3568 平台 BAYERNR_V2 Bayer 域降噪模块详解(GC2053 实战)
isp
岁月蹉跎的一杯酒7 天前
【RKAIQ ISP21】RK3568 平台 LUT3D_CALIB 三维颜色查找表模块详解(GC2053 实战)
isp
岁月蹉跎的一杯酒7 天前
【RKAIQ ISP21】RK3568 平台 CCM_CALIB 颜色校正矩阵模块参数详解(GC2053 实战)
isp
岁月蹉跎的一杯酒8 天前
【RKAIQ ISP21】RK3568 平台 DPCC 坏点校正模块参数详解(GC2053 实战)
isp