Abstract:
An apparatus for displaying terrain on a display apparatus of an airborne vehicle is provided. The apparatus includes a synthetic vision system having a terrain and obstruction database, an enhanced vision system with sensors for recording terrain data, a height and position sensor for determining the flight state data, a display apparatus, a processor for fusion of the data from the synthetic vision system and from the enhanced vision system. The height information that is produced by the synthetic vision system and the enhanced vision system is stored as pixels in a two-dimensional grid network. The fusion processor uses an error function for insertion of a pixel into the two-dimensional grid network. The error function provides an estimate of the size of the respective cell in which the pixel is stored, from the distance between the pixel and the sensor position.

Description:
BACKGROUND AND SUMMARY OF THE INVENTION 
       [0001]    Exemplary embodiments of the present invention relate to a device for displaying terrain on a display device of an aircraft. 
         [0002]    In the context of so-called pilot assistance systems, display instruments for a synthetic external view are always used when outside weather conditions, darkness or so-called brownout/whiteout phases (sand or snow blown up) impair or even completely obscure the pilot&#39;s vision. Conventional methods for the generation of a synthetic external view are so-called synthetic vision systems (SVS) or enhanced vision systems (EVS). While in the case of SVS the data to be represented are taken from a database, i.e., terrain and information about obstacles must already be available, in the case of EVS systems cameras or sensors are used in order to directly process the data acquired during the flight. 
         [0003]    The prior art is essentially restricted to synthetic vision systems and enhanced vision systems, in which the sensor image is usually represented directly, i.e., two-dimensionally. 
         [0004]    WO 2008/018906 describes the data validation of terrain database data by means of sensor data. The method described is based on a fixed number of data points (given by the database) and applies the validation using the acquired sensor data. A point is in this case characterized as “validated, not validated or warning area” as an output. 
         [0005]    U.S. Pat. No. 7,148,861 B2 describes data fusion of two data sources at the 2D pixel level. Besides the coordinate systems of the two data sources, a further third coordinate system is introduced that is intended to overcome the different perspectives of the data sources. 
         [0006]    EP 1 084 380 B1 describes methods for the visualization of database and sensor data. Further disclosures regarding sensor data fusion can be found in US 2010/0026525 A1 and US patent 2007/0297696 A1. 
         [0007]    US 2009/0040070 A1 describes a device for displaying terrain on a display device of an aircraft. 
         [0008]    Exemplary embodiments of the present invention provide an improved device for displaying terrain on a display device of an aircraft. 
         [0009]    The device according to the invention comprises a synthetic vision system having a terrain and obstacle database, an enhanced vision system having sensors for acquiring terrain data, a height and position sensor for determining flight status data, a display device, a processor for fusion of the data from the synthetic vision system and from the enhanced vision system, the height information generated by the synthetic vision system and the enhanced vision system being stored as pixels in a two-dimensional grid network, a graphics processor that sends the terrain data generated by means of the fusion processor to the display device while taking into account the flight status data determined by means of the height and position sensor. 
         [0010]    According to the invention, the fusion processor uses an error function when inserting a pixel into the two-dimensional grid network, the error function providing an estimate of the size of the respective cell, in which the pixel is stored, from the distance of the pixel from the sensor position. In addition to the measured distance between the pixel and the sensor position, other known sensor- or navigation-specific parameters may also be taken into account. 
         [0011]    Advantageously, the two-dimensional grid network represents a parameterization of the tangential surface of the terrestrial sphere with a hierarchical non-regular structure and a predeterminable maximum number of cells, the center of the grid network imaging the position of the sensor of the enhanced vision system. The number of cells is not constant, since it depends on the refinement of the cell structure. For the case of the maximum refinement level of a cell, the maximum resolution resulting therefrom may be calculated. 
         [0012]    The processor for fusion of the data from the synthetic vision system and from the enhanced vision system will also be referred to below as a ground pixel container. 
         [0013]    The present invention involves the combination of the two systems, a so-called enhanced synthetic vision system (ESVS), i.e., the fusion of available terrain and obstacle information that are stored in databases, and 3D sensor data (for example LADAR, RADAR) that are already available in a classified form owing to prior segmentation. 
         [0014]    The present invention combines the advantages of synthetic vision systems and enhanced vision systems by real-time segmentation of 3D terrain data acquired by a sensor and fusion thereof with existing terrain and obstacle data from a database. The segmentation of the sensor data in this case decides on a pixel basis whether the respective pixel is to be classified as part of the terrain or as an obstacle. The segmentation is carried out according to methods known from the prior art. 
         [0015]    While the pixels classified as obstacles are treated as a 3D point cloud, the so-called “ground pixels” are stored in the ground pixel container. This ground pixel container represents an adaptive grid (i.e., corresponding to the accuracy of a measurement point) that corresponds via its cells to direct sampling of the Earth&#39;s surface. Each cell respectively receives a data value, which is then to be considered as a height value for the complete spatial extent of the cell. The ground pixel container in this case supports the “See &amp; Remember” concept, i.e., every spatial region that has been sampled once is stored first in the ground pixel container and subsequently in a database. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWING FIGURES 
         [0016]    The invention will be explained in more detail below with the aid of drawings, in which: 
           [0017]      FIG. 1  shows a schematic structure of the device according to the invention, 
           [0018]      FIG. 2  shows an exemplary representation of the ground pixel container with a spatial subdivision structure, 
           [0019]      FIG. 3  shows an exemplary representation of the ground pixel container, into which a ground pixel is inserted, 
           [0020]      FIG. 4  shows an exemplary representation of the ground pixel container in the event of a position change of the sensor for acquiring terrain data, 
           [0021]      FIG. 5  shows an exemplary representation of a detail of the ground pixel container with triangulation of the data for visualization. 
       
    
    
     DETAILED DESCRIPTION 
       [0022]      FIG. 1  shows a schematic structure of the device according to the invention. A sensor  1  for generating a raw data image and a module la for segmenting the ground pixels are provided. A database  2  for storing height data, also referred to below as an elevation database, is furthermore provided. 
         [0023]    The sensor  1  and the database  2  are connected to the ground pixel container  3 . Between the ground pixel container  3  and the database  2 , there is a read and write database link for the interchange of database data and sensor data. 
         [0024]    A visualization module  4  is connected to the ground pixel container  3  via an interface. A module  5  for measuring the flight status data is connected to the ground pixel container  3  and the visualization module  4 . The visualization module  4  is connected to a display device  6  for representing the terrain. The visualization module  4  is essentially used to process the data suitably with the aid of known visualization algorithms so that the data can be displayed on the display device  6 . 
         [0025]    In  FIG. 1 , the reference  7  denotes the enhanced synthetic vision system (ESVS) module. The ESVS module  7  contains the ground pixel container  3 , the visualization module  4  comprising the visualization (or triangulation) algorithms, and the display device  6 . As an input, there is a link respectively to the sensor  1  and to the database  2 . The output corresponds to a link to the database  2 , in order to write data back, and to a geometry memory  8  that contains the ground surface geometry resulting from the triangulation algorithms. The data from the geometry memory  8  are delivered directly to the display device  6 . 
         [0026]    The processing chain of the ESVS module  7  receives as input the raw data obtained from the sensor  1 , which may be interpreted as a depth image or, by taking into account the flight status data, as a 3D point cloud. This point cloud is first subjected to classification, i.e., for each acquired data point a decision is made as to whether the latter is to be considered as a component of the ground or as an object rising therefrom, not classified in further detail. 
         [0027]    In the explanations below, only the data points classified as “GROUND” will be considered. Furthermore, flight status data from the module  5  for measuring the flight status data are required as input, as they are delivered by a navigation system, consisting of: the position in the WGS84 coordinate system, the flight altitude relative to MSL and the flight attitude angles. The classified sensor images, as they result from the ground segmentation, are sent together with the flight status data to the ground pixel container  3 . The flight status data are furthermore required once more in a subsequent processing step, i.e., for the visualization. 
         [0028]    The ground pixel container  3  forms the core module of the data processing chain for the fusion of the existing terrain and obstacle data with the raw sensor data. It is responsible for the storage of all collected ground pixel data within a spatially limited region, and for the post-processing of these data on the one hand for the subsequent visualization algorithms in the visualization module  4 , and on the other hand for the storage in an elevation database  2 . 
         [0029]    The ground pixel container corresponds to a spatially constantly defined region around a defined center.  FIG. 2  illustrates the structure of the container. The ground pixel container has spatial discretization with a defined side length d (left-hand representation in  FIG. 2 ). The representation is to be regarded as a plan view, i.e., as parameterization of the tangential surface of the Earth, the position of the sensor forming the center of the container. The area covered by the container is discretized by n cells with an edge length dc, which are in turn used as spatial subdivision structures, here quadtrees (right-hand representation in  FIG. 2 ). 
         [0030]    On the basis of two mutually orthogonal tangential vectors in a north-oriented coordinate system (local geodetic coordinate system), the area covered by the ground pixel container is spanned with respect to an origin established at a time to. In illustrative terms, this process may be explained as a plan view on the Earth&#39;s surface, in which the sensor position (for example the GPS position of the aircraft on which the sensor is installed) forms the center of the area which the ground pixel container processes. This area, having a side length d that may readily amount to several kilometers, is subdivided into n cells. 
         [0031]    The basic concept of the ground pixel container is in this case to store height values in the cells, which corresponds mathematically to a height field f(x,y)→z. 
         [0032]    In order to overcome measurement inaccuracies that occur, the equidistant regular structure (i.e., a constant cell size dc) of the ground pixel container is extended by further spatial subdivision mechanisms. The measurement inaccuracies essentially affect the three-dimensional positions of the ground pixels that are sent from the preprocessing to the ground pixel container. Thus, it may be assumed that the effect of mechanical sensor inaccuracies as well as the inaccuracy of the (inertial) navigation system (INS) used is that the position of a ground pixel cannot be guaranteed. 
         [0033]    Possible error sources in this case are:
       mechanical sensor errors inside the sensor   installation errors, for example due to mounting inaccuracies   INS angle errors, i.e., inaccuracies of the flight attitude angle   INS position errors, i.e., an inaccurate position of the aircraft       
 
         [0038]    Since the aforementioned error sources do not affect each ground pixel equally, but are dependent on certain factors, the inaccuracy of each sampling point may be considered individually. 
         [0039]    To this end, 2 related mechanisms may be used. On the one hand, a quadtree known from the prior art may be used. The quadtree is used as a spatial subdivision structure and, starting from the cell size dc, divides the latter respectively into 4 subcells of equal size, and on the other hand an error function fe which expresses the error susceptibility of a sampling point as a function of defined parameters. A simple example of this would be f e (dist)=f Sensor +4*σ(ē), a distance-dependent error being calculated here as a function of a constant sensor error and the 4-sigma value, i.e. the maximum angle error of the INS. This error function would behave linearly and will be used again for illustration below. 
         [0040]    On the basis of  FIG. 2  (left-hand representation), the quadtree is now applied to each cell. In detail, this means that each cell of the ground pixel container corresponds to the coarsest considered level, i.e., the coarsest resolution or “Level0”, of a quadtree. 
         [0041]    If a cell is now intended to be refined by one level, then the cell having the side length dc will be subdivided into four cells of size dc/4. Since the method is a recursive method, this subdivision may be applied again to each of the four new cells so that a structure similar to the right-hand representation in  FIG. 2  is finally obtained. This illustrates that the Earth&#39;s surface can be sampled with various degrees of detail by using a quadtree, for example in order to take the error susceptibility of a sampling point into account. Here, the aforementioned error function also comes into play again; it is used as a criterion for deciding which individual quadtree level should be assigned to a ground pixel. 
         [0042]    If an incoming ground pixel is now intended to be imaged into the quadtree, then a method that is illustrated by  FIG. 3  will be used. In order to insert a ground pixel into the ground pixel container, starting from the sensor position the distance to the respective ground pixel is determined. This is used as input for an error function which calculates an appropriate cell size, for example a quadtree cell size, from the underlying error. In this example, the quadtree resolution should be Level2, i.e., the original cell is subdivided two times. 
         [0043]    The last step, at the top right in  FIG. 3 , deals with the edge zones. If the degree of the respective deviation is great enough that the respective ground pixel could equally well lie in the neighboring cell, then it is copied and also inserted into the latter. The respective numbers describe the number of neighboring cells affected if the ground pixel were to be allocated in the marked zones. 
         [0044]    The degree of the deviation corresponds essentially to the spatial measurement error (specified, for example, in meters) of the individual ground pixel and can be derived from the error function fe. The highest level of the quadtree (i.e., the smallest cell) should be selected in such a way that, on the basis of the error interval to be supported (here in particular the greatest error still permissible for this cell), enough space remains in the cell in order to collect the ground pixels without unnecessary copying (see  FIG. 3 , top right), because too small a selection of the cell leads to expensive copying of the ground pixels into the neighboring cells. That is to say, a careful selection of a discrete imaging QuadtreeLevel=f level (f e (dist)) of the sensor error for the cell sizes to be used is indispensable. An exemplary implementation of this imaging would be QuadtreeLevel=(L max −1)−log 2 (2*f e (dist)), where L max  corresponds to the maximum supported quadtree level. The degree of the deviation f e (dist) is multiplied by 2, since this value corresponds to a positioning error equal to a radius around an approximated position. The true position of a point may, however, lie anywhere within a circle having the radius f e (dist), and the cell size must therefore also take into account at least the diameter of this circle. 
         [0045]    Detailed determination of the edge width on the basis of distributions and probabilities will not be discussed here. 
         [0046]    Once the associated cell size has been determined, distinction is to be made between the following cases: 
         [0047]    1.) The cell was originally empty: it is subdivided according to the spatial subdivision mechanism and the new value will be inserted. The cell may be further subdivided later on, but only by inserting a new value whose error (for example because of a shorter distance from the sensor at the acquisition time) is less than the existing one. The distance of an already stored value from a new position due to the grid displacement is unimportant since the measurement accuracy (i.e., the error at the acquisition time) remains unchanged by this and will not be corrected subsequently. 
         [0048]    2.) There is already a value of lower level in the cell: it is subdivided and the new value is inserted. All further cells resulting therefrom receive the old value; top-down copying is thus used. 
         [0049]    3.) There is a value of the same level in the cell: a comparison is made as to whether the new value is greater than the old value. If so, it replaces the old value. This will ensure that the subsequent ground area also takes into account the highest obstacle classified as ground. 
         [0050]    If this method is applied to all ground pixels of each sensor image, then accumulation of the values automatically takes place over time; spatially, however, accumulation does not take place but instead only the ground pixel constituting the highest point is stored. The respective value is in this case stored cell-centered, since its exact position is not known because of the described measurement inaccuracy—it is only known that it must lie within the spatial vicinity defined by the cell. 
         [0051]    Further account of the position accuracy of a point is taken by temporal weighting of the individual cell entries. The reason for this is the position of the aircraft, the accuracy of which in the locally geodetic system is dictated by that of the INS. An error of 0.2 m/s will be assumed as an example, which is a quite usual positioning error of an INS. This value expresses the fact that even after one second, the position of the aircraft relative to a point stored in the ground pixel container may be wrong by 0.2 m. In order to overcome this behavior, each stored point is provided with a lifetime and a weighting. The temporally weighted value within a quadtree cell is therefore determined from h w =Σ l=0   i     max    α i *h i  with the discretized weighting factors α i , the height values h i  determined per sensor image and the maximum number of stored times t max . The selection of the weighting function is subject to the condition h w =Σ i=1   i     max    α i =1. This type of weighting entails a spatial displacement of measured points within the ground pixel container, and is highly expedient for visualization of the height field. If, however, these data are intended to be written back into a geo-referenced database, then it is necessary to take this weighting into account. 
         [0052]    Accumulation of the ground pixels over time and the fact that the center of the container is determined by the quantified position of the sensor (since this operation is carried out with a discrete grid), in the end imply a time variation of the position of the ground pixel container. Since, however, the container size is spatially constant, in the event of a displacement of the container new cells are respectively added but old cells also drop out. In order to avoid loss of these data, in the event of a grid movement they are stored in the linked elevation database  2 .  FIG. 4  shows this situation, the grid moving after a sufficient position change of the sensor with the step size of the predetermined discretization, i.e., the coarsest cell size according to Level0. While the cells colored dark gray in  FIG. 4   a  are newly added, the white cells drop out and are stored in  FIG. 4   b  in the elevation database  2 . 
         [0053]    In addition to storing the data from the ground pixel container, the elevation database  2  is used a second time in order to fill those cells of the container which still remain empty with elevation data. Because of the limited view of a sensor, i.e., not only in terms of range but also in terms of extent, i.e., aperture angle, only a region of the area which the ground pixel container represents is filled with sensor data in each case. Although this region becomes larger owing to accumulation of the sensor data over time, in particular owing to the movement of the aircraft, it is nevertheless very likely that regions of the area which the ground pixel container represents will remain empty. In order to achieve independency of the aperture angle for the visualization from the respective sensor aperture angle, empty regions are filled with elevation data from the elevation database  2 , which will later lead to visual data fusion of sensor and elevation database data. 
         [0054]    It should be noted that the elevation database  2  may also contain sensor data already stored at an earlier time. 
         [0055]    The data of the filled ground pixel container are finally sent to the visualization algorithms, which are then responsible for the generation of representable geometry as well as visualization thereof. The data retention within the addressed quadtree is also advantageous here; thus, by restriction of the quadtree level to be considered, diverse level-of-detail (LOD) algorithms can be implemented very simply. 
         [0056]    The elevation database  2  according to  FIG. 1  initially consists of a record only of already available elevation data, which are provided with a particular resolution. During the sensor data recording, i.e., during the flight, these data are now employed in order to interact with the ground pixel container  3 . As already explained, they are used here on the one hand to complete the only partially filled grid represented by the ground pixel container, and on the other hand for balancing and updating using the sensor data. 
         [0057]    The readout of the elevation data from the database is instigated by the ground pixel container, i.e., for each empty cell of the ground pixel container the associated WGS84 position is calculated, which is used as a reference for the database access. As a result of the database query, a height value is obtained which is stored in accordance with its accuracy in the ground pixel container. Here again, the elevation data are explicitly enabled to further subdivide the existing grid of the ground pixel container in order to cope as far as possible with the sampling and error rates of the elevation database data. 
         [0058]    The writing of the elevation data is likewise controlled by the ground pixel container. Here, all sensor data which either have a higher accuracy than the values previously existing in the database, or which with an equal accuracy are higher than the existing points, are stored in the database. The configuration of the database is in this case flexible, i.e. whether the data are replaced or only added is to be left up to the database design. 
         [0059]    If the sensor fails, then all cells of the ground pixel container are populated with elevation data from the database, which would correspond to a so-called synthetic vision system. 
         [0060]    The visualization consists of two modules and, according to  FIG. 1 , directly follows the ground pixel container  3  in the processing chain. So far, the data have been stored according to their measurement accuracy, but this representation is unsuitable for visualization since, as far as possible, a continuous area is desirable for the representation of a ground area in order not to distract the pilot with high-frequency varying point clouds. 
         [0061]    The first step of the visualization provides preprocessing of the data from the ground pixel container, i.e., the quadtree. In this step, a coherent triangular grid is generated from the elevation data that, except for intentional holes, represents a continuous area. Since the data of the ground pixel container constitute a so-called unrestricted quadtree, i.e., the levels of neighboring cells may differ by more than 1, operation is carried here with so-called triangle fans. A triangle fan consists of a midpoint and various vertices lying around it, which are used for the triangle generation and are particularly suitable for representing the spanned area of a quadtree cell.  FIG. 5  illustrates this geometry generation of a triangulation of the data of the ground pixel container. The cell-centered values respectively form the midpoint of a triangle fan. The continuity of the area is guaranteed by the connectivity of all neighboring cells, as for example the encircled vertex. 
         [0062]    The second step consists in visualization of the calculated ground area. This may optionally be visualized as a triangle network in the wire grid representation or, in order to emphasize existing irregularities even further, also as an illuminated colored area. 
         [0063]    The visualization is carried out from an arbitrary perspective, the flight status data being handled separately from the sensor data in this case. That is to say, changes to be taken into account in the flight attitude data of the aircraft, for example movements and direction changes, need not necessarily be represented with the usually lower frequency of the sensor data and therefore also of the ground area generation. 
         [0064]    The foregoing disclosure has been set forth merely to illustrate the invention and is not intended to be limiting. Since modifications of the disclosed embodiments incorporating the spirit and substance of the invention may occur to persons skilled in the art, the invention should be construed to include everything within the scope of the appended claims and equivalents thereof.