megvii-research / PETR

[ECCV2022] PETR: Position Embedding Transformation for Multi-View 3D Object Detection & [ICCV2023] PETRv2: A Unified Framework for 3D Perception from Multi-Camera Images
Other
868 stars 132 forks source link

What is the purpose of the reverse_angle of the GlobalRotScaleTransImage? #8

Closed Yzichen closed 2 years ago

Yzichen commented 2 years ago

My understanding is that rot_angle is the rotation angle of 3D space, so the angle of rotation of gt_boxes should also be rot_angle, why should it be reversed?

vaesl commented 2 years ago

My understanding is that rot_angle is the rotation angle of 3D space, so the angle of rotation of gt_boxes should also be rot_angle, why should it be reversed?

Hi, we use the v0.17.1 version of mmdet3d. The rotation transformation in mmdet3d (refer to https://github.com/open-mmlab/mmdetection3d/blob/v0.17.1/mmdet3d/core/bbox/structures/lidar_box3d.py#L149) is achieved in clock-wise manner. While the basepoints (https://github.com/open-mmlab/mmdetection3d/blob/v0.17.1/mmdet3d/core/points/base_points.py#L173) are rotated in counterclockwise manner. So we need to make it reverse.

Yzichen commented 2 years ago

Ok, I understand, thanks for your reply. I'm using mmdet3d after the coordinate system reconstruction, rotation is all counter-clockwise, so I won't need to take the reverse.

vaesl commented 2 years ago

Yeah, there is no need to do that after the reconstruction.