这个图是我自己理解的一个大致的流程,我们这里主要看ISP的前面那一部分就好了,当我们开始拍照的时候,我们的拍照对象通过光的反射传输到lens(滤镜)中,lens会过滤掉红外光线, 然后会把剩下的RGB三元素光线传递到sensor(这里叫感光器件)这个模块上
sensor这个感光器件在一个像素点上并不能将所有的RGB元素都采集下来,更多的一个像素点采集一个元素,但是这样明显我们的图片还原率就很低,所以就有了bayer这中算法,通过采集的那一种元素去进行对应的三元素还原,最大程度的还原成像对象的颜色。这样就达到了一个效果,虽然我传入的是三元素的一种,但是我通过bayer传输出去的就是RGB三元素了,对应的可以去看看相关的原理。
bayer图片再往下就是数模转化,将光信号转化为数字信号,这个时候我们就能看到一张RAW的原图了。
然后通过mipi传递到ISP模块内,转为YUV或则RGB的格式进行输出。
可以看到我们将RAW图放大后其实就是一个个的元素点。
前面那张是JPEG图,后面为RAW原图,虽然像素不高,但是可以看到明确的不同。
sensor的四个像素点对应RGB中的一个像素点
如图:RGB会把sensor对应的四个像素点转化为一个像素点。
现在也有一个sensor和isp可以把sensor的像素点和RGB对应的像素点按照一比一的出图,或则说放大,这就算法的强大之处吧,所以现在还有很多的一亿像素,实际上可能sensor并不支持这么大,是后期算法改变的。
相机类型: CCD sensor 和 CMOS sensor。
CCD se当我们修改或者配置完成一个xml的时候,我们编译完成烧录到开发板里面后,
nsor (目前基本被淘汰):
CMOS sensor (主流):
现在的sensor 出图有两种,一种是YUV的sensor,一种是RAWsensor(bayer sensor),现在主流的都是RAW的sensor,因为YUV的sensor一个Pixel占2个byte,数据较大,而且只能采用内部的ISP进行处理,图像效果不太好。但是RAWsensor一个像素占8到16bit,使用平台ISP处理,能支持较大的size,所以主流的都是RAWsensor。