This model is a parameterizable object based video perception sensor and tracking model using the interface OSI. The model was developed in the project SetLevel by Bosch. The model should simulate some basic video typical effects in a phenomenological way. The "object based camera object model" is based on object lists and all modeling is performed on object level. The model output are object lists for OSI SenorData moving and stationary objects. The outer layer of the model is the OSI Sensor Model Packaging (OSMP). It specifies ways in which models using the Open Simulation Interface (OSI) are to be packaged for their use in simulation environments using FMI 2.0. For more detailed information see the official documentation.
It includes typical sensor artifacts like
- soft FoV transitions
- different detection ranges for different targets
- occlusion effects depending on the sensor technology
- existence probability
- tracker simulation
The detection of moving objects, stationary objects, traffic signs and traffic lights is implemented.
- FOV: describes the horizontal Field of View of the Camera System
- Range: deschribes the view distance of the sensor
sensor_view.mounting_position
sensor_view.global_ground_truth.timestamp
sensor_view.global_ground_truth.host_vehicle_id
sensor_view.global_ground_truth.stationary_object.id
sensor_view.global_ground_truth.stationary_object.base.position
sensor_view.global_ground_truth.stationary_object.base.orientation
sensor_view.global_ground_truth.stationary_object.base.dimension
sensor_data.timestamp
sensor_data.moving_object.header.ground_truth_id
sensor_data.moving_object.header.tracking_id
sensor_data.moving_object.header.existence_probability
sensor_data.moving_object.header.measurement_state
sensor_data.moving_object.header.sensor_id
sensor_data.moving_object.base.position
sensor_data.moving_object.base.dimension
The following is an example for building a model as an FMU in Ubuntu.
-
Clone this repository with submodules:
git clone https://github.com/openMSL/your-model.git --recurse-submodules
-
Build the model by executing in the extracted project root directory:
mkdir cmake-build cd cmake-build # If FMU_INSTALL_DIR is not set, CMAKE_BINARY_DIR is used cmake -DCMAKE_BUILD_TYPE=Release -DFMU_INSTALL_DIR:PATH=/tmp .. make
-
Take FMU from
FMU_INSTALL_DIR
- Windows 10
- Visual Studio 2019
- CMake 3.10.2 or higher
- OSI 3.2.0
- Protobuf 3.11.4 or higher (tested with Protobuf 21.x)
- Build protobuf for your special Visual Studio Version
- Build sensor model with linker to build protobuf version Settings: OSI, Protobuf and the Modul have to be build with the same configuration: Debug/Release-Build Project-Properties >> C/C++ >> Code-Generation >> Runtime Library Multi-threaded Debug DLL (/MDd) for all solutions under Project-Properties >> VC++ Directories: set the correct include paths in CMake set Protobuf_INCLUDE_DIRS and Protobuf_LIBRARIES
The work created by Robert Bosch GmbH is licensed under the terms of the Mozilla Public License, v. 2.0
This sensor model is very basic and not validated to provide a realistic sensor behaviour. The model shows generic behaviour and is thus not sensor specific. This is a prototype. Use at own risk. Aboslutely not warranty is given for functionality or statements made and we are not liable in case of any damage.
This work received funding from the research project "SET Level" of the PEGASUS project family, promoted by the German Federal Ministry for Economic Affairs and Energy based on a decision of the German Bundestag.
SET Level | PEGASUS Family | BMWi |
---|---|---|