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: Why does EVM judge two people as one person?

Part Number: IWR6843ISK

Hi, there.
I used IWR6843ISK EVM, flash memory for pplcount_lab_xwr68xx.bin(C:\ti\mmwave_industrial_toolbox_4_1_0\labs\people_counting\68xx_people_counting\prebuilt_binaries) firmware.I want to use STM32 chip combined with IWR6843ISK EVM to realize the function of counting the number of people in and out.Here are my questions:

1. When I used the pplcount_gui.exe  GUI program(C:\ti\mmwave_industrial_toolbox_4_1_0\labs\people_counting \68xx_people_counting\gui) to observe the target, I found that when two people walked into the detection area one by one, EVM would sometimes judge it as a person.

May I ask why?What factors will affect EVM's judgment of the number of people in the current region?

Is there a way to improve this function?
Or can you adjust which parameter makes the judgment more accurate?

2. When the distance between two people is about 1 meter or more, the area can be clearly identified as two people.
Are there only two people separated by more than one meter?

3. When I observed the target with the pplcount_gui.exe  GUI program, I found that when two people moved in the area, the small colored circle representing the target in the observation window would suddenly grow larger and disappear. May I ask why?

4. When I observed the target with the pplcount_gui.exe  GUI program, I found that when two people moved in the area, the number of people beside the observation window was 1. There was a small colored circle representing the target moving and its moving trajectory, and behind it there was a small black dot, which should be the point cloud data of the second target.
May I ask why the second target is only point cloud data, but will not be detected as human?

5. When two people move in the area, check the data of data serial port and find two situations.
a. The number of TLV in the frame header is 1, which is the point cloud TLV (0x06), but there is no target list TLV (0x07) and target index TLV (0x08), so that two people cannot be detected.
b. The TLV number of frame header is 2, which is the point cloud TLV (0x06) and the target list TLV (0x07), while there is no target index TLV (0x08). The first target number in the target list TLV belongs to the normal range, which is between 0-249, and the other number is super large, reaching 65532, with no rules.
I wonder if it is the anomaly of these two types of data that affects the EVM's judgment of the number of people in the current region?
Is there any way to remove these two kinds of abnormal data?

Due to the time difference between us, it will take a long time to get the reply, so I have a lot of questions, please forgive me.

Hope to get your help, thanks a lot.

  • Hi,

    First, I would recommend try "Sense and Direct: HVAC Control" in the latest Toolbox.

    Now to your questions:

    1. When people are close, their cluster will appear to be a single cluster. You can read about the allocation parameters in the pplcounting_customization_guide.pdf included with the lab.
    2. Minimum separation depends on some factors, mainly chirp config. I would expect minimum to be about 0.5 to 0.75 meters with the lab recommended above.
    3. This cirlce represents the gating function. When it can't detect a person anymore, it grows, assuming that it misjudged the location of the person. After some number of frames with no detection, it gives up and de-allocates the track.
    4. This second point cloud did not meet the allocation thresholds.
    5. This output is strange, I would expect either 1 TLV (point cloud) or 3 TLVs. Is there potentially a parsing error here? If there is an error with the output, this shouldn't effect the internal logic of the EVM. However, I think we need to do more debug here. It seems the data set is not getting sent properly. Are you able to reproduce this error? If so, how? Finally, if you can reproduce this, can you single step the software at the point where the TLV is created to determine if the TLV header is being constructed properly in the device?

    Regards,

    Justin