美文网首页camera tuning
[Camera]Tuning简介

[Camera]Tuning简介

作者: Letcos | 来源:发表于2020-02-16 17:55 被阅读0次
    参考:
    1.烫手的洋芋 https://www.zhihu.com/question/24406900/answer/42875785
    2.酒杯怎么空了 https://blog.csdn.net/xiaoyouck?t=1
    

    概述

    影响camera最终效果有以下几个方面:
    1、硬件
    image sensor:供应商有Sony、OV、Samsung等,决定摄像头的像素、感光能力等;
    镜头:决定摄像头的光圈、解析度;
    ISP:决定数据处理速度,会对帧率有影响;
    2、算法
    由AP供应商提供,一般的手机公司不会动;
    3、Tuning
    修改算法的参数,让画质达到最优。

    选定了硬件之后,能提升画质的工作就只有tuning了,通过不断的权衡tuning参数,让camera在主观效果和客观效果方面都有较好的表现,tuning的工作就完成了。

    Tuning

    Black Level Calibration

    黑电平(Black Level Correction)也就是黑色的最低点,以8bit数据来说,指在经过一定校准的显示装置上,没有一行光亮输出的视频信号电平。定义图像数据为0时对应的信号电平。

    校正原因

    那么为什么要进行黑电平校正呢?原因如下:

    • CMOS传感器采集的信息经过一系列转换生成原始RAW格式数据。以8bit数据为例,单个pixel的有效值是0~255,但是实际AD芯片(模数转换芯片)的精度可能无法将电压值很小的一部分转换出来,因此,sensor厂家一般会在AD的输入之前加上一个固定的偏移量,使输出的pixel value在5(非固定)~255之间,目的是为了让暗部的细节完全保留,当然同时也会损失一些亮部细节,由于对于图像来说,我们的关注度更倾向于暗部区域,ISP后面会有很多增益模块(LSC、AWB、Gamma等),因此亮区的一点点损失是可以接受的。
    • sensor的电路本身会存在暗电流,导致在没有光线照射的时候,像素单位也有一定的输出电压,暗电流这个东西跟曝光时间和gain都有关系,不同的位置也是不一样的。因此在gain增大的时候,电路的增益增大,暗电流也会增强,因此很多ISP会选择在不同gain下减去不同的bl的值。

    校正

    ​ 现在的主流cmos sensor都是自己把black level已经处理完了。在isp部分减掉的其实不是black level,而是sensor统一做出来的pedestal。sensor端不会将bl减完,因为sensor输出不能为负数,若将bl减完,就等于小于0的部分直接就丢掉了,这样做会改变noise的分布。

    算法

    一般BLC模块会放在ISP比较靠前的位置,因为我们希望图像在进入其他模块之前能够还原最为真实的图像。有些sensor会在sensor内部集成BLC的模块,那么此时ISP里的BLC模块只做微调即可。

    由于硬件设计人员在设计BLC模块时需要考虑效果和成本,因此目前市场上使用的ISP一般采用的方法是在sensor输出的图像上减去一个数值。

    BLC各个通道均需要校正,目前比较常用的方法有:

    • 中值
    • 全局均值
    • 局部均值
    • 自定义

    Lens Shade Calibration

    简介

    镜头阴影校正(Lens Shading Correction)是为了解决由于lens的光学特性,由于镜头对于光学折射不均匀导致的镜头周围出现阴影的情况。

    shading可以细分为luma shading和color shading:

    • luma shading:
      由于Lens的光学特性,Sensor影像区的边缘区域接收的光强比中心小,所造成的中心和四角亮度不一致的现象。镜头本身就是一个凸透镜,由于凸透镜原理,中心的感光必然比周边多。
    在这里插入图片描述
    • chrom/color shading:
      由于各种颜色的波长不同,经过了透镜的折射,折射的角度也不一样,因此会造成color shading的现象,这也是为什么太阳光经过三棱镜可以呈现彩虹的效果。
    在这里插入图片描述

    此外,还有CRA的原因会导致shading现象的出现。

    校正

    lens shading的校正是分别对于bayer的四个通道进行校正,每个通道的校正过程是相对独立的过程。

    考虑到芯片设计的成本,因此一般情况下不会存储整幅图像的lut,目前主流的都是存储128*128个点的增益,利用双线性插值的方法计算每个pixel的增益。

    算法

    • 网格校正
    • 最小模型建模

    Color Calibration

    拍摄color checker24色板,将相机拍摄图片值与色板标准值之间进行对比(RGB颜色空间),得出一组能将拍摄值校正到最接近标准值的3x3矩阵。通过这个矩阵对所有相机拍摄的图片进行颜色校正

    Noise Calibration

    去噪。采用特定的LPF(Low Pass Filter)对图片进行滤波,滤除图像的噪声成分,而Bilateral filtering即双边滤波器,它是一种保护边缘的平滑滤波器,这样既可以滤除噪声,edge又可以保留下来。

    总结

    ​ 上面只是列举了很少一部分的tuning项,实际上有非常多的tuning项目。camera tuning是由专门的tuning工程师来调试的。下图是一张tuning 工程师大概需要掌握的知识和技能。

    在这里插入图片描述

    ​ 作为android驱动或者系统工程师,只需要大概了解这些校正项的成因,现象就可以了。这样在调试摄像头出现问题时有助于我们快速定位属于那一类问题,并了解大致的原因和解决方法。

    个人博客:https://www.letcos.top/

    相关文章

      网友评论

        本文标题:[Camera]Tuning简介

        本文链接:https://www.haomeiwen.com/subject/iolmfhtx.html