Skip to content

Fix sensordata reference frame definitions #721

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions osi_detectedlane.proto
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,15 @@ message DetectedLane
//
// \image html OSI_DetectedLaneBoundary.svg
//
// The parent frame of a detected lane boundary is the virtual sensor coordinate
// system.
//
// /note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedLaneBoundary
{
// Common information of one detected item.
Expand Down
27 changes: 21 additions & 6 deletions osi_detectedobject.proto
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,15 @@ message DetectedItemHeader
//
// \image html OSI_DetectedStationaryObject.svg
//
// The parent frame of a detected stationary object is the virtual sensor
// coordinate system.
//
// /note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedStationaryObject
{
// Common information of one detected item.
Expand Down Expand Up @@ -172,8 +181,17 @@ message DetectedStationaryObject
}

//
// \brief Moving object in the environment as detected and perceived by
// the sensor.
// \brief Moving object in the environment as detected and perceived by the
// sensor.
//
// The parent frame of a detected moving object is the virtual sensor coordinate
// system.
//
// /note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedMovingObject
{
Expand All @@ -183,8 +201,7 @@ message DetectedMovingObject

// The base parameters of the moving object.
//
// \note The bounding box does NOT includes mirrors for vehicles.
// \note The parent frame of \c base is the sensor's vehicle frame.
// \note The bounding box does NOT include mirrors for vehicles.
// \note The height includes the ground_clearance. It always goes from the
// top to the ground.
//
Expand All @@ -194,8 +211,6 @@ message DetectedMovingObject
// moving object (e.g. car). \c MovingObject::base has to be
// identical for all \c #candidate moving objects.
//
// \note The parent frame of \c base is the sensor's vehicle frame.
//
optional BaseMoving base_rmse = 3;

// Reference point location specification of the sensor measurement
Expand Down
9 changes: 9 additions & 0 deletions osi_detectedroadmarking.proto
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,15 @@ package osi3;
// RoadMarking::Classification::type == \c
// RoadMarking::Classification::TYPE_SYMBOLIC_TRAFFIC_SIGN is not marked.
//
// The parent frame of a detected road marking is the virtual sensor coordinate
// system.
//
// /note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedRoadMarking
{
// Common information of one detected item.
Expand Down
9 changes: 9 additions & 0 deletions osi_detectedtrafficlight.proto
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@ package osi3;
// several bulbs, e.g. red, yellow, green are three separate detected traffic
// lights.
//
// The parent frame of a detected traffic light is the virtual sensor coordinate
// system.
//
// /note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedTrafficLight
{
// Common information of one detected item.
Expand Down
12 changes: 12 additions & 0 deletions osi_detectedtrafficsign.proto
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ package osi3;
//
// \image html OSI_DetectedSign.svg
//
// The parent frame of a detected traffic sign is the virtual sensor coordinate
// system.
//
// \note The virtual sensor coordinate system is relative to the vehicle coordinate
// system which has its origin in the center of the rear axle of the ego
// vehicle. This means if virtual sensor mounting position and orientation are
// set to (0,0,0) the virtual sensor coordinate system coincides with the
// vehicle coordinate system.
//
message DetectedTrafficSign
{
// Common information of one detected item.
Expand Down Expand Up @@ -45,11 +54,14 @@ message DetectedTrafficSign
//
// The orientation of the bounding box \c #base
// ( \c BaseStationary::orientation ) is defined as follows:
//
// The z-axis of the given \c BaseStationary::orientation is the vector
// from the bottom to the top of the traffic sign's 2D image plate.
// (Normally it is equal to the ground truth z-axis.)
//
// The x-axis of the given \c BaseStationary::orientation is view
// normal of the traffic sign's image.
//
// This x-axis points from the traffic sign's image in the direction
// from where a 'viewer' could see the traffic sign image.
//
Expand Down
7 changes: 3 additions & 4 deletions osi_featuredata.proto
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,9 @@ message SensorDetectionHeader
//
optional uint64 cycle_counter = 2;

// Mounting position of the sensor (origin and orientation of the sensor
// frame). Both origin and orientation are given in and with respect to the
// host vehicle coordinate system (see: \c MovingObject::Vehicle vehicle
// reference point) [1].
// The physical mounting position of the sensor (origin and orientation of
// the sensor frame). Both origin and orientation are given in and with
// respect to the host vehicle coordinate system [1].
//
// The sensor frame's x-axis is pointing in the central viewing direction of
// the sensor. It is the angle bisector of the sensor's horizontal and
Expand Down
20 changes: 14 additions & 6 deletions osi_logicaldetectiondata.proto
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,17 @@ message LogicalDetectionData
//
optional LogicalDetectionDataHeader header = 2;

// logical detections consisting of transformed (and potentially fused) detections from one or multiple sensors and sensor types.
// Logical detections are given with respect to the reference frame of the logical/virtual sensor
// \c SensorView::mounting_position (e.g. center of rear axle of the ego car)
// Logical detections consisting of transformed (and potentially fused)
// detections from one or multiple sensors and sensor types.
//
// The parent frame of a logical detection is the virtual sensor coordinate
// system specified by \c SensorView::mounting_position .
//
// /note The virtual sensor coordinate system is relative to the vehicle
// coordinate system which has its origin in the center of the rear axle of
// the ego vehicle. This means if virtual sensor mounting position and
// orientation are set to (0,0,0) the virtual sensor coordinate system
// coincides with the vehicle coordinate system.
//
repeated LogicalDetection logical_detection = 3;
}
Expand Down Expand Up @@ -131,8 +139,8 @@ message LogicalDetection
//
optional Identifier object_id = 2;

// Measured position of the logical detection given in cartesian coordinates in the
// host vehicle coordinate system.
// Measured position of the logical detection given in cartesian coordinates
// in the virtual sensor coordinate system.
//
// Unit: m
//
Expand All @@ -143,7 +151,7 @@ message LogicalDetection
optional Vector3d position_rmse = 4;

// Velocity of the logical detection given in cartesian coordinates in the
// host vehicle coordinate system.
// virtual sensor coordinate system.
//
// Unit: m/s
//
Expand Down
20 changes: 11 additions & 9 deletions osi_sensorview.proto
Original file line number Diff line number Diff line change
Expand Up @@ -62,15 +62,17 @@ message SensorView
//
optional Identifier sensor_id = 3;

// The virtual mounting position of the sensor (origin and orientation
// of the sensor coordinate system) given in vehicle coordinates [1].
// The virtual position pertains to the sensor as a whole, regardless
// of the actual position of individual physical detectors, and governs
// the sensor-relative coordinates in detected objects of the sensor
// as a whole. Individual features detected by individual physical
// detectors are governed by the actual physical mounting positions
// of the detectors, as indicated in the technology-specific sub-views
// and sub-view configurations.
// The virtual mounting position of the sensor (origin and orientation of
// the sensor frame). Both origin and orientation are given in and with
// respect to the host vehicle coordinate system [1].
//
// The virtual position pertains to the sensor as a whole, regardless of the
// actual position of individual physical detectors, and governs the
// sensor-relative coordinates in detected objects of the sensor as a whole.
// Individual features detected by individual physical detectors are
// governed by the actual physical mounting positions of the detectors, as
// indicated in the technology-specific sub-views and sub-view
// configurations.
//
// \arg \b x-direction of sensor coordinate system: sensor viewing direction
// \arg \b z-direction of sensor coordinate system: sensor (up)
Expand Down