1. 子采样残差压缩技术概述
在图像信号处理(ISP)流水线中,子采样残差压缩(Subsampled Residual Compression)是一种专为帧缓存设计的轻量级压缩技术。不同于传统视频编码,这种方案以极简硬件实现为核心目标,特别适合需要低延迟、随机访问和固定带宽的场景。
我第一次接触这项技术是在设计一款安防摄像头SoC时。当时系统面临WDR多帧处理的带宽瓶颈,传统压缩方案要么硬件开销太大,要么无法满足随机访问需求。子采样残差压缩以其独特的"粗预测+残差修正"机制,完美平衡了压缩效率与实现复杂度。
2. 核心原理与架构设计
2.1 基本工作原理
技术核心在于三级处理流水线:
- 子采样基图生成:将原始图像降采样到1/4或1/2分辨率
- 预测重建:通过上采样插值恢复原始分辨率
- 残差计算与压缩:存储原始图像与预测图的差值
实际工程中,我们采用16×16的块处理单元。以2×2子采样为例,原始块被下采样为8×8基图,经插值重建后,残差动态范围通常能从0-255降至0-15,实现4bit量化存储。
2.2 硬件友好架构
这种架构的三大优势使其成为ISP首选:
- 零依赖处理:各块独立压缩解压,无帧间/帧内依赖
- 确定性延迟:固定3-4个时钟周期完成处理
- 极简运算单元:仅需采样器、加法器和简单插值器
我在海思3559A芯片上实测发现,完整压缩流水线仅占用约1.2k逻辑门,比传统DPCM方案节省40%面积。
3. 工业级子采样模式详解
3.1 2×2网格采样(模式A)
这是最常用的方案,每2×2像素保留左上角一个样本。在联咏NT96660芯片中,这种模式通过简单的像素选择器实现,无需任何滤波处理。
具体实现:
verilog复制assign base_pixel = {img[2*y][2*x], img[2*y][2*x+1],
img[2*y+1][2*x], img[2*y+1][2*x+1]};
3.2 行2:1采样(模式B)
专为行缓冲架构优化,每行隔点采样。在安霸CV2系列芯片中,这种模式与流水线完美配合,可实现零额外延迟的实时处理。
