@@ -40,12 +40,12 @@ message DetectedObject
4040 // Base parameters of the object. object.position is the middle of the
4141 // bounding box of the target object.
4242 //
43- optional BaseMoving object = 5 ;
43+ optional BaseMoving base = 5 ;
4444
4545 // The root mean squared error of the base parameters in object (cross
4646 // correlations are currently neglected).
4747 //
48- optional BaseMoving object_rmse = 6 ;
48+ optional BaseMoving base_rmse = 6 ;
4949
5050 // Reference point location specification of the sensor measurement
5151 // (required to decouple sensor measurement, position and bounding box
@@ -110,7 +110,10 @@ message DetectedObject
110110
111111 // The estimated probabilities for the object to belong to a specific class.
112112 //
113- optional ClassProbability class_probability = 16 ;
113+ // \note The probability for each class of object has to be provided.
114+ // \note OSI uses singular instead of plural for repeated field names.
115+ //
116+ repeated ClassProbability class_probability = 16 ;
114117
115118 // Pedestrian head pose for behavior prediction. Describes the head
116119 // orientation w.r.t. the host vehicle orientation.
@@ -254,109 +257,16 @@ message DetectedObject
254257 //
255258 message ClassProbability
256259 {
257- // Probability that the object has unknown type.
258- //
259- // Range: [0,1]
260- //
261- optional double prob_unknown = 1 ;
262-
263- // Probability that the object is unspecified but known.
264- //
265- // Range: [0,1]
266- //
267- optional double prob_other = 2 ;
268-
269- // Probability that the object is a car.
270- //
271- // Range: [0,1]
272- //
273- optional double prob_car = 3 ;
274-
275- // Probability that the object is a heavy truck.
276- //
277- // Range: [0,1]
278- //
279- optional double prob_heavy_truck = 4 ;
280-
281- // Probability that the object is a van.
282- //
283- // Range: [0,1]
284- //
285- optional double prob_van = 5 ;
286-
287- // Probability that the object is a bus.
288- //
289- // Range: [0,1]
290- //
291- optional double prob_bus = 6 ;
292-
293- // Probability that the object is a trailer.
294- //
295- // Range: [0,1]
296- //
297- optional double prob_trailer = 7 ;
298-
299- // Probability that the object is a semitrailer.
300- //
301- // Range: [0,1]
302- //
303- optional double prob_semitrailer = 8 ;
304-
305- // Probability that the object is a tram.
306- //
307- // Range: [0,1]
308- //
309- optional double prob_tram = 9 ;
310-
311- // Probability that the object is a train.
312- //
313- // Range: [0,1]
314- //
315- // \note Can also be used for underground railway.
316- //
317- optional double prob_train = 10 ;
318-
319- // Probability that the object is a motorbike.
320- //
321- // Range: [0,1]
322- //
323- optional double prob_motorbike = 11 ;
324-
325- // Probability that the object is a bicycle.
326- //
327- // Range: [0,1]
260+ // The class of object that has been estimated with a certain
261+ // probability.
328262 //
329- optional double prob_bicycle = 12 ;
263+ optional Vehicle.Type class = 1 ;
330264
331- // Probability that the object is a pedestrian .
265+ // Probability that the object is of that certain class .
332266 //
333267 // Range: [0,1]
334268 //
335- optional double prob_pedestrian = 13 ;
336-
337- // Probability that the object is a wheelchair.
338- //
339- // Range: [0,1]
340- //
341- optional double prob_wheelchair = 14 ;
342-
343- // Probability that the object is an animal.
344- //
345- // Range: [0,1]
346- //
347- optional double prob_animal = 15 ;
348-
349- // Probability that the object is a stationary object.
350- //
351- // Range: [0,1]
352- //
353- optional double prob_stationary = 16 ;
354-
355- // Probability that the object is an unspecified but known vehicle.
356- //
357- // Range: [0,1]
358- //
359- optional double prob_other_vehicle = 17 ;
269+ optional double probability = 2 ;
360270 }
361271}
362272
@@ -382,3 +292,98 @@ enum MeasurementState
382292 //
383293 MEASUREMENT_STATE_PREDICTED = 3 ;
384294}
295+
296+ //
297+ // \brief A stationary object (e.g. landmark) in the environment as detected by
298+ // the sensor.
299+ //
300+ message DetectedStationaryObject
301+ {
302+ // Specific ID of the stationary object (e.g. landmark) as assigned by the
303+ // sensor internally.
304+ // Need not match with \c #ground_truth_id.
305+ //
306+ optional Identifier tracking_id = 1 ;
307+
308+ // The ID of the original stationary object (e.g. landmark) in the ground
309+ // truth.
310+ // In case of a ghost detection (no corresponding ground truth), this field
311+ // should be unset.
312+ //
313+ // \note OSI uses singular instead of plural for repeated field names.
314+ //
315+ repeated Identifier ground_truth_id = 2 ;
316+
317+ // A list of estimates for this stationary object (e.g. landmark) as
318+ // estimated by the sensor.
319+ //
320+ // \note OSI uses singular instead of plural for repeated field names.
321+ //
322+ repeated EstimatedStationaryObject stationary_object = 3 ;
323+
324+ // The estimated probability that this stationary object (e.g. landmark)
325+ // really exists, not based on history.
326+ //
327+ // \note Use as confidence measure where a low value means less confidence
328+ // and a high value indicates strong confidence.
329+ //
330+ optional double existence_probability = 4 ;
331+
332+ // A list of sensors which detected this detected entity.
333+ //
334+ // If \c SensorData has detected entities and all detections are missing,
335+ // then e.g. the number of sensors can confirm the #existence_probability.
336+ //
337+ // \note This information can be determined via the detected entities'
338+ // detections ( \c ...Detection::object_id = 'this detected entity' ) and
339+ // the sensors (their IDs) to which these detections belong.
340+ //
341+ // \note OSI uses singular instead of plural for repeated field names.
342+ //
343+ repeated Identifier sensor_id = 5 ;
344+
345+ //
346+ // \brief A candidate for a detected stationary object (e.g. landmark) as
347+ // estimated by the sensor.
348+ //
349+ message EstimatedStationaryObject
350+ {
351+ // A list of candidates for this stationary object as estimated by the
352+ // sensor.
353+ //
354+ // \note OSI uses singular instead of plural for repeated field names.
355+ //
356+ repeated CandidateStationaryObject candidate = 1 ;
357+
358+ // The root mean squared error of the base parameters of the detected
359+ // stationary object (e.g. landmark). \c StationaryObject::base has to be
360+ // identical for all \c #candidate stationary objects.
361+ //
362+ optional BaseStationary base_rmse = 2 ;
363+
364+ message CandidateStationaryObject
365+ {
366+ // The description of the stationary object (e.g. landmark).
367+ //
368+ optional StationaryObject stationary_object = 1 ;
369+
370+ // The estimated probability that this candidate is the true value.
371+ // The sum of all \c #probability must be one.
372+ //
373+ // Range: [0,1]
374+ //
375+ optional double probability = 2 ;
376+
377+ // The amount of time that this detected object has been currently
378+ // observed/tracked.
379+ //
380+ // Unit: [s]
381+ //
382+ optional double age = 3 ;
383+
384+ // The measurement state.
385+ //
386+ optional MeasurementState measurement_state = 4 ;
387+ }
388+ }
389+ }
0 commit comments