目录
[一、先问个最简单的问题:什么是 Pipeline?](#一、先问个最简单的问题:什么是 Pipeline?)
[二、高通 Pipeline 的"四大车间"](#二、高通 Pipeline 的"四大车间")
[三、车间 1:IFE(Image Front End)------ 原料初加工](#三、车间 1:IFE(Image Front End)—— 原料初加工)
[3.1 IFE 的输入是什么?](#3.1 IFE 的输入是什么?)
[3.2 IFE 做了哪些事?](#3.2 IFE 做了哪些事?)
[3.3 IFE 的输出去哪?](#3.3 IFE 的输出去哪?)
[四、车间 2:BPS(Bayer Processing Segment)------ 精细去噪](#四、车间 2:BPS(Bayer Processing Segment)—— 精细去噪)
[4.1 为什么需要 BPS?](#4.1 为什么需要 BPS?)
[4.2 BPS 什么时候工作?](#4.2 BPS 什么时候工作?)
[五、车间 3:IPE(Image Processing Engine)------ 美化润色](#五、车间 3:IPE(Image Processing Engine)—— 美化润色)
[5.1 IPE 做什么?](#5.1 IPE 做什么?)
[5.2 IPE 和 DSP 的配合](#5.2 IPE 和 DSP 的配合)
[六、车间 4:JPEG 编码器 ------ 压缩打包](#六、车间 4:JPEG 编码器 —— 压缩打包)
[6.1 为什么要压缩?](#6.1 为什么要压缩?)
[6.2 压缩过程](#6.2 压缩过程)
[七、软件层:CAMX + CHI + HAL3](#七、软件层:CAMX + CHI + HAL3)
[九、3A 算法:拍照的"自动三件套"](#九、3A 算法:拍照的"自动三件套")
[3A 怎么工作的?](#3A 怎么工作的?)
一、先问个最简单的问题:什么是 Pipeline?
"Pipeline"就是流水线。
想想工厂生产矿泉水:
水源 → 过滤 → 消毒 → 装瓶 → 贴标签 → 装箱 → 出货
每一步都有专门的机器负责,前一步的输出是后一步的输入。这就是流水线。
拍照也一样,光线从镜头进去,到最后变成一张 JPEG 照片,中间要经过一长串处理步骤,每个步骤有专门的硬件模块负责。这整条流水线就叫 Camera Pipeline。
二、高通 Pipeline 的"四大车间"
高通的 ISP(图像信号处理器)叫 Spectra ISP,它的核心流水线大概可以分成 4 个大车间

| 车间 | 名字 | 干什么的(大白话) |
|---|---|---|
| 1 | IFE | 把传感器的"原始数据"变成能看的彩色图 |
| 2 | BPS | 专门负责降噪,让画面更干净 |
| 3 | IPE | 美化润色:调色、锐化、HDR、美颜 |
| 4 | JPEG | 把大图压缩成小文件存起来 |
三、车间 1:IFE(Image Front End)------ 原料初加工
3.1 IFE 的输入是什么?
传感器输出的是 Bayer 格式的原始数据。
什么是 Bayer?就是每个像素只记录一种颜色(红、绿、蓝中的一个),像马赛克一样排列:
R G R G R G
G B G B G B
R G R G R G
G B G B G B
为什么不每个像素都记录 RGB? 因为传感器上每个像素只能感受一种颜色的光。为了让画面看起来是彩色的,工程师让像素按红绿蓝交错排列,后面再靠算法"猜"出每个像素缺失的另外两种颜色。
3.2 IFE 做了哪些事?
IFE 是流水线里最忙的车间,它一口气做了十几件事

| 步骤 | 英文缩写 | 大白话解释 |
|---|---|---|
| 坏点校正 | DPC | 传感器有些像素是坏的(不感光),用邻居像素的值补上 |
| 镜头阴影校正 | LSC | 镜头边缘进光少,画面四角偏暗,把四角提亮 |
| 去马赛克 | Demosaic | 把 Bayer 马赛克"猜"成全彩色 RGB,最关键的一步 |
| 白平衡 | AWB | 判断光源色温,把白色还原成白色 |
| 色彩校正 | CCM | 把传感器的颜色校准到人眼看到的颜色 |
| Gamma 校正 | Gamma | 人眼对暗部更敏感,用 Gamma 曲线让画面更符合人眼 |
| 降噪 | NR | 去掉画面上的彩色噪点 |
3.3 IFE 的输出去哪?
IFE 处理完的数据有多个出口(分流):

这就是为什么你拍照时屏幕能实时预览,同时还能拍 RAW 格式------因为 IFE 同时输出了多路数据。
四、车间 2:BPS(Bayer Processing Segment)------ 精细去噪
4.1 为什么需要 BPS?
IFE 里的降噪是"粗加工",在 Bayer 域做的,效果有限。
BPS 是专门的离线降噪模块,它能做更高级的降噪算法,比如:
-
多帧降噪(连拍多张取平均)
-
空域降噪(空间上模糊噪点)
-
时域降噪(时间上对齐多帧)
4.2 BPS 什么时候工作?
-
预览时:一般不用 BPS,直接 IFE 输出到屏幕(要快)
-
拍照时:会走 BPS,让最终照片更干净

五、车间 3:IPE(Image Processing Engine)------ 美化润色
5.1 IPE 做什么?
IPE 是流水线最后一道"美图"工序,负责把"能用的图"变成"好看的图":
| 功能 | 大白话 |
|---|---|
| 色彩增强 | 让天空更蓝、草更绿 |
| 锐化 | 让边缘更清晰 |
| HDR | 亮处不过曝、暗处有细节 |
| 时域降噪 | 多帧对齐降噪,暗光必备 |
| 人脸处理 | 美颜、瘦脸(调用 DSP) |
| 缩放/裁剪 | 把图变成需要的尺寸 |
5.2 IPE 和 DSP 的配合
很多 AI 功能(人脸检测、场景识别、美颜)不是 ISP 硬件做的,而是交给 DSP(数字信号处理器) 或 NPU 去算:

六、车间 4:JPEG 编码器 ------ 压缩打包
6.1 为什么要压缩?
一张 1200 万像素的 RAW 图大约 36MB(12M × 3 字节),太大了!
JPEG 编码器把它压缩到 2-5MB,损失肉眼几乎看不出的细节,节省存储空间。
6.2 压缩过程

为什么先转 YUV? 因为人眼对亮度(Y)敏感,对颜色(UV)不敏感。转 YUV 后可以把 UV 分辨率降低一半,文件直接变小 1/3,肉眼还看不出差别。
七、软件层:CAMX + CHI + HAL3
光有硬件还不够,还需要软件来控制这些硬件。高通的相机软件栈分 3层:

| 层 | 作用 | 谁来写 |
|---|---|---|
| HAL3 | Android 标准接口,App 调相机就靠它 | Google 定义 |
| CAMX | 高通的相机框架,管硬件调度、流水线配置 | 高通提供 |
| CHI | OEM 定制层,小米/OPPO 在这里加自己的算法(如美颜、夜景) | 手机厂商写 |
为什么需要 CHI? 因为不同手机厂商想做差异化。比如小米的"徕卡调色"、OPPO 的"哈苏调色",都是在 CHI 层实现的,不用改高通的 CAMX。
八、完整拍照流程:从按下快门到出片

关键细节:拍照时为什么要连拍多帧?

这就是为什么暗光下拍照要等 1-2 秒------手机在背后连拍了好多帧在合成
九、3A 算法:拍照的"自动三件套"
你拍照时不用手动调参数,是因为有 3A 在自动帮你调:
| 缩写 | 全称 | 大白话 |
|---|---|---|
| AE | Auto Exposure | 自动曝光------决定画面亮不亮 |
| AF | Auto Focus | 自动对焦------决定画面清不清 |
| AWB | Auto White Balance | 自动白平衡------决定颜色准不准 |
3A 怎么工作的?

3A 是个闭环:IFE 每输出一帧,就把统计信息送给 3A 算法,算法算出新的参数,再下发给硬件。每秒重复几十次,直到稳定。
十、关键概念速查表
| 名词 | 英文 | 一句话解释 |
|---|---|---|
| ISP | Image Signal Processor | 图像信号处理器,拍照的核心芯片 |
| Bayer | Bayer Pattern | 传感器的像素排列方式,每个像素只有一种颜色 |
| Demosaic | Demosaic | 去马赛克,把 Bayer 变成全彩 RGB |
| RAW | RAW Image | 传感器输出的原始数据,未经处理 |
| YUV | YUV Color Space | 亮度+色差的颜色空间,便于压缩 |
| DPC | Defect Pixel Correction | 坏点校正 |
| LSC | Lens Shading Correction | 镜头阴影校正,让四角不暗 |
| CCM | Color Correction Matrix | 色彩校正矩阵 |
| NR | Noise Reduction | 降噪 |
| HDR | High Dynamic Range | 高动态范围,亮暗都有细节 |
| AE/AF/AWB | 3A | 自动曝光/对焦/白平衡 |
| IFE | Image Front End | 高通 ISP 前端,Bayer→RGB 的主力 |
| BPS | Bayer Processing Segment | Bayer 域精细降噪模块 |
| IPE | Image Processing Engine | 图像后处理引擎,美化润色 |
| CAMX | Camera Extension | 高通相机软件框架 |
| CHI | Camera Hardware Interface | OEM 定制接口层 |