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.

TDA4VM: ISP Tuning CFAI+WDR Questuion

Part Number: TDA4VM

Tool/software:

Hi,

I am currently using TDA4VM and otobrite IMX390 camera to do CFAI+WDR in ISP Tuning. The SDK version I am using is 9.2.0.5, and the DCC Tool is using version 3.0.

From the DCC tool operation manual, I know that increasing CFAI bandwidth Green High and CFAI bandwidth Green Low provides a clearer output image with more noise and artifacts.

Reducing the CFAI bandwidth Green MidA and MidB will result in less noise, fewer artifacts and lower resolution.

When I set these values ​​to their minimum values, I can't see any difference in noise or artifacts from the original image, I can only see that my image becomes very yellow.

I lowered the GLBCE Strength value, but I can't see any weakening in the brightness and contrast of the image.

I tried to change the parameters mentioned in the operation manual that can affect the image effect, but I couldn't observe any changes in my image.

I would like you to help me explain or tell me where the problem is. Thank you.

  • Hi Jiarong,

    DCC Tool is using version 3.0.

    Please note that V3.2 is available for downloading earlier this week with some minor bugs in V3.1 fixed.

    From the DCC tool operation manual, I know that increasing CFAI bandwidth Green High and CFAI bandwidth Green Low provides a clearer output image with more noise and artifacts.

    In general, these differences are very subtle and you can only see them by looking carefully at images with a lot of fine details.

    I can only see that my image becomes very yellow.

    Could you please specify the exact settings when this happens?

    Tuning tool provides the largest range for programming each individual parameter.
    Extreme case with all parameters at largest/smaller values at the same time may have some issues.

    I lowered the GLBCE Strength value, but I can't see any weakening in the brightness and contrast of the image.

    Strength is typically fixed to 255 for WDR sensors.
    If strength is lower to 0, GLBCE will not modify its input image (no tone mapping at all).

    The most effective tuning parameters for GLBCE is asymmetry.

  • Hi,

    Thank you for your reply.

    OK, thank you for your notice, I have applied for the latest version of DCC tool.

    I have not seen asymmetry-related adjustment information from the CFA & WDR PLUGIN GUIDE. Can you please explain what impact this adjustment can have?

    The picture below is my parameter configuration and effect diagram.

    In the test I did, I only changed one parameter at a time, and the rest of the parameters used the original default values ​​of the DCC tool, but the resulting images were all yellow-green.

  • OK, thank you for your notice, I have applied for the latest version of DCC tool.

    The link for request access has changed because of system upgrade.

    https://www.ti.com/drr/opn/ADAS-SW-IMAGING

    The old link may be still valid, but I am not sure if it will get you through the new system.

    I have not seen asymmetry-related adjustment information

    Asymmetry is in the GLBCE or WDR tab.
    You may refer to TDA4 TRM VPAC VISS GLBCE section for more details.

    .

    "Green High" should be higher than "Green Low" and "Green Mid" in general.

  • Hi, thank you for your reply.

    Yes, I can use the link you provided and downloaded the latest version of DCC tool. Thank you.

    I have also tried the following configuration, but the result is the same yellow-green color as the above picture. I would like to ask you to help me tell me why the image becomes like this and what solutions are available. Thank you.

  • Hi Jiarong,

    I have also tried the following configuration, but the result is the same yellow-green color as the above picture.

    I am not sure if the green color is in your input raw image because of white balance.

    Could you please share your tuning tool project?

  • Please also include information regarding your raw image, i.e., WDR companding knee points and pedestal value.

  • Hi, thank you for your reply.

    I'm not sure if sharing my tuning tool project with you is useful. Because so far, all the tuning I have done is to use live tuning to see the effect.

    Currently, I have done Black Level Subtraction, H3A, AWB, and Color Correction in order.

    The first two are to use python sctripts to make modifications, and the last two are to use DCC tool to do live tuning to see the effect.

    So every time I use the DCC tool to do the AWB first and then do the Color Correction.

    I would like to ask, what image do you mean by the input image?

    I did not see the need to input images from the CFA+WDR operation manual of the DCC tool. So if it refers to the images I imported in CFA+WDR, I did not import the images while doing this project here.

    The image I provided above is a .yuv obtained after using live tuning.

    I can provide you with the .yuv I took after doing Color Correction, because after I used live tuning Color Correction, the color of the image looked good, but after doing CFA+WDR, the color became strange, so I thought asking you.

    Also, I did not change the WDR companding knee points, I used the DCC tool's default values. pedestal value = 1.

  • Hi Jiarong,

    I'm not sure if sharing my tuning tool project with you is useful.

    I don't really need your working project.
    I just need a sample project so that I can take a look at your raw images and settings.

    The YUV image in auto.zip looks OK to me.
    It is much better than the greenish picture you shared above.
    White balance is not accurate and it could be a AWB calibration issue.
    You may calibrate AWB to see if white balance can work properly.

    If you have a matching raw image for auto.zip, please share it with me along with sensor companding knee points.
    I can check if there is any issue in the raw image.

    I can provide you with the .yuv I took after doing Color Correction, because after I used live tuning Color Correction, the color of the image looked good, but after doing CFA+WDR, the color became strange, so I thought asking you.

    Extreme settings could cause weird behavior as we discussed above.
    Using normal (not extreme) parameters should be fine.
    If you are still bothered by some not so extreme CFAI settings, you may share your bad GUI settings.

  • Hi, thank you for your reply.

    Okay, I'll provide you with a sample project.

    I understand that my white balance is not very accurate because my color temperature and chart are not professional. But I guess even if my white balance is not quite right, it won’t make such a big difference to my images?

    I will provide you with the .raw file, but I did not use sensor companding knee points when doing any operations, so I don't quite understand where to provide this information to you.

    Could you please help me look at my file again? Thank you.

    The picture below shows my settings in CFA_WDR.

       CFA_WDR.zip

  • Hi Jiarong,

    I did not use sensor companding knee points when doing any operations, so I don't quite understand where to provide this information to you.

    Do you mean you sensor works in linear format rather than WDR/HDR format?
    In your python script sensor configuration file, do you set the sensor mode to linear or WDR?

    The picture below shows my settings in CFA_WDR.

    The WDR tab shows that you are decompanding your raw image in ISP with a set of knee points.
    If those knee points does not match your sensor raw image, then color will be distorted.
    Please follow the plugin guide for more details.

  • CFA_WDR.zip

    Your raw image looks like in WDR companded format.
    You would need to check your sensor driver to see what are the correct WDR companding knee points.

    With wrong knee points, color will be wrong typically on bright things in the view.
    Dark part in the view may be OK, because the first section of companding is always linear.

  • Hi, thank you for your reply.

    I set WDR in the python script.

    Do you mean that knee points should be found from the sensor driver?

    But when I bring up the camera, I use TI's sample code :single_cam. Are the companding knee points in the driver the same as those preset by TI?

  • But when I bring up the camera, I use TI's sample code :single_cam. Are the companding knee points in the driver the same as those preset by TI?

    If you used the TI sensor driver for IMX390, then those knee points should be correct.

    The single-cam app does not specify which sensor driver you use.

    In tuning tool, you would need to input those correct knee points.
    Please follow the plugin guide for more details.

  • Hi, thank you for your reply.

    So does it mean that the knee points I set are correct?

    Because I use the TI single-cam app to directly bring up the imx390 camera.

    But you mentioned that the single-cam app doesn't specify the sensor driver I'm using, and I don't understand what that means. Because when using the single-cam app, doesn’t it allow me to choose which sensor to use? Doesn’t this mean that I have specified which sensor I use?

    Based on the above content, I should have entered the correct inflection point because I always use the default value.

    I would like to ask which plugin guide it is? Because I did not see relevant content in the CFA_WDR plugin guide and DCC_UserGuide.

  • So does it mean that the knee points I set are correct?

    Correct with python script, but wrong with tuning tool.

    But you mentioned that the single-cam app doesn't specify the sensor driver I'm using, and I don't understand what that means.

    When you said that you used the single-cam app, I cannot tell which sensor driver you use.

    I should have entered the correct inflection point because I always use the default value.

    In tuning tool, you need to enter the correct knee points.

    I would like to ask which plugin guide it is? Because I did not see relevant content in the CFA_WDR plugin guide and DCC_UserGuide.

    Yes, each plugin has its own guide.

  • Hi, thank you for your reply.

    I am using the sensor driver of imx390. Although my sensor is not from D3, I can still use the TI imx390 sensor to bring up the lens when using single_cam.

    Yes, I know every plugin has its own guide. Now I am doing CFA_WDR tuning, so I looked at the CFA_WDR plug-in guide, but I did not see the details of Knee points.

    Where do I get the correct inflection point provided by TI?

  • but I did not see the details of Knee points.

    There is no details about the knee points.
    You just would need to enter them correctly.

    You already have used those knee points in your python script configuration file.
    You just need to enter those values into the WDR tab.

    Where do I get the correct inflection point provided by TI?

    They are included in the sensor register values programmed by the sensor driver.

  • Hi, thank you for your reply.

    I understand what you said, I need to put my 6 sets of knee points into the dcc tool.

    I put knee points here.

    But it can be seen from the content that the maximum value of X is only 4095, so my Knee_X:65535 cannot be filled in the DCC tool. Will this have any impact?

    And because each THR X value must be larger than the previous THR X value.

    There are only 5 knee points left that I can input. I would like to know how to input them better?

    I currently know that these 5 values ​​need to be filled in, and if values ​​of similar distance are inserted into these 5 intervals respectively, so that the total number becomes 14, this will also cause the problem of the image color turning yellow-green.

    But if I fill in 0,512,1408,2176, and then start from 4000 and add 10 to each grid until 4095, the image color will not appear to be affected.

  • Hi Jiarong,

    so my Knee_X:65535 cannot be filled in the DCC tool.

    That is ok.

    There are only 5 knee points left that I can input. I would like to know how to input them better?

    You may input some extra one at the first section.

    e.g., from

    0   0

    512 512

    to 

    0 0

    1 1

    2 2

    3 3

    4 4

    512 512

    Alternatively, you may keep the xml and LUT files for decompanding from the python script if you are not making any changes.