From 2a4902a019b1d59e9b2c30aa8638bd2b616b2651 Mon Sep 17 00:00:00 2001 From: Nicholas Dunning Date: Tue, 6 Dec 2022 16:54:47 +0100 Subject: [PATCH 01/14] Add BoundingBox section Signed-off-by: Nicholas Dunning --- osi_common.proto | 153 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 153 insertions(+) diff --git a/osi_common.proto b/osi_common.proto index 73c1f464c..a7c48c725 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -387,6 +387,125 @@ message LogicalLaneAssignment optional double angle_to_lane = 4; } +// \brief A bounding box containing a sub-section of a object. +// +// A bounding box representing a sub-section of it's parents overall dimension, +// either that of a \c MovingObject or \c StationaryObject . +// +// The parent frame of the \c BoundingBox is not relative to the parent object +// it is associated to, but in the same parent frame as the parent object. +// +message BoundingBox +{ + // The 3D dimensions of the bounding box. + // + optional Dimension3d dimension = 1; + + // The 3D position of the bounding box. + // + // \note The position should be within the same coordinate frame as it's + // parent, not relative to coordinate frame of the parent object. The + // position becomes global/absolute if the parent frame is inertial + // (all parent frames up to ground truth). + // + optional Vector3d position = 2; + + // The 3D orientation of the bounding box. + // + // \note The orientation should be within the same coordinate frame as it's + // parent, not relative to coordinate frame of the parent object. The + // orientation becomes global/absolute if the parent frame is inertial + // (all parent frames up to ground truth). + // + optional Orientation3d orientation = 3; + + // The type of object contained in the bounding box. + // + optional Type contained_object_type = 4; + + // Opaque reference of an associated 3D model of the bounding box. + // + // \note It is implementation-specific how model_references are resolved to + // 3d models. This means the coordinate system, model origin, and model + // orientation are also implementation-specific. + // + optional string model_reference = 5; + + // Definition of different types of object contained within the bounding box + // + enum Type + { + // Object of unknown type (must not be used in ground truth). + // + TYPE_UNKNOWN = 0; + + // Any other type of object. + // + TYPE_OTHER = 1; + + // The main chassis of a vehicle. + // + TYPE_CHASSIS = 2; + + // The door of a vehicle. + // + // \note A door may extend beyond the dimension of the parent when in + // an open state. A closed door must be within the original dimension. + // + TYPE_DOOR = 3; + + // The side mirror of a vehicle. + // + // \note A side mirror may extend beyond the dimension of the parent. + // + TYPE_SIDE_MIRROR = 4; + + // Additional cargo attached to the a vehicle which is temporarily + // attached. + // + // \note Cargo may extend beyond the dimension of the parent. + // + TYPE_CARGO = 5; + + // The wheel of a vehicle. + // + // \note A wheel may extend beyond the dimension of the parent. + // + // \note For more detailed information about the wheels of an object, + // please refer to \c MovingObject/VehicleAttributes/WheelData . + // + TYPE_WHEEL = 6; + + // The torso section of a person or animal. + // + TYPE_TORSO = 7; + + // An external limb of a person or animal. + // + TYPE_LIMB = 8; + + // The head of a person or animal. + // + TYPE_HEAD = 9; + + // The trunk section of a tree. + // + TYPE_TREE_TRUNK = 10; + + // The crown of a tree, usually encompassing the branches and leaves. + // + TYPE_TREE_CROWN = 11; + + // The vertical pole of a street light. + // + TYPE_STREET_LIGHT_POLE = 12; + + // The horizontal arm of a street light. + // + TYPE_STREET_LIGHT_ARM = 13; + } +} + // // \brief The base attributes of a stationary object or entity. // @@ -447,6 +566,23 @@ message BaseStationary // The polygon is defined counter-clockwise. // repeated Vector2d base_polygon = 4; + + // Sub-divisions of the overall bounding box of the \c BaseStationary object. + // + // The bounding box sections can include separate parts on partially-opaque + // objects such are trees with a distinction between trunk and crown. + // + // \note When one or more \c BoundingBox s are associated to a + // \c BaseStationary , the expectation is that all sections are contained + // within the bounds of the \c #dimension . + // + // \note It is also expcted that when using \c #bounding_box_section , + // anyone consuming this data has the guarantee that all others parts of + // the \c BaseStationary are covered by a sub-section, such that the + // guarentee is that the remaining area of the objects dimension is + // represented by space where no physical collisions could be detected. + // + repeated BoundingBox bounding_box_section = 5; } // @@ -569,6 +705,23 @@ message BaseMoving // The polygon is defined counter-clockwise. // repeated Vector2d base_polygon = 7; + + // Sub-divisions of the overall bounding box of the \c BaseMoving object. + // + // The bounding box sections can include side mirrors, cargo, etc. for + // vehicles, as well as body-part sections for pedestrians. + // + // \note When one or more \c BoundingBox s are associated to a + // \c BaseMoving , the expectation is that all sections are contained + // within the bounds of the \c #dimension . + // + // \note It is also expcted that when using \c #bounding_box_section , + // anyone consuming this data has the guarantee that all others parts of + // the \c BaseMoving are covered by a sub-section, such that the + // guarentee is that the remaining area of the objects dimension is + // represented by space where no physical collisions could be detected. + // + repeated BoundingBox bounding_box_section = 9; } // From e32e5666985a2466e933ceb70c62b2b5072e6f6e Mon Sep 17 00:00:00 2001 From: Nicholas Dunning Date: Mon, 30 Jan 2023 09:29:28 +0100 Subject: [PATCH 02/14] Add clarity for limbs Signed-off-by: Nicholas Dunning --- osi_common.proto | 2 ++ 1 file changed, 2 insertions(+) diff --git a/osi_common.proto b/osi_common.proto index a7c48c725..e8b510695 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -482,6 +482,8 @@ message BoundingBox // An external limb of a person or animal. // + // \note Limbs can be sub-divided to increase accuracy, i.e. for upper + // and lower arm/leg sections. TYPE_LIMB = 8; // The head of a person or animal. From 7b24c44a61b8696acd9bfb02c259e9e54430cdd7 Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Wed, 17 May 2023 16:47:09 +0200 Subject: [PATCH 03/14] Enhance description for bounding_box_section Add information regarding the handling of side mirrors and the definition of the bounding box. Signed-off-by: Pierre R. Mai --- osi_common.proto | 42 ++++++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index e8b510695..30b57b455 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -387,14 +387,17 @@ message LogicalLaneAssignment optional double angle_to_lane = 4; } -// \brief A bounding box containing a sub-section of a object. +// \brief A bounding box description. // // A bounding box representing a sub-section of it's parents overall dimension, -// either that of a \c MovingObject or \c StationaryObject . +// either that of a \c BaseMoving or \c BaseStationary . // // The parent frame of the \c BoundingBox is not relative to the parent object // it is associated to, but in the same parent frame as the parent object. // +// \note The actual bounding box of the object is defined in dimension, position +// and orientation of the \c BaseMoving and \c BaseStationary . +// message BoundingBox { // The 3D dimensions of the bounding box. @@ -448,31 +451,25 @@ message BoundingBox TYPE_CHASSIS = 2; // The door of a vehicle. - // - // \note A door may extend beyond the dimension of the parent when in - // an open state. A closed door must be within the original dimension. // TYPE_DOOR = 3; // The side mirror of a vehicle. // - // \note A side mirror may extend beyond the dimension of the parent. + // \note The side mirror is not included in the actual bounding box of + // the parent object. // TYPE_SIDE_MIRROR = 4; // Additional cargo attached to the a vehicle which is temporarily // attached. - // - // \note Cargo may extend beyond the dimension of the parent. // TYPE_CARGO = 5; // The wheel of a vehicle. // - // \note A wheel may extend beyond the dimension of the parent. - // // \note For more detailed information about the wheels of an object, - // please refer to \c MovingObject/VehicleAttributes/WheelData . + // please refer to \c MovingObject/VehicleAttributes/WheelData. // TYPE_WHEEL = 6; @@ -484,6 +481,7 @@ message BoundingBox // // \note Limbs can be sub-divided to increase accuracy, i.e. for upper // and lower arm/leg sections. + // TYPE_LIMB = 8; // The head of a person or animal. @@ -526,6 +524,9 @@ message BaseStationary // The 3D dimensions of the stationary object (bounding box), e.g. a // landmark. // + // \note The \c #dimension must completely enclose the geometry of the + // \c BaseStationary . + // optional Dimension3d dimension = 1; // The reference point for position and orientation, i.e. the center (x,y,z) @@ -572,13 +573,9 @@ message BaseStationary // Sub-divisions of the overall bounding box of the \c BaseStationary object. // // The bounding box sections can include separate parts on partially-opaque - // objects such are trees with a distinction between trunk and crown. - // - // \note When one or more \c BoundingBox s are associated to a - // \c BaseStationary , the expectation is that all sections are contained - // within the bounds of the \c #dimension . + // objects such as trees with a distinction between trunk and crown. // - // \note It is also expcted that when using \c #bounding_box_section , + // \note It is expected that when using \c #bounding_box_section , // anyone consuming this data has the guarantee that all others parts of // the \c BaseStationary are covered by a sub-section, such that the // guarentee is that the remaining area of the objects dimension is @@ -607,6 +604,9 @@ message BaseMoving { // The 3D dimension of the moving object (its bounding box). // + // \note The \c #dimension must completely enclose the geometry of the + // \c BaseMoving . + // // \note The bounding box does NOT include side mirrors for vehicles. // optional Dimension3d dimension = 1; @@ -614,6 +614,7 @@ message BaseMoving // The reference point for position and orientation: the center (x,y,z) of // the bounding box. // + // optional Vector3d position = 2; // The relative orientation of the moving object w.r.t. its parent frame, @@ -712,16 +713,13 @@ message BaseMoving // // The bounding box sections can include side mirrors, cargo, etc. for // vehicles, as well as body-part sections for pedestrians. - // - // \note When one or more \c BoundingBox s are associated to a - // \c BaseMoving , the expectation is that all sections are contained - // within the bounds of the \c #dimension . // - // \note It is also expcted that when using \c #bounding_box_section , + // \note It is also expected that when using \c #bounding_box_section , // anyone consuming this data has the guarantee that all others parts of // the \c BaseMoving are covered by a sub-section, such that the // guarentee is that the remaining area of the objects dimension is // represented by space where no physical collisions could be detected. + // This does not include the side mirrors. // repeated BoundingBox bounding_box_section = 9; } From c71f9c3005432eae62ea0cd55cfa3821abc6032a Mon Sep 17 00:00:00 2001 From: "Pierre R. Mai" Date: Fri, 16 Jun 2023 11:00:39 +0200 Subject: [PATCH 04/14] Rewording and typo fixes as per discussions Signed-off-by: Pierre R. Mai --- osi_common.proto | 125 ++++++++++++++++++++++++++--------------------- 1 file changed, 68 insertions(+), 57 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 30b57b455..6208d27f6 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -387,16 +387,20 @@ message LogicalLaneAssignment optional double angle_to_lane = 4; } -// \brief A bounding box description. +// \brief A bounding box description. // -// A bounding box representing a sub-section of it's parents overall dimension, -// either that of a \c BaseMoving or \c BaseStationary . +// A bounding box representing a sub-section of its parent's overall +// dimension, either that of a \c BaseMoving or \c BaseStationary . // -// The parent frame of the \c BoundingBox is not relative to the parent object -// it is associated to, but in the same parent frame as the parent object. +// The parent frame of the \c BoundingBox is identical to the parent frame +// of the \c MovingObject or \c StationaryObject it is associated to. For +// example, if the parent object coordinates are given relative to the +// global coordinate system, then the \c BoundingBox coordinates are also +// given relative to the global coordinate system. // -// \note The actual bounding box of the object is defined in dimension, position -// and orientation of the \c BaseMoving and \c BaseStationary . +// \note The overall bounding box of the object is still defined using the +// dimension, position and orientation of the \c BaseMoving or +// \c BaseStationary . // message BoundingBox { @@ -406,25 +410,25 @@ message BoundingBox // The 3D position of the bounding box. // - // \note The position should be within the same coordinate frame as it's - // parent, not relative to coordinate frame of the parent object. The - // position becomes global/absolute if the parent frame is inertial + // \note The position should be within the same coordinate frame as + // its parent, not relative to coordinate frame of the parent object. + // The position becomes global/absolute if the parent frame is inertial // (all parent frames up to ground truth). // optional Vector3d position = 2; // The 3D orientation of the bounding box. // - // \note The orientation should be within the same coordinate frame as it's - // parent, not relative to coordinate frame of the parent object. The - // orientation becomes global/absolute if the parent frame is inertial + // \note The orientation should be within the same coordinate frame as + // its parent, not relative to the coordinate frame of the parent object. + // The orientation becomes global/absolute if the parent frame is inertial // (all parent frames up to ground truth). // optional Orientation3d orientation = 3; // The type of object contained in the bounding box. // - optional Type contained_object_type = 4; + optional Type contained_object_type = 4; // Opaque reference of an associated 3D model of the bounding box. // @@ -449,59 +453,59 @@ message BoundingBox // The main chassis of a vehicle. // TYPE_CHASSIS = 2; - + // The door of a vehicle. - // + // TYPE_DOOR = 3; - + // The side mirror of a vehicle. // - // \note The side mirror is not included in the actual bounding box of - // the parent object. - // + // \note The side mirror is not included in the overall bounding box + // of the parent object. + // TYPE_SIDE_MIRROR = 4; - + // Additional cargo attached to the a vehicle which is temporarily // attached. - // + // TYPE_CARGO = 5; - + // The wheel of a vehicle. // // \note For more detailed information about the wheels of an object, // please refer to \c MovingObject/VehicleAttributes/WheelData. - // + // TYPE_WHEEL = 6; - + // The torso section of a person or animal. - // + // TYPE_TORSO = 7; - + // An external limb of a person or animal. - // - // \note Limbs can be sub-divided to increase accuracy, i.e. for upper + // + // \note Limbs can be sub-divided to increase accuracy, i.e. for upper // and lower arm/leg sections. // TYPE_LIMB = 8; - + // The head of a person or animal. - // + // TYPE_HEAD = 9; - + // The trunk section of a tree. - // + // TYPE_TREE_TRUNK = 10; - + // The crown of a tree, usually encompassing the branches and leaves. - // + // TYPE_TREE_CROWN = 11; - + // The vertical pole of a street light. - // + // TYPE_STREET_LIGHT_POLE = 12; - + // The horizontal arm of a street light. - // + // TYPE_STREET_LIGHT_ARM = 13; } } @@ -524,7 +528,7 @@ message BaseStationary // The 3D dimensions of the stationary object (bounding box), e.g. a // landmark. // - // \note The \c #dimension must completely enclose the geometry of the + // \note The \c #dimension must completely enclose the geometry of the // \c BaseStationary . // optional Dimension3d dimension = 1; @@ -575,11 +579,15 @@ message BaseStationary // The bounding box sections can include separate parts on partially-opaque // objects such as trees with a distinction between trunk and crown. // - // \note It is expected that when using \c #bounding_box_section , - // anyone consuming this data has the guarantee that all others parts of - // the \c BaseStationary are covered by a sub-section, such that the - // guarentee is that the remaining area of the objects dimension is - // represented by space where no physical collisions could be detected. + // \note The bounding box sub-divisions can extend beyond the overall + // bounding box, however no actual geometry must reside outside of the + // overall bounding box. + // + // \note If any sub-divisions are provided, then they must cover all + // occupied space of the overall bounding box. In other words, a consumer + // of this data is guaranteed that any part of the overall bounding box + // that is not covered by any sub-division is free of physical objects, + // and thus no collisions can occur there. // repeated BoundingBox bounding_box_section = 5; } @@ -604,8 +612,8 @@ message BaseMoving { // The 3D dimension of the moving object (its bounding box). // - // \note The \c #dimension must completely enclose the geometry of the - // \c BaseMoving . + // \note The \c #dimension must completely enclose the geometry of the + // \c BaseMoving with the exception of the side mirrors for vehicles. // // \note The bounding box does NOT include side mirrors for vehicles. // @@ -614,7 +622,6 @@ message BaseMoving // The reference point for position and orientation: the center (x,y,z) of // the bounding box. // - // optional Vector3d position = 2; // The relative orientation of the moving object w.r.t. its parent frame, @@ -711,15 +718,19 @@ message BaseMoving // Sub-divisions of the overall bounding box of the \c BaseMoving object. // - // The bounding box sections can include side mirrors, cargo, etc. for - // vehicles, as well as body-part sections for pedestrians. - // - // \note It is also expected that when using \c #bounding_box_section , - // anyone consuming this data has the guarantee that all others parts of - // the \c BaseMoving are covered by a sub-section, such that the - // guarentee is that the remaining area of the objects dimension is - // represented by space where no physical collisions could be detected. - // This does not include the side mirrors. + // The bounding box sections can include side mirrors, cargo, etc. for + // vehicles, as well as body-part sections for pedestrians. Note that for + // more precise pedestrian information \c PedestrianAttributes can be used. + // + // \note The bounding box sub-divisions can extend beyond the overall + // bounding box, however no actual geometry must reside outside of the + // overall bounding box, with the specific exception of the side mirrors. + // + // \note If any sub-divisions are provided, then they must cover all + // occupied space of the overall bounding box. In other words, a consumer + // of this data is guaranteed that any part of the overall bounding box + // that is not covered by any sub-division is free of physical objects, + // and thus no collisions can occur there. // repeated BoundingBox bounding_box_section = 9; } From 1ab843279dd801cf689fe011722c945f04828fca Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Mon, 29 Jan 2024 07:19:35 +0100 Subject: [PATCH 05/14] Updated the BoundingBox message. - Clarified the position definition. - Added a "other_object_type" sting to define object types, which are not part of the Type definition enum. - Reduced the Type field, because of compatibility reason. There is a general approach to harmonize object type definitions. So the definition should not get in conflict to that approach. Signed-off-by: Thomas Hempen --- osi_common.proto | 73 +++++++++--------------------------------------- 1 file changed, 13 insertions(+), 60 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 6208d27f6..db036d8af 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -408,7 +408,8 @@ message BoundingBox // optional Dimension3d dimension = 1; - // The 3D position of the bounding box. + // The 3D position of the bounding box. The position is the center + // of the bounding box and the pivot for the \c dimension and \c orientation. // // \note The position should be within the same coordinate frame as // its parent, not relative to coordinate frame of the parent object. @@ -430,16 +431,26 @@ message BoundingBox // optional Type contained_object_type = 4; + // Another type of object contained in the bounding box + // + // This field shall only be used if \c contained_object_type is TYPE_OTHER + // and the object type is not defined withing \c contained_object_type. + // + optional string other_object_type = 5; + // Opaque reference of an associated 3D model of the bounding box. // // \note It is implementation-specific how model_references are resolved to // 3d models. This means the coordinate system, model origin, and model // orientation are also implementation-specific. // - optional string model_reference = 5; + optional string model_reference = 6; // Definition of different types of object contained within the bounding box // + // \note This enum field is mainly a placeholder to be extended in the future. + // feel free to suggest type definitions for future releases. + // enum Type { // Object of unknown type (must not be used in ground truth). @@ -449,64 +460,6 @@ message BoundingBox // Any other type of object. // TYPE_OTHER = 1; - - // The main chassis of a vehicle. - // - TYPE_CHASSIS = 2; - - // The door of a vehicle. - // - TYPE_DOOR = 3; - - // The side mirror of a vehicle. - // - // \note The side mirror is not included in the overall bounding box - // of the parent object. - // - TYPE_SIDE_MIRROR = 4; - - // Additional cargo attached to the a vehicle which is temporarily - // attached. - // - TYPE_CARGO = 5; - - // The wheel of a vehicle. - // - // \note For more detailed information about the wheels of an object, - // please refer to \c MovingObject/VehicleAttributes/WheelData. - // - TYPE_WHEEL = 6; - - // The torso section of a person or animal. - // - TYPE_TORSO = 7; - - // An external limb of a person or animal. - // - // \note Limbs can be sub-divided to increase accuracy, i.e. for upper - // and lower arm/leg sections. - // - TYPE_LIMB = 8; - - // The head of a person or animal. - // - TYPE_HEAD = 9; - - // The trunk section of a tree. - // - TYPE_TREE_TRUNK = 10; - - // The crown of a tree, usually encompassing the branches and leaves. - // - TYPE_TREE_CROWN = 11; - - // The vertical pole of a street light. - // - TYPE_STREET_LIGHT_POLE = 12; - - // The horizontal arm of a street light. - // - TYPE_STREET_LIGHT_ARM = 13; } } From 6e093999603a2942d51c851ce4129f6c59035a84 Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Thu, 15 Feb 2024 16:07:34 +0100 Subject: [PATCH 06/14] Reworked the Type fields. Signed-off-by: Thomas Hempen --- osi_common.proto | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index db036d8af..5a38c08dc 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -431,13 +431,6 @@ message BoundingBox // optional Type contained_object_type = 4; - // Another type of object contained in the bounding box - // - // This field shall only be used if \c contained_object_type is TYPE_OTHER - // and the object type is not defined withing \c contained_object_type. - // - optional string other_object_type = 5; - // Opaque reference of an associated 3D model of the bounding box. // // \note It is implementation-specific how model_references are resolved to @@ -448,9 +441,6 @@ message BoundingBox // Definition of different types of object contained within the bounding box // - // \note This enum field is mainly a placeholder to be extended in the future. - // feel free to suggest type definitions for future releases. - // enum Type { // Object of unknown type (must not be used in ground truth). @@ -460,6 +450,31 @@ message BoundingBox // Any other type of object. // TYPE_OTHER = 1; + + // The main structure of an object, e.g. a chassis of a vehicle, + // or the central structure of a building, a tree trunk, etc. + // + TYPE_BASE_STRUCTURE = 2; + + // The door of an object. + // + TYPE_DOOR = 3; + + // The side mirror of a vehicle. + // + // \note The side mirror is not included in the overall bounding box + // of the parent object. + // + TYPE_SIDE_MIRROR = 4; + + // Additional, temporarily attached cargo to an object. + // + TYPE_CARGO = 5; + + // An overhanging, integral part of on object, which is not temporarily attached. + // e.g. a tree crown, or a light pole arm. + // + TYPE_PROTRUDING = 6; } } From 2b5149bb69c56d234654dcba41f490917a5936ed Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Thu, 15 Feb 2024 16:09:02 +0100 Subject: [PATCH 07/14] Fixed numbering. Signed-off-by: Thomas Hempen --- osi_common.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osi_common.proto b/osi_common.proto index 5a38c08dc..125e8fffc 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -437,7 +437,7 @@ message BoundingBox // 3d models. This means the coordinate system, model origin, and model // orientation are also implementation-specific. // - optional string model_reference = 6; + optional string model_reference = 5; // Definition of different types of object contained within the bounding box // From 79ee4883ce1de73024cf3fadc794c91b2be505be Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Thu, 15 Feb 2024 16:18:52 +0100 Subject: [PATCH 08/14] Changed formatting. Signed-off-by: Thomas Hempen --- osi_common.proto | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 125e8fffc..5d2dbce9a 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -471,8 +471,8 @@ message BoundingBox // TYPE_CARGO = 5; - // An overhanging, integral part of on object, which is not temporarily attached. - // e.g. a tree crown, or a light pole arm. + // An overhanging, integral part of on object, which is not + // temporarily attached. e.g. a tree crown, or a light pole arm. // TYPE_PROTRUDING = 6; } From e8a5ed0d0de4668ac8927d1c1ac8975c1e307789 Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Thu, 15 Feb 2024 16:38:01 +0100 Subject: [PATCH 09/14] Typo correction. Signed-off-by: Thomas Hempen --- osi_common.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osi_common.proto b/osi_common.proto index 5d2dbce9a..30b0fc7f0 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -472,7 +472,7 @@ message BoundingBox TYPE_CARGO = 5; // An overhanging, integral part of on object, which is not - // temporarily attached. e.g. a tree crown, or a light pole arm. + // temporarily attached, e.g. a tree crown, or a light pole arm. // TYPE_PROTRUDING = 6; } From dab24b14de0c1a01bffa12971e68e2c5b22a38bd Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Thu, 15 Feb 2024 16:56:17 +0100 Subject: [PATCH 10/14] Typo corrected. Signed-off-by: Thomas Hempen --- osi_common.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osi_common.proto b/osi_common.proto index 30b0fc7f0..942f77d3c 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -471,7 +471,7 @@ message BoundingBox // TYPE_CARGO = 5; - // An overhanging, integral part of on object, which is not + // An overhanging, integral part of an object, which is not // temporarily attached, e.g. a tree crown, or a light pole arm. // TYPE_PROTRUDING = 6; From c4338e74eeb4dde304c3ba3663d4d93793e27507 Mon Sep 17 00:00:00 2001 From: Thomas Sedlmayer Date: Mon, 26 Feb 2024 08:52:29 +0100 Subject: [PATCH 11/14] Reorder sub bounding box enums Signed-off-by: Thomas Sedlmayer --- osi_common.proto | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 942f77d3c..4b4109bdd 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -456,25 +456,25 @@ message BoundingBox // TYPE_BASE_STRUCTURE = 2; + // An overhanging, integral part of an object, which is not + // temporarily attached, e.g. a tree crown, or a light pole arm. + // + TYPE_PROTRUDING_STRUCTURE = 3; + + // Additional, temporarily attached cargo to an object. + // + TYPE_CARGO = 4; + // The door of an object. // - TYPE_DOOR = 3; + TYPE_DOOR = 5; // The side mirror of a vehicle. // // \note The side mirror is not included in the overall bounding box // of the parent object. // - TYPE_SIDE_MIRROR = 4; - - // Additional, temporarily attached cargo to an object. - // - TYPE_CARGO = 5; - - // An overhanging, integral part of an object, which is not - // temporarily attached, e.g. a tree crown, or a light pole arm. - // - TYPE_PROTRUDING = 6; + TYPE_SIDE_MIRROR = 6; } } From 65b814d208083663a5eac53d5ad9dcf2de91f1e8 Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Mon, 26 Feb 2024 10:42:47 +0100 Subject: [PATCH 12/14] Updated comments Signed-off-by: Thomas Hempen --- osi_common.proto | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 4b4109bdd..1ea601338 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -456,8 +456,10 @@ message BoundingBox // TYPE_BASE_STRUCTURE = 2; - // An overhanging, integral part of an object, which is not - // temporarily attached, e.g. a tree crown, or a light pole arm. + // A protruding, integral part of an object, which is not + // temporarily attached, e.g. a tree crown, a light pole arm, or a + // parking house gate. The protruding structure is meant to be an + // additional part to a base structure. // TYPE_PROTRUDING_STRUCTURE = 3; From 5cfed341a730379c9a06af33dc43c02d42ca794c Mon Sep 17 00:00:00 2001 From: Thomas Hempen Date: Mon, 26 Feb 2024 10:45:29 +0100 Subject: [PATCH 13/14] Updated format. Removed invalid tabs. Signed-off-by: Thomas Hempen --- osi_common.proto | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/osi_common.proto b/osi_common.proto index 1ea601338..1bf6a8751 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -458,8 +458,8 @@ message BoundingBox // A protruding, integral part of an object, which is not // temporarily attached, e.g. a tree crown, a light pole arm, or a - // parking house gate. The protruding structure is meant to be an - // additional part to a base structure. + // parking house gate. The protruding structure is meant to be an + // additional part to a base structure. // TYPE_PROTRUDING_STRUCTURE = 3; From 7e81917bbc0fd11b3393a8f453cdee8103527795 Mon Sep 17 00:00:00 2001 From: "Pierre R. Mai" Date: Mon, 26 Feb 2024 13:38:22 +0100 Subject: [PATCH 14/14] Add explicit list of doors for vehicles Signed-off-by: Pierre R. Mai --- osi_common.proto | 3 +++ 1 file changed, 3 insertions(+) diff --git a/osi_common.proto b/osi_common.proto index 1bf6a8751..843ffcef1 100644 --- a/osi_common.proto +++ b/osi_common.proto @@ -469,6 +469,9 @@ message BoundingBox // The door of an object. // + // For vehicles, this includes driver and passenger doors, trunk + // and front hoods, and fuel or charging port covers. + // TYPE_DOOR = 5; // The side mirror of a vehicle.