📸Coordinate System
Introduction 2D & 3D Fusion dataset coordinate system including camera parameter configuration
The point cloud annotation tool mainly involves two coordinate systems:
3D Point Cloud Coordinate System
The 3D point cloud tool uses a right-handed coordinate system. The coordinate system of the point cloud data is the world coordinate system, and the coordinate system of the point cloud is up with the Z axis (as shown in the figure below).

2D Image Coordinate System
The origin of the image in the 2D & 3D fusion tool mapping of the point cloud tool is in the upper left corner of the image. The horizontal represents the X axis. The vertical represents the Y axis.
The X value becomes larger to the right, and the Y value becomes larger downward (as shown in the figure below).

Camera parameters (for 2D & 3D fusion datasets)
The 2D & 3D mapping conversion process in the tool is basically the same as that of the general dataset, and the conversion parameters include camera extrinsic parameters and camera intrinsic parameters.
Example of camera parameters
width: Image width.
height: Image height
cameraExternal: Intrinsic parameters of camera
cameraInternal: Camera matrix with
4x4rowMajor: Whether cameraExternal is the row-major order or not, default is
true
Refer to Camera Calibration and 3D Reconstruction.
Universal Dataset Transformation
The general data conversion process is as follows:
point coordinates * camera external parameters * camera internal parameters = image coordinates
X/Y/Z: point cloud coordinate system coordinates
r11...t3: Camera extrinsic parameter matrix information
Fx/Fy/Cx/Cy: Camera internal parameter information
S(u,v): Image coordinates
Tool data conversion
The data conversion process of the tool is as follows:
S(u,v) = M(internal) x M(external) x P
P : point cloud coordinate system coordinates.
M(internal) : 4x4 internal parameter matrix (row order)
M(external) : 4x4 external parameter matrix (row order)
When building the camera parameters into the tool, the 4x3 or 3x3 matrix needs to be filled into a 4x4 matrix, as follows:


Conversion example (KITTI Dataset)
A 3D point x in Velodyne LiDAR coordinates gets projected to a point y in the i’th camera image as:
y = P(i) @ R(0) @ Tvelo_cam @ x
Refer to kitti-coordinate-transformation.
Code with Three.js
Conversion example (The PandaSet Dataset)
Code with Three.js
Last updated
Was this helpful?