SPRAD86 March   2023 AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM68A , AM69A

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction
  4. 2Tuning Overview
  5. 3Hardware Requirement
  6. 4Software Requirement
    1. 4.1 Processor SDK Linux
    2. 4.2 TI's Reference Imaging Software
    3. 4.3 ISP Tuning Tool
  7. 5Sensor Software Development and Integration
    1. 5.1 Adding Sensor Driver to SDK
    2. 5.2 Updating GStreamer Plugins to Support the Sensor
      1. 5.2.1 Update TIOVX Modules
        1. 5.2.1.1 Source Code Change
        2. 5.2.1.2 Rebuild Modules
      2. 5.2.2 Update GStreamer Plugins
        1. 5.2.2.1 Source Code Change
        2. 5.2.2.2 Rebuild Plugins
        3. 5.2.2.3 Verify New Sensor in GStreamer Plugin
  8. 6Tuning Procedure
    1. 6.1 Verify Functional Operation of Camera Capturing
    2. 6.2 Enable Camera Streaming with Initial VPAC Configuration
      1. 6.2.1 Generate Configuration Files
      2. 6.2.2 Generate DCC Binary Files
      3. 6.2.3 Stream Video with the Initial Configuration
    3. 6.3 Adjust Camera Mounting
    4. 6.4 Capture Raw Images and Perform Basic Tuning
      1. 6.4.1 Launch the Tuning Tool and Create a Project
      2. 6.4.2 Tuning Order
      3. 6.4.3 Black Level Subtraction
      4. 6.4.4 Hardware 3A (H3A)
      5. 6.4.5 Auto White Balance (AWB)
        1. 6.4.5.1 Capture Raw Images for Different Lighting Conditions
        2. 6.4.5.2 Tuning AWB
      6. 6.4.6 Color Correction
    5. 6.5 Perform Fine Tuning
  9. 7Summary

Generate Configuration Files

Go to TI's reference imaging software, imaging/tools/default_DCC_profile_gen/configs, and create a configuration file for default camera properties. Existing configuration files in this folder can be references.

The following parameters need to be specified in this configuration file:

  • Raw image format information
    • WIDTH: sensor image width
    • HEIGHT: sensor image height
    • BIT_DEPTH: sensor pixel bit depth
    • BAYER_PATTERN: Bayer pattern, where 0=RGGB; 1=GRBG; 2=GBRG; 3=BGGR
      Note: Note that the above configuration information must match what's used in the media control command for configuring the camera format. For example, if the media control command for the IMX219 camera uses "[fmt:SRGGB10_1X10/1920x1080 field: none]", then the following values shall be used in this configuration file:
    • WIDTH 1920
    • HEIGHT 1080
    • BIT_DEPTH 10
    • BAYER_PATTERN 0
  • Camera sensor information
    • SENSOR_ID: DCC ID of the sensor (this must match the hard coded "dccID" value in tiovx_sensor_module.c, as described in updating GStreamer plugins for the sensor)
    • SENSOR_NAME: name of the sensor (this is for information only and not used by the tool)
    • SENSOR_DCC_NAME: corresponding DCC name (this is for information only and not used by the tool)
  • XML output folder
    • PRJ_DIR: folder to store the generated .xml files. This folder must be under imaging/sensor_drv/src.

Once the configuration file is created, run the Python script ctt_def_xml_gen.py in imaging/tools/default_DCC_profile_gen/scripts as below:

imaging/tools/default_DCC_profile_gen/scripts$ python ctt_def_xml_gen.py ../configs/<configuration file>

The generated xml files will be in folder dcc_xmls under the path specified by PRJ_DIR in the configuration file. This folder contains two sets of .xml files, with one set for linear mode and the other one for WDR mode. A script file "generate_dcc.sh" will also be generated in each xml folder. For example, below is the content of the xml folder for linear mode (for IMX219):

$PRJ_DIR/dcc_xmls/linear$ ls -l
generate_dcc.sh
imx219_awb_alg_ti3_tuning.xml
imx219_cfa_dcc.xml
imx219_h3a_aewb_dcc.xml
imx219_h3a_mux_luts_dcc.xml
imx219_linear_decompand_dcc.xml
imx219_mesh_ldc_dcc.xml
imx219_rgb2rgb_dcc.xml
imx219_viss_blc.xml
imx219_viss_nsf4.xml