open_simulation_interface
v3.4.0 (2021-11-18)
|
Classification
of a lane.
More...
Classes | |
struct | LanePairing |
The lane ID pairings of antecessor and successor lanes. More... | |
struct | RoadCondition |
The condition of the road surface. More... | |
Public Types | |
enum | Type { TYPE_UNKNOWN = 0 , TYPE_OTHER = 1 , TYPE_DRIVING = 2 , TYPE_NONDRIVING = 3 , TYPE_INTERSECTION = 4 } |
enum | Subtype { SUBTYPE_UNKNOWN = 0 , SUBTYPE_OTHER = 1 , SUBTYPE_NORMAL = 2 , SUBTYPE_BIKING = 3 , SUBTYPE_SIDEWALK = 4 , SUBTYPE_PARKING = 5 , SUBTYPE_STOP = 6 , SUBTYPE_RESTRICTED = 7 , SUBTYPE_BORDER = 8 , SUBTYPE_SHOULDER = 9 , SUBTYPE_EXIT = 10 , SUBTYPE_ENTRY = 11 , SUBTYPE_ONRAMP = 12 , SUBTYPE_OFFRAMP = 13 , SUBTYPE_CONNECTINGRAMP = 14 } |
Public Attributes | |
optional Type | type = 1 |
optional bool | is_host_vehicle_lane = 2 |
repeated Vector3d | centerline = 3 |
optional bool | centerline_is_driving_direction = 4 |
repeated Identifier | left_adjacent_lane_id = 5 |
repeated Identifier | right_adjacent_lane_id = 6 |
repeated LanePairing | lane_pairing = 7 |
repeated Identifier | right_lane_boundary_id = 8 |
repeated Identifier | left_lane_boundary_id = 9 |
repeated Identifier | free_lane_boundary_id = 10 |
optional RoadCondition | road_condition = 11 |
optional Subtype | subtype = 12 |
Classification
of a lane.
![]()
HighwayExit |
| |||||||||||
![]()
Intersection |
|
osi3::Vector3d
elements. Definition of available lane subtypes, aligned with OpenDRIVE.
Enumerator | |
---|---|
SUBTYPE_UNKNOWN | Lane of unknown subtype. Do not use in ground truth. |
SUBTYPE_OTHER | Any other subtype of lane. |
SUBTYPE_NORMAL | A normal driving lane. Example: Lanes with IDs l1, l2, l3 and l4 in image HighwayExit. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
SUBTYPE_BIKING | A lane that is designated for bicylists. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_SIDEWALK | A lane that is designated for pedestrians (sidewalk). Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_PARKING | A lane with parking spaces. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_STOP | A hard shoulder on motorways for emergency stops. Example: Lane l5 in image HighwayExit. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_RESTRICTED | A lane on which cars should not drive. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_BORDER | A hard border on the edge of a road. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_SHOULDER | A soft border on the edge of a road. Since it is not intended to be used for normal automotive driving, it should be used in combination with TYPE_NONDRIVING. |
SUBTYPE_EXIT | A deceleration lane in parallel to the main road. Example: Lane l6 in image HighwayExit. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
SUBTYPE_ENTRY | An acceleration lane in parallel to the main road. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
SUBTYPE_ONRAMP | A ramp from rural or urban roads joining a motorway. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
SUBTYPE_OFFRAMP | A ramp leading off a motorway onto rural or urban roads. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
SUBTYPE_CONNECTINGRAMP | A ramp that connect two motorways. Since it is intended to be used for normal automotive driving, it should be used in combination with TYPE_DRIVING. |
Definition of available lane types.
Enumerator | |
---|---|
TYPE_UNKNOWN | Lane of unknown type (must not be used in ground truth). |
TYPE_OTHER | Any other type of lane. |
TYPE_DRIVING | A normal lane. Example: Lanes with IDs l1, l2, l3, l4 and l6 in image HighwayExit. |
TYPE_NONDRIVING | A road where driving is normally not permitted. Example: Lane with ID l5 in image HighwayExit. |
TYPE_INTERSECTION | An intersection as a lane. Example: Lane with ID l7 in image Intersection. |
repeated Vector3d osi3::Lane::Classification::centerline = 3 |
The lane's center line (as a list of segments).
The centerline describes the middle of the lane.
Example: In image HighwayExit, the centerline of lane l4 (black line) is given by (cl4_1, cl4_2, cl4_3, cl4_4, cl4_5).
Approximation error green line.
centerline
w.r.t. centerline_is_driving_direction
.centerline
is defined only for type
= TYPE_DRIVING
and if exactly one or no lane_pairing
pair exists.optional bool osi3::Lane::Classification::centerline_is_driving_direction = 4 |
Definition of the intended driving direction.
Defined and used for driving lanes. true
means driving direction is according to ascending storage order of center line points. false
means driving direction is according to descending storage order of center line points.
Example: centerline_is_driving_direction
= true
for lane l4 and centerline_is_driving_direction
= false
for lane l2 in image HighwayExit .
centerline_is_driving_direction
is defined for type
= TYPE_DRIVING
. repeated Identifier osi3::Lane::Classification::free_lane_boundary_id = 10 |
The free boundaries which have no/unknown assignment to left/right.
Example: free_lane_boundary_id
= lb11 for lane l7 in image Intersection.
Lane
with type
= TYPE_INTERSECTION
use only free lane boundaries.\rules check_if this.type is_different_to 4 else do_check is_set \endrules
optional bool osi3::Lane::Classification::is_host_vehicle_lane = 2 |
Indicates that the host vehicle travels on this particular lane. The host vehicle may travel on more than one lane at once. This does also apply for the CanditateLane
in the DetectedLane
.
repeated LanePairing osi3::Lane::Classification::lane_pairing = 7 |
The antecessor/successor lane pairings of this lane. There can be multiple pairings with the same antecessor and different successor lanes and vice versa. The antecessor lanes end in the same point that this lane starts from. The successor lanes start in the same point that this lane ends in.
Example: See image Intersection.
repeated Identifier osi3::Lane::Classification::left_adjacent_lane_id = 5 |
List of IDs of all lane segments that are directly adjacent to the lane on the left side (w.r.t. ascending order of centerline points and lane boundary points). Note that lengths of lane segments are not synchronized and therefore there are multiple adjacent segments if there is a split/merge point in the adjacent lane.
Example: The lane l3 is the only left adjacent lane for lane l4 in image HighwayExit.
left_adjacent_lane_id
is undefined for type
= TYPE_INTERSECTION
.\rules check_if this.type is_different_to 4 else do_check is_set \endrules
repeated Identifier osi3::Lane::Classification::left_lane_boundary_id = 9 |
The left adjacent lane boundaries left_lane_boundary_id
may only be shared with/as the right adjacent lane boundaries right_lane_boundary_id
of the nearest left adjacent lane left_adjacent_lane_id
.
Example: left_lane_boundary_id
= lb5 for lane l4 in image HighwayExit.
left_lane_boundary_id
is undefined for type
= TYPE_INTERSECTION
.\rules check_if this.type is_different_to 4 else do_check is_set \endrules
repeated Identifier osi3::Lane::Classification::right_adjacent_lane_id = 6 |
List of IDs of all lane segments that are directly adjacent to the lane on the right side (w.r.t. ascending order of centerline points and lane boundary points). Note that lengths of lane segments are not synchronized and therefore there are multiple adjacent segments if there is a split/merge point in the adjacent lane.
Example: right_adjacent_lane_id
= (l5, l6) for lane l4 in image HighwayExit.
right_adjacent_lane_id
is undefined for type
= TYPE_INTERSECTION
.\rules check_if this.type is_different_to 4 else do_check is_set \endrules
repeated Identifier osi3::Lane::Classification::right_lane_boundary_id = 8 |
The right adjacent lane boundaries right_lane_boundary_id
may only be shared with/as the left adjacent lane boundaries left_lane_boundary_id
of the nearest right adjacent lane right_adjacent_lane_id
.
Example: right_lane_boundary_id
= (lb9, lb6) for reference lane l4 in image HighwayExit.
right_lane_boundary_id
is undefined for type
= TYPE_INTERSECTION
.\rules check_if this.type is_different_to 4 else do_check is_set \endrules
optional RoadCondition osi3::Lane::Classification::road_condition = 11 |
The condition of the lane, e.g. influenced by weather.
optional Subtype osi3::Lane::Classification::subtype = 12 |
The subtype of the lane.
This subtype specifies a lane more concretely.
optional Type osi3::Lane::Classification::type = 1 |
The type of the lane.
Example: For l4 in image HighwayExit the type
is TYPE_DRIVING
.