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.

2A 算法和 sensor的wdr算法 曝光控制互相影响,图像不正常

sensor ar0331   hdr模式:

不开启2a算法:sensor输出正常

开启2a算法:

显然2a算法改变曝光量的大小,而sensor的工作模式是二次曝光合成一帧图像。由对比可以可知图像产生了异常,

请问,这个有什么解决方法吗???????

  • 你好,

    TI默认的WDR代码启动后会关闭AE。

    需要你来修改AE代码来配合WDR的工作。如果亮度不够,需要增加曝光时间,请保证长短曝光时间是16的倍数。

  • 你好:

        ti的wdr算法开启是根据rules.make中wdr_on宏来定义的,我搜过代码,ti的2a算法中没有这个宏定义,就是说没有用宏来关闭ae算法,ae感觉没关闭,而且我实验过,效果就是跟ae算法开启一样。

       我现在是开启sensor的wdr功能,屏蔽了ae功能,但是太暗了,请问ti的wdr算法是否有专门的设置??

       ti的wdr算法 在文档中好像说必须匹配 支持wdr的sensor????

       wdr功能效果是很好,但是太暗,及时用了gamma校正。

      ae算法我看过,主要是 控制 光圈大小  曝光时间   和增益来控制

      增益显然不能用,他会使灯边缘的光溢出,这跟wdr的相反

      曝光时间sensor端好像有限制,

      我们根本就没光圈

      而且我们用的appro的2a算法,ae只能在底层写寄存器的时候屏蔽掉

     请问你有这方面的经验吗?主要是sensor端如何调wdr的曝光功能

     

  • 你好,

    下面是TI代码里面使用WDR后关闭TI AE的相关代码:

    3.8/Source/ipnc_rdk/ipnc_app/sys_server/src/stream_env_ctrl.c

    int StartStream(StreamEnv_t* pConfig)
    {
    ...

    #ifdef WDR_ON_MODE /* Switch OFF AE */
            if(pConfig -> nAEWtype&1) {
                    pConfig -> nAEWtype &= 2;
                    fSetImageAEWType(pConfig -> nAEWtype);
            }
    #endif
    ...

    int SetImageAEWType(unsigned char value)/*img2a*/
    {
            int ret = 0;

            SysInfo *pSysInfo = GetSysInfo();
            if (pSysInfo == NULL)
                    return -1;

    #ifdef WDR_ON_MODE /* Switch OFF AE */
            if(value&1) {
                    value &= 2;
            }
    #endif

  • 你好:

            我确定了一下,是source\ipnc_app\sys_server\src 中的main函数调用了这个函数,但是我是跑source\ipnc_rdk\ipnc_mcfw\demos\mcfw_api_demos\multich_usecase中的TI_mcfw_ipnc_main.c,

    这个不是关键。我想问一下,sensor端的wdr是否能和ti的wdr  如何配合?

  • 你好,

    你是否有尝试过保持ISIF里面的数字增益为1,只增加sensor的增益?

    AR0331的WDR和TI的WDR算法是可以配合使用的。

  • 你好:

          由于放假未能未能及时回复,不好意思。

          ti算法中优先级

         Aperture->Exposure time->Analog gain->Digital gain

    问题1:

         我能不能这样理解:

          Aperture->Exposure time是最佳的ae曝光方式(Analog gain和Digital gain会使边缘的光溢出)

         由于没有 光圈,Aperture是不能使用的,Exposure time由于wdr算法不能使用

         所以我要在ti开源公开的ae算法中改变优先级并屏蔽掉Exposure time,既是Analog gain->Digital gain????

    问题2:

         我查了一下wdr算法的原理,好像是wdr算法控制sensor的曝光时间,产生一个过曝光的图像和一个欠曝光的图像,然后通过图像融合产生一个wdr图像。

         ar0331  sensor的hdr模式必须和ti的wdr算法配合????

         因为sensor的hdr模式产生的raw的wdr图像是整个非常暗的,sensor并没有做曝光。


    我想问一下:理论上TI应该是已经做好了整个配置,我只要在rulemake中开启wdr就可以了,但是我往下查时发现还是有很多问题,请问我是否修改比如ae算法来配合wdr算法等等????


      



        

              

  • 你好:

            因为我们购买了appro的算法,所以有些 并不是我们能控制的。我们只是想确认一下wdr效果开启是否在我们的能力范围。因为可能我们会买对应的有支持wdr功能的sensor,但是不能开启wdr功能,对我们而言是一种浪费。所以想评估一下

  • 你好:

       根据你的说法做了实验,可以。我把ae算法中的自动曝光全部注释掉了。效果如下:

        开了sensor 的wdr,但是走isif模式,即没开wdr算法

      

    开了sensor的wdr和ti的wdr算法

      

    还可以接受

  • 你好,

    TI的WDR算法和TI 2A配合调试过的。如果你使用Appro的2A,要注意ISIF里面的gain必须配置为1,我认为sensor的模拟/数字 gain是可以使用的。

  • 你好:

        我不知道你指的gain是什么?  isif的数字增益?

      

      程序中一直是512。对应的代码为

     Int32 Iss_capt2AUpdate(Iss_CaptObj * pObj)中的

     isifgain.gain_r = isifgain.gain_gr =isifgain.gain_gb = isifgain.gain_bg = dGain;

     你的意思是不是若要用wdr,则必须修改ae算法,屏蔽曝光时间修改???

      因为若要这样我们就要重新考虑wdr的可行性

     

  • 你好,

    是的,512表示增益为1.

    如果要较好的使用WDR算法,是需要修改AE算法的,这部分TI的AE也没有实现,现在就简单关闭TI的AE了。曝光时间是可以修改的,但必须长短曝光是16的倍数。

  • 你好:

        谢谢你的指导,sensor的模拟增益的确可以很好地调整曝光值,前几楼我做过实验过了,但是还是存在一些问题,

      

        图像上有白白的一层,那应该是暗电流没有相减(我知道wdr模式不减去暗电流)。但是开启wdr算法之后

    噪声特别大。是暗电流的缘故吗??

     

    我们很可能使用appro的算法,无法修改ae算法,也只能关闭。

    那么请问,曝光时间具体对应的是哪里的代码,我们只能依靠这个来改变整体亮度。

  • 你好,

    如果要得到较好的WDR效果,还需要调整gamma来提供对比度,减少蒙蒙的感觉。

    请问你使用的WDR模式强么?请用弱模式试一下,看噪点是否有减弱。

  • 你好:

           我本就是wdr的low工作模式。第二张图的噪声不知道什么情况。。。。。。第一张图应该是你的解释。

            我在文档中找到

            AE needs to be optimized under WDR mode, which is not supported yet in the current demo version. It’s
            highly recommended to manually adjust AE in each WDR scene and try to get the best output exposure
            level and dynamic range. For this first put your lens aperture in the mid range, then turn off AE in
            “Settings” – “Camera” – “2A Mode”, after that turn your lens aperture to change the AE level.

           就是大概是无法自动曝光的意思????????????我也找不到你所说的wdr曝光时间接口,请指教对应的接口??