This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8127芯片中的图像处理ISS模块中调试动态范围的问题



您好,我们在摄像机的开发中用到了DM8127芯片中的ISS模块,调试图像的效果中发现图像的动态范围有点低,所以将问题定位在ISS模块中,ISIF的Sensor Linearization 模块。

目前我们配置中该模块主要采用16位数据直接截成12位数据的方式,所以会损失掉很多图像细节,该模块提供了一种传感器线性化的方法来提高图像的动态范围,但是在看文档之后,虽然对原理理论有了比较深入的理解,但是距离最终灵活使用上,还是有一些问题:

(1)该模块的配置主要有以下几个参数,该参数定义的寄存器也已经搞明白了

typedef struct {

/* Linearization enabled 是否启用该模块,对应寄存器ISIF_LINCFG0[0]*/  
uint8 enable;

/* COrrection shift values 线性化的偏移值,在线性化查表差值完之后,进行偏移校正,对应寄存器ISIF_LINCFG0[6:4]*/
ISIF_LINEAR_SHIFT_VALUE correction_shift;

/* Linear Sampling method采样方式,对应寄存器 ISIF_LINCFG0[1]*/
ISIF_LINEAR_SAMPLING non_uniform_mode;

/* Scale factor (U11Q10) for LUT input缩放因子,在线性化查表差值之前,对应寄存器 ISIF_LINCFG1[10:0]*/
uint16 scale_value;

} isif_sensor_linear_cfg_t;

以上值在代码中也能找到配置的地方,也能找到对应的寄存器设置,但是这些值的意义该如何来设置?具体怎么设置成什么值的搭配才能提高sensor的动态范围?

需要提供指导说明。

(2)线性化差值表应该是在内存当中的,有两个查找表,如下:

Memory  Mapping                Start                           End                            Size                       Comments

LIN table0                      0x5505 C000            0x5505 C17F                1024             ISIF Linearization table
LIN table1                      0x5505 C400            0x5505 C57F                1024             ISIF Linearization table

但是这两个表如何来设置?是固定好的?还是可配置的?设置入口在哪?

以上,请高手指导,谢谢。