People counting using BGT60tr13c on ESP32

Announcements

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Abeer
Level 1
Level 1
5 sign-ins First reply posted First like received

We're currently working on a project to achieve people counting using the BGT60tr13c radar sensor on an ESP32 platform. We've been experimenting with the SDK provided by the manufacturer, but we've hit a bit of a roadblock. It seems that the motion angle and segmentation features are precompiled for different machines in the SDK. Unfortunately, we're using ESP32, and the radar SDK doesn't seem to include any open-source segmentation and motion angle examples that would work for our setup. Any suggestions on how we could approach this challenge?

1 Solution
Siddharth_H
Moderator
Moderator
Moderator
100 solutions authored 50 likes received First question asked

Hello Abeer,

If you are successfully able to retrieve angle of the object, then you can use interpolation/ mapping technique to translate the angles to segments. You also can interpolate/ map both range and angle to create a segmentation map that shows both range and angle segments.

Here is a example code snippet where I have interpolated object's azimuth angle to segments of ~13 degrees (FoV(80)/num_segments(6)=13).

Siddharth_1-1692685909485.png

Output:

Siddharth_2-1692685945458.png

 

Let me know if this helps.

Thank you,

Siddharth.

View solution in original post

0 Likes
5 Replies
Siddharth_H
Moderator
Moderator
Moderator
100 solutions authored 50 likes received First question asked

Hi @Abeer ,

I understand that the motion angle and segmentation C algorithms are precompiled and we do not provide the source code publically nor we  provide these algorithms (motion angle and segmentation) support for ESP32 (yet), all we provide for ESP32 is presence detection. You will have to develop your own application/algorithm for now.

Suggestion: You can refer to the range angle map program from Python from which extracting range and angle is also possible and this algorithm is not precompiled : )

Look at this thread to know how  to extract range and angle from Python, you can refer this to implement the same on ESP32. Though DBF algorithm could get quiet heavy for ESP32, this can be given a try.

Thank you.

Siddharth.

0 Likes
Abeer
Level 1
Level 1
5 sign-ins First reply posted First like received

We have extended the Range Doppler Map application by adding Angle Monopulse algorithm to extract angles. However, we encountered a challenge as there were no references available to guide us in initiating the segmentation process.

0 Likes
Siddharth_H
Moderator
Moderator
Moderator
100 solutions authored 50 likes received First question asked

Hello Abeer,

If you are successfully able to retrieve angle of the object, then you can use interpolation/ mapping technique to translate the angles to segments. You also can interpolate/ map both range and angle to create a segmentation map that shows both range and angle segments.

Here is a example code snippet where I have interpolated object's azimuth angle to segments of ~13 degrees (FoV(80)/num_segments(6)=13).

Siddharth_1-1692685909485.png

Output:

Siddharth_2-1692685945458.png

 

Let me know if this helps.

Thank you,

Siddharth.

0 Likes
Abeer
Level 1
Level 1
5 sign-ins First reply posted First like received

Thanks for the above solution. I obtained range and angle information using RDM and AngleMonopulse. As this information was in polar coordinates, I converted it into cartesian coordinates and then divided the 1st and 2ndd quadrants into 4 segments each. This process aids me in segment identification. However, our objective revolves around tracking multiple human targets. I came across a forum post suggesting that segmentation assists in multiple target identification. Nevertheless, it appears that segmentation primarily contributes to tracking, and I suspect that a different approach is necessary for effectively tracking multiple targets. If you have any suggestions, kindly share your thoughts

0 Likes
Siddharth_H
Moderator
Moderator
Moderator
100 solutions authored 50 likes received First question asked

Hello,

Yes, this technique can only detect one target at a time. If you design your algorithm to detect multiple targets (range and angle) then you can segregate the object's coordinates to segments.

Thank you,

Siddharth. 

0 Likes