Radar velocity vectors do not perfectly converge to a point

radar_converge

I’m using the official visualization function ‘nusc.render_sample_data’ to visualize the RADAR points velocity vectors. (The ‘v1.0-mini’ nusc.sample[80:120] frames, and the ego vehicle is not moving).

Based on my understanding, because I’m visualizing the points from ‘RADAR_FRONT’, all the velocity vectors should perfectly converge to one point in BEV due to the RADAR radial velocity measurement. However, the vectors only approximately point to the position of radar sensor, but they do not converge to one exact point in the BEV, as shown in the Figure above.

I wonder what is the reason behind this. Is there any bugs in the visualization function, or is this due to the internal radar measurement noises / errors which is out of our control?

@yman I don’t think the velocity vectors need to necessarily converge to the point position of the radar sensor. These velocity vectors emanate from each point that the radar hits, and the direction and magnitude of the vectors are determined by the object that each point lies on.

Putting it another way: if the object is moving away from the ego, you would even expect to see the velocity vectors point away from the ego (and not converge towards the ego)

Here’s an example:

from nuscenes.nuscenes import NuScenes


nusc = NuScenes(version='v1.0-mini', dataroot='/data/sets/nuscenes', verbose=True)

my_sample = nusc.sample[20]
nusc.render_sample_data(my_sample['data']['RADAR_FRONT'], nsweeps=5, underlay_map=True)

Thanks for your reply. I understand what you are saying, but we are not exactly talking about the same thing.

The radar sensor measures the radial velocity (not the tangential velocity), so when you extend the velocity vector, it should always converge at the (0, 0) point, which is the radar sensor origin point. The direction of the vector doesn’t matter because I’m talking about the infinitely long line.

To put it in another way, all velocity vectors are detected by the radar sensor, so the vectors must all point towards (or from) the radar sensor (0, 0) location. However, this is only approximately true but not perfectly true, as shown by the top figure. And I wonder why.