SPRAD86A March   2023  – May 2024 AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM68A , AM69A

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. Introduction
  5. Tuning Overview
  6. Hardware Requirement
  7. Software Requirement
    1. 4.1 Processor SDK Linux
    2. 4.2 TI's Reference Imaging Software
    3. 4.3 ISP Tuning Tool
  8. Sensor Software Integration
    1. 5.1 Overview of Image Pipeline Software Architecture
    2. 5.2 Adding Sensor Driver to SDK
    3. 5.3 Updating TIOVX Modules
      1. 5.3.1 Source Code Change
      2. 5.3.2 Rebuild Modules
    4. 5.4 Update GStreamer Plug-in for VISS
      1. 5.4.1 Update VISS Plug-in Property
      2. 5.4.2 Add Exposure Setting for 2A Algorithm
        1. 5.4.2.1 Gain
        2. 5.4.2.2 Exposure Time
        3. 5.4.2.3 Other Parameters
      3. 5.4.3 Rebuild Plug-ins
      4. 5.4.4 Verify New Sensor in GStreamer Plug-in
  9. Tuning 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
  10. Perform Basic Tuning
    1. 7.1 Launch the Tuning Tool and Create a Project
    2. 7.2 Tuning Order
    3. 7.3 Black Level Subtraction
    4. 7.4 Hardware 3A (H3A)
    5. 7.5 PCID
    6. 7.6 Auto White Balance (AWB)
      1. 7.6.1 Capture Raw Images for Different Lighting Conditions
      2. 7.6.2 Tuning AWB
    7. 7.7 Color Correction
  11. Perform Fine Tuning
    1. 8.1 Edge Enhancement (EE)
    2. 8.2 Noise Filter 4 (NSF4)
  12. Live Tuning
    1. 9.1 Requirements
    2. 9.2 Supported Features
      1. 9.2.1 RAW Capture
      2. 9.2.2 YUV Capture
      3. 9.2.3 Live DCC Update
      4. 9.2.4 Exposure Control
      5. 9.2.5 White Balance Control
      6. 9.2.6 Sensor Register Read/Write
  13. 10Summary
  14. 11Revision History

Exposure Time

For exposure time, the minimum and maximum are usually specified as a number of row periods. For example, a certain sensor can have the following specification:

  • Minimum exposure time: 6 row periods
  • Maximum exposure time: (frame length – 30) row periods

Using resolution 2592 × 1944 as an example, the frame length is 1944 rows plus vertical blanking. Assuming the vertical blanking is 184, the frame length is 2128 rows. Therefore, the maximum exposure time is 2128 – 30 = 2098 row periods. Check the sensor driver and make sure the exposure time is written to the register according to the data sheet.

Since the DCC live tuning tool displays the exposure time in micro seconds, the preferred practice is to set the exposure time in micro seconds for 2A and perform a mapping between 2A and the sensor driver. The mapping depends on frame size and frame rate. For example, for 2592 × 1944 resolution and 60 fps, the minimum and maximum exposure time can be set as below in function get_<sensor>_ae_dyn_params():

p_ae_dynPrms->exposureTimeRange[count].min = 47;  /* 6*16.67/2128*1000 micro sec */
p_ae_dynPrms->exposureTimeRange[count].max = 16435; /* (2128-30)*16.67/2128*1000 micro sec */

Accordingly, the mapping from micro seconds to number of row periods (which is passed to the sensor driver) is provided in function gst_tiovx_isp_map_2A_values():

*exposure_time_mapped = (int) ((double)exposure_time * 2128 * 60 / 1000000 + 0.5);