ADAS (Advanced Driver Assistance Systems) and Active Safety Systems aim at helping the driver during his driver process, releasing him from certain tasks thanks to automated systems and keeping him, his car occupants and the car surroundings in a high safety level.
Some systems are already very common in commercialized cars (ABS, ESP, cruise control, navigation, automated lights switch on/off, ...) Others are more complex and require access to multiple heterogeneous sensors and actuators in order to ensure functions such as accurate positioning, environment perception, situation analysis, and take up the necessary actions (automated parking, pre-crash braking, blind spot detection, lane following, adaptive cruise control...)
The development process of such systems requires real time access to sensors as heterogeneous as video cameras, lidars, radars, vehicle CAN bus, GPS, and so on... and an easy way to integrate new functions and algorithms. In such contexts, developers often face challenges (not to say nightmares) such as multi-threaded programming, data samples timestamping and re-synchronization, data latencies measurements and estimation, system optimization and performance assessment, code re-use and software applications maintenance,...
RTMaps provides a way to prototype efficiently on new algorithms and new systems by providing a modular environment to easily test and evaluate functions based on different sets of sensors, in different configurations, and different sets of processing and data fusion strategies.
RTMaps datalogging and real time playback capabilities allow to work offline on real data, in a reproducible manner for sensors and algorithms development and benchmarking.
Support for automotive sensors: video cameras (FireWire, Ethernet, USB,...), stereo vision heads, CAN, LIN, XCP, GPS, inertial sensors, radars, lidars, ultrasound, DAQ…)
Processing and fusion algorithms development, testing, validation and benchmarking (to be easily integrated via the RTMaps C++ SDK)
2D & 3D visualization
Data timestamping, latencies measurement, downstream resynchronization
Datalogging / Real-time data playback
Graphical and/or C++ programming
Ligthweight runtime engine
Optimized execution (copyless data transfers between components, no dynamic memory allocations at runtime, event-based, polling or sequential data exchange policies, real-time monitoring...)
Interoperability with simulators (ProSIVIC, PreSCAN...)
Interoperability with Matlab & Simulink
Interoperability with ROS (Linux-only)
Interoperability with DDS
Interoperability with Qt Modeling Language (QML) for quick and easy embedded HMI developments
RTMaps applications can be integrated in third-party software written in C/C++, C#, Java, Python and QML
SOME APPLICATION EXAMPLES
An EKF (Extended Kalman Filter) and an IMM (Interactive Multiple Models) filter from IFSTTAR / LIVIC
Radar / Lidar tracking
RoadNEX by NEXYAD
NEXYAD is a high-tech company which has developed innovative and proven methods for the processing of digital data, signals, and images. Various algorithms they conceived are available as on-the-shelf RTMaps components and can be instanciated and configured in a few clicks.
LaRAFrontCam from CAOR / Mines-ParisTech
Lane markings detection by IFSTTAR
Datalogging and playback for offline developments
Datalogging capabilities are fundamental to understand the behavior of a vehicle and its embedded systems.
Furthermore, RTMaps provides a way to rapidly playback the many recorded data sources in real-time in order to be able to work offline on algorithms development and fine tuning.
While playing back sensors datasets in the lab, RTMaps emulates the availability of the real sensors for the downstream components, hence provides reproducible conditions in order to be able to test and compare different algorithm settings or processing techniques, evaluate algorithms behavior in many characteristic scenarios, while preserving the capability to easily deploy the said functions back into a real prototype vehicle.
Distribution capabilities of RTMaps also provide a way to synchronize the clocks of several RTMaps software instances over multiple computers equipping different systems (like in different cars, on infrastructure elements,…).
Once RTMaps clocks are synchronized, it is straightforward to perform synchronized sensors data recordings in various places. At playback, it becomes possible to work on a distributed cooperative system offline in just one place!
Embedded HMIs development
Modern HMIs require advanced real-time interaction with the drivers and passengers. RTMaps provides an easy connection with in-vehicle sensors and communication systems as well as advanced motion capture devices or any other kind of multi-modal interaction systems.
Apart from QML, an efficient API allows to integrate RTMaps in third-party applications written in C/C++, but also C# (or any other .NET based language), Java, and Python.
Benchmarking & Validation
SENSORS AND ALGORITHMS BENCHMARKING
Having developed or purchased a perception system or algorithm, whatever it is for (obstacle detection, positioning, road signs detection, etc.), it is always very difficult to assess its performance and compare it to other existing methods.
With RTMaps, it is easy to setup an application which can record the outputs of the system to evaluate in parallel to the outputs of a reference system providing ground truth information (based on video, or expensive sensors like RTK GPS receivers, 3D laser scanners, etc.)
With RTMaps, engineers can record characteristic scenarios operating multiple sensors (by day, by night, by fog, by rain, inside tunnels, etc.) and use them offline to feed perception algorithms in playback mode and evaluate their respective performance (false-detection rate, non-detection rate, …)
Interoperability with other tools - A complete development toolchain
Using a simulator in place of real sensors and actuators equiping a prototype vehicle have numerous advantages:
Reduce equipment costs
Control the driving conditions and scenario in detail
Multiply the test sessions
Program different sensors configuration easily
Test many dangerous situations
RTMaps can be operated in connection with various automotive simulators such as dSPACE ASM, VEOS & MotionDesk, ProSIVIC from CIVITEC, SCANeR Studio from OKTAL, ...
Interoperability with ProSIVIC from CIVITEC
ProSIVIC is a 3D simulator providing accurate multi-frequency sensor models (cameras, lidars, IMUs, radars, etc.) as well as various environments and vehicle-dynamics models. Connecting ProSIVIC virtual sensors and actuators to RTMaps is straightforward using on-the-shelf components establishing network or shared memory real-time communications.
Using ProSIVIC in conjunction with RTMaps allows to preserve easy portability of the developped applications from desktop to the real prototype vehicles (by just replacing the few components in charge of sensors and actuators interfaces).
Integration in the dSPACE toolchain
RTMaps is now closely integrated in the dSPACE toolchain to provide an end-to-end development suite for ADAS and Autonomous Driving vehicles:
- Interfaces with Simulink and dSPACE MicroAutoBox thanks to a dSPACE RTI blockets
- Code generation from Simulink to RTMaps components
- Interfaces with dSPACE ControlDesk NG for applications monitoring and control