Files
massive-cloud/alg/点云测距v1.1/train_measurement_system/config/measurements.yaml

172 lines
4.4 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 列车测量任务配置文件
# 点云文件路径(支持相对路径和绝对路径)
# 相对路径:相对于本配置文件所在目录
# 绝对路径:完整路径
pointcloud_file: "../train_2_100M.py"
# pointcloud_file: "../../../head_train_pointcloud/train_2_100M.ply"
# 测量任务列表
tasks:
- name: "任务21_侧门高度"
type: "plane_to_plane"
enabled: true
description: "测量侧门顶部到底部的距离"
visualization_dir: "visualizations" # 可视化输出目录
# 源平面(采样点的来源)
source_roi:
bbox_min: [-2500, 3358, -1545]
bbox_max: [-1500, 3362, -1525]
# 目标平面(测量距离的目标)
target_roi:
bbox_min: [-2500, 1180, -1621]
bbox_max: [-1500, 1180, -1500]
# 算法参数
params:
# 从源平面采样的点数
sample_points: 100
# RANSAC平面拟合参数
ransac_threshold: 2.0 # 内点距离阈值(mm)
ransac_max_iterations: 1000
min_inlier_ratio: 0.6 # 最小内点比例
- name: "任务2_车体长度"
type: "plane_to_plane"
enabled: true
description: "测量车体前后端面的距离"
visualization_dir: "visualizations"
source_roi:
bbox_min: [-14007, 1500, -800]
bbox_max: [-14006, 1900, 800]
target_roi:
bbox_min: [12499, 1216, -1300]
bbox_max: [12501, 3200, 1300]
params:
sample_points: 100
ransac_threshold: 2.0
ransac_max_iterations: 1000
min_inlier_ratio: 0.6
- name: "任务43_窗口下沿高度"
type: "plane_to_plane"
enabled: true
description: "测量窗口下沿到地面的距离"
visualization_dir: "visualizations"
source_roi:
bbox_min: [5562, 1982, 1672]
bbox_max: [6772, 1983, 1677]
target_roi:
bbox_min: [-10222, 1180, -302]
bbox_max: [12428, 1180, 302]
params:
sample_points: 100
ransac_threshold: 2.0
ransac_max_iterations: 1000
min_inlier_ratio: 0.6
- name: "任务44_车顶高度"
type: "plane_to_plane"
enabled: true
description: "测量车顶到地面的距离"
visualization_dir: "visualizations"
source_roi:
bbox_min: [-1419, 4000, -237]
bbox_max: [9030, 4000, 237]
target_roi:
bbox_min: [-10222, 1180, -302]
bbox_max: [12428, 1180, 302]
params:
sample_points: 100
ransac_threshold: 2.0
ransac_max_iterations: 1000
min_inlier_ratio: 0.6
- name: "任务3_边梁立面6点到z=0平面距离"
type: "point_to_plane"
enabled: true
description: "测量边梁立面6个精确点到z=0平面的距离"
mode: "exact_points"
visualization_dir: "visualizations" # 可视化输出目录
# 目标点坐标(左右各3个点)
target_points:
- [-753.5, 1052.5, -1445]
- [-753.5, 1052.5, 1445]
- [3446.5, 1053, -1445]
- [3446.5, 1053, 1445]
- [8146.5, 1053, -1445]
- [8146.5, 1053, 1445]
# 平面参数 (ax + by + cz + d = 0),z=0即c=1, d=0
plane:
a: 0
b: 0
c: 1
d: 0
# 最近点搜索半径(mm)
search_radius: 10.0
- name: "任务15_侧墙z最大值点到z=0平面距离"
type: "point_to_plane"
enabled: true
description: "从两个包围盒提取侧墙点云,选取z绝对值最大的10个点,计算到z=0平面的距离"
mode: "bbox_filtered"
visualization_dir: "visualizations" # 可视化输出目录
# 包围盒列表
bboxes:
- name: "左侧墙"
min: [-1468, 1899, -1680]
max: [12300, 1901, -1677]
- name: "右侧墙"
min: [-1468, 1899, 1677]
max: [12300, 1901, 1680]
# 过滤条件
filter:
type: "max_abs_coordinate"
axis: "z"
top_n: 10
# 平面参数 (z=0)
plane:
a: 0
b: 0
c: 1
d: 0
- name: "任务4_纵向梁距离"
type: "point_to_point"
enabled: true
description: "测量关于z=0对称的点对之间的距离(纵向梁)"
visualization_dir: "visualizations"
# 点对配置(使用任务3的6个点,配对测量)
point_pairs:
- name: "前端点对"
point1: [-753.5, 1052.5, -1445]
point2: [-753.5, 1052.5, 1445]
- name: "中间点对"
point1: [3446.5, 1053, -1445]
point2: [3446.5, 1053, 1445]
- name: "后端点对"
point1: [8146.5, 1053, -1445]
point2: [8146.5, 1053, 1445]
# 最近点搜索半径(mm)
search_radius: 10.0