DE102013207066A1 - Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data - Google Patents

Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data Download PDF

Info

Publication number
DE102013207066A1
DE102013207066A1 DE201310207066 DE102013207066A DE102013207066A1 DE 102013207066 A1 DE102013207066 A1 DE 102013207066A1 DE 201310207066 DE201310207066 DE 201310207066 DE 102013207066 A DE102013207066 A DE 102013207066A DE 102013207066 A1 DE102013207066 A1 DE 102013207066A1
Authority
DE
Germany
Prior art keywords
height
values
grid
grids
profile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE201310207066
Other languages
German (de)
Inventor
Mikael Vaaraniemi
Harald Körtge
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE201310207066 priority Critical patent/DE102013207066A1/en
Publication of DE102013207066A1 publication Critical patent/DE102013207066A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C7/00Tracing profiles
    • G01C7/02Tracing profiles of land surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models

Abstract

Die Erfindung betrifft ein Verfahren zum Speichern von Profildaten für ein vorgegebenes Höhenprofil, umfassend die folgenden Schritte: (a) Vorsehen eines regelmäßigen Rasters (1) mit polygonalen Rasterfeldern (2) eines ersten Levels in einer Ebene, wobei Eckpunkte (3) der Rasterfelder (2) Rasterpunkte darstellen, und zu jedem Rasterpunkt ein Höhenwert gespeichert wird, (b) Bestimmen eines Fehlerwertes für eine jedes Rasterfeld (2), der eine Abweichung eines durch die Höhenwerte des Rasterfelds (2) approximierten Höhenprofils vom vorgegebenen Höhenprofil beschreibt, (c) Unterteilen der Rasterfelder (2), deren Fehlerwert einen vorbestimmten Schwellwert überschreitet, in polygonale Teilrasterfelder (4, 5), wobei zumindest zu den Eckpunkten (3) der Teilrasterfelder (4, 5), die nicht mit Eckpunkten (3) der Rasterfelder (2) zusammen fallen, Höhenwerte gespeichert werden, (d) Zuordnen jeweils eines Indikators zu einem jeden Rasterfeld (2), wobei der Indikator beschreibt, ob das Rasterfeld (2) unterteilt ist oder nicht, und Speichern dieser Indikatoren zusammen mit den Höhenwerten, und (e) Wiederholen der Schritte (b) bis (d) für alle Teilrasterfelder (4, 5), wobei die Teilrasterfelder (4, 5) eines i-ten Levels Rasterfelder (2) eines i + 1-ten Level bilden, wobei die Höhenwerte in einer vorbestimmten Reihenfolge gespeichert werden, so dass die Höhenwerte aufgrund der Reihenfolge jeweils einem bestimmten Eckpunkt (3) des Rasterfeldes (4, 5) zugeordnet sind und durch die Indikatoren eines j-ten Levels bestimmt ist, für welche Eckpunkte (3) des j + 1-ten Levels Höhenwerte gespeichert sind.The invention relates to a method for storing profile data for a predetermined height profile, comprising the following steps: (a) providing a regular grid (1) with polygonal grid fields (2) of a first level in one plane, wherein corner points (3) of the grid fields ( 2) represent raster points and a height value is stored for each raster point, (b) determining an error value for each raster field (2) which describes a deviation of an altitude profile approximated by the height values of the raster field (2) from the predetermined height profile, (c) Subdivide the grid fields (2), the error value of which exceeds a predetermined threshold value, into polygonal partial grid fields (4, 5), with at least the corner points (3) of the partial grid fields (4, 5) that do not have corner points (3) of the grid fields (2 ) coincide, elevation values are stored, (d) assigning one indicator to each grid (2), the indicator describing whether the ras subfield (2) is subdivided or not, and storing these indicators together with the elevation values, and (e) repeating steps (b) to (d) for all partial grid fields (4, 5), the partial grid fields (4, 5) being one i-th levels form grid fields (2) of an i + 1-th level, the height values being stored in a predetermined sequence, so that the height values are each assigned to a specific corner point (3) of the grid field (4, 5) based on the sequence and the indicators of a j-th level determine for which corner points (3) of the j + 1-th level elevation values are stored.

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Speichern von Profildaten für ein vorgegebenes Höhenprofil, sowie entsprechende Profildaten und ein Verfahren zum Erzeugen eines Höhenprofils aus solchen Profildaten.The present invention relates to a method for storing profile data for a given height profile, as well as corresponding profile data and a method for generating a height profile from such profile data.

Profildaten werden beispielsweise in Geoinformationssystemen zum Beschreiben eines Geländes verwendet. Ein Gelände ist eine Fläche im dreidimensionalen Raum mit besonderen Eigenschaften. Ein Gelände lässt sich stetig und lokal umkehrbar eindeutig in eine Ebene abbilden, solange es keine Überhänge gibt und solange Bauten nicht zum Gelände zählen. Somit ist ein Gelände ein 2,5-dimensionales Gebilde. Ein Gelände kann somit durch eine zweidimensionale Fläche, wobei jedem Punkt der zweidimensionalen Fläche ein Höhenwert zugeordnet ist, dargestellt werden.Profile data is used, for example, in geographic information systems to describe a terrain. A terrain is an area in three-dimensional space with special properties. A terrain can be steadily and locally reversibly uniquely reproduced in a plane, as long as there are no overhangs and as long as buildings are not part of the terrain. Thus, a terrain is a 2.5-dimensional structure. A terrain can thus be represented by a two-dimensional surface, wherein each point of the two-dimensional surface is assigned a height value.

In der Praxis werden Höhenwerte zu einem vorbestimmten Raster gespeichert und das Gelände wird durch eine Vielzahl aneinanderhängender Dreiecke approximiert (Triangulation). Die Eckpunkte eines Dreieckes werden jeweils durch einen Höhenwert dargestellt.In practice, elevation values are stored to a predetermined grid and the terrain is approximated by a plurality of contiguous triangles (triangulation). The vertices of a triangle are each represented by a height value.

Es ist bekannt, die Höhenwerte in einem regelmäßigen oder regulären Gitter, in einem unregelmäßigen Dreiecksnetz und mit einem semi-regulären Dreiecksnetz anzuordnen und zu speichern.It is known to arrange and store the elevation values in a regular or regular grid, in an irregular triangle mesh and with a semi-regular triangle mesh.

Bei einem regulären Dreiecksgitter werden die Höhenwerte zu einem jeden Eckpunkt eines in der Ebene angeordneten Dreiecks gespeichert, wobei alle Dreiecke in der Ebene kongruent zueinander sind. Da für einen jeden Eckpunkt ein Höhenwert benötigt wird, sind die Speicheranforderungen sehr hoch. Beispielsweise müssen für eine flache Ebene genauso viele Höhenwerte pro Fläche gespeichert werden, wie für einen stark konturierten Bereich. Damit der stark konturierte Bereich jedoch korrekt dargestellt werden kann, dürfen die einzelnen Dreiecke nicht zu groß sein. Durch Datenkompression können die Speicheranforderungen etwas vermindert werden.In a regular triangular grid, the elevation values are stored at each vertex of a triangle arranged in the plane, with all triangles in the plane being congruent to each other. Since a height value is needed for each vertex, the memory requirements are very high. For example, for a flat layer, the same amount of height values per surface must be stored as for a strongly contoured area. However, to ensure that the strongly contoured area can be displayed correctly, the individual triangles must not be too large. Data compression can somewhat reduce storage requirements.

Unregelmäßige Dreiecksnetze (TIN: Triangle Irregular Grid) speichern irreguläre Dreiecksnetze. Mit einem Verfahren zum Erzeugen derartiger irregulärer Dreiecksnetze können Höhenprofile sehr gut approximiert werden, da in stark konturierten Bereichen kleinere Dreiecksflächen und in weniger konturierten Bereichen größere Dreiecksflächen vorgesehen werden. Hierdurch können einerseits stark konturierte Bereiche exakt wiedergegeben werden und andererseits ebene Flächen mit wenigen Daten korrekt gespeichert werden. Ein solches Dreiecksnetz löst einerseits das Problem des Speicherbedarfs und andererseits das Problem der Genauigkeit der Darstellung eines Höhenprofils. Die Bearbeitung und Erzeugung derartiger irregulärer Dreiecksnetze ist jedoch sehr aufwändig. Die Suche von Höhenwerten in irregulären Dreiecksnetzen ist kompliziert. Ein solches irreguläres Dreiecksnetz ist nicht hierarchisch aufgebaut und es muss immer eine vollständige Beschreibung der Dreiecksnetze abgespeichert werden.Irregular triangular networks (TIN: Triangle Irregular Grid) store irregular triangular networks. With a method for producing such irregular triangular nets height profiles can be very well approximated, since in larger contoured areas smaller triangular areas and in less contoured areas larger triangular areas are provided. In this way, on the one hand, strongly contoured areas can be reproduced exactly and, on the other hand, flat areas with a small amount of data can be stored correctly. Such a triangle mesh solves on the one hand the problem of the memory requirement and on the other hand the problem of the accuracy of the representation of a height profile. The processing and production of such irregular triangular networks is very complex. The search for altitude values in irregular triangular meshes is complicated. Such an irregular triangle mesh is not hierarchical and it is always necessary to store a complete description of the triangular meshes.

Weiterhin sind ROAM-Netze (Real-time Optimal Adapting Meshes) bekannt. Diese Netze sind semi-reguläre Dreiecksnetze zur Darstellung eines Höhenfeldes. Sie benötigen deutlich weniger Dreiecke als ein reguläres Gitter, aber etwas mehr als ein unregelmäßiges Dreiecksnetz.Furthermore, ROAM networks (Real-time Optimal Adapting Meshes) are known. These nets are semi-regular triangular meshes representing a height field. They require significantly fewer triangles than a regular grid, but a little more than an irregular triangle mesh.

Bei den unregelmäßigen Dreiecksnetzen und bei den semi-regulären Dreiecksnetzen werden die Höhenwerte zusammen mit den X-/Y-Koordinaten gespeichert. Dies heißt, dass für einen jeden Höhenpunkt alle drei Raumkoordinaten gespeichert werden.For the irregular triangular meshes and the semi-regular triangular meshes, the elevation values are stored along with the XY coordinates. This means that for each altitude point all three space coordinates are stored.

Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren zum Speichern von Profildaten für ein vorgegebenes Höhenprofil, sowie entsprechende Profildaten und ein Verfahren zum Erzeugen eines Höhenprofils aus solchen Profildaten zu schaffen, so dass ein vorgegebenes Höhenprofil durch die Profildaten präzise wiedergegeben wird, die Datenmenge gering ist und das Verfahren einfach und schnell ausführbar ist.The present invention has for its object to provide a method for storing profile data for a given height profile, as well as corresponding profile data and a method for generating a height profile of such profile data, so that a predetermined height profile is accurately reproduced by the profile data, the amount of data low and the process is easy and quick to execute.

Die Aufgabe wird durch das in den unabhängigen Ansprüchen definierte Verfahren zum Speichern von Profildaten, den entsprechenden Profildaten und dem Verfahren zum Erzeugen eines Höhenprofils gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind in den jeweiligen Unteransprüchen definiert.The object is achieved by the method for storing profile data, the corresponding profile data and the method for generating a height profile, as defined in the independent claims. Advantageous embodiments of the invention are defined in the respective subclaims.

Das erfindungsgemäße Verfahren zum Speichern von Profildaten für ein vorliegendes Höhenprofil umfasst folgende Schritte:

  • (a) Vorsehen eines regelmäßigen Rasters mit polygonalen Rasterfeldern eines nullten Levels in einer Ebene, wobei Eckpunkte der Rasterfelder Rasterpunkte darstellen, und zu jedem Rasterpunkt ein Höhenwert gespeichert wird,
  • (b) Bestimmen eines Fehlerwertes für ein jedes Rasterfeld, der eine Abweichung eines durch die Höhenwerte des Rasterfelds approximierten Höhenprofils vom vorgegebenen Höhenprofil beschreibt,
  • (c) Unterteilen der Rasterfelder, deren Fehlerwert einen vorbestimmten Schwellwert überschreitet, in polygonale Teilrasterfelder, wobei zumindest zu den Eckpunkten der Teilrasterfelder, die nicht mit Eckpunkten der Rasterfelder zusammen fallen, Höhenwerte gespeichert werden,
  • (d) Zuordnen jeweils eines Indikators zu einem jeden Rasterfeld, wobei der Indikator beschreibt, ob das Rasterfeld unterteilt ist oder nicht, und Speichern dieser Indikatoren zusammen mit den Höhenwerten, und
  • (e) Wiederholen der Schritte (b) bis (d) für alle Teilrasterfelder, wobei die Teilrasterfelder eines i-ten Levels Rasterfelder eines i + 1-ten Level bilden, wobei die Höhenwerte in einer vorbestimmten Reihenfolge gespeichert werden, so dass die Höhenwerte aufgrund der Reihenfolge jeweils einem bestimmten Eckpunkt des Rasterfeldes zugeordnet sind und durch die Indikatoren eines j-ten Levels bestimmt ist, für welche Eckpunkte des j + 1-ten Levels Höhenwerte gespeichert sind.
The method according to the invention for storing profile data for a given height profile comprises the following steps:
  • (a) providing a regular grid with polygonal grids of a zeroth level in a plane, where vertices of the grids represent halftone dots, and an elevation value is stored for each grid point,
  • (b) determining an error value for each grid which describes a deviation of a height profile approximated by the height values of the grid from the given height profile,
  • (c) dividing the grids whose error value exceeds a predetermined threshold into polygonal sub-grids, wherein at least to the vertices of the sub-grids that do not coincide with vertices of the grids, height values are stored,
  • (d) assigning one indicator to each grid, the indicator describing whether the grid is subdivided or not, and storing these indicators together with the elevation values, and
  • (e) repeating steps (b) through (d) for all sub-grids, wherein the sub-grids of an i-th level form rasters of i + 1-th level, wherein the altitude values are stored in a predetermined order such that the altitude values are the order are each assigned to a specific vertex of the grid and is determined by the indicators of a j-th level, for which vertices of the j + 1-th level height values are stored.

Durch diese Verfahren werden semi-reguläre Profildaten erzeugt. Rasterfelder, die ein vorgegebenes Höhenprofil mit der gewünschten Genauigkeit wiedergeben, werden nicht unterteilt, wohingegen Rasterfelder, die das vorgegebene Höhenprofil nicht mit der gewünschten Genauigkeit wiedergeben, in Teilrasterfelder unterteilt werden. Diese Teilrasterfelder können wiederum unterteilt werden (Rekursion). Diese Unterteilung kann an sich beliebig oft wiederholt werden. Hierdurch ist es grundsätzlich möglich, ein vorgegebenes Höhenprofil beliebig genau zu approximieren. Ebenflächige Bereiche in einem vorgegebenen Höhenprofil können hingegen mit einem großflächigen Rasterfeld sehr exakt approximiert werden, ohne dass weitere Unterteilungen und damit weitere Höhenwerte notwendig sind.These procedures generate semi-regular profile data. Grids that reflect a given height profile with the desired accuracy are not subdivided, whereas grids that do not reflect the given height profile with the desired accuracy are subdivided into sub-grids. These partial grid fields can in turn be subdivided (recursion). This subdivision can be repeated as often as desired. As a result, it is fundamentally possible to approximate a given height profile as exactly as desired. On the other hand, flat areas in a given height profile can be approximated very accurately with a large-area grid, without the need for further subdivisions and thus additional height values.

Hiermit wird somit eine sehr präzise Approximierung des vorgegebenen Höhenprofils erzeugt, als auch eine Aufteilung in kleine Rasterfelder nur ausgeführt, wo es notwendig ist. Dadurch kann die Anzahl an Höhenwerten gering gehalten werden.Thus, a very precise approximation of the given height profile is generated, as well as a division into small grids only executed where it is necessary. This allows the number of altitude values to be kept low.

Mit den Indikatoren wird beschrieben, welches Rasterfeld unterteilt ist oder nicht unterteilt ist. Da die Indikatoren zusammen mit den Höhenwerten gespeichert werden und dem jeweiligen Rasterfeld zugeordnet sind, enthalten die gespeicherten Profildaten die Information über die Teilung der einzelnen Rasterfelder. Die Höhenwerte sind für ein jeweiliges Rasterfeld in einer vorbestimmten Reihenfolge gespeichert, so dass die Höhenwerte aufgrund der Reihenfolge jeweils einem bestimmten Eckpunkt des jeweiligen Rasterfeldes zugeordnet sind. Hierdurch ist es nicht notwendig, die X- und Y-Koordinaten der Eckpunkte der Rasterfelder zu speichern. Diese Information ist in den Profildaten impliziert durch die Reihenfolge der Höhenwerte in Kombination mit den Indikatoren enthalten, mit welchen die einzelnen Abschnitte der gespeicherten Höhenwerte eindeutig einem Rasterfeld zuordenbar sind. Da die X- und Y-Koordinaten der Eckpunkte der Rasterfelder nicht explizit gespeichert werden, verringert sich das Datenvolumen der Profildaten erheblich. Ein geringes Datenvolumen benötigt zum einen wenig Speicherbedarf und lässt sich zum anderen wesentlich schneller als ein großes Datenvolumen verarbeiten. Dies bedeutet, dass die erfindungsgemäßen Profildaten in einem mobilen Geoinformationssystem einfach abgespeichert und verarbeitet werden können, ohne dass eine außergewöhnlich hohe Rechenleistung notwendig ist. Im Vergleich zu herkömmlichen Profildaten ist es möglich, bei gleicher Rechenleistung die Qualität der Auflösung erheblich zu steigern.The indicators describe which grid is subdivided or not subdivided. Since the indicators are stored together with the altitude values and assigned to the respective grid, the stored profile data contains the information about the division of the individual grid fields. The height values are stored for a respective grid in a predetermined order, so that the height values are each assigned to a specific vertex of the respective grid due to the order. As a result, it is not necessary to store the X and Y coordinates of the vertices of the grids. This information is contained in the profile data implied by the order of the altitude values in combination with the indicators with which the individual sections of the stored altitude values are uniquely assignable to a grid. Since the X and Y coordinates of the corner points of the grids are not explicitly stored, the data volume of the profile data is reduced considerably. A small volume of data requires little storage space and can be processed much faster than a large volume of data. This means that the profile data according to the invention in a mobile geographic information system can be easily stored and processed without an exceptionally high computing power is necessary. Compared to conventional profile data, it is possible to significantly increase the quality of the resolution with the same computing power.

Die Rasterfelder haben eine polygonale Form, insbesondere eine dreieckförmige oder rechteckförmige Form. Vorzugsweise ist die Form der Rasterfelder einheitlich dreieckförmig oder rechteckförmig. Die Größe der einzelnen Rasterfelder der unterschiedlichen Level unterscheidet sich natürlich.The grids have a polygonal shape, in particular a triangular or rectangular shape. Preferably, the shape of the grid is uniformly triangular or rectangular. The size of the individual grids of the different levels is of course different.

Die Höhenwerte können als absolute Höhenwerte oder als relative Höhenwerte zu einer Bezugshöhe gespeichert werden. Vorzugsweise wird ein Teil der Höhenwerte als absolute Höhenwerte und die übrigen Höhenwerte werden als relative Höhenwerte gespeichert, wobei sich die relativen Höhenwerte auf einem bestimmten, gespeicherten absoluten Höhenwert beziehen. Beispielsweise wird in jedem Rasterfeld des nullten Levels ein absoluter Höhenwert gespeichert und alle weiteren Höhenwerte dieses Rasterfeldes des nullten Levels und der entsprechenden Teilrasterfelder werden als relative Höhenwerte unter Bezugnahme auf diesen einen absoluten Höhenwert gespeichert. Es kann auch zweckmäßig sein zu jedem Rasterfeld eines Levels einen absoluten Höhenwert zu speichern und die übrigen Höhenwerte als relative Höhenwerte zu speichern.The altitude values can be stored as absolute altitude values or as relative altitude values to a reference altitude. Preferably, a portion of the altitude values are stored as absolute altitude values and the remaining altitude values are stored as relative altitude values, wherein the relative altitude values relate to a particular, stored absolute altitude value. For example, an absolute height value is stored in each zeroth level grid, and all other elevation values of this zeroth level grid and the corresponding sub-grids are stored as relative altitude values with reference to this one absolute altitude value. It may also be useful to store an absolute height value for each grid of a level and to store the remaining altitude values as relative altitude values.

Die absoluten Höhenwerte sind vorzugsweise an Eckpunkten der Rasterfelder angeordnet, die wiederum ein regelmäßiges Raster darstellen, d. h., dass an einem vorbestimmten Punkt des jeweiligen Rasterfeldes ein absoluter Höhenwert vorgesehen ist. The absolute height values are preferably arranged at vertices of the grids, which in turn represent a regular grid, ie that an absolute height value is provided at a predetermined point of the respective grid.

Beim Bestimmen des Fehlerwertes eines Rasterfeldes bezüglich des folgenden Höhenprofils wird ein approximiertes Höhenprofil durch mehrere Dreieckflächen dargestellt, wobei die Höhenwerte Eckpunkte der Dreieckflächen bilden und ein Fehler bezüglich des vorgegebenen Höhenprofils nach einer vorbestimmten Metrik berechnet wird.In determining the error value of a grid with respect to the following elevation profile, an approximate elevation profile is represented by a plurality of triangular faces, wherein the elevation values form vertices of the triangular faces and an error in the predetermined elevation profile is calculated according to a predetermined metric.

Hierzu kann an sich eine beliebige Metrik zur Berechnung der Abweichung des approximierten Höhenprofils vom vorgegebenen Höhenprofil verwendet werden. Als Metrik kann beispielsweise ein Abstand des approximierten Höhenprofils zum vorgegebenen Höhenprofil verwendet werden, wobei der Abstand ein maximaler, ein mittlerer Abstand oder ein gewichteter Abstand sein kann. Als mittlerer Abstand wird ein Abstand verstanden, der an mehreren Punkten an der jeweiligen Dreiecksfläche berechnet und dann gemittelt wird. Ein gewichteter Abstand ist ein Abstand, der an mehreren Punkten einer Dreiecksfläche berechnet wird und dann gewichtet und gemittelt wird. Eine alternative Metrik ist das Integral über den absoluten Abstand zwischen dem approximierten Höhenprofils und dem vorgegebenen Höhenprofil.For this purpose, an arbitrary metric for calculating the deviation of the approximated height profile from the given height profile can be used per se. As a metric, for example, a distance of the approximated height profile can be used for the given height profile, wherein the distance may be a maximum, a mean distance or a weighted distance. The mean distance is understood to mean a distance which is calculated at several points on the respective triangular surface and then averaged. A weighted distance is a distance that is calculated at several points on a triangular surface and then weighted and averaged. An alternative metric is the integral over the absolute distance between the approximated height profile and the given height profile.

Das regelmäßige Raster des ersten Levels kann eine vorbestimmte Anzahl, insbesondere vier, polygonale Rasterfelder aufweisen. Dies ist insbesondere bei einer rechteckförmigen oder quadratischen Fläche zweckmäßig. Die entsprechenden Teilrasterfelder sind vorzugsweise Quadranten des ursprünglichen Rasterfeldes. Die weitere Unterteilung der Rasterfelder erfolgt wieder durch Teilrasterfelder in Form von Quadranten. Die sich hierdurch ergebende Datenstruktur entspricht einem Quad-Tree.The regular grid of the first level may have a predetermined number, in particular four, polygonal grids. This is particularly useful in a rectangular or square area. The corresponding sub-grids are preferably quadrants of the original grid. The further subdivision of the grids is again by partial grids in the form of quadrants. The resulting data structure corresponds to a quad-tree.

Die wiederholte Unterteilung der Rasterfelder stellt eine Rekursion dar.The repeated subdivision of the grids represents a recursion.

Ein erfindungsgemäßes Verfahren zum Erzeugen eines Höhenprofils umfasst folgende Schritte:

  • – Lesen von erfindungsgemäßen Profildaten, wobei anhand der Indikatoren die jeweiligen Höhenwerte bestimmten Rasterfeldern zugeordnet werden und anhand der Reihenfolge, mit der die Höhenwerte in den Profildaten gespeichert sind, die Höhenwerte bestimmten Eckpunkten der Rasterfelder bzw. deren zweidimensionalen Koordinaten zugeordnet werden, und
  • – Erzeugen von aneinander hängenden Dreiecksflächen, deren Eckpunkte jeweils benachbarte Höhenwerte sind, wobei die Dreiecksflächen das Höhenprofil darstellen.
A method according to the invention for producing a height profile comprises the following steps:
  • Reading of profile data according to the invention, wherein the respective elevation values are assigned to specific grids based on the indicators, and the elevation values are assigned to certain vertices of the grids or their two-dimensional coordinates based on the order in which the elevation values are stored in the profile data;
  • - Creating triangular faces hanging from one another, whose vertices are respectively adjacent height values, the triangular areas representing the height profile.

Mit dem erfindungsgemäßen Verfahren können Profildaten sehr effizient gespeichert werden. Von der NASA sind SRTM-Daten mit 90 m horizontaler Auflösung bekannt, welche unkomprimiert 37,7 GB Speicherplatz und verlustfrei komprimiert 13,7 GB Speicherplatz benötigen. Die erfindungsgemäßen Profildaten benötigen für die gesamte Welt bei horizontaler Auflösung von 90 m lediglich 1 GB Speicherplatz.With the method according to the invention profile data can be stored very efficiently. NASA is aware of SRTM data with 90 m horizontal resolution, which requires uncompressed 37.7 GB of storage and lossless compressed 13.7 GB of storage space. The profile data according to the invention require only 1 GB storage space for the entire world with a horizontal resolution of 90 m.

Weiterhin erlaubt die Erfindung eine sehr schnelle Approximierung des Höhenprofils durch die Erstellung der Dreiecke (Triangulation).Furthermore, the invention allows a very fast approximation of the height profile by creating the triangles (triangulation).

Das erfindungsgemäße Verfahren ist inkrementell aufgebaut. Sobald man einen vollständigen Level gelesen hat, kann man bereits ein grobes Höhenprofil erstellen. Je mehr Level gelesen worden sind, desto detaillierter wird das Höhenprofil. Dies ist beispielsweise für ein Streaming von einem Server zu einem Client, insbesondere in einem in einem Kraftfahrzeug befindlichen Client, vorteilhaft, da man nach dem Übertragen der ersten Level bereits ein Höhenprofil erzeugen kann, das mit der weiteren Übertragung zunehmend präzisiert wird.The inventive method is constructed incrementally. Once you have read a full level, you can already create a rough elevation profile. The more levels have been read, the more detailed the elevation profile becomes. This is advantageous, for example, for streaming from a server to a client, in particular in a client located in a motor vehicle, because after the first levels have been transmitted, it is already possible to generate a height profile which is increasingly specified with the further transmission.

Das Verfahren ist hierarchisch aufgebaut. Dadurch kann sehr schnell auf einzelne Höhenwerte zugegriffen werden.The procedure is hierarchical. As a result, individual height values can be accessed very quickly.

Die Erfindung wird nachfolgend beispielhaft anhand der Zeichnung näher erläutert. Die Zeichnung zeigt in:The invention will be explained in more detail by way of example with reference to the drawing. The drawing shows in:

1 das erfindungsgemäße Verfahren schematisch vereinfacht in einem Flussdiagramm, 1 the method according to the invention is simplified schematically in a flow chart,

2 ein rechteckförmiges Raster mit Rasterfelder des nullten Levels, 2 a rectangular grid with zeroth level grids,

3a das rechteckförmige Raster aus 2 mit zwei Teilrasterfeldern des ersten Levels, 3a the rectangular grid 2 with two partial grids of the first level,

3b, 3c die Anordnung von Höhenwerten in den Teilrasterfeldern aus 3a, und 3b . 3c the arrangement of height values in the sub-grid fields 3a , and

4 das Raster aus 2 mit Teilrasterfeldern des zweiten Levels. 4 the grid 2 with partial grids of the second level.

Beim nachfolgend erläuterten Ausführungsbeispiel zum Speichern von Profildaten für ein vorbestimmtes Höhenprofil wird von einem regelmäßigen Raster 1 für einen nullten Level (2) ausgegangen, das in vier Rasterfelder 2 unterteilt ist. Die Rasterfelder 2 sind rechteckförmige Felder und stellen jeweils einen Quadranten 1, 2, 3, 4 des Rasters 1 bzw. einer maximale Fläche, auf die ein Gelände abgebildet werden kann, dar. Die Rasterfelder 2 weisen Eckpunkte 1–9 auf, an welchen Höhenwerte zu speichern sind.In the embodiment explained below for storing profile data for a predetermined height profile is of a regular grid 1 for a zeroth level ( 2 ) in four grids 2 is divided. The grids 2 are rectangular fields and each represent a quadrant 1, 2, 3, 4 of the grid 1 or a maximum area to which a terrain can be imaged. The grids 2 have vertices 1-9 on which height values are to be stored.

Das Verfahren zum Speichern von Profildaten wird nachfolgend anhand von 1 erläutert:
Das Verfahren beginnt mit dem Schritt S1 (Start).
The method of storing profile data will be described below with reference to FIG 1 explains:
The process starts with step S1 (start).

Im Schritt S2 werden die Rasterfelder 2 festgelegt. Im vorliegenden Ausführungsbeispiel sind es vier Rasterfelder 2 (2).In step S2, the grids become 2 established. In the present embodiment, there are four grids 2 ( 2 ).

Im darauffolgenden Schritt (S3) werden die Höhenwerte 1–9 an den Eckpunkten 3 berechnet. Ein vorgegebenes Höhenprofil liegt in elektronisch lesbarer Form eines beliebigen üblichen Formates vor. Das Raster 1 wird mit dem Bereich des vorgegebenen Höhenprofils in Deckung gebracht, der in Profildaten umgesetzt werden soll. An den Eckpunkten 3 werden dann die Höhenwerte berechnet und zwischengespeichert.In the following step (S3), the height values 1-9 become the corner points 3 calculated. A given height profile is in electronically readable form of any conventional format. The grid 1 is brought into line with the range of the given height profile, which is to be implemented in profile data. At the corners 3 then the altitude values are calculated and buffered.

Mit diesen Höhenwerten wird das Höhenprofil approximiert (S4), indem jeweils die Höhenwerte dreier benachbarter Eckpunkte mit einem ebenflächigen Dreieck verbunden werden. Im vorliegenden Ausführungsbeispiel umfassen die Dreiecke beispielsweise die Eckpunkte 1, 2, 4 und 2, 4, 5 und 2, 3, 5 und 3, 5, 6 und 4, 5, 7 und 5, 7, 8 und 5, 6, 8 und 6, 8, 9. Es sind somit acht zusammenhängende Dreiecke, deren Eckpunkte entsprechend den jeweiligen Höhenwerten über der Ebene des Rasters 1 angeordnet sind.These height values are used to approximate the height profile (S4) by connecting the height values of three adjacent vertices with a planar triangle. For example, in the present embodiment, the triangles include vertices 1, 2, 4 and 2, 4, 5 and 2, 3, 5 and 3, 5, 6 and 4, 5, 7 and 5, 7, 8 and 5, 6, 8 and 6, 8, 9. Thus, there are eight contiguous triangles whose vertices correspond to the respective height values above the plane of the grid 1 are arranged.

Für ein jedes Rasterfeld 2 wird ein Fehlerwert bestimmt (S5), der angibt, wie stark das approximierte Höhenprofil des entsprechenden Rasterfeldes vom vorgegebenen Höhenprofil abweicht. Die Metrik zur Berechnung des Fehlerwertes kann beispielsweise der maximale Abstand zwischen der Fläche des approximierten Höhenfeldes und des vorgegebenen Höhenfeldes sein. Es sind auch andere Arten von Metrik möglich, beispielsweise das Integral über den Absolutwert der Abstände zwischen dem approximierten Höhenfeld und dem vorgegebenen Höhenfeld. Im vorliegenden Ausführungsbeispiel umfasst jedes Rasterfeld 2 zwei Dreiecksflächen, deren Abweichung vom vorgegebenen Höhenprofil ermittelt wird.For each grid 2 an error value is determined (S5), which indicates how much the approximated height profile of the corresponding grid differs from the given height profile. The metric for calculating the error value may be, for example, the maximum distance between the area of the approximated height field and the predetermined height field. Other types of metric are possible, for example the integral over the absolute value of the distances between the approximated height field and the given height field. In the present embodiment, each grid comprises 2 two triangular surfaces whose deviation from the given height profile is determined.

Für ein jedes Rasterfeld 2 wird ein Indikator bestimmt, ob die Abweichung des approximierten Höhenprofils größer als eine vorbestimmte maximale erlaubte Abweichung ist. Bei der Bestimmung des Indikators wird der Fehlerwert mit einem Schwellenwert verglichen. Ist der Fehlerwert größer als der Schwellenwert, dann wird der Indikator auf 1 oder auf „Ja” gesetzt und ist der Fehlerwert kleiner als der vorbestimmte Schwellenwert, dann wird der Indikator auf 0 bzw. auf „Nein” gesetzt.For each grid 2 An indicator is determined whether the deviation of the approximated height profile is greater than a predetermined maximum allowable deviation. When determining the indicator, the error value is compared with a threshold value. If the error value is greater than the threshold, then the indicator is set to 1 or to "yes" and if the error value is less than the predetermined threshold, then the indicator is set to 0 or "No".

Ist die Abweichung des approximierten Höhenprofils vom vorgegebenen Höhenprofil größer als eine maximal vorbestimmte Abweichung, dann wird das Rasterfeld 2 in Teilrasterfelder 4 unterteilt.If the deviation of the approximated height profile from the given height profile is greater than a maximum predetermined deviation, then the grid becomes 2 in partial grids 4 divided.

Im vorliegenden Ausführungsbeispiel sind die Rasterfelder 2 des ersten und zweiten Quadranten in Teilrasterfelder 4 (3a) unterteilt. In den Quadranten 3 und 4 erfolgt keine Unterteilung in Teilrasterfelder. Dies heißt, dass die Indikatoren folgende Werte besitzen: 1, 1, 0, 0.In the present embodiment, the grids are 2 of the first and second quadrants in partial grids 4 ( 3a ). In quadrants 3 and 4 there is no subdivision into partial grids. This means that the indicators have the following values: 1, 1, 0, 0.

Die in 2 gezeigten Rasterfelder 2 stellen einen nullten Level dar. Die Indikatoren und Höhenwerte für den nullten Level werden in folgendem Datenfeld gespeichert: 1, 1, 0, 0 4 Bit: Ja, Ja, Nein, Nein dH1 Höhendifferenz zu H5 dH2 Höhendifferenz zu H5 dH3 Höhendifferenz zu H5 dH4 Höhendifferenz zu H5 H5 Höhenwert für Eckpunkt 5 dH6 Höhendifferenz zu H5 dH7 Höhendifferenz zu H5 dH8 Höhendifferenz zu H5 dH9 Höhendifferenz zu H5 In the 2 shown grids 2 represent a zeroth level. The indicators and altitude values for the zeroth level are stored in the following data field: 1, 1, 0, 0 4 bits: yes, yes, no, no dH1 Height difference to H5 dH2 Height difference to H5 dh3 Height difference to H5 dh4 Height difference to H5 H5 Height value for corner point 5 dh6 Height difference to H5 dH7 Height difference to H5 DH8 Height difference to H5 DH9 Height difference to H5

Für den Eckpunkt 5 wird der Höhenwert als absoluter Wert H5 gespeichert. Für die anderen Eckpunkte 1–4 und 6–9 werden die Höhenwerte lediglich als Höhendifferenzen zu dem Höhenwert H5 gespeichert. Durch die Speicherung der Höhendifferenzen kann der notwendige Zahlenraum kleiner gehalten werden als beim Speichern von absoluten Höhenwerten. Zudem erlaubt das Vorsehen von Höhendifferenzen eine sehr schnelle Triangulierung des approximierten Höhenprofils.For vertex 5, the altitude value is stored as absolute value H5. For the other corner points 1-4 and 6-9, the height values are stored as height differences to the height value H5 only. By storing the height differences, the necessary number space can be kept smaller than when storing absolute height values. In addition, the provision of height differences allows a very fast triangulation of the approximated height profile.

Im folgenden Schritt S8 wird geprüft, ob ein weiteres Raster des jeweiligen Levels vorhanden ist. Da beim vorliegenden Ausführungsbeispiel der nullte Level lediglich ein einziges Raster 1 umfasst, ist die Entscheidung nein. Dies bedeutet, dass alle Raster des jeweiligen Levels abgearbeitet worden sind.In the following step S8 it is checked whether there is another raster of the respective level. As in the present embodiment, the zeroth level is only a single raster 1 The decision is no. This means that all rasters of the respective level have been processed.

Der Verfahrensablauf geht auf den Schritt S9 über, in dem geprüft wird, ob zumindest ein Indikator gesetzt ist (S9). Ist dies der Fall, dann bedeutet dies, dass zumindest ein Rasterfeld 2 in Teilrasterfelder 4 unterteilt wird. Die Teilrasterfelder 4 (3a) stellen dann Rasterfelder im nächsten Level, den ersten Level, dar. Deshalb wird im Schritt S10 ein Zähler i, der die Nummer des Levels angibt, um 1 erhöht. Der Verfahrensablauf geht dann auf den Schritt S2 über, wobei dann das Rasterfeld 2 aus dem vorhergehenden Level das Raster im darauffolgenden Level bildet. Dementsprechend bilden die Teilrasterfelder 4 aus dem vorhergehenden Level die Rasterfelder des aktuellen Levels. Die Schritte S2 bis S8 werden genauso wie beim vorhergehenden Level mit den neuen Rasterfeldern ausgeführt. Da an bestimmten Eckpunkten der jeweiligen Rasterfelder bereits Höhenwerte vorhanden sind, müssen bei dem zum nullten Level übergeordneten Level lediglich ein Teil der Höhenwerte bestimmt werden. 3b zeigt beispielsweise die Eckpunkte des ersten Quadranten gemäß 3a der Teilrasterfelder 4, wobei in 3b lediglich die Eckpunkte 1, 2, 3, 4, 5 mit Höhenwerten zu belegen sind, da die anderen vier Eckpunkte, die mit einem „R” gekennzeichnet sind, bereits im vorhergehenden Level berechnet und abgespeichert sind. Die bereits berechneten Höhenwerte sind im Level Null die Höhenwerte zu den Eckpunkten 1, 2, 4 und 5 (2 bzw. 3a). Im zweiten Quadranten, der in 2 und 3a unterhalb des ersten Quadranten angeordnet ist, sind dann lediglich vier Eckpunkte 1, 2, 3, 4 mit Höhenwerten zu belegen (3c), da die Höhenwerte der anderen Eckpunkte bereits beim vorhergehenden Level oder beim vorhergehenden Raster berechnet worden sind. 4 zeigt das Raster aus 2, wobei mit schwarzen Punkten alle Eckpunkte dargestellt sind, an welchen im nullten und ersten Level Höhenwerte bestimmt worden sind.The process goes to step S9, in which it is checked whether at least one indicator is set (S9). If this is the case then it means that at least one grid 2 in partial grids 4 is divided. The partial grid fields 4 ( 3a ) then represent grids in the next level, the first level. Therefore, in step S10, a counter i indicating the number of the level is incremented by one. The process then proceeds to step S2, in which case the grid 2 from the previous level forms the grid in the next level. Accordingly, the partial grid form 4 from the previous level, the grids of the current level. Steps S2 to S8 are executed the same way as the previous level with the new grids. Since height values already exist at certain vertices of the respective grids, only a portion of the height values need to be determined at the level above the zeroth level. 3b shows, for example, the vertices of the first quadrant according to 3a the partial grid fields 4 , where in 3b only the corner points 1, 2, 3, 4, 5 are to be assigned height values, since the other four corner points, which are marked with an "R", are already calculated and stored in the preceding level. The height values already calculated are in the level zero the height values to the vertices 1, 2, 4 and 5 ( 2 respectively. 3a ). In the second quadrant, the in 2 and 3a is arranged below the first quadrant, then only four vertices 1, 2, 3, 4 are to be assigned height values ( 3c ), since the elevation values of the other vertices have already been calculated at the previous level or at the previous grid. 4 shows the grid 2 , where black points represent all the vertices on which elevation values have been determined in the zeroth and first levels.

Die Indikatoren und die Höhenwerte des ersten Rasters des ersten Levels werden im folgenden Datenfeld gespeichert: 1, 0, 0, 1 Höhendifferenz zu H3 dH1 Höhendifferenz zu H3 dH2 Höhendifferenz zu H3 H3 Höhenwert für Eckpunkt 3 dH4 Höhendifferenz zu H3 dH5 Höhendifferenz zu H3 The indicators and elevation values of the first grid of the first level are stored in the following data field: 1, 0, 0, 1 Height difference to H3 dH1 Height difference to H3 dH2 Height difference to H3 H3 Height value for corner point 3 dh4 Height difference to H3 DH5 Height difference to H3

Die Indikatoren 1, 0, 0, 1 bedeuten, dass die Rasterfelder 4 des ersten Level im ersten und vierten Quadranten (3a) erneut in weitere Teilrasterfelder 5 zu unterteilen sind. Diese weiteren Teilrasterfelder 5 bilden dann die Rasterfelder eines zweiten Levels.The indicators 1, 0, 0, 1 mean that the grids 4 of the first level in the first and fourth quadrant ( 3a ) again into further partial grids 5 to divide. These further partial grids 5 then form the grids of a second level.

Der Höhenwert zum Eckpunkt H3 wird als absoluter Höhenwert gespeichert. Die übrigen Höhenwerte werden als relative Höhenwerte gespeichert, wobei sie Bezug auf den Höhenwert H3 nehmen.The height value to the corner point H3 is stored as an absolute height value. The remaining altitude values are stored as relative altitude values, referring to the altitude value H3.

Nach dem Speichern der Indikatoren und Höhenwerte im Schritt S7 wird im Schritt S8 wiederum geprüft, ob ein weiteres Raster des ersten Levels vorhanden ist. In diesem Fall gibt es ein weiteres Raster, nämlich den zweiten Quadranten des Rasters des 0-ten Levels, für das die Höhenwerte zu bestimmen sind. Deshalb verzweigt der Verfahrensablauf wieder auf den Schritt S3.After saving the indicators and height values in step S7, it is again checked in step S8 whether there is another raster of the first level. In this case, there is another raster, the second quadrant of the raster of the 0th level, for which the altitude values are to be determined. Therefore, the process flow branches back to the step S3.

Die Schritte S3 bis S8 bzw. S2 bis S8 werden so oft wiederholt, bis in allen Rasterfeldern des jeweils höchsten Levels die Fehlerwerte unter dem Schwellenwert liegen. Grundsätzlich können beliebig viele Level erzeugt werden. In jedem Level werden Höhenwerte für zumindest eines oder mehrere Raster berechnet. Die Datenfelder werden aufeinanderfolgend in eine Datei gespeichert, wobei für das jeweilige Raster zunächst die Indikatoren mit einem Zahlenwert und dann nachfolgend die Höhenwerte mit jeweils einem Zahlenwert gespeichert werden. Die Höhenwerte werden mit einer vorbestimmten Reihenfolge gespeichert. Im vorliegenden Ausführungsbeispiel werden die Höhenwerte in der Reihenfolge 1, 2, 3, 4, 5, 6, 7, 8, 9 der in 2 gezeigten Eckpunkte gespeichert, wobei bei höheren Leveln bereits vorhandene Höhenwerte weggelassen werden (siehe z. B. 3b und 3c). im vorliegenden Ausführungsbeispiel ist die Reihenfolge beginnend mit dem Eckpunkt oben links, dann horizontal nach rechts, dann die nächste Zeile im Raster und dann die Höhenwerte der untersten Zeile jeweils von links nach rechts.The steps S3 to S8 or S2 to S8 are repeated until the error values in all grids of the highest level are below the threshold value. Basically any number of levels can be created. In each level, elevation values are calculated for at least one or more rasters. The data fields are stored consecutively in a file, wherein for the respective grid first the indicators are stored with a numerical value and then the height values with one numerical value each. The altitude values are stored in a predetermined order. In the present embodiment, the height values in the order 1, 2, 3, 4, 5, 6, 7, 8, 9 of the in 2 stored vertices, which at higher levels already existing height values are omitted (see, eg. 3b and 3c ). In the present embodiment, the order is starting with the vertex top left, then horizontal right, then the next line in the grid and then the height values of the bottom line each from left to right.

Als Datenfelder werden nur die Werte in der linken Spalte der in den beiden obigen Tabellen gezeigten Datenfelder in eine Datei gespeichert. Durch das Vorsehen der Indikatoren und der bestimmten Reihenfolge, mit welcher die Höhenwerte in den Datenfeldern angeordnet sind, sind die einzelnen Höhenwerte jeweils einem bestimmten Eckpunkt zuordenbar.As data fields, only the values in the left column of the data fields shown in the two tables above are stored in a file. By providing the indicators and the particular order in which the elevation values are arranged in the data fields, the individual elevation values can each be assigned to a specific vertex.

Im Rahmen der Erfindung können selbstverständlich andere Reihenfolgen gewählt werden und es kann selbstverständlich auch eine andere Form der Rasterfelder gewählt werden. Es können auch dreieckförmige Rasterfelder sinnvoll sein. Ein Raster kann auch eine andere Anzahl von Rasterfeldern enthalten. Grundsätzlich ist es auch möglich, dass die Anzahl der Rasterfelder pro Raster in den einzelnen Level variiert. Es ist jedoch vorteilhaft, in allen Leveln die gleiche Form und/oder Anzahl der Rasterfelder zu verwenden und auch die gleiche Reihenfolge der Zuordnung der Höhenwerte zu den Eckpunkten beizubehalten. Hierdurch können sowohl beim Speichern als auch beim Lesen der Profildaten die Höhenwerte den jeweiligen Eckpunkten sehr einfach, schnell und eindeutig mit dem gleichen Regelsatz zugeordnet werden.In the context of the invention, of course, other orders can be selected and of course, another form of the grid can be selected. It can also be useful triangular grids. A grid can also contain a different number of grids. In principle, it is also possible that the number of grids per grid varies in each level. However, it is advantageous to use the same shape and / or number of grids in all levels and also to maintain the same order of assignment of the height values to the vertices. As a result, both when saving and when reading the profile data, the height values can be assigned to the respective corner points very simply, quickly and unambiguously with the same rule set.

Beim Lesen der Profildaten werden die Indikatoren und die jeweiligen Höhenwerte eines bestimmten Levels zunächst gelesen, dann werden die Höhenwerte den Eckpunkten des Rasters zugeordnet. Danach werden die Indikatoren und die Höhenwerte des nächsten Levels gelesen. Diese Höhenwerte werden anhand der Indikatoren des vorhergehenden Levels und der vorbestimmten Reihenfolge Eckpunkten vom Rasterfeld des vorliegenden Levels zugeordnet. Dies wird so oft wiederholt, bis die Höhenwerte aller Level gelesen und entsprechenden Eckpunkten zugeordnet worden sind. Das Höhenprofil wird dann aus zusammenhängenden Dreiecksflächen erzeugt, wobei die Eckpunkte der Dreiecksflächen jeweils benachbarte Höhenwerte sind. Die zusammenhängenden Dreiecksflächen bilden dann das Höhenprofil.When reading the profile data, the indicators and the respective height values of a certain level are read first, then the height values are assigned to the vertices of the grid. Then the indicators and the altitude values of the next level are read. These elevation values are assigned vertices from the grid of the present level based on the indicators of the previous level and the predetermined order. This is repeated until the elevation values of all levels have been read and assigned to corresponding vertices. The elevation profile is then generated from contiguous triangular faces, where the vertices of the triangular faces are each adjacent elevation values. The contiguous triangular surfaces then form the height profile.

Die erfindungsgemäßen Profildaten werden beispielsweise zum Darstellen eines Geländes an einem Geoinformationssystem verwendet. Hierbei ist es möglich, zunächst nach dem Lesen der Höhenwerte einiger weniger Level ein vorläufiges Geländeprofil zu berechnen. Nach dem Lesen von Höhenwerten weiterer Level kann das Geländeprofil weiter verfeinert werden.The profile data according to the invention are used, for example, for displaying a terrain on a geographic information system. Here it is possible to first calculate a preliminary terrain profile after reading the elevation values of a few levels. After reading altitude values of further levels, the terrain profile can be further refined.

BezugszeichenlisteLIST OF REFERENCE NUMBERS

11
Rastergrid
22
Rasterfeldgrid
33
Eckpunktvertex
44
Teilrasterfeld von Level Null bzw. Rasterfeld von Level EinsSub-grid of level zero or grid of level one
55
Teilrasterfeld von Level Eins bzw. Rasterfeld von Level ZweiPartial Grid of Level One or Grid of Level Two

Claims (13)

Verfahren zum Speichern von Profildaten für ein vorgegebenes Höhenprofil, umfassend die folgenden Schritte: (a) Vorsehen eines regelmäßigen Rasters (1) mit polygonalen Rasterfeldern (2) eines ersten Levels in einer Ebene, wobei Eckpunkte (3) der Rasterfelder (2) Rasterpunkte darstellen, und zu jedem Rasterpunkt ein Höhenwert gespeichert wird, (b) Bestimmen eines Fehlerwertes für ein jedes Rasterfeld (2), der eine Abweichung eines durch die Höhenwerte des Rasterfelds (2) approximierten Höhenprofils vom vorgegebenen Höhenprofil beschreibt, (c) Unterteilen der Rasterfelder (2), deren Fehlerwert einen vorbestimmten Schwellwert überschreitet, in polygonale Teilrasterfelder (4, 5), wobei zumindest zu den Eckpunkten (3) der Teilrasterfelder (4, 5), die nicht mit Eckpunkten der Rasterfelder (2) zusammen fallen, Höhenwerte gespeichert werden, (d) Zuordnen jeweils eines Indikators zu einem jeden Rasterfeld (2), wobei der Indikator beschreibt, ob das Rasterfeld (2) unterteilt ist oder nicht, und Speichern dieser Indikatoren zusammen mit den Höhenwerten, und (e) Wiederholen der Schritte (b) bis (d) für alle Teilrasterfelder (4, 5), wobei die Teilrasterfelder (4, 5) eines i-ten Levels Rasterfelder (2) eines i + 1-ten Level bilden, wobei die Höhenwerte in einer vorbestimmten Reihenfolge gespeichert werden, so dass die Höhenwerte aufgrund der Reihenfolge jeweils einem bestimmten Eckpunkt (3) des Rasterfeldes (2) zugeordnet sind und durch die Indikatoren eines j-ten Levels bestimmt ist, für welche Eckpunkte (3) des j + 1-ten Levels Höhenwerte gespeichert sind.A method for storing profile data for a given height profile, comprising the following steps: (a) providing a regular grid ( 1 ) with polygonal grids ( 2 ) of a first level in a plane, where vertices ( 3 ) of the grids ( 2 ) Represent grid points, and store a height value for each grid point, (b) determine an error value for each grid ( 2 ), which is a deviation of one from the height values of the grid ( 2 ) describes the approximate height profile from the given height profile, (c) dividing the grid fields ( 2 ) whose error value exceeds a predetermined threshold, into polygonal sub-grids ( 4 . 5 ), whereby at least to the vertices ( 3 ) of the partial grid fields ( 4 . 5 ) that are not connected to corner points of the grids ( 2 ) fall together, height values are stored, (d) assigning one indicator to each grid ( 2 ), where the indicator describes whether the grid ( 2 ) and storing these indicators together with the height values, and (e) repeating steps (b) to (d) for all sub-grids ( 4 . 5 ), whereby the partial grids ( 4 . 5 ) of an i-th level grids ( 2 ) of an i + 1-th level, wherein the altitude values are stored in a predetermined order, so that the altitude values due to the order of each one corner point ( 3 ) of the grid ( 2 ) and is determined by the indicators of a j-th level for which vertices ( 3 ) of the j + 1-th level altitude values are stored. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Rasterfelder (2) und die Teilrasterfelder (4, 5) dreieckförmig oder rechteckförmig und insbesondere quadratisch sind. Method according to claim 1, characterized in that the grids ( 2 ) and the partial grids ( 4 . 5 ) are triangular or rectangular and in particular square. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, ein Teil der Höhenenwerte als absolute Höhenwerte und die übrigen Höhenenwerte als relative Höhenwerte gespeichert werden, wobei ein relativer Höhenwert einen Höhenunterschied zu jeweils einem bestimmten absoluten Höhenwert definiert.A method according to claim 1 or 2, characterized in that a part of the altitude values are stored as absolute altitude values and the remaining altitude values as relative altitude values, wherein a relative altitude value defines a height difference to a respective absolute altitude value. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass nur Höhenwerte des ersten Levels als absolute Höhenwerte gespeichert werden und die Höhenwerte aller anderen Level als relative Höhenwerte gespeichert werden.Method according to claim 3, characterized in that only height values of the first level are stored as absolute height values and the height values of all other levels are stored as relative height values. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass die absoluten Höhenwerte an Eckpunkten (3) der Rasterfelder (2) angeordnet sind, die wiederum ein regelmäßiges Raster (1) darstellen.Method according to Claim 3 or 4, characterized in that the absolute height values at vertices ( 3 ) of the grids ( 2 ), which in turn form a regular grid ( 1 ). Verfahren nach einem der Ansprüche 3 bis 5, dadurch gekennzeichnet, dass beim Bestimmen des Fehlerwertes das approximierte Höhenprofil durch mehrere Dreieckflächen dargestellt wird, wobei die Höhenwerte Eckpunkte (3) der Dreieckflächen bilden, und ein Fehler nach einer vorbestimmten Metrik berechnet wird.Method according to one of claims 3 to 5, characterized in that when determining the error value, the approximated height profile is represented by a plurality of triangular surfaces , wherein the height values vertices ( 3 ) of the triangular faces, and an error is calculated according to a predetermined metric. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die Metrik die Berechnung eines Abstandes des approximierten Höhenprofils zum vorgegebenen Höhenprofil umfasst, wobei der Abstand ein maximaler, ein mittlerer Abstand oder ein gewichteter Abstand ist.A method according to claim 6, characterized in that the metric comprises the calculation of a distance of the approximated height profile to the predetermined height profile, wherein the distance is a maximum, a mean distance or a weighted distance. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das regelmäßige Raster (1) des ersten Levels eine vorbestimmte Anzahl, insbesondere vier, polygonale Rasterfelder (2) aufweist.Method according to one of claims 1 to 7, characterized in that the regular grid ( 1 ) of the first level a predetermined number, in particular four, polygonal grids ( 2 ) having. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Raster (1) in einem jeden Level die gleich Anzahl Rasterfelder (2) aufweisen.Method according to one of claims 1 to 8, characterized in that the grid ( 1 ) in each level the same number of grids ( 2 ) exhibit. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Rasterfelder (2) alle die gleiche Form aufweisen.Method according to one of claims 1 to 9, characterized in that the grids ( 2 ) all have the same shape. Profildaten, hergestellt durch ein Verfahren gemäß einem der Ansprüche 1 bis 10.Profile data produced by a method according to one of claims 1 to 10. Verfahren zum Erzeugen eines Höhenprofils umfassend folgende Schritte: – Lesen der Profildaten nach Anspruch 11, wobei anhand der Indikatoren die jeweiligen Höhenwerte bestimmten Rasterfeldern (2) zugeordnet werden und anhand der Reihenfolge, mit der die Höhenwerte in den Profildaten gespeichert sind, die Höhenwerte bestimmten Eckpunkten (3) der Rasterfelder (2) bzw. deren 2-dimensionalen Koordinaten zugeordnet werden, und – Erzeugen von aneinander hängenden Dreiecksflächen, deren Eckpunkte (3) jeweils benachbarte Höhenwerte sind, wobei die Dreiecksflächen das Höhenprofil darstellen.A method for generating a height profile, comprising the steps of: - reading the profile data according to claim 11, wherein on the basis of the indicators the respective height values of particular grid fields ( 2 ) and the height values of certain vertices (based on the order in which the height values are stored in the profile data) ( 3 ) of the grids ( 2 ) or whose 2-dimensional coordinates are assigned, and - generating triangular faces hanging from one another, whose vertices ( 3 ) are respectively adjacent height values, the triangular areas representing the height profile. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass zunächst die Indikatoren und Höhenwerte einiger Level gelesen werden und hieraus ein Höhenprofil erzeugt wird, und danach weitere Indikatoren und Höhenwerte von übergeordneten Leveln gelesen werden und das Höhenprofil verfeinert wird.A method according to claim 12, characterized in that first the indicators and altitude values of some levels are read and from this a height profile is generated, and thereafter further indicators and altitude values of higher levels are read and the altitude profile is refined.
DE201310207066 2013-04-19 2013-04-19 Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data Pending DE102013207066A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE201310207066 DE102013207066A1 (en) 2013-04-19 2013-04-19 Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201310207066 DE102013207066A1 (en) 2013-04-19 2013-04-19 Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data

Publications (1)

Publication Number Publication Date
DE102013207066A1 true DE102013207066A1 (en) 2014-10-23

Family

ID=51628911

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201310207066 Pending DE102013207066A1 (en) 2013-04-19 2013-04-19 Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data

Country Status (1)

Country Link
DE (1) DE102013207066A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019213532A1 (en) * 2019-09-05 2021-03-11 Zf Friedrichshafen Ag Find a slope

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PAJAROLA, R.; GOBBETTI, E.: Survey of semi-regular multiresolution models for interactive terrain rendering. The Visual Computer, Volume 23 Issue 8, July 2007, Seiten 583 - 605. *
PAJAROLA, R.; GOBBETTI, E.: Survey of semi-regular multiresolution models for interactive terrain rendering. The Visual Computer, Volume 23 Issue 8, July 2007, Seiten 583 – 605.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019213532A1 (en) * 2019-09-05 2021-03-11 Zf Friedrichshafen Ag Find a slope

Similar Documents

Publication Publication Date Title
DE112009004371T5 (en) Collision determination device and collision determination program
DE102004004641A1 (en) Image processing method, involves determining contribution of each voxel to bin of detector array or vice versa in accordance with projections of voxel edges and detector bin edges on predetermined plane
EP1631938A1 (en) Method for generating a three-dimensional terrain model
DE102014208967A1 (en) Environment map for driving surfaces with any height gradient
EP2602591B1 (en) Method for simplified storage of data representing shapes
DE112013007652T5 (en) Sequence for resolving faults in building a global raster for complex fault network topologies
DE112013007399T5 (en) Global grid creation in postponed areas by an optimized equalization process
DE102013207066A1 (en) Method for storing altitude profile data, as well as profile data and method for generating a height profile from these profile data
DE102013206276A1 (en) Method and device for creating a functional model for a control unit of an engine system
WO2023279125A1 (en) Method for providing simulation cells for continuum mechanical simulations of an object
WO2009124663A1 (en) Semi-global correspondence search in stereo images
DE102018122842A1 (en) Computer-implemented method for compressing measurement data from a measurement of a measurement volume
DE102012203117A1 (en) Method and system for determining a boundary mesh
EP3465608B1 (en) Method and device for determining a transfer between two display images, and vehicle
DE102014103768A1 (en) Method for compression of observations of a plurality of test procedures
EP1645036B1 (en) Data compression of simulation results
EP3168673B1 (en) System for the visualization of image data
DE102022112184A1 (en) METHOD FOR DETERMINING A ROLLING CONTACT BETWEEN A ROLLING BODY AND A SMOOTHED SURFACE
WO2022090046A1 (en) Masking method, computer program, storage medium and electronic control unit
EP3905095A1 (en) Computer-implemented method for calculating and providing at least one value of at least one parameter of a solid object
DE102021104886A1 (en) Computer-implemented method for determining a spatial distribution of element size values for geometric primitives of a mesh representation from a digital representation of an object for a simulation of the object
WO2022101258A2 (en) Method for compressing model data, and computer system
DE102010052069A1 (en) Method for operating navigation system to perform sharp three-dimensional representation of feature polygons e.g. river, in two-dimensional map, involves determining whether point is found inside or outside surface element on basis of tree
DE102012218854A1 (en) Method of compressing image data, particularly image data of remote sensing images produced by satellites, involves segmenting output image in segmentation section into image object, and coding image object
DE10196812B4 (en) A method of accelerating the generation and display of volume-rendered; Partially cutaway views of three-dimensional images

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed