1. 传感器成像基础:CMOS与CCD、拜耳阵列、光电转换

各位同学好,我是老周。做嵌入式视觉这行十几年了,今天咱们聊聊传感器成像最底层的那些事。说实话,很多人调了一辈子颜色,却连传感器怎么把光变成电信号都没搞明白——这就像开车不懂发动机原理,能开,但真出了毛病就抓瞎了。

这一章,咱们把CMOS和CCD的区别、拜耳阵列的排列逻辑、光电转换的物理过程,一次性讲透。我保证,不堆公式,只讲你调试时真正用得上的东西。

1.1 CMOS与CCD:两种主流传感器的恩怨情仇

先问个问题:为什么现在手机、相机、工业相机,清一色都是CMOS?CCD去哪了?

我2008年刚入行时,CCD还是高端货。那时候做工业检测,一台CCD相机要两三万,CMOS才几千块,但画质确实差一截。现在反过来了——高端CMOS已经把CCD按在地上摩擦。

对比项 CCD(电荷耦合器件) CMOS(互补金属氧化物半导体)
读出方式 逐行转移,统一输出 每个像素独立寻址读出
功耗 高(约CMOS的10~100倍) 低(适合电池设备)
噪声 低(全局快门,读出噪声小) 较高(卷帘快门,固定模式噪声)
速度 慢(串行读出) 快(并行读出,轻松上百fps)
成本 高(特殊工艺) 低(标准半导体工艺)
动态范围 优秀(约70~80dB) 良好(约60~70dB,近年有突破)

核心结论:CCD赢在画质纯净、动态范围大;CMOS赢在速度、功耗、成本。现在CMOS通过背照式(BSI)和堆叠式工艺,画质差距已经缩小到肉眼难辨。我个人习惯,除非客户指定要CCD做长曝光天文摄影,否则一律推荐CMOS。

我记得有一次做产线检测项目,客户非要CCD,说CMOS有拖影。我问他帧率要求多少?他说200fps。我直接笑了——CCD到100fps就快冒烟了,最后乖乖换了全局快门CMOS。

1.2 拜耳阵列与色彩滤波:单芯片如何拍出彩色世界

传感器本身是色盲的——它只感知光的强度,不感知颜色。那彩色照片怎么来的?

答案就是:在像素表面盖一层彩色滤光片,让每个像素只响应特定波长的光。最常见的排列方式就是拜耳阵列(Bayer Pattern)。

拜耳阵列的排列规则很简单:RGGB。一个2×2的单元里,1个红色像素、2个绿色像素、1个蓝色像素。为什么绿色多一倍?因为人眼对绿色最敏感,这么做可以模拟人眼的亮度感知。

避坑指南:我曾经在调试一款安防相机时,发现画面偏紫。查了半天,原来是拜耳阵列的排列顺序搞反了——传感器输出的是BGGR,但ISP按RGGB去解马赛克。这种低级错误,一旦踩坑,调色温、调增益全白费。

除了标准拜耳,还有几种变体,你可能会在项目中遇到:

  • RGBW(红绿蓝白):加入白色像素,提升低照度灵敏度。代价是色彩饱和度下降。
  • RCCC(红清清清):用于自动驾驶,对红色交通灯敏感,其他通道全用透明像素。
  • Quad Bayer(四合一):手机传感器常见,4个同色像素合并,提升弱光画质。

你想想看,如果传感器是黑白的那多好——省掉去马赛克这一步,分辨率直接翻倍。但现实是,消费市场要彩色,所以拜耳阵列还得继续用下去。

1.3 光电转换与量子效率:光怎么变成电信号

核心原理就一句话:光子打到硅基材料上,产生电子-空穴对,电子被收集形成光电流。这个过程叫光电效应。

但并不是每个光子都能成功产生电子。衡量这个效率的指标叫量子效率(QE, Quantum Efficiency)。

QE = 产生的电子数 / 入射的光子数 × 100%

举个例子:如果传感器QE是50%,意味着每2个光子进来,只有1个能变成电子。剩下的光子去哪了?被反射、被吸收、或者穿透了。

波长(nm) 典型QE(前照式CMOS) 典型QE(背照式CMOS)
450(蓝) 30%~40% 50%~60%
550(绿) 45%~55% 65%~75%
650(红) 35%~45% 55%~65%

注意:QE不是越高越好。QE太高,意味着暗电流也大,暗部噪声会爆炸。我调过一款近红外增强传感器,QE在850nm处做到70%,但暗电流是普通传感器的3倍。最后只能靠制冷来压噪声——成本直接翻倍。

光电转换还有一个关键参数:转换增益(Conversion Gain)。它表示每个电子能产生多少电压。高增益意味着高灵敏度,但也意味着高噪声。低增益则相反。

实际项目中,我一般这样选:

  • 暗光场景:开高增益,牺牲一点信噪比,保证画面不黑。
  • 亮光场景:开低增益,用满阱容,最大化动态范围。

说白了,这就是一个取舍游戏——你永远不可能同时得到高灵敏度、大动态范围和低噪声。能做好其中两项,就是好传感器。

1.4 本章知识结构图

下面这张图,把传感器成像的三大块串起来了。建议你保存下来,后面做标定时随时回来对照。

传感器成像基础结构图 传感器成像基础:三大核心模块 传感器类型 CCD CMOS 色彩滤波(拜耳阵列) R G G B 光电转换 → 量子效率 QE = 电子数 / 光子数 转换增益:e⁻ → V

1.5 小结:这些知识点怎么用

这一章的内容,说白了就是给你打地基。后面做传感器标定时,你会反复用到这些概念:

  • 选型时:看QE曲线、看暗电流、看动态范围——别只看像素数。
  • 调ISP时:知道拜耳排列顺序,才能正确解马赛克。搞错了,颜色全乱。
  • 做色彩校正时:理解光电转换的线性区和非线性区,才能设计出靠谱的校正矩阵。

我的建议:找一块你手头的传感器数据手册,翻到QE曲线那一页,看看它在红绿蓝三个波段的效率分别是多少。然后对比一下你拍出来的照片——是不是蓝色通道总是最暗?如果是,说明QE曲线没骗你。