Struct SupplementarySign::Classification

Nested Relationships

This struct is a nested type of Struct TrafficSign::SupplementarySign.

Struct Documentation

struct Classification

Classification data for a supplementary traffic sign.

When constructing a SupplementarySign, consider the use of the following members:

Note

The definition of the sign types is thought to be independent of the country, even if the images used in this documentation are based on the German Road Traffic Regulations (StVO).

Public Types

enum Type

Definition of supplementary sign types.

For general supplementary signs use TYPE_TEXT. Supplementary signs with general space restrictions use TYPE_SPACE. Supplementary signs with general time restrictions use TYPE_TIME. Supplementary signs with displayed arrow directions use TYPE_ARROW. Supplementary signs constraint to one type of actors use TYPE_CONSTRAINED_TO. Supplementary signs that will exclude one type of actors use TYPE_EXCEPT. If supplementary signs combine contraints, restrictions, or plain text, Type is used in descending order in the following sequence: TYPE_EXCEPT, TYPE_CONSTRAINED_TO, TYPE_ARROW, TYPE_TIME, TYPE_SPACE, TYPE_TEXT.

Values:

TYPE_UNKNOWN = 0

Type of supplementary sign is unknown (must not be used in ground truth).

TYPE_OTHER = 1

Other (unspecified but known) type of supplementary sign.

TYPE_NO_SIGN = 2

There is no supplementary sign (must not be used in ground truth).

TYPE_TEXT = 41

Text sign.

Use it as a canvas for text-only signs:

The following table summarizes possible configurations for this kind of supplementary signs:

TYPE_SPACE = 39

Text sign with distance indication.

Use it as a canvas for text signs that make reference to a point or area in space:

The following table summarizes possible configurations for this kind of supplementary signs:

TYPE_TIME = 26

Text sign with time indication.

Use it as a canvas for text signs that make: reference to a point in time or a time range.

The following table summarizes possible configurations for this kind of supplementary signs:

Note

TYPE_ARROW = 30

A supplementary sign showing a direction alone.

Use together with the message

Classification::arrow. The following signs can be built:

TYPE_CONSTRAINED_TO = 46

The list of traffic actors to which the main sign’s regulation is constrained to.

Use as many members of the

Actor enumerator as needed to denote the related traffic actors.

The following tables summarize possible configurations for this kind of supplementary signs:

Also, some of the German StVO traffic signs denoting traffic actors for which the main sign’s regulation applies exclusively can be constructed.

Note

In the German StVO, these signs typically include the word “Nur”.

In addition, some of the German StVO supplementary signs with actors that receive an explicit allowance to use the street or the shoulder can be constructed:

Finally, the signs

can be incorporated.

TYPE_EXCEPT = 45

The list of traffic actors for which the main sign’s regulation does not apply or have a special driving allowance.

Use as many members of the

Actor enumerator as needed to denote the excepted traffic actors:

The following table summarizes possible configurations for this kind of supplementary signs:

Note

In the German StVO, these signs include the word “frei”.

TYPE_VALID_FOR_DISTANCE = 3

Traffic sign is valid for a certain distance.

Use TrafficSignValue::value and TrafficSignValue::value_unit (e.g. [m]) to indicate the distance.

TYPE_PRIORITY_ROAD_BOTTOM_LEFT_FOUR_WAY = 27

Priority road from bottom to left in the intersection.

TYPE_PRIORITY_ROAD_TOP_LEFT_FOUR_WAY = 28

Priority road from top to left in the intersection.

TYPE_PRIORITY_ROAD_BOTTOM_LEFT_THREE_WAY_STRAIGHT = 32

Priority road from bottom to left, junction from above.

TYPE_PRIORITY_ROAD_BOTTOM_LEFT_THREE_WAY_SIDEWAYS = 33

Priority road from bottom to left, junction from the right.

TYPE_PRIORITY_ROAD_TOP_LEFT_THREE_WAY_STRAIGHT = 34

Priority road from top to left, junction from below.

TYPE_PRIORITY_ROAD_BOTTOM_RIGHT_FOUR_WAY = 29

Priority road from bottom to right in the intersection.

TYPE_PRIORITY_ROAD_TOP_RIGHT_FOUR_WAY = 31

Priority road from top to right in the intersection.

TYPE_PRIORITY_ROAD_BOTTOM_RIGHT_THREE_WAY_STRAIGHT = 35

Priority road from bottom to right, junction from above.

TYPE_PRIORITY_ROAD_BOTTOM_RIGHT_THREE_WAY_SIDEWAY = 36

Priority road from bottom to right, junction from the left.

TYPE_PRIORITY_ROAD_TOP_RIGHT_THREE_WAY_STRAIGHT = 37

Priority road from top to right, junction from below.

TYPE_VALID_IN_DISTANCE = 4

Distance to the start of validity of the traffic sign.

Use TrafficSignValue::value and TrafficSignValue::value_unit (e.g. [m]) to indicate the distance.

Note

For OSI 4.0 compatibility use TYPE_SPACE instead.

TYPE_STOP_IN = 25

Stop in e.g. .. [m].

Use TrafficSignValue::value and TrafficSignValue::value_unit (e.g. [m]) to indicate the distance.

Note

For OSI 4.0 compatibility use TYPE_SPACE instead.

TYPE_LEFT_ARROW = 11

Direction, left-pointing.

Note

For OSI 4.0 compatibility use TYPE_ARROW instead.

TYPE_LEFT_BEND_ARROW = 13

Direction of potential danger, left-pointing.

Note

For OSI 4.0 compatibility use TYPE_ARROW instead.

TYPE_RIGHT_ARROW = 12

Direction, right-pointing.

Note

For OSI 4.0 compatibility use TYPE_ARROW instead.

TYPE_RIGHT_BEND_ARROW = 14

Direction of potential danger, right-pointing.

Note

For OSI 4.0 compatibility use TYPE_ARROW instead.

TYPE_ACCIDENT = 40

Accident hazard.

See also: .

TYPE_SNOW = 9

Restriction of the validity of the traffic sign to snowy / icy conditions.

Note

The identifier “StVO 1007-30” was used to denote a restriction of the validity of the traffic sign to snowy / icy conditions until the edition of 2013 of the official Catalog of Street Signs of the Federal Road Research Institute of Germany - BASt. Since the edition corresponding to 2017, “StVO 1007-30” is used to denote the hazard of oil trails. See .

TYPE_FOG = 8

Restriction of the validity of the traffic sign to foggy conditions.

Note

For OSI 4.0 compatibility use TYPE_TEXT instead.

TYPE_ROLLING_HIGHWAY_INFORMATION = 48

Information on rolling highway.

TYPE_SERVICES = 47

Information about services.

TYPE_TIME_RANGE = 5

Time range for validity of traffic sign.

Note

For OSI 4.0 compatibility use TYPE_TIME instead.

TYPE_PARKING_DISC_TIME_RESTRICTION = 43

Parking disc restrictions.

TYPE_WEIGHT = 6

Restriction of the validity of the traffic sign depending on the vehicle’s weight.

Use TrafficSignValue::value and TrafficSignValue::value_unit (e.g. in [t]) to indicate the weight.

TYPE_WET = 44

If “wet surface”.

TYPE_PARKING_CONSTRAINT = 42

Parking constraints.

TYPE_NO_WAITING_SIDE_STRIPES = 38

No parking, also on verges/shoulder.

TYPE_RAIN = 7

Restriction of the validity of the traffic sign to wet / rainy conditions.

(No German StVO-Nr., Austrian StVO 1960 supplementary sign g).

TYPE_SNOW_RAIN = 10

Combined restriction of the validity of the traffic sign to rainy or snowy conditions denoted by a single supplementary sign (instead of two signs of TYPE_RAIN and TYPE_SNOW respectively).

(StVO -, Austria)

TYPE_NIGHT = 19

Valid at night.

TYPE_STOP_4_WAY = 21

Stop 4 way.

TYPE_TRUCK = 15

Trucks.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_TRACTORS_MAY_BE_PASSED = 16

Tractors may be passed.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_HAZARDOUS = 17

Vehicles transporting hazardous goods.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_TRAILER = 18

Trailers.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_ZONE = 20

Zone.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_MOTORCYCLE = 22

Motorcycles.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_MOTORCYCLE_ALLOWED = 23

Motorcycles allowed.

Note

For OSI 4.0 compatibility use the message Actor instead.

TYPE_CAR = 24

Cars.

Note

For OSI 4.0 compatibility use the message Actor instead.

enum Actor

Definition of the traffic actors the supplementary sign makes reference to. E.g. bikes, trucks, cars, etc.

Values:

ACTOR_UNKNOWN = 0

An unknown actor

ACTOR_OTHER = 1

Other actor (specified but known)

ACTOR_NO_ACTOR = 2

The actor is not specified

ACTOR_AGRICULTURAL_VEHICLES = 3

Agricultural vehicles

ACTOR_BICYCLES = 4

Bicycles

ACTOR_BUSES = 5

Buses

ACTOR_CAMPERS = 6

Campers

ACTOR_CARAVANS = 7

Caravans

ACTOR_CARS = 8

Cars

ACTOR_CARS_WITH_CARAVANS = 9

Cars with caravans

ACTOR_CARS_WITH_TRAILERS = 10

Cars with trailers

ACTOR_CATTLE = 11

Cattles

ACTOR_CHILDREN = 12

Children

ACTOR_CONSTRUCTION_VEHICLES = 13

Construction vehicles

ACTOR_DELIVERY_VEHICLES = 14

Delivery vehicles

ACTOR_DISABLED_PERSONS = 15

Disabled persons

ACTOR_EBIKES = 16

E-bikes

ACTOR_ELECTRIC_VEHICLES = 17

Electric vehicles

ACTOR_EMERGENCY_VEHICLES = 18

Emergency vehicles

ACTOR_FERRY_USERS = 19

Ferry users

ACTOR_FORESTRY_VEHICLES = 20

Forestry vehicles

ACTOR_HAZARDOUS_GOODS_VEHICLES = 21

Hazardous goods vehicles

ACTOR_HORSE_CARRIAGES = 22

Horse carriages

ACTOR_HORSE_RIDERS = 23

Horse riders

ACTOR_INLINE_SKATERS = 24

Inline skaters

ACTOR_MEDICAL_VEHICLES = 25

Medical vehicles

ACTOR_MILITARY_VEHICLES = 26

Military vehicles

ACTOR_MOPEDS = 27

Mopeds

ACTOR_MOTORCYCLES = 28

Motorcycles

ACTOR_MOTORIZED_MULTITRACK_VEHICLES = 29

Motorized multi-track vehicles

ACTOR_OPERATIONAL_AND_UTILITY_VEHICLES = 30

Operational and utility vehicles

ACTOR_PEDESTRIANS = 31

Pedestrians

ACTOR_PUBLIC_TRANSPORT_VEHICLES = 32

Public transport vehicles

ACTOR_RAILROAD_TRAFFIC = 33

Railroad traffic

ACTOR_RESIDENTS = 34

Residents

Note

In the German StVO, typically denoted with the text “Anlieger” or “Bewohner”

ACTOR_SLURRY_TRANSPORT = 35

Slurry transport

ACTOR_TAXIS = 36

Taxis

ACTOR_TRACTORS = 37

Tractors

Note

In the German StVO, tractors are defined as motorized vehicles that are not allowed to, or cannot, drive faster than 25 [km/h]

ACTOR_TRAILERS = 38

Trailers

ACTOR_TRAMS = 39

Trams

ACTOR_TRUCKS = 40

Trucks

Note

In the German StVO, trucks are defined as motorized vehicles that are heavier than 3.5 [t]

ACTOR_TRUCKS_WITH_SEMITRAILERS = 41

Trucks with semi-trailers

ACTOR_TRUCKS_WITH_TRAILERS = 42

Trucks with trailers

ACTOR_VEHICLES_WITH_GREEN_BADGES = 43

Vehicles with green badges

ACTOR_VEHICLES_WITH_RED_BADGES = 44

Vehicles with red badges

ACTOR_VEHICLES_WITH_YELLOW_BADGES = 45

Vehicles with yellow badges

ACTOR_WATER_POLLUTANT_VEHICLES = 46

Water pollutant vehicles

ACTOR_WINTER_SPORTSPEOPLE = 47

Winter sportspeople

Public Members

optional Variability osi3::TrafficSign::SupplementarySign::Classification::variability = 1

Variability.

optional Type osi3::TrafficSign::SupplementarySign::Classification::type = 2

Type of the supplementary sign.

repeated TrafficSignValue osi3::TrafficSign::SupplementarySign::Classification::value = 3

Additional value(s) associated with the traffic sign, e.g. length, mass or starting time in time range.

Note

Field need not be set if traffic sign type does not require it.

Note

OSI uses singular instead of plural for repeated field names.

repeated Identifier osi3::TrafficSign::SupplementarySign::Classification::assigned_lane_id = 4

The IDs of the lanes that the sign is assigned to. May be multiple if the sign is valid for multiple lanes.

Note

OSI uses singular instead of plural for repeated field names.

repeated Actor osi3::TrafficSign::SupplementarySign::Classification::actor = 5

This enumerator indicates a traffic actor (e.g. bikes, cars, trucks and so on), that the supplementary sign makes reference to.

repeated Arrow osi3::TrafficSign::SupplementarySign::Classification::arrow = 6

A direction arrow shown on the supplementary sign.

optional bool osi3::TrafficSign::SupplementarySign::Classification::is_out_of_service = 7

Boolean flag to indicate that the supplementary traffic sign is taken out of service. This can be achieved by visibly crossing the sign or covering it completely.

struct Arrow

An arrow denoting a direction shown on the traffic sign.

Public Types

enum Direction

The direction to which the arrow points to

Values:

DIRECTION_UNKNOWN = 0

Direction of sign is unknown (must not be used in ground truth).

DIRECTION_OTHER = 1

Other (specified but known) direction.

DIRECTION_NO_DIRECTION = 2

No arrow direction is specified.

DIRECTION_DIRECT_0_DEG = 3

An arrow pointing straight ahead in the direction of driving.

DIRECTION_DIRECT_45_DEG_RIGHT = 4

A straight arrow pointing 45 degrees to the right in the direction of driving.

DIRECTION_DIRECT_45_DEG_LEFT = 5

A straight arrow pointing 45 degrees to the left in the direction of driving.

DIRECTION_DIRECT_90_DEG_RIGHT = 6

A straight arrow pointing 90 degrees to the right in the direction of driving.

DIRECTION_DIRECT_90_DEG_LEFT = 7

A straight arrow pointing 90 degrees to the left in the direction of driving.

DIRECTION_DIRECT_135_DEG_RIGHT = 8

A straight arrow pointing 135 degrees to the right in the direction of driving.

DIRECTION_DIRECT_135_DEG_LEFT = 9

A straight arrow pointing 135 degrees to the left in the direction of driving.

DIRECTION_DIRECT_180_DEG = 10

A straight arrow pointing oposite to the direction of driving.

DIRECTION_TURN_45_DEG_RIGHT = 11

A curved arrow pointing 45 degrees to the right in the direction of driving.

DIRECTION_TURN_45_DEG_LEFT = 12

A curved arrow pointing 45 degrees to the left in the direction of driving.

DIRECTION_TURN_90_DEG_RIGHT = 13

A curved arrow pointing 90 degrees to the right in the direction of driving.

DIRECTION_TURN_90_DEG_LEFT = 14

A curved arrow pointing 90 degrees to the left in the direction of driving.

DIRECTION_TURN_135_DEG_RIGHT = 15

A curved arrow pointing 135 degrees to the right in the direction of driving.

DIRECTION_TURN_135_DEG_LEFT = 16

A curved arrow pointing 135 degrees to the left in the direction of driving.

DIRECTION_TURN_180_DEG_RIGHT = 17

A u-turn arrow towards the right.

DIRECTION_TURN_180_DEG_LEFT = 18

A u-turn arrow towards the left.

DIRECTION_CIRCLE_0_DEG = 19

An arrow that includes a fraction of a circle and points forward in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_45_DEG_RIGHT = 20

An arrow that includes a fraction of a circle and points in 45 degrees to the right in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_45_DEG_LEFT = 21

An arrow that includes a fraction of a circle and points in 45 degrees to the left in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_90_DEG_RIGHT = 22

An arrow that includes a fraction of a circle and points in 90 degrees to the right in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_90_DEG_LEFT = 23

An arrow that includes a fraction of a circle and points in 90 degrees to the left in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_135_DEG_RIGHT = 24

An arrow that includes a fraction of a circle and points in 135 degrees to the right in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_135_DEG_LEFT = 25

An arrow that includes a fraction of a circle and points in 135 degrees to the left in the direction of driving. Used typically for roundabouts.

DIRECTION_CIRCLE_180_DEG = 26

An arrow that includes a fraction of a circle and points in the oposite to the direction of driving. Can be used in detours in roundabouts.

DIRECTION_KEEP_LEFT_TO_TURN_0_DEG = 27

An arrow that includes a fraction of a square and points forward in direction of driving. Can be used for detours where you have to use a separate left lane to drive ahead.

DIRECTION_KEEP_RIGHT_TO_TURN_0_DEG = 28

An arrow that includes a fraction of a square and points forward in direction of driving. Can be used for detours where you have to use a separate right lane to drive ahead.

DIRECTION_KEEP_LEFT_TO_TURN_90_DEG_RIGHT = 29

An arrow that includes a fraction of a square and points in 90 degrees to the right in direction of driving. Can be used for detours where you have to use a separate left lane to turn right.

DIRECTION_KEEP_RIGHT_TO_TURN_90_DEG_LEFT = 30

An arrow that includes a fraction of a square and points in 90 degrees to the right in direction of driving. Can be used for detours where you have to use a separate right lane to turn left.

DIRECTION_KEEP_LEFT_DRIVE_BACK_TO_TURN_90_DEG_RIGHT = 31

An arrow that includes a fraction of a square and points in 90 degrees to the right in direction of driving. Can be used for detours where you have to use a separate left lane and you have to drive back to turn right.

DIRECTION_KEEP_RIGHT_DRIVE_BACK_TO_TURN_90_DEG_LEFT = 32

An arrow that includes a fraction of a square and points in 90 degrees to the right in direction of driving. Can be used for detours where you have to use a separate right lane and you have to drive back to turn left.

Public Members

repeated Identifier osi3::TrafficSign::SupplementarySign::Classification::Arrow::lane_id = 1

The IDs of the lanes the arrow applies to

repeated Direction osi3::TrafficSign::SupplementarySign::Classification::Arrow::direction = 2

The direction to which the arrow points to