3、数字图像传感器基础:CCD与CMOS传感器原理、拜耳阵列、像素结构与填充因子

做ISP这行,天天跟传感器打交道。你调3A算法,说白了就是在跟传感器“对话”。不懂传感器原理,调参就像蒙着眼睛走路。今天咱们就把传感器那点事儿掰开揉碎了讲清楚。

3.1 CCD vs CMOS:两种主流传感器架构

先聊个经典问题:CCD和CMOS到底差在哪?我刚开始入行时也觉得这俩差不多,直到有一次项目选了CCD传感器,结果功耗压不下去,板子烫得能煎鸡蛋……

核心区别一句话:CCD是“电荷搬运工”,CMOS是“像素独立工”。

3.1.1 CCD工作原理

CCD(电荷耦合器件)的原理,说白了就是:每个像素收集光生电荷,然后像传送带一样,把电荷一行一行“搬”到输出端统一放大。

  • 电荷转移:垂直寄存器→水平寄存器→输出放大器
  • 优点:噪声低、均匀性好、满阱容量大
  • 缺点:功耗高、速度慢、不能随机读取

我记得当年做工业相机项目,客户要求极低噪声,CCD确实是首选。但那个功耗……嗯,散热设计让我头疼了整整两周。

3.1.2 CMOS工作原理

CMOS(互补金属氧化物半导体)就聪明多了——每个像素自带放大器,直接读出电压信号,不需要“搬来搬去”。

  • 读出方式:行选通→列总线→ADC转换
  • 优点:功耗低、速度快、可ROI读取
  • 缺点:固定模式噪声(FPN)明显、填充因子低

个人经验:现在手机摄像头几乎全是CMOS。为什么?功耗和集成度摆在那儿。但如果你做科学级成像、天文摄影,CCD依然有它的江湖地位。

对比项 CCD CMOS
读出方式 电荷转移+统一放大 像素级放大+列并行读出
噪声水平 低(~2-3 e⁻) 较高(~5-10 e⁻,含FPN)
功耗 高(~500mW-2W) 低(~50-200mW)
读出速度 慢(~10-30fps) 快(~30-240fps)
填充因子 高(~80-100%) 低(~30-70%,含微透镜可提升)
典型应用 工业、科学、天文 手机、安防、车载

3.2 拜耳阵列:彩色世界的“马赛克”

传感器本身是“色盲”的——它只能感知光的强度,分不清颜色。那彩色照片怎么来的?靠的就是拜耳阵列(Bayer Pattern)。

说白了,就是在每个像素上盖一层彩色滤光片,只让特定波长的光通过。最常见的RGGB模式:一个像素看红,一个像素看蓝,两个像素看绿——因为人眼对绿色最敏感。

避坑指南:我曾经调试一款传感器,发现绿色通道总是偏暗。查了半天,原来是拜耳阵列的G像素位置和ISP的demosaic算法没对齐。你想想看,错位一个像素,整张图就花了。

3.2.1 常见拜耳模式

  • RGGB:最经典,2个G、1个R、1个B
  • RCCC:用于车灯检测,3个R、1个C(透明)
  • RCCB:提升低光灵敏度,2个C、1个R、1个B
  • Quad Bayer:4合1像素合并,用于高像素手机传感器

我建议你在选传感器时,先搞清楚拜耳模式。不同模式直接影响ISP的demosaic算法和AWB(自动白平衡)策略。

3.2.2 拜耳阵列的ISP处理流程

  1. 原始RAW数据:每个像素只有单通道值
  2. 黑电平校正:减去暗电流偏移
  3. 去马赛克(Demosaic):插值恢复全彩色
  4. 白平衡:调整R/G/B增益
  5. 颜色校正矩阵:转换到标准色域

小技巧:调试时先看RAW图(拜耳格式),能直接看出传感器有没有坏点、暗电流是否均匀。别一上来就跑完整ISP pipeline,那是给自己挖坑。

3.3 像素结构与填充因子

像素结构,决定了传感器的“底子”好不好。填充因子,则决定了光能利用率。

3.3.1 像素基本结构

一个典型的CMOS像素包含:

  • 光电二极管(PD):把光转成电荷
  • 传输门(TG):控制电荷转移到浮置扩散区
  • 浮置扩散区(FD):临时存储电荷,转换成电压
  • 源跟随器(SF):缓冲输出
  • 行选通管(RS):控制像素是否接入列总线
  • 复位管(RST):清空FD区电荷

嗯,这里要注意:每个像素里塞了这么多晶体管,感光面积自然就被压缩了。这就是填充因子问题的根源。

3.3.2 填充因子(Fill Factor)

定义:感光面积 / 像素总面积 × 100%

举个例子:一个2μm×2μm的像素,光电二极管面积只有1.2μm×1.2μm,那填充因子就是(1.44/4)×100% = 36%。

为什么重要?填充因子越低,灵敏度越差,信噪比越低。你调3A算法时,如果发现增益拉高后噪声爆炸,先看看传感器填充因子是不是太低了。

3.3.3 提升填充因子的方法

  • 微透镜阵列:把光汇聚到感光区,等效提升填充因子
  • 背照式(BSI):把电路层翻到背面,感光面朝上
  • 堆叠式(Stacked):像素层和电路层分开堆叠

我记得2015年做一款安防相机,用的前照式(FSI)传感器,填充因子只有40%。晚上基本没法看。后来换了背照式,填充因子提到75%,低光性能直接翻倍。

3.4 知识结构图:传感器核心概念关系

下面这张图帮你理清传感器、像素、拜耳阵列和ISP之间的关系:

数字图像传感器核心概念关系图 数字图像传感器核心概念关系 传感器类型 CCD CMOS 像素结构 光电二极管 晶体管 填充因子 微透镜 BSI/堆叠 拜耳阵列 RGGB Quad Bayer RCCC ISP处理 Demosaic AWB CCM 传感器类型决定像素结构 拜耳阵列影响ISP算法

3.5 实战要点总结

给ISP工程师的3条建议:

  1. 选传感器时:先看填充因子和像素尺寸,别只看像素数。2000万像素但像素只有0.8μm,低光性能一定拉胯。
  2. 调3A时:搞清楚拜耳模式。RGGB和RCCB的AWB策略完全不同,别套用同一套参数。
  3. 调试时:先看RAW图,确认传感器输出正常,再跑ISP pipeline。我见过太多人跳过这步,最后查bug查到崩溃。

一句话总结:传感器是ISP的“食材”,食材不好,厨艺再高也白搭。理解CCD/CMOS、拜耳阵列、像素结构和填充因子,是你写好3A算法的第一步。