Skip to content

Commit 3f1dcb5

Browse files
committed
Add own type for logical lanes
Compared to Lane.Classification.Subtype, Curb and Median are added as additional types.
1 parent 11d9f9a commit 3f1dcb5

File tree

1 file changed

+91
-2
lines changed

1 file changed

+91
-2
lines changed

osi_logicallane.proto

Lines changed: 91 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ syntax = "proto2";
33
option optimize_for = SPEED;
44

55
import "osi_common.proto";
6-
import "osi_lane.proto";
76

87
package osi3;
98

@@ -277,7 +276,7 @@ message LogicalLane
277276

278277
// The type of the logical lane.
279278
//
280-
optional Lane.Classification.Subtype type = 2;
279+
optional Type type = 2;
281280

282281
// Optional external reference to the lane source.
283282
//
@@ -465,6 +464,96 @@ message LogicalLane
465464
//
466465
repeated LaneConnection successor_lane = 15;
467466

467+
//
468+
// \brief Definition of available lane types.
469+
//
470+
// This is mostly aligned with OpenDRIVE, except that lane types modelling
471+
// access restrictions (e.g. "taxi") are not made available here. These are
472+
// already deprecated in OpenDRIVE. To support this, access restrictions
473+
// should be added later, in alignment with OpenDRIVE.
474+
//
475+
enum Type
476+
{
477+
// %Lane of unknown type. Do not use in ground truth.
478+
//
479+
TYPE_UNKNOWN = 0;
480+
481+
// Any other type of lane.
482+
//
483+
TYPE_OTHER = 1;
484+
485+
// A normal driving lane.
486+
// Example: Lanes with IDs l1, l2, l3 and l4 in image \ref
487+
// HighwayExit.
488+
// This matches the OpenDRIVE type "driving".
489+
//
490+
TYPE_NORMAL = 2;
491+
492+
// A lane that is designated for bicylists.
493+
//
494+
TYPE_BIKING = 3;
495+
496+
// A lane that is designated for pedestrians (sidewalk).
497+
//
498+
TYPE_SIDEWALK = 4;
499+
500+
// A lane with parking spaces.
501+
//
502+
TYPE_PARKING = 5;
503+
504+
// A hard shoulder on motorways for emergency stops.
505+
// Example: Lane l5 in image \ref
506+
// HighwayExit.
507+
//
508+
TYPE_STOP = 6;
509+
510+
// A lane on which cars should not drive.
511+
//
512+
TYPE_RESTRICTED = 7;
513+
514+
// A hard border on the edge of a road.
515+
//
516+
TYPE_BORDER = 8;
517+
518+
// A soft border on the edge of a road.
519+
//
520+
TYPE_SHOULDER = 9;
521+
522+
// A deceleration lane in parallel to the main road.
523+
// Example: Lane l6 in image \ref
524+
// HighwayExit.
525+
//
526+
TYPE_EXIT = 10;
527+
528+
// An acceleration lane in parallel to the main road.
529+
//
530+
TYPE_ENTRY = 11;
531+
532+
// A ramp from rural or urban roads joining a motorway.
533+
//
534+
TYPE_ONRAMP = 12;
535+
536+
// A ramp leading off a motorway onto rural or urban roads.
537+
//
538+
TYPE_OFFRAMP = 13;
539+
540+
// A ramp that connect two motorways.
541+
//
542+
TYPE_CONNECTINGRAMP = 14;
543+
544+
// A lane that sits between driving lanes
545+
// that lead in opposite directions. It is
546+
// typically used to separate traffic in
547+
// towns on large roads.
548+
//
549+
TYPE_MEDIAN = 15;
550+
551+
// Curb stones. Curb stones have a different
552+
// height than the adjacent drivable lanes.
553+
//
554+
TYPE_CURB = 16;
555+
}
556+
468557
//
469558
// \brief Connection to another lane (predecessor or successor)
470559
//

0 commit comments

Comments
 (0)