core.pose_estimulation.pose_generation

Classes

PoseGenerator

PoseGenerator()

Attributes

collision_detector instance-attribute
collision_detector = CollisionDetector()
max_try_pose_num instance-attribute
max_try_pose_num = 5

Functions

generate_pose
generate_pose(init_mesh_obj: o3d.geometry.TriangleMesh, road_pc_input: numpy.ndarray, non_road_pc: numpy.ndarray, init_objs_box3d_corners: numpy.ndarray, objs_box3d_corners: numpy.ndarray) -> Tuple[List[float], float]
Parameters:
  • init_mesh_obj (TriangleMesh) –

    物体

  • road_pc_input (ndarray) –

    路面点云

  • non_road_pc (ndarray) –

    非路面点云

  • init_objs_box3d_corners (ndarray) –

    背景所有原有物体box3d的八个顶点

  • objs_box3d_corners (ndarray) –

    已插入物体box3d的八个顶点

Returns:
  • Tuple[List[float], float]

    物体插入位置,物体绕z轴旋转角度或者为None

transform_mesh_by_pose staticmethod
transform_mesh_by_pose(mesh_obj: o3d.geometry.TriangleMesh, shift: List[float] = None, rotation: float = None) -> o3d.geometry.TriangleMesh

根据位置和旋转对物体进行移动和旋转

Parameters:
  • mesh_obj (TriangleMesh) –

    物体

  • shift (List[float], default: None ) –

    物体插入位置

  • rotation (float, default: None ) –

    物体绕z轴旋转角度

Returns:
  • TriangleMesh

    经过移动和旋转的物体