Skip to main content

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 NameTypeRequiredDescription
coordinate_systemJSONYesCoordinate system of image POS, see coordinate_system for details
camera_meta_dataJSONYesCamera parameters, see camera_meta_data for details
image_meta_dataJSONYesImage collection, see image_meta_data for details
lidar_dataJSONYesLidar data, see lidar_data for details

coordinate_system Object

Field NameTypeDescriptionExample Value
typeintCoordinate system type: 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF2
type_namestringCoordinate system type name (optional, auxiliary description)"Geographic"
labelstringCoordinate system name (optional)"WGS 84"
epsg_codeintEPSG code (required for geographic/projected/geocentric coordinate systems)4326
wktstringWKT string (optional, alternative to epsg_code)"..."
origin_pointarray[3]Origin WGS84 coordinates [longitude, latitude, elevation] (required only when type=0 LocalENU)[114.12, 22.12, 0]
offsetarray[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 NameTypeRequiredDescription
idintYesCamera unique ID
meta_dataobjectYesCamera元信息,详见下表

meta_data 子字段说明:

Field NameTypeRequiredDescription
projection_modelintYesLens model: 0-perspective lens (k1,k2,k3,p1,p2); 1-fisheye lens (k1,k2,k3,k4)
camera_namestringYesCamera name
widthintYesSensor width (pixels)
heightintYesSensor height (pixels)
parametersarrayYesCamera 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_parametersarrayNoArray 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 NameTypeRequiredDescription
idintYesImage unique ID
pathstringYesImage absolute path
meta_dataobjectYesImage元信息,详见下表

meta_data 子字段说明:

Field NameTypeRequiredDescription
widthintYesImage width (pixels)
heightintYesImage height (pixels)
camera_idintYesCorresponding camera ID
posarray[3]YesPOS position [longitude/X, latitude/Y, elevation/Z], must be specified for true-scale reconstruction
pos_sigmaarray[3]YesPOS 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
orientationarray[9]No3x3旋转矩阵(9个值,行主序,单位向量,世界坐标系到相机坐标系的旋转矩阵)
position_constantbool是否固定位置(true/false),固定位置意味着空三不会优化改变图像的位置,保持输入值
dewarp_flagbool畸变校正标志(true表示图像已去畸变)

lidar_data Data

Field NameTypeDescription
coordinate_systemJSONCoordinate system definition for lidar data, LAS and trajectory files must use the same coordinate system
laser_meta_dataarrayList of lidar point cloud file metadata
trajectory_meta_dataarrayList of lidar trajectory data

laser_meta_data Sub-fields

Field NameTypeDescription
idintLAS point cloud data ID
pathstringLAS point cloud file path (supports LAS format)
trajectory_idintAssociated trajectory ID

trajectory_meta_data Sub-fields

Field NameTypeDescription
idintTrajectory data ID
trajectory_pointsarrayTrajectory point data list

trajectory_points Sub-fields

Field NameTypeDescription
posarrayPosition coordinates [longitude/X, latitude/Y, elevation/Z]
timedoubleTimestamp (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 // 时间戳
},
....
]
}
]
}
}