MIPI RAW数据的储存和解析
MIPI储存格式
在相机数据处理中,即数字图像处理中经常需要处理MIPI Raw数据和Raw数据,这里简单说明一下二者的差别(小端存储为例)。 一般来说,传感器采集的Raw数据通常为10bit,那么存储Raw数据就需要两个Byte,这将导致其中有4个bit位是空着的,造成空间浪费。MIPI Raw数据则充分利用了这个特性,采用5个Byte,共40bit存储4个Raw数据。其存储格式如下图所示:
MIPI RAW解析
由MIPI RAW的储存格式便可知由MIPI Raw转换到标准Raw数据的转化过程如下代码所示:
//b0-b4分别为从左到右连续读出的五个uint8类型的数据,pix0-pix4为四个像素值 pix0=( (b4>>6) & 0x3 ) + (b0 >>2)); pix1=( (b4>>4) & 0x3 ) + (b1 >>2)); pix2=( (b4>>2) & 0x3 ) + (b2 >>2)); pix3=( b4 & 0x3 ) + (b3 >>2));