如何检查曝光表和DeviceInfo是否正确

概述

使用错误的Device Info导出的效果参数会导致曝光表参数错误,曝光线性度有问题,导致ITS测不过,也可能引起AE震荡


如何检查Device Info是否正确

效果参数中 camera_AE_PLineTable_s5k3p9sxmipiraw.h 此文件是曝光表

最下方注释的地方,是使用的Device Info信息

MinGain,1144
MaxGain,16384
MiniISOGain,100
GainStepUnitInTotalRange,64
PreviewExposureLineUnit,15172
PreviewMaxFrameRate,30
VideoExposureLineUnit,15172
VideoMaxFrameRate,30
VideoToPreviewSensitivityRatio,1024
CaptureExposureLineUnit,9087
CaptureMaxFrameRate,30
CaptureToPreviewSensitivityRatio,1024
Video1ExposureLineUnit,9087
Video1MaxFrameRate,120
Video1ToPreviewSensitivityRatio,1024
Video2ExposureLineUnit,9087
Video2MaxFrameRate,60
Video2ToPreviewSensitivityRatio,1024
Custom1ExposureLineUnit,19770
Custom1MaxFrameRate,30
Custom1ToPreviewSensitivityRatio,1024
Custom2ExposureLineUnit,19770
Custom2MaxFrameRate,30
Custom2ToPreviewSensitivityRatio,1024
Custom3ExposureLineUnit,19770
Custom3MaxFrameRate,30
Custom3ToPreviewSensitivityRatio,1024
Custom4ExposureLineUnit,19770
Custom4MaxFrameRate,30
Custom4ToPreviewSensitivityRatio,1024
Custom5ExposureLineUnit,19770
Custom5MaxFrameRate,30
Custom5ToPreviewSensitivityRatio,1024
FocusLength,350
Fno,20

s5k3p9sxmipiraw_Scene_Capture_AE.cpp AE文件中也有Device Info相关的信息,需要配置正确

.rDevicesInfo = {    //rDevicesInfo
    1144,  // u4MinGain
    16384,  // u4MaxGain
    100,  // u4MiniISOGain
    64,  // u4GainStepUnit
    15172,  // u4PreExpUnit
    30,  // u4PreMaxFrameRate
    15172,  // u4VideoExpUnit
    30,  // u4VideoMaxFrameRate
    1024,  // u4Video2PreRatio
    9087,  // u4CapExpUnit
    30,  // u4CapMaxFrameRate
    1024,  // u4Cap2PreRatio
    9087,  // u4Video1ExpUnit
    120,  // u4Video1MaxFrameRate
    1024,  // u4Video12PreRatio
    9087,  // u4Video2ExpUnit
    30,  // u4Video2MaxFrameRate
    1024,  // u4Video22PreRatio
    19770,  // u4Custom1ExpUnit
    30,  // u4Custom1MaxFrameRate
    1024,  // u4Custom12PreRatio
    19770,  // u4Custom2ExpUnit
    30,  // u4Custom2MaxFrameRate
    1024,  // u4Custom22PreRatio
    19770,  // u4Custom3ExpUnit
    30,  // u4Custom3MaxFrameRate
    1024,  // u4Custom32PreRatio
    19770,  // u4Custom4ExpUnit
    30,  // u4Custom4MaxFrameRate
    1024,  // u4Custom42PreRatio
    19770,  // u4Custom5ExpUnit
    30,  // u4Custom5MaxFrameRate
    1024,  // u4Custom52PreRatio
    20,  // u4LensFno
    350  // u4FocusLength_100x
},

AE文件中的rDevicesInfo参数,也是FAE调效果导出效果参数时用到的Device Info文件中的设置的

从MTK online QVL中下载一个认证过的camera sensor代码后,里面会有xls表格,打开后如下
如何检查曝光表和DeviceInfo是否正确_第1张图片

蓝色部分是需要填写进去的,白色部分是自动计算出来的

填写的依据在驱动代码中

static imgsensor_info_struct imgsensor_info = {

    .pre = {
        .pclk = 560000000,				/* record different mode's pclk */
        .linelength  = 8496,
        .framelength = 2196,			/* record different mode's framelength */
        .startx = 0,
        .starty = 0,					/* record different mode's starty of grabwindow */
        .grabwindow_width  = 2320,		/* record different mode's width of grabwindow */
        .grabwindow_height = 1744,		/* record different mode's height of grabwindow */
        .mipi_data_lp2hs_settle_dc = 85,
        .max_framerate = 300,
        .mipi_pixel_rate = 319200000,
    },
    .cap = {
        ……
    .normal_video = {
        ……

Device info中填入参考如下:

LensPartNum = 该模组使用的lens driver IC
u4LensFno = 该模组生产时的光圈值大小(询问模组厂)
SensorPartNum = 该camera IC的名字
u4OBLevel = 该camera IC的OB值(查看datasheet 或问FAE 或CCT测试)
u4MinGain = 一般填的是1x Gain 1024。CCT测试之后再修改
u4MaxGain = 查看camera IC的datasheet中 Analog Gain是多少。如果是16x ,这个值就是16 * 1024 = 16384
u4MiniISOGain = 填100
u4GainStepUnitInTotalRange = 1024 / Max Analog Gain (填后面的蓝色框的 gain step, Analog Gain 是16x,就填入16)
Sensor Pclk (Hz) = 驱动代码中的 pclk
Period pixel numbers = 驱动代码中的 linelength
Period line numbers = 驱动代码中的 framelength
u4XXXXToPreviewSensitivityRatio = 默认填1024
Video1 = 对应的是驱动中 hs_video 的参数
Video2 = 对应的是驱动中 slim_video 的参数
Custom12345 = 一般用不到,就按照Capture的填即可。如果驱动代码中有custom的参数,就按照驱动代码中填写
u4FocusLength = 有效对焦距离,默认350
FixSensorGain = 个别IC是用gain table的,需要填入对应驱动代码中 gain table 的数量,和对应的值

#define IMX298MIPI_MaxGainIndex (115)
kal_uint16 IMX298MIPI_sensorGainMapping[IMX298MIPI_MaxGainIndex][2] ={
	{64 ,1  },
	{65 ,8	},
	{66 ,16 },
	{67 ,25 },
	{68 ,30 },
	{69 ,37 },
	{70 ,45 },
    ……
}

上述例子中 gain talbe num 就是115
数组中 64、65、66等就是gain的系数,64代表的就是1x Gain

在Device Info中需要换算成 1024 代表的 1x Gain

FixSensorGain		
115		// Total numbers. If the gain
1024	1	// Mini sensor Gain, The 1.00 mean the sensor gain different between design and real condition.
1040	1	// 1040 = 65 / 64 * 1024
1056	1	// 1056 = 66 / 64 * 1024
1072	1	// 1072 = 67 / 64 * 1024
……

配置正确的Device Info后,发现和AE中 rDevicesInfo参数不一样,说明FAE调效果时使用了错误的Device Info
这样曝光表是有问题的,有时候不一定会出问题,但ITS可能会测不过,也可能会有AE震荡

需要用正确的Device Info重新导一次参数,替换AEPlineTable和AE文件中rDevicesInfo参数

你可能感兴趣的:(相机Tuning)