Tool/software: Code Composer Studio
1. target info about accX/accY/accZ are assigned with dimension info (ex:targetList->target[n].accX = targetDescr[n].dim[0];)
2. No elements in MmwDemo_output_message_target struct to store dimensions info:depth, width, [height], doppler
3. However, TLV still have the output data for dimx/dimy/dimz
MmwDemo_appTask()
{
for(n=0; n<tNum; n++) {
targetList->target[n].tid = (uint32_t)targetDescr[n].uid;
targetList->target[n].posY = targetDescr[n].S[1];
targetList->target[n].posZ = targetDescr[n].S[2];
targetList->target[n].velX = targetDescr[n].S[3];
targetList->target[n].velY = targetDescr[n].S[4];
targetList->target[n].velZ = targetDescr[n].S[5];
targetList->target[n].accX = targetDescr[n].dim[0]; //refer to Gtrack.h & Mmw.output.h
targetList->target[n].accY = targetDescr[n].dim[1]; //refer to Gtrack.h & Mmw.output.h
targetList->target[n].accZ = targetDescr[n].dim[2]; //refer to Gtrack.h & Mmw.output.h
#ifndef ShortTarget
memcpy(targetList->target[n].ec, targetDescr[n].EC, sizeof(targetDescr[n].EC));
#endif
}
}
typedef struct
{
/** @brief Tracking Unit Identifier */
uint8_t uid;
/** @brief Target Identifier */
uint32_t tid;
/** @brief State vector */
float S[GTRACK_STATE_VECTOR_SIZE];
/** @brief Group covariance matrix */
float EC[GTRACK_MEASUREMENT_VECTOR_SIZE*GTRACK_MEASUREMENT_VECTOR_SIZE];
/** @brief Gain factor */
float G;
/** @brief Estimated target dimensions: depth, width, [height], doppler */
float dim[GTRACK_MEASUREMENT_VECTOR_SIZE];
typedef struct MmwDemo_output_message_target_t
{
/*! @brief tracking ID */
uint32_t tid;
/*! @brief Detected target X coordinate, in m */
float posX;
/*! @brief Detected target Y coordinate, in m */
float posY;
float posZ;
/*! @brief Detected target X velocity, in m/s */
float velX;
/*! @brief Detected target Y velocity, in m/s */
float velY;
float velZ;
/*! @brief Detected target X acceleration, in m/s2 */
float accX;
/*! @brief Detected target Y acceleration, in m/s2 */
float accY;
float accZ;
#ifndef ShortTarget
/*! @brief Target Error covarience matrix, [3x3 float], in row major order, range, azimuth, doppler */
float ec[16];
float g;
#endif
} MmwDemo_output_message_target;
For the document -Overhead_People_Tracking_and_Stance_Detection_users_guide.pdf, it says dimx/dimy/dimz are the target size in x/y/z dimension.
Seems need to update overhead People Counting Demo sample code for such issue..