From Wikipedia, the free encyclopedia
Jump to: navigation, search
LogoSmall OpenCRG.png
OpenCRG belgianblock.png
Belgian block XYZ map
(OpenCRG Matlab tool suite visualization)
Developer(s) Daimler AG
Initial release 2009 (2009)
Stable release
1.0.6 / 9 April 2014; 3 years ago (2014-04-09)
Preview release
1.1.0 RC1 / 31 July 2015; 23 months ago (2015-07-31)
Operating system Any
Size 13 MB (OpenCRG tools-suite)
Type Open source project incl. open file format specification (CRG) and tool-suite
License Apache License, version 2.0

OpenCRG is a complete open source project including a tool-suite for the creation, modification and evaluation of road surfaces, and an open file format specification CRG (curved regular grid). Its objective is to standardize a detailed road surface description and it may be used for applications like tire-, vibration- or driving-simulation.

The initial release of OpenCRG was a beta version 0.3 in early 2009; as of August 2015, the current stable release of the OpenCRG C-API and MATLAB tool suite is version 1.0.6.[1]


OpenCRG is a standardized efficient 3D road data representation defined in base plane by its direction (heading, yaw angle). It is optionally complemented by hilliness (slope, inclination, grade, pitch angle) and cross slope (super-elevation, banking, cant, camber, roll angle). Compact storage and sufficient accuracy, even for long tracks are the objectives for the open file format specification CRG.

A C-API as well as a MATLAB API are provided for the creation, evaluation or modification of OpenCRG files. Both APIs include basic operations like transforming between intrinsic to global coordinates. The MATLAB tool suite provides powerful modification or creation tools and allows to visualize the 3D road data representation.

OpenCRG was initiated by Daimler and is currently driven by VIRES Simulationstechnologie GmbH, the research group AK 6.1.3 'Tire Models for Vehicle Dynamics, Ride Comfort and Uneven Roads' and the OpenCRG community. The associated website maintained by VIRES GmbH is the main portal for information about OpenCRG including latest news concerning the data format, free and commercial tool-sets, test data etc..

With OpenCRG real road surfaces (e.g. by measurement) have also become available to "classic" simulation applications using a macroscopic description of road networks. The gap between the logical road description and the microscopic description of road surfaces (i.e. OpenCRG) is closed by the open file format OpenDRIVE. An implementation of OpenCRG into the OpenDRIVE file format specification has already been established in January 2008.[note 1]


The predecessor of OpenCRG is a format called CRG (curved regular grid) which has been used internally for several years by Daimler AG.[2] An entire suite of MATLAB and FORTRAN tools had been developed for the handling, evaluation and generation of CRG data.

The early phase of the OpenCRG initiative is funded by a series of German automotive OEMs. Representatives of Audi AG Ingolstadt, BMW AG München, Daimler AG Sindelfingen, Porsche AG Weissach and Volkswagen AG Wolfsburg define the objectives of OpenCRG.[3]

Since 2008, Daimler AG develops and refines OpenCRG in collaboration with VIRES GmbH, a simulation technology company.


Clear-text headers[edit]

OpenCRG provides various ASCII/binary file formats with clear-text headers. The header contains road parameters for the reference line and the overall configuration of the longitudinal sections, a data definition to define the data format (ASCII/binary) and the sequence of data which is to be expected in the trailing data block as well as modifier and option parameters. Furthermore, it may contain references to other files (typically containing the actual data) to handle different parameters for the same data set.

Arbitrary scalar data[edit]

OpenCRG handles any arbitrary scalar data versus a reference grid. These are typically elevation data or friction coefficients. By this, different applications like tire- or vibration simulations take advantage of the open surface descriptions format OpenCRG.


OpenCRG provides an open source C-API for data handling and evaluation. Based on predecessor CRG-FORTRAN routines (Daimler AG), the enhanced C-API allows easy integration of OpenCRG functionality into third party applications. The major focus is the fast conversion from inertial to global coordinate space of OpenCRG data.


OpenCRG provides a wide range open source MATLAB tool suite. Additional functionality to the predecessor CRG-MATLAB routines (Daimler AG) for the modification, creation and visualization of OpenCRG files is provided. The focus of the MATLAB tool suite is mainly the modification and visualization of OpenCRG data.

World geodetic system[edit]

Real world OpenCRG data files may be generated by several laser scans along a road.[4] World geodetic system coordinates (WGS84), as used by GPS and e.g. Google Maps may be attached to OpenCRG header informations. This allows to track and visualize the road description. The MATLAB API provides an interface to visualize the location of OpenCRG roads on Google Maps.

Sample data[edit]

Getting started with OpenCRG is facilitated by a growing library of sample data. A set of test and demo OpenCRG files as well as a detailed documentation are included. Simple examples explain the usage of OpenCRG.

Fields of application[edit]

  • Tire simulation
  • Vibration simulation
  • Driving simulation
  • Passenger comfort
  • etc.

Version history[edit]

Project name Version Release date Status
C-API 0.3beta 2009-02-10
C-API 0.4beta 2009-05-26
C-API 0.6beta 2009-08-20
tools-suite 0.7beta 2009-11-12
OpenCRG tools-suite 0.8 2009-12-17
tools-suite 1.0 2010-04-15
tools-suite 1.0.1 2010-06-04
tools-suite 1.0.2 2010-09-28
tools-suite 1.0.3 2011-06-30
tools-suite 1.0.4 2011-12-08
tools-suite 1.0.5 2013-05-28
tools-suite 1.0.6 2013-07-31 RC 1
tools-suite 1.0.6 2014-04-09 Stable
tools-suite 1.1.0 2015-07-31 RC 1

System requirements[edit]

OpenCRG has full support for 32-bit i586 and 64-bit x86-64 PC hardware. Big and little endian encoding of a given processor is detected automatically in the C-API. It is constantly tested in the following environments:

The OpenCRG MATLAB Tool Suite is provided on any system distribution running MATLAB (R14) or higher.[5]


See also[edit]

  • OpenDRIVE - the macroscopic brother of OpenCRG


  1. ^ Dupuis, Marius (2008-01-02). "OpenDRIVE Format Specification". OpenDRIVE: VIRES GmbH. Retrieved 4 February 2010. 


  1. ^ Download OpenCRG, retrieved 5 August 2015 
  2. ^ Rauh, Jochen; Gimmer, Helmut, CRG (curved regular grid) Road Data Format Overview, retrieved 3 February 2010 
  3. ^ Rauh, Jochen; Schindler, Heinz; Witte, Lothar; Kersten, Thomas; Zipperer, Wilhelm, OpenCRG A unified approach to represent 3D road data in tyre simulation, retrieved 3 February 2010 
  4. ^ Gimmler, H.; Ammon, D.; Rauh, J. (2005), "Road Profiles: Mobile Measurement, Data Processing for Efficient Simulation and Assessment of Road Properties.", VDI-Report No 1912, Düsseldorf(Germany), pp. 335–352  Missing or empty |title= (help)
  5. ^ Dupuis, Marius; Helmich, Holger, OpenCRG User Manual, retrieved 30 June 2011 

External links[edit]