Lidar Data Requirements
Lidar point cloud data can be used to reconstruct Gaussian Splatting and 3D textured model results. Callers need to write the data required for reconstruction into a JSON file in the specified format.
Required data includes:
- ✅ Point Cloud Data: Usually point cloud data in LAS format
- ✅ Trajectory Data: Usually in txt format, storing timestamp and position X/Y/Z per line
- ✅ Image Data: Image collection
- ✅ Image POS: Image position XYZ and attitude angle data
- ✅ Camera Parameters: Camera focal length, principal point internal parameters, and distortion parameters
LIDAR Reconstruction Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
coordinate_system | JSON | Yes | Coordinate system of image POS, see coordinate_system for details |
camera_meta_data | JSON | Yes | Camera parameters, see camera_meta_data for details |
image_meta_data | JSON | Yes | Image collection, see image_meta_data for details |
lidar_data | JSON | Yes | Lidar data, see lidar_data for details |
coordinate_system Object
| Field Name | Type | Description | Example Value |
|---|---|---|---|
type | int | Coordinate system type: 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF | 2 |
type_name | string | Coordinate system type name (optional, auxiliary description) | "Geographic" |
label | string | Coordinate system name (optional) | "WGS 84" |
epsg_code | int | EPSG code (required for geographic/projected/geocentric coordinate systems) | 4326 |
wkt | string | WKT string (optional, alternative to epsg_code) | "..." |
origin_point | array[3] | Origin WGS84 coordinates [longitude, latitude, elevation] (required only when type=0 LocalENU) | [114.12, 22.12, 0] |
offset | array[3] | Coordinate system origin offset (optional) | [0, 0, 0] |
如下为最常见的WGS84和CGCS2000坐标系:
{
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected
"type_name": "Geographic",
"label": "WGS 84", // Coordinate system name
"epsg_code": 4326 // EPSG code
}
{
"type": 3, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected
"type_name": "Projected",
"label": "WGS 84 / UTM zone 50N", // Coordinate system name
"epsg_code": 32650 // EPSG code
}
{
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected
"type_name": "Geographic",
"label": "CGCS2000", // Coordinate system name
"epsg_code": 4490 // EPSG code
}
{
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected
"type_name": "Projected",
"label": "CGCS2000 / 3-degree Gauss-Kruger CM 114E", // Coordinate system name
"epsg_code": 4547 // EPSG code
}
camera_meta_data Object
| Field Name | Type | Required | Description |
|---|---|---|---|
id | int | Yes | Camera unique ID |
meta_data | object | Yes | Camera元信息,详见下表 |
meta_data 子字段说明:
| Field Name | Type | Required | Description |
|---|---|---|---|
projection_model | int | Yes | Lens model: 0-perspective lens (k1,k2,k3,p1,p2); 1-fisheye lens (k1,k2,k3,k4) |
camera_name | string | Yes | Camera name |
width | int | Yes | Sensor width (pixels) |
height | int | Yes | Sensor height (pixels) |
parameters | array | Yes | Camera internal parameter group (perspective camera order: fx, fy, cx, cy, k1, k2, k3, p1, p2; fisheye camera order: fx fy cx cy k1 k2 k3 k4) |
constant_parameters | array | No | Array of parameter indices to fix camera internal parameters during AT solution, specified according to the parameter order in parameters (index starts from 0), e.g., for perspective camera, specifying [0,1,2,3,4,5,6,7,8] means fixing all parameters |
透视镜头
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"projection_model": 0, // Perspective camera
"camera_name": "common",
"width": 5280,
"height": 3956,
"parameters": [
3713.29, // fx
3713.29, // fy
2647.02, // cx
1969.28, // cy
-0.11257524, // k1
0.01487443, // k2
-0.00008572, // k3
1e-7, // p1
-0.02706411 // p2
]
}
}
]
鱼眼镜头
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"camera_name": "fisheye", // Fisheye camera
"projection_model": 1,
"width": 3600,
"height": 3600,
"parameters": [
982.7593599212141, // fx
982.7593599212141, // fy
1747.6373897301492, // cx
1806.4116030074354, // cy
0.03702410479839055, // k1
-0.016007338300982825, // k2
-1.0884582901480562e-05, // k3
-9.773097281093723e-05 // k4
]
}
}
]
image_meta_data Object
| Field Name | Type | Required | Description |
|---|---|---|---|
id | int | Yes | Image unique ID |
path | string | Yes | Image absolute path |
meta_data | object | Yes | Image元信息,详见下表 |
meta_data 子字段说明:
| Field Name | Type | Required | Description |
|---|---|---|---|
width | int | Yes | Image width (pixels) |
height | int | Yes | Image height (pixels) |
camera_id | int | Yes | Corresponding camera ID |
pos | array[3] | Yes | POS position [longitude/X, latitude/Y, elevation/Z], must be specified for true-scale reconstruction |
pos_sigma | array[3] | Yes | POS position accuracy (meters), RTK positioning: [0.03,0.03,0.06], regular GPS positioning: [2.0,2.0,5.0]. If RTK positioning data is used, it is strongly recommended to select RTK weight for highest accuracy |
orientation | array[9] | No | 3x3旋转矩阵(9个值,行主序,单位向量,世界坐标系到相机坐标系的旋转矩阵) |
position_constant | bool | 否 | 是否固定位置(true/false),固定位置意味着空三不会优化改变图像的位置,保持输入值 |
dewarp_flag | bool | 否 | 畸变校正标志(true表示图像已去畸变) |
lidar_data Data
| Field Name | Type | Description |
|---|---|---|
coordinate_system | JSON | Coordinate system definition for lidar data, LAS and trajectory files must use the same coordinate system |
laser_meta_data | array | List of lidar point cloud file metadata |
trajectory_meta_data | array | List of lidar trajectory data |
laser_meta_data Sub-fields
| Field Name | Type | Description |
|---|---|---|
id | int | LAS point cloud data ID |
path | string | LAS point cloud file path (supports LAS format) |
trajectory_id | int | Associated trajectory ID |
trajectory_meta_data Sub-fields
| Field Name | Type | Description |
|---|---|---|
id | int | Trajectory data ID |
trajectory_points | array | Trajectory point data list |
trajectory_points Sub-fields
| Field Name | Type | Description |
|---|---|---|
pos | array | Position coordinates [longitude/X, latitude/Y, elevation/Z] |
time | double | Timestamp (seconds), must match the timestamp of LAS point cloud |
Example:
{
"coordinate_system": {
"type": 2,
"epsg_code": 4326
},
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"camera_name": "Left",
"projection_model": 1,
"width": 3600,
"height": 3600,
"parameters": [
982.7593599212141,
982.7593599212141,
1747.6373897301492,
1806.4116030074354,
0.03702410479839055,
-0.016007338300982825,
-1.0884582901480562e-05,
-9.773097281093723e-05
]
}
},
{
"id": 2,
"meta_data": {
"camera_name": "Right",
"projection_model": 1,
"width": 3600,
"height": 3600,
"parameters": [
982.7593599212141,
982.7593599212141,
1747.6373897301492,
1806.4116030074354,
0.03702410479839055,
-0.016007338300982825,
-1.0884582901480562e-05,
-9.773097281093723e-05
]
}
}
],
"image_meta_data":[
{
"id": 1,
"path": "\\left\\2390-195042-472_00395-L.JPG",
"meta_data": {
"width": 3600,
"height": 3600,
"camera_id": 1,
"pos": [
-2272303.077314121,
5011055.355739306,
3215292.943560472
],
"pos_sigma": [0.03,0.03,0.06],
"orientation": [
0.8929275412022056,
0.43070972182403255,
0.13103259781004117,
-0.4500241512548592,
0.8457917052937085,
0.2865565468519331,
0.012596406230632032,
-0.31484206641207435,
0.9490604847782084
]
}
},
{
"id": 2,
"path": "\\right\\2390-195042-472_00395-R.JPG",
"meta_data": {
"width": 3600,
"height": 3600,
"camera_id": 2,
"pos": [
-2272303.117693735,
5011055.368901664,
3215292.967908075
],
"pos_sigma": [0.03,0.03,0.06],
"orientation": [
0.8918935649712837,
0.435497387453275,
0.12193397510204676,
-0.4504120798442928,
0.8311302214603127,
0.3261157973874772,
0.040679566039387514,
-0.34578111645476495,
0.9374329802231962
]
}
}
],
"lidar_data": {
"coordinate_system": {
"type": 3,
"epsg_code": 32632
},
"laser_meta_data": [ // 激光雷达点云文件列表
{
"id": 1, // 文件ID
"path": "C:/path/to/file.las", // 点云文件路径
"trajectory_id": 1 // 对应的轨迹ID
}
],
"trajectory_meta_data": [ // 激光雷达轨迹数据
{
"id": 1, // 轨迹ID
"trajectory_points": [ // 轨迹点列表
{
"pos": [ // 位置坐标 [X, Y, Z]
-2272285.667,
5011024.157,
3215249.921
],
"time": 284833.06453 // 时间戳
},
....
]
}
]
}
}