Skip to content

H LIDAR detection

horverno edited this page Jun 24, 2021 · 3 revisions

Ebben a wiki bejegyzésben az egyszerű elekerüléses feladat LIDAR detektálójának kimeneti topicjait írjuk le.

Topicok

img

A LIDAR alapú detektálásnál a klaszterező (eucledian_cluster_detect) két fontos topicot hírdet:

  • /detection/lidar_detector/objects topic, melynek típusa: autoware_msgs/DetectedObjectArray
  • /detection/lidar_detector/objects_markers topic, melynek típusa: visualization_msgs/MarkerArray: ebben a topicban külön namespace-el szerepelnek a objektumok középpontjai (kék gömb az animáción), meg a lidartól való távolságuk (fehér text az animáción), illetve a befoglaló poligon (zöld poligonok az animáción)

Üzenetek felépítése

rosmsg show autoware_msgs/DetectedObjectArray

std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
autoware_msgs/DetectedObject[] objects
  std_msgs/Header header
    uint32 seq
    time stamp
    string frame_id
  uint32 id
  string label
  float32 score
  std_msgs/ColorRGBA color
    float32 r
    float32 g
    float32 b
    float32 a
  bool valid
  string space_frame
  geometry_msgs/Pose pose
    geometry_msgs/Point position
      float64 x
      float64 y
      float64 z
    geometry_msgs/Quaternion orientation
      float64 x
      float64 y
      float64 z
      float64 w
  geometry_msgs/Vector3 dimensions
    float64 x
    float64 y
    float64 z
  geometry_msgs/Vector3 variance
    float64 x
    float64 y
    float64 z
  geometry_msgs/Twist velocity
    geometry_msgs/Vector3 linear
      float64 x
      float64 y
      float64 z
    geometry_msgs/Vector3 angular
      float64 x
      float64 y
      float64 z
  geometry_msgs/Twist acceleration
    geometry_msgs/Vector3 linear
      float64 x
      float64 y
      float64 z
    geometry_msgs/Vector3 angular
      float64 x
      float64 y
      float64 z
  sensor_msgs/PointCloud2 pointcloud
    std_msgs/Header header
      uint32 seq
      time stamp
      string frame_id
    uint32 height
    uint32 width
    sensor_msgs/PointField[] fields
      uint8 INT8=1
      uint8 UINT8=2
      uint8 INT16=3
      uint8 UINT16=4
      uint8 INT32=5
      uint8 UINT32=6
      uint8 FLOAT32=7
      uint8 FLOAT64=8
      string name
      uint32 offset
      uint8 datatype
      uint32 count
    bool is_bigendian
    uint32 point_step
    uint32 row_step
    uint8[] data
    bool is_dense
  geometry_msgs/PolygonStamped convex_hull
    std_msgs/Header header
      uint32 seq
      time stamp
      string frame_id
    geometry_msgs/Polygon polygon
      geometry_msgs/Point32[] points
        float32 x
        float32 y
        float32 z
  autoware_msgs/LaneArray candidate_trajectories
    int32 id
    autoware_msgs/Lane[] lanes
      std_msgs/Header header
        uint32 seq
        time stamp
        string frame_id
      int32 increment
      int32 lane_id
      autoware_msgs/Waypoint[] waypoints
        int32 gid
        int32 lid
        geometry_msgs/PoseStamped pose
          std_msgs/Header header
            uint32 seq
            time stamp
            string frame_id
          geometry_msgs/Pose pose
            geometry_msgs/Point position
              float64 x
              float64 y
              float64 z
            geometry_msgs/Quaternion orientation
              float64 x
              float64 y
              float64 z
              float64 w
        geometry_msgs/TwistStamped twist
          std_msgs/Header header
            uint32 seq
            time stamp
            string frame_id
          geometry_msgs/Twist twist
            geometry_msgs/Vector3 linear
              float64 x
              float64 y
              float64 z
            geometry_msgs/Vector3 angular
              float64 x
              float64 y
              float64 z
        autoware_msgs/DTLane dtlane
          float64 dist
          float64 dir
          float64 apara
          float64 r
          float64 slope
          float64 cant
          float64 lw
          float64 rw
        int32 change_flag
        autoware_msgs/WaypointState wpstate
          uint8 NULLSTATE=0
          uint8 STR_LEFT=1
          uint8 STR_RIGHT=2
          uint8 STR_STRAIGHT=3
          uint8 STR_BACK=4
          uint8 TYPE_STOPLINE=1
          uint8 TYPE_STOP=2
          uint8 TYPE_EVENT_NULL=0
          uint8 TYPE_EVENT_GOAL=1
          uint8 TYPE_EVENT_MIDDLE_GOAL=2
          uint8 TYPE_EVENT_POSITION_STOP=3
          uint8 TYPE_EVENT_BUS_STOP=4
          uint8 TYPE_EVENT_PARKING=5
          int32 aid
          uint8 lanechange_state
          uint8 steering_state
          uint8 accel_state
          uint8 stop_state
          uint8 event_state
        uint32 lane_id
        uint32 left_lane_id
        uint32 right_lane_id
        uint32 stop_line_id
        float32 cost
        float32 time_cost
        uint32 direction
      uint32 lane_index
      float32 cost
      float32 closest_object_distance
      float32 closest_object_velocity
      bool is_blocked
  bool pose_reliable
  bool velocity_reliable
  bool acceleration_reliable
  string image_frame
  int32 x
  int32 y
  int32 width
  int32 height
  float32 angle
  sensor_msgs/Image roi_image
    std_msgs/Header header
      uint32 seq
      time stamp
      string frame_id
    uint32 height
    uint32 width
    string encoding
    uint8 is_bigendian
    uint32 step
    uint8[] data
  uint8 indicator_state
  uint8 behavior_state
  string[] user_defined_info

rosmsg show visualization_msgs/MarkerArray

visualization_msgs/Marker[] markers
  uint8 ARROW=0
  uint8 CUBE=1
  uint8 SPHERE=2
  uint8 CYLINDER=3
  uint8 LINE_STRIP=4
  uint8 LINE_LIST=5
  uint8 CUBE_LIST=6
  uint8 SPHERE_LIST=7
  uint8 POINTS=8
  uint8 TEXT_VIEW_FACING=9
  uint8 MESH_RESOURCE=10
  uint8 TRIANGLE_LIST=11
  uint8 ADD=0
  uint8 MODIFY=0
  uint8 DELETE=2
  uint8 DELETEALL=3
  std_msgs/Header header
    uint32 seq
    time stamp
    string frame_id
  string ns
  int32 id
  int32 type
  int32 action
  geometry_msgs/Pose pose
    geometry_msgs/Point position
      float64 x
      float64 y
      float64 z
    geometry_msgs/Quaternion orientation
      float64 x
      float64 y
      float64 z
      float64 w
  geometry_msgs/Vector3 scale
    float64 x
    float64 y
    float64 z
  std_msgs/ColorRGBA color
    float32 r
    float32 g
    float32 b
    float32 a
  duration lifetime
  bool frame_locked
  geometry_msgs/Point[] points
    float64 x
    float64 y
    float64 z
  std_msgs/ColorRGBA[] colors
    float32 r
    float32 g
    float32 b
    float32 a
  string text
  string mesh_resource
  bool mesh_use_embedded_materials

Példa a topicok tartalmára

rostopic echo -n1 /detection/lidar_detector/objects

header: 
  seq: 61946
  stamp: 
    secs: 1622537697
    nsecs: 501269730
  frame_id: "right_os1/os1_lidar"
objects: 
  - 
    header: 
      seq: 62448
      stamp: 
        secs: 1622537697
        nsecs: 501269730
      frame_id: "right_os1/os1_lidar"
    id: 0
    label: "unknown"
    score: 1.0
    color: 
      r: 0.0
      g: 0.0
      b: 0.0
      a: 0.0
    valid: True
    space_frame: "right_os1/os1_lidar"
    pose: 
      position: 
        x: 16.2884979248
        y: 4.96796655655
        z: -0.807406663895
      orientation: 
        x: 0.0
        y: 0.0
        z: 0.0
        w: 1.0
    dimensions: 
      x: 1.27664756775
      y: 0.933905601501
      z: 0.715550899506
    variance: 
      x: 0.0
      y: 0.0
      z: 0.0
    velocity: 
      linear: 
        x: 0.0
        y: 0.0
        z: 0.0
      angular: 
        x: 0.0
        y: 0.0
        z: 0.0
    acceleration: 
      linear: 
        x: 0.0
        y: 0.0
        z: 0.0
      angular: 
        x: 0.0
        y: 0.0
        z: 0.0
    pointcloud: 
      header: 
        seq: 62448
        stamp: 
          secs: 1622537697
          nsecs: 501269730
        frame_id: "right_os1/os1_lidar"
      height: 1
      width: 14
      fields: 
        - 
          name: "x"
          offset: 0
          datatype: 7
          count: 1
        - 
          name: "y"
          offset: 4
          datatype: 7
          count: 1
        - 
          name: "z"
          offset: 8
          datatype: 7
          count: 1
        - 
          name: "rgb"
          offset: 16
          datatype: 7
          count: 1
      is_bigendian: False
      point_step: 32
      row_step: 448
      data: [136, 116, 129, 65, 35, 187, 166, 64, 22, 129, ... <- hosszú -> ...  103, 122, 65, 221, 39, 162, 64, 176, 36, 149, 191, 0, 0, 128, 63, 187, 81, 151, 255, 127, 0, 0, 0, 0, 144, 231, 3, 2, 0, 0, 0]
      is_dense: True
    convex_hull: 
      header: 
        seq: 62448
        stamp: 
          secs: 1622537697
          nsecs: 501269730
        frame_id: "right_os1/os1_sensor"
      polygon: 
        points: 
          - 
            x: 16.9268226624
            y: 4.54669570923
            z: -1.16518211365
          - 
            x: 16.2047786713
            y: 5.4349193573
            z: -1.16518211365
          - 
            x: 15.6501750946
            y: 5.0673661232
            z: -1.16518211365
          - 
            x: 16.6249084473
            y: 4.5010137558
            z: -1.16518211365
          - 
            x: 16.6930541992
            y: 4.51073884964
            z: -1.16518211365
          - 
            x: 16.9268226624
            y: 4.54669570923
            z: -1.16518211365
    candidate_trajectories: 
      id: 0
      lanes: []
    pose_reliable: False
    velocity_reliable: False
    acceleration_reliable: False
    image_frame: ''
    x: 0
    y: 0
    width: 0
    height: 0
    angle: 0.0
    roi_image: 
      header: 
        seq: 0
        stamp: 
          secs: 0
          nsecs:         0
        frame_id: ''
      height: 0
      width: 0
      encoding: ''
      is_bigendian: 0
      step: 0
      data: []
    indicator_state: 0
    behavior_state: 0
    user_defined_info: []
  - 
    header: 
      seq: 62448
      stamp: 
        secs: 1622537697
        nsecs: 501269730
      frame_id: "right_os1/os1_lidar"
    id: 0
    label: "unknown"
    score: 1.0
    color: 
      r: 0.0
      g: 0.0
      b: 0.0
      a: 0.0
    valid: True
    space_frame: "right_os1/os1_lidar"
    pose: 
      position: 
        x: -2.10847187042
        y: -4.32671737671
        z: -0.820603609085
      orientation: 
        x: 0.0
        y: 0.0
        z: 0.0
        w: 1.0
    dimensions: 
      x: 2.53639912605
      y: 5.82645893097
      z: 0.958348274231
    variance: 
      x: 0.0
      y: 0.0
      z: 0.0
    velocity: 
      linear: 
        x: 0.0
        y: 0.0
        z: 0.0
      angular: 
        x: 0.0
        y: 0.0
        z: 0.0
    acceleration: 
      linear: 
        x: 0.0
        y: 0.0
        z: 0.0
      angular: 
        x: 0.0
        y: 0.0
        z: 0.0
    pointcloud: 
      header: 
        seq: 62448
        stamp: 
          secs: 1622537697
          nsecs: 501269730
        frame_id: "right_os1/os1_lidar"
      height: 1
      width: 828
      fields: 
        - 
          name: "x"
          offset: 0
          datatype: 7
          count: 1
        - 
          name: "y"
          offset: 4
          datatype: 7
          count: 1
        - 
          name: "z"
          offset: 8
          datatype: 7
          count: 1
        - 
          name: "rgb"
          offset: 16
          datatype: 7
          count: 1
      is_bigendian: False
      point_step: 32
      row_step: 26496
      data: [21, 28, 87, 191, 44, 29, 228, ... <- hosszú -> ...  127, 0, 0, 0, 0, 144, 231, 3, 2, 0, 0, 0]
      is_dense: True
    convex_hull: 
      header: 
        seq: 62448
        stamp: 
          secs: 1622537697
          nsecs: 501269730
        frame_id: "right_os1/os1_sensor"
      polygon: 
        points: 
          - 
            x: -0.840272247791
            y: -7.1285610199
            z: -1.2997777462
          - 
            x: -1.59819984436
            y: -1.91646587849
            z: -1.2997777462
          - 
            x: -1.61629629135
            y: -1.79461312294
            z: -1.2997777462
          - 
            x: -1.71442615986
            y: -1.64792513847
            z: -1.2997777462
          - 
            x: -1.75191152096
            y: -1.60022485256
            z: -1.2997777462
          - 
            x: -1.79646360874
            y: -1.56179749966
            z: -1.2997777462
          - 
            x: -1.82283127308
            y: -1.54585587978
            z: -1.2997777462
          - 
            x: -2.65472269058
            y: -1.43099975586
            z: -1.2997777462
          - 
            x: -2.78368902206
            y: -1.41348803043
            z: -1.2997777462
          - 
            x: -2.82761144638
            y: -1.43276274204
            z: -1.2997777462
          - 
            x: -2.99814248085
            y: -1.52582645416
            z: -1.2997777462
          - 
            x: -3.17892980576
            y: -2.44736456871
            z: -1.2997777462
          - 
            x: -3.37667131424
            y: -7.23994684219
            z: -1.2997777462
          - 
            x: -1.3063492775
            y: -7.23261976242
            z: -1.2997777462
          - 
            x: -0.939049243927
            y: -7.22048187256
            z: -1.2997777462
          - 
            x: -0.840272247791
            y: -7.1285610199
            z: -1.2997777462
    candidate_trajectories: 
      id: 0
      lanes: []
    pose_reliable: False
    velocity_reliable: False
    acceleration_reliable: False
    image_frame: ''
    x: 0
    y: 0
    width: 0
    height: 0
    angle: 0.0
    roi_image: 
      header: 
        seq: 0
        stamp: 
          secs: 0
          nsecs:         0
        frame_id: ''
      height: 0
      width: 0
      encoding: ''
      is_bigendian: 0
      step: 0
      data: []
    indicator_state: 0
    behavior_state: 0
    user_defined_info: []
---

rostopic echo -n1 /detection/lidar_detector/objects_markers

markers: 
  - 
    header: 
      seq: 61946
      stamp: 
        secs: 1622537697
        nsecs: 501269730
      frame_id: "right_os1/os1_lidar"
    ns: "/detection/lidar_detector/label_markers"
    id: 0
    type: 9 ### távolásg TEXT_VIEW_FACING
    action: 0
    pose: 
      position: 
        x: 16.2884979248
        y: 4.96796655655
        z: 1.0
      orientation: 
        x: 0.0
        y: 0.0
        z: 0.0
        w: 0.0
    scale: 
      x: 1.5
      y: 1.5
      z: 1.0
    color: 
      r: 0.392156869173
      g: 0.392156869173
      b: 0.392156869173
      a: 1.0
    lifetime: 
      secs: 0
      nsecs: 200000000
    frame_locked: False
    points: []
    colors: []
    text: "17.0 m"
    mesh_resource: ''
    mesh_use_embedded_materials: False
  - 
    header: 
      seq: 61946
      stamp: 
        secs: 1622537697
        nsecs: 501269730
      frame_id: "right_os1/os1_lidar"
    ns: "/detection/lidar_detector/hull_markers"
    id: 21
    type: 4 ### poligon LINE_STRIP
    action: 0
    pose: 
      position: 
        x: 0.0
        y: 0.0
        z: 0.0
      orientation: 
        x: 0.0
        y: 0.0
        z: 0.0
        w: 0.0
    scale: 
      x: 0.2
      y: 0.0
      z: 0.0
    color: 
      r: 0.20000000298
      g: 0.800000011921
      b: 0.20000000298
      a: 0.800000011921
    lifetime: 
      secs: 0
      nsecs: 200000000
    frame_locked: False
    points: 
      - 
        x: 16.9268226624
        y: 4.54669570923
        z: -1.16518211365
      - 
        x: 16.2047786713
        y: 5.4349193573
        z: -1.16518211365
      - 
        x: 15.6501750946
        y: 5.0673661232
        z: -1.16518211365
      - 
        x: 16.6249084473
        y: 4.5010137558
        z: -1.16518211365
      - 
        x: 16.6930541992
        y: 4.51073884964
        z: -1.16518211365
      - 
        x: 16.9268226624
        y: 4.54669570923
        z: -1.16518211365
    colors: []
    text: ''
    mesh_resource: ''
    mesh_use_embedded_materials: False
  - 
    header: 
      seq: 61946
      stamp: 
        secs: 1622537697
        nsecs: 501269730
      frame_id: "right_os1/os1_lidar"
    ns: "/detection/lidar_detector/centroid_markers"
    id: 62
    type: 2 # középpont SPHERE
    action: 0
    pose: 
      position: 
        x: 7.13503932953
        y: 6.89101028442
        z: -1.22008383274
      orientation: 
        x: 0.0
        y: 0.0
        z: 0.0
        w: 1.0
    scale: 
      x: 0.5
      y: 0.5
      z: 0.5
    color: 
      r: 0.301960796118
      g: 0.474509805441
      b: 1.0
      a: 0.800000011921
    lifetime: 
      secs: 0
      nsecs: 200000000
    frame_locked: False
    points: []
    colors: []
    text: ''
    mesh_resource: ''
    mesh_use_embedded_materials: False
---
Clone this wiki locally