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.

Compiler/IWR1642: IWR1642: question about gateCreateLim of gtrack

Part Number: IWR1642

Tool/software: TI C/C++ Compiler

Hi,
I am learning the lab0013_traffic_monitoring_16xx examples,I have the following questions about gTrack.
1. In gtrack_gateCreateLim function, we compute the gating volume, gating volume can be estimated as the volume of the Ellipsoid.

    /* Compute unitary volume */
    a = 1/sqrtf(EC[0]);
    b = 1/sqrtf(EC[4]);
    c = 1/sqrtf(EC[8]);
    v = 4*PI/3*a*b*c;
  
    /* Compute constant volume expansion factor */
    gConst = powf((float)(volume/v), (float)(2./3.));

a = range variance, b = angle variance, c = radial velocity variance , v = (4*pi/3)*a*b*c,
question 1:
why the constant volume expansion factor gConst need be powered by 2/3?

2. 1. In gtrack_gateCreateLim function,

/* Compute limiters */
    gtrack_matrixCholesky3(EC, LQ);
    gtrack_matrixInv3(LQ, W);

    gMin = gConst;

    /* Orthogonal projections onto Range, Angle and Doplper dimentions */

    /* Orthogonal projections onto Range is the RSS of the first column of W */
    /* s[0]=2*sqrtf(w[0]*w[0] + w[3]*w[3] + w[6]*w[6]) */
    /* gLimit = (gateLim[0]/s[0])^2=gateLim[0]^2/(4*(w[0]*w[0] + w[3]*w[3] + w[6]*w[6]) */
    if(gateLim[0] != 0) {
        gLimit = (gateLim[0]*gateLim[0])/(4*(W[0]*W[0] + W[3]*W[3] + W[6]*W[6]));
        if(gMin > gLimit)
            gMin = gLimit;
    }

question 2:
what The calculation principle of limiters?
In other words, why Orthogonal projections onto Range is the RSS of the first column of W ? and s[0]= 2*sqrtf(w[0]*w[0] + w[3]*w[3] + w[6]*w[6]) = Orthogonal projections onto Range ?
In fact, I don't know what it means for EC to do the Cholesky decomposition and then invert it?

  • Former Member
    0 Former Member

    Hello,

    Please refer to the documentation in the gtrack algorithm folder of the mmwave sdk. <mmwave sdk directory>\packages\ti\alg\gtrack\docs

    The document provides details on the implemented gtrack algorithm as well as references that can be used for further study if needed.

    Amanda 

  • I have seen this document, which does not describe the calculation process of "limiters"

  • Former Member
    0 Former Member in reply to shixian li

    Hello,

    I would recommend consulting external literature sources referenced in the document for a detailed understanding of the calculations and tracking concepts 

    The limits were introduced so that the gating ellipsoids would have a definite constraint since they can "grow" depending on the point cloud and track update process.

    Amanda

  • Hello,
    Thank you very much for answering my question again.
    Firstly, I can't find the document "multi-target Tracking with Radar Applications.pdf" on the Internet.
    Secondly, I still can't find the answer according to your hint.
    I wonder if you can directly answer my question or further hint. My question is:
    1. why the constant volume expansion factor gConst need be powered by 2/3?
    2. What it means for EC to do the Cholesky decomposition and then invert it?
    CSBoy

  • Former Member
    0 Former Member in reply to shixian li

    Hello,

    The extent of the documentation available for the algorithm has been linked. For more details it is recommended to consult external sources on the subject as provided in the references section. 

    Please note that the source code is provided as example demo evaluation code and for the use case described in the demo this method of calculating gate limits was empirically determined to result in more stable results.

    Amanda