Vision Apps User Guide
Auto Valet Parking Application 2 + 3D Surround View Application

Introduction

This application combines the Auto Valet Parking Application 2 application and the 3D Surround View Application application on a single J721e SoC. This demo utilizes two separate displays to output a live camera surround view image in addition to an output showing multiple deep learning networks for parking spot detection, vehicle detection and semantic segmentation.

Supported plaforms

Platform Linux x86_64 Linux+RTOS mode QNX+RTOS mode SoC
Support NO YES YES J721e

Data flow

The auto valet parking data flow can be seen below:

app_tidl_avp2_dataflow.jpg

The surround view data flow can be seen below:

vx_app_srv_camera_data_flow.png

Steps to run the application on J721e EVM

  1. Dual display mode must first be enabled prior to building. This can be done by undefining the ENABLE_DSS_SINGLE and defining the ENABLE_DSS_DUAL macros as seen below in the file platform//rtos/common/app_cfg_mcu2_0.h.
    #undef ENABLE_DSS_SINGLE
    #define ENABLE_DSS_DUAL
  2. Ethernet firmware must also be disabled in order to run this demo. The instructions for doing so can be found here How to disable ETHFW
  3. Build the application and related libraries as mentioned in Build Instructions for Linux+TI-RTOS mode
  4. Sample config files "app_avp2.cfg" and "app_srv.cfg" are provided under "/opt/vision_apps/app_srv_avp" folder on the rootfs partition. The Auto Valet Parking Application 2 and 3D Surround View Application explain details on how to configure these files properly.
  5. Follow steps 1-3 as mentioned in Run Instructions
    1. Important note: be sure to extract all test data to SD card or else the demo won't run
  6. The input files come from "${VX_TEST_DATA_PATH}/test_data/psdkra/"
  7. In Linux+RTOS or QNX+RTOS mode
    1. Setup requirements:
      1. Connect 4 D3-IMX390 (Version1-D3RCM) sensor boards on cam0-cam3 input port of the Fusion1 Platform, as shown in the above image. (Note: these are the only sensors that have been tested with the SRV demo). Please ensure that the power to the Fusion1 Platform is connected.
      2. The four cameras must be connected in the order front, right, back, left to cam0, cam1, cam2, cam3 respectively.
      3. An eDP display and an HDMI display with infotainment daughter card must be connected to the EVM in order to visualize the Surround View output and the Valet Parking application. Note: the display type is chosen via a build option as described in Step 3 of Run Instructions
    2. Prior to running the SRV demo, the Surround View Calibration demo must be run in order to view a properly calibrated demo.
    3. After running the Surround View Calibration demo, the following files will be located in the "${VX_TEST_DATA_PATH}/test_data/psdkra/srv/srv_app/" path:
      1. CALMAT.BIN
      2. CHARTPOS.BIN
      3. LENS.BIN
    4. You may need to power cycle the board after running the calibration demo. If the SRV demo hangs after running calibration, please power cycle the board.
    5. VX_TEST_DATA_PATH environment variable is set as part of vision_apps_init.sh
    6. Run the app as shown below on the EVM target
      cd /opt/vision_apps
      source ./vision_apps_init.sh
      ./run_app_srv_avp.sh
    7. Output will be visualized in real-time on your screen

Sample Output

Shown below are sample outputs seen on each of the dual displays.

app_srv_output.jpg
app_tidl_avp2_output.jpg