0.2.1.2.2 Software Block Diagram of People-Counting Application
As shown in Figure 3, the implementation of the people-counting application demo on the IWR6843 consists of a signal chain running on the C674x DSP, and the tracking module running on the ARM®Cortex®-R4F processor.
At its core, the demo does two things:
- Use the radar data to produce a point cloud with each point containing an X, Y and Z coordinate, radial velocity, and SNR (signal to noise ratio)
- Finds and tracks clusters in the point cloud.
The point cloud generation uses a unique angle of arrival algorithm, called Capon Beamforming, which has only been implemented by TI in this demo. The tracking algorithm used is developed by TI and used in a variety of our applications. The rest of the document will explain how the signal chain and tracker function.
- Range processing:
- For each antenna, 1D windowing, and 1D fast Fourier transform (FFT)
- Range processing is interleaved with the active chirp time of the frame
- Implemented on HWA and Cortex R4F
- Capon Beamforming (BF):
- Static clutter removal
- Covariance matrix generation, angle spectrum generation, and integration is performed
- Outputs range-angle heat map
- Implemented on c674 DSP
- CFAR detection algorithm:
- Two-pass, constant false-alarm rate
- First pass cell averaging smallest of CFAR-CASO in the range domain, confirmed by second pass cell averaging smallest of CFAR-CASO in the angle domain, to find detection points.
- Implemented on c674 DSP
- Elevation Beamforming
- Capon BF algorithm is applied again for each point detected in Range-Azimuth heatmap
- 1-D Elevation Spectrum is generated and strongest signal is taken as the detected angle
- Implemented on c674 DSP
- Doppler estimation:
- For each detected [range, azimuth] pair from the detection module, estimate the Doppler by filtering the range bin using Capon beam-weights, and then run a peak search over the FFT of the filtered range bin.
- Implemented on c674 DSP
- Tracking:
- Operates on point cloud
- Searches for clusters in Cartesian + Doppler Space
- Predicts movement of clusters to maintain a track of unique objects such as people
- Output of the tracker is a set of trackable objects with certain properties like position, velocity, physical dimensions, and point density
- Implemented on Cortex R4F