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.

IWR6843ISK-ODS: Queries regarding 3d people count demo on iwr6843-ods

Part Number: IWR6843ISK-ODS

Hi,

I am working on the 3D people counting  demo Code base from mmwave tool box 4.2 on   IWR6843-ODS  board  and in this case i am having the following queries.

1.Though i am using the default configuration  itself,the detections are not that much accurate and in some cases the track is not forming , wherein the detections are happening.It requires a significant movement to form the track .

2.Why GUI is not responding when the default mss and dss debug binaries from the toolbox are loaded through CCS. 

3.In the GUI what is the significance of Display static points option.Does is signify enabling and disabling static clutter. 

4. In the GUI,in the config type column what is  the  legacy 2D counting option and how to use it.

5.I disabled the GTRACK_3D macro that acts as a switch between 3d and 2d tracking, built and flashed the binary, and made required changes in the tracking parameters in the configuration file,but when the demo is run and the configuration is fed in the GUI,the GUI is not getting triggered.

The following gtrack parameters are changed in the provided config file

Default configuration for 3D tracking

staticBoundaryBox -2 2 2 8.5 -2 2
boundaryBox -2.5 2.5 0.5 9 -2.5 2.5
gatingParam 3 1.5 1.5 2 0
allocationParam 50 800 0.05 5 0.5 20
maxAcceleration 0.1 0.1 0.1

changed configuration when 2d tracking is enabled

staticBoundaryBox -2 2 2 8.5 
boundaryBox -2.5 2.5 0.5 9 
gatingParam 3 1.5 1.5 0
allocationParam 50 0.05 5 0.5 20
maxAcceleration 0.1 0.1

6.What is the actual way to change from 3D gtrack to 2D Gtrack if the way i did in point 4 is wrong.

  • Hi,

    1. Change your allocation parameters. See the pplcount_customization_guide.pdf
    2. Are you running the binaries after you load them onto the device? Are the binaries crashing for any reason after you run them?
    3. This is just a visualization toggle, the static points are always detected and used by the device.
    4. This works with the deprecated "68xx_People_Counting" lab, which had a different output format since it used 2D data.
    5. You need to link the 2D gtrack library as well when compiling the demo. Otherwise everything else you have done is correct.
    6. See number 5.

    Regards,

    Justin

  • Hi Justin,

    2.Yes,i am running the binaries after  loading them onto the device and they are not crashing after i run.

    4.For this point, can you specify in which version of mmwave  industrial toolbox i can find  deprecated "68xx_People_Counting" lab?

    5.For this point,Can you clearly specify which 2D gtrack library to be included and where can i find the library?

  • Hi Archana,

    2. Can you connect to the device with other software like Tera Term?

    4. 4.0.0 and below

    5. You can recompile the gtrack library in the SDK in 2D mode. It is at <SDK_Install_DIR>/ti/packages/alg/gtrack - it comes with a makefile, and should be compiled the same way the Out of Box demos are compiled. Make sure to change the linker path in the demo to point to the new gtrack library, and ensure the point cloud input is correct.

    Regards,

    Justin

  • Hi,

    1. For point 1. tuning the allocation parameters as specified in the customization guide did not help in detecting the static people.

    For debugging the above issue i tried to publish the point cloud data(data that is given as input to gtrack) without performing gtrack  to  the GUI and observed that  only if the person moves detections are seen and as soon as the person becomes static the detections are lost, why is this happening?How i can resolve this issue to detect static person.

    And one more observation made is there is flag hardcoded to 1 in the pipeline(processInst->aoaInput->clutterRemovalFlag = 1) in the DPU_radarProcess_process  function in the radarProcess.c file and when i set that flag to 0 there are no detections at all in the GUI.Can you expain why this is happening?

  • Hi Archana,

    The People Counting algorithm implements static clutter removal to filter out non-human objects. This is why static people disappear. You can try a chirp with better doppler resolution to see smaller movements. For example, try this:

    sensorStop
    flushCfg
    dfeDataOutputMode 1
    channelCfg 15 7 0
    adcCfg 2 1
    adcbufCfg -1 0 1 1 1
    lowPower 0 0
    profileCfg 0 60 250 10 40 0 0 98 1 128 6500 0 0 36
    chirpCfg 0 0 0 0 0 0 0 1
    chirpCfg 1 1 0 0 0 0 0 2
    chirpCfg 2 2 0 0 0 0 0 4
    frameCfg 0 2 96 0 125 1 0
    dynamicRACfarCfg -1 4 4 2 4 8 16 4 4 2.00 2.50 0.50 1 1
    staticRACfarCfg -1 4 4 2 4 8 16 4 6 8.00 13.00 0.30 0 0
    dynamicRangeAngleCfg -1 0.75 0.0010 1 0
    dynamic2DAngleCfg -1 3 0.0300 1 0 1 0.50 0.85 8.00
    staticRangeAngleCfg -1 1 8 2
    antGeometry0 0 -1 -2 -3 -2 -3 -4 -5 -4 -5 -6 -7
    antGeometry1 -1 -1 -1 -1 0 0 0 0 -1 -1 -1 -1
    antPhaseRot 1 1 1 1 1 1 1 1 1 1 1 1
    fovCfg -1 70.0 20.0
    compRangeBiasAndRxChanPhase 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
    staticBoundaryBox -2 2 2 8.5 -2 2
    boundaryBox -2.5 2.5 0.5 6 -2.5 2.5
    sensorPosition 2 0 10
    gatingParam 3 1.5 1.5 2 0
    stateParam 3 3 10 40 5 0
    allocationParam 200 800 0.1 1500 0.5 20
    trackingCfg 1 2 1000 20 67 105 50
    sensorStart

    We have not validated that the software works after the modification you have made, you will have to run the code in debug mode to determine why it is crashing.

    Regards,

    Justin

  • Hi Justin,

    Thanks for the fast reply.

    The above configuration is working fine without crashing and as mentioned smaller movements are detected,but i want the static human to be detected so how to disable static clutter removal from the algorithm.

    And can you please answer the following;

     A flag is hardcoded to 1 in the pipeline(processInst->aoaInput->clutterRemovalFlag = 1) in the DPU_radarProcess_process  function in the radarProcess.c file and when i set that flag to 0 there are no detections at all in the GUI.Can you expain why this is happening?

    Regards,

    Archana

  • Hi Archana,

    After setting the flag to one, does the device still run? There is very limited memory in this demo, so we may be running out of memory if memory use needs to be changed to support disabling static clutter removal.

    We run a secondary static detection chain as well - does that not serve your purpose?

    Regards,

    Justin

  • Hi Justin,

    Where this secondary static detection chain is performed in the pipeline? and where exactly the static object removal is implemented in the demo?

  • Hi Archana,

    Static Clutter removal happens after the 1D FFT. You can see that it is one of the first steps performed by the Capon DPU. (Look in objectDetection.c in the DSS). During static clutter removal, the static information is saved. After the Capon Signal Chain completes, the static information chain runs. This performs standard range-angle detection on the static info, similar to Out of Box demo AoA. 

    In the visualizer, you can check "Display Static Points" to see how this output looks.

    Regards,

    Justin