WO2002073459A1 - Procede pour rechercher un objet au sein d'un espace, procede et systeme de cartographie vectorielle integrant ce procede de cartographie vectorielle, et appareil electronique mettant en oeuvre ce procede de cartographie vectorielle - Google Patents

Procede pour rechercher un objet au sein d'un espace, procede et systeme de cartographie vectorielle integrant ce procede de cartographie vectorielle, et appareil electronique mettant en oeuvre ce procede de cartographie vectorielle Download PDF

Info

Publication number
WO2002073459A1
WO2002073459A1 PCT/FR2002/000868 FR0200868W WO02073459A1 WO 2002073459 A1 WO2002073459 A1 WO 2002073459A1 FR 0200868 W FR0200868 W FR 0200868W WO 02073459 A1 WO02073459 A1 WO 02073459A1
Authority
WO
WIPO (PCT)
Prior art keywords
objects
matrix
domain
meshes
code
Prior art date
Application number
PCT/FR2002/000868
Other languages
English (en)
Inventor
Lascar Popovici
Original Assignee
Visteon Holdings France
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 Visteon Holdings France filed Critical Visteon Holdings France
Publication of WO2002073459A1 publication Critical patent/WO2002073459A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Definitions

  • the present invention relates to a method for searching for an object within a space, as well as to a search system implementing this method. It also relates to a vector mapping process and system integrating this research process, as well as electronic devices implementing this vector mapping process and vector map data carriers obtained with such a process.
  • vector mapping the objects present in one area are described in a matrix which can be large and whose processing can be particularly time consuming.
  • the problem posed is the determination of a subset of objects contained in a subdomain of a domain containing a set of semantically homogeneous objects and of variable geometry, and the construction of a matrix describing the objects belonging to this subset.
  • X min> Y m, Z min a parallelepiped comprised between (X min> Y m, Z min ) and (X max , Y ma ⁇ , Z max ), parallelepiped constituting the limits of " the size "» of the domain.
  • N objects are described by a matrix M which for each gives the form by a list of points (with coordinates) and topological descriptions (edges, faces, etc.). At the same time, the coordinates give the position of the object in space.
  • Each object therefore has its own elementary space requirement ⁇ represented by a circumscribed parallelepiped.
  • a first existing acceleration method is pre-sorting. Sorting the objects in M beforehand makes research faster. The most widespread method is to order the objects with respect to the point (x m c n , Ymin, Zmin) of their elementary parallelepiped of congestion ⁇ . This makes it possible to reduce the number of complete verification of membership, by immediately eliminating all the objects whose point is greater than (Xmax, ymax. Zmax) of ⁇ ; the process can be applied a second time for the other end. Membership is then checked on the remaining objects. There are several variations of this approach.
  • a second type of acceleration methods of the construction of the extraction ⁇ consists in the decomposition of the domain ⁇ into ⁇ subdomains ⁇ , called tiles or slabs, hence the name of tiling. Objects overlapping one or more tiles (subdomains) will be cut at the borders and additional information (connection, to ensure semantic continuity) will be saved.
  • the initial matrix M will therefore be decomposed into ⁇ matrices M, each having Nj objects.
  • the domain ⁇ sought will cover ⁇ tiles ⁇ j.
  • the effectiveness of the method will depend on the number ⁇ of tiles in the initial ⁇ domain and on the size ratio between ⁇ and the ⁇ i, therefore between ⁇ and ⁇ .
  • the more we increase ⁇ the more we increase the number of cut objects and therefore the size of M.
  • the possibly cut objects can be reconstituted, thus making the tiling transparent.
  • the objective compared to the state of the art, is to speed up the process of obtaining the extraction without modifying the objects in any way, so as not to increase the number and therefore the size of the matrix M containing for each object a list of points and topological descriptions.
  • a method is thus proposed for searching for an object contained in a domain ⁇ within a space ⁇ containing a set of objects described in an initial matrix M, comprising a construction of a subset ⁇ of objects contained in said domain ⁇ by extraction of a matrix ⁇ from the initial matrix M.
  • the method comprises the following steps:
  • a matrixing M of the space ⁇ is created by superimposing a plurality of geometric matrices of standards p (mesh sizes) different, representing a coverage of the domain by a determined and homogeneous set of similar sub-domains, each of the meshes of each geometric matrix being identified by a specific and unique numerical value called matrix code,
  • the matrix M is sorted by matrix codes according to a predetermined order, for example decreasing, of the standards p, and
  • the extraction matrix ⁇ is constructed describing the only objects concerned by said meshes included in the domain ⁇ or intersected by the domain ⁇ .
  • US5030117 describes a digital system of cartographic generation, in which the cartographic data are organized according to a hierarchy of successive scales, in a pyramidal form with a small number of tiles (for example 4) at the top and 4 16 tiles at the base of a pyramid comprising for example 16 levels. Even if the figures in this document, in particular Figures 8 and 13, show superpositions of grids or matrices, this is not, however, a method of searching for objects according to a "multiple sieve" technique.
  • Document US5694534 also discloses a device for storing a representation of topological structures and methods for constructing and searching for this representation.
  • the device described comprises a data storage medium, a database stored on this medium and containing data-carrying blocks representing topological characteristics of the structure represented at a given level of detail.
  • the data of each of these blocks is a representation of a carrier which is a closed set including a given topological object.
  • it is a question of constructing connected chains of cells constituting topological subcomplexes. The concept of multiple sieving for the purpose of constructing an extraction matrix is not disclosed in this document.
  • the objects can for example be sorted by increasing matrix codes.
  • the search method further comprises storing a list of matrix codes with a pointer to the first object of each code.
  • the selection of the objects can for example be carried out by a cursor which traverses the list of the codes of matrices.
  • a vector mapping method for mapping a territory ⁇ comprising a set of objects described by a matrix M; implementing the object search method according to the invention, characterized in that it comprises the following steps: a determination of the list of active meshes, comprising a calculation of all the matrix codes corresponding to the meshes which intersect the research domain ⁇ , and
  • the vector mapping method comprises the following sequences:
  • a vector mapping system comprising means for processing objects contained in a domain ⁇ within a space ⁇ containing a set of objects described in an initial matrix M , comprising a construction of a subset ⁇ of objects contained in said domain ⁇ by extraction of a matrix ⁇ from the initial matrix M, characterized in that it further comprises: - means for creating a matrixing M of the space ⁇ by superimposing a plurality of geometric matrices of different standards p, representing a coverage of the domain by a determined and homogeneous set of similar sub-domains, each of the meshes of each geometric matrix being identified by a specific index and unique called matrix code, - means for determining for all of the matrixing M all the meshes included in the domain ⁇ or intersected by the domain ⁇ , and the number of objects concerned as the sum of the numbers of objects of the meshes concerned, - means for sort the matrix M by matrix codes according to a predetermined order, for example decreasing, of the standards
  • FIG. 1 shows graphically the progressive sieving carried out in the search method according to the invention
  • FIG. 2 is a diagram illustrating the sorting of the matrix of the objects of the set of objects by matrix codes.
  • the method proposed within the framework of the method of searching for objects according to the invention aims to accelerate the process of 'obtaining the extraction ⁇ without modifying the objects in any way, so as not to increase the number and consequently the size of the matrix M. For this it takes into account the elementary dimensions ⁇ of each object, information contained in the matrix M, and uses it to organize a progressive “sieving”, through “sieves” with increasingly fine “meshes”.
  • the "sieve” is a geometric matrix representing the coverage of the domain ⁇ by a determined and homogeneous set of similar sub-domains, not necessarily equal but close to a standard size p.
  • the overlap of the domain is not necessarily strict in the sense that if the domain is actually completely covered, there may however be intersections between sub-domains (between "meshes").
  • the geometric matrix representing the described subset is called the standard grid p.
  • Each of the. p mesh of the grid is identified by a specific and unique numerical value called standard matrix code p, n p .
  • is much larger than ⁇ max and therefore from the second grid we can have a very fine mesh; ⁇ will be small, even limited to
  • the territories (the domains ⁇ ), for a given set ⁇ of N objects, described by a matrix M, cover on average the extent of a region, even of a small country.
  • the space requirement ⁇ of the domain is the diagonal of the rectangle [(X in, Ymin), (Xmax, Ymax)] circumscribing it.
  • the M forging consists of rectangular grids of regular mesh ensuring strict overlap.
  • P i ) ⁇ x *> i y rectangular meshes.
  • the mesh / index correspondence is done as follows: depth 5: grid 13 x 13: 0 to 168 depth 4: grid 7 x 7: 169 to 217 depth 3: grid 3 x 3: 218 to 226 depth 2: grid 2 x 2: 227 to 230 depth 1: grid 1 x 1: 231
  • the determination of the active meshes consists simply in calculating the set of matrix codes corresponding to the meshes which intersect the domain ⁇ of research (in this case a rectangle).
  • the objects are sorted by increasing matrix codes.
  • a list of matrix codes with a pointer to the first object of each code is also stored in the file.
  • the selection of the objects is carried out by a cursor which traverses the list of the codes of matrices.
  • level a level is made up of all the objects located at the same relative vertical position.
  • the vector mapping method when implemented in an extended pseudo-three-dimensional or two-dimensional application, then comprises the following sequences:
  • the initial matrix M is decomposed into Z matrices M ⁇ . - The matrixing previously described is used independently for each subset.
  • the initial set is first sorted by levels and then by dimensions, with the corresponding grids; this also allows the use of different matrixing by levels.
  • a first phase comprising:
  • the CGFMatrixHandler class contains all the methods useful for calculations related to matrix codes.
  • the following method makes it possible to determine the list of “active” matrix codes (step A) with respect to a domain (here a rectangle).
  • the boolean array mMatrixCodesList, data member of the class, is sized by the total number of matrix codes.
  • TGF_LONGRECT territory GetTerritory ();
  • the CGFCursor class provides access to the objects concerned
  • the Next () method allows access to the next object in the file taking this filter into account.
  • CGFCursor :: CGFCursor (bool * inMatrixValues)
  • TGF_UINT32 code GetNthMatrixCode (mCurMatrixCodelndex);
  • TGF_LONGRECT rect, domain TGF_UINT32 * mat ⁇ xlevelList; // Set rect and get file's domain and matrixLevelList
  • CGFMatrixHandler * mtxHdl new (CGFMatrixHandler (domain, matrixLevelList));
  • a practical implementation of the research method according to the invention may be to carry out the first phase once and for all for a given domain, before loading it into a reading device or equipment, especially if you plan to use the domain continuously.
  • the second phase is always executable each time a search is requested and can therefore preferably be installed permanently in the operating terminal.
  • the extractions ⁇ thus obtained by implementing the vector mapping method according to the invention can be stored in any type of information medium and integrated into electronic devices, such as communication and / or navigation equipment.
  • electronic devices such as communication and / or navigation equipment.
  • the invention is not limited to the examples which have just been described and numerous modifications can be made to these examples without departing from the scope of the invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Procédé pour rechercher un objet dans un domaine δ au sein d'un espace Δ contenant un ensemble d'objets décrits dans une matrice M initiale, comprenant une construction d'un sous-ensemble φ d'objets contenus dans ledit domaine .?. par extraction d'une matrice ν à partir de la matrice M initiale. Un matriçage M de l'espace Δ est créé en superposant une pluralité de matrices géométriques de normes ς différentes, chacune des mailles de chaque matrice géométrique étant identifiée par une valeur numérique spécifique et unique appelée code de matrice. On trie la matrice M par codes de matrice selon un ordre prédéterminé, des normes ς. Puis, on construit la matrice d'extraction ν décrivant les seuls objets concernés par lesdites mailles incluses dans le domaine δ ou intersectées par le domaine δ.

Description

Procédé pour rechercher un objet au sein d'un espace, procédé et système de cartographie vectorielle intégrant ce procédé de cartographie vectorielle, et appareil électronique mettant en œuvre ce procédé de cartographie vectorielle
La présente invention concerne un procédé pour rechercher un objet au sein d'un espace, ainsi qu'un système de recherche mettant en œuvre ce procédé. Elle vise également un procédé et un système de cartographie vectorielle intégrant ce procédé de recherche, ainsi que des appareils électroniques mettant en œuvre ce procédé de cartographie vectorielle et des supports de données de cartographie vectorielles obtenues avec un tel procédé En cartographie vectorielle, les objets présents dans un domaine sont décrits dans une matrice qui peut être de grande taille et dont le traitement peut être particulièrement consommateur de temps. De plus, lorsqu'il s'agit de rechercher des objets inscrits dans un sous-domaine du domaine principal, on est conduit à construire une extraction de la matrice principale. Plus généralement, le problème posé est la détermination d'un sous- ensemble d'objets contenus dans un sous-domaine d'un domaine contenant un ensemble d'objets sémantiquement homogènes et de géométrie variable, et la construction d'une matrice décrivant les objets appartenant à ce sous- ensemble. Soit un ensemble Ω de N objets sémantiquement homogènes et de géométrie (forme et taille) variable. Ils sont distribués aléatoirement dans l'espace OXYZ où ils occupent un domaine Δ inscrit dans un parallélépipède compris entre (Xmin> Y m, Zmin) et (Xmax, Ymaχ, Zmax), parallélépipède constituant les limites de « l'encombrement » Λ du domaine. En bidimensionnel, on pourrait désigner le domaine par le vocable
« territoire », inscrit dans un rectangle compris entre (Xmin, Ymin) et (Xmax,
' max)- Les N objets sont décrits par une matrice M qui pour chacun donne la forme par une liste de points (avec coordonnées) et des descriptifs topologiques (arêtes, faces, etc.). En même temps, les coordonnées donnent la position de l'objet dans l'espace. Chaque objet a donc son propre encombrement élémentaire λ représenté par un parallélépipède circonscrit.
On peut naturellement faire les observations suivantes :
- les encombrements élémentaires peuvent s'intersecter,
- (Xmm, Ymin, Zm,n) et (Xmaχ, Ymax, 2maχ) sont respectivement le minimum et le maximum d'au moins un parallélépipède élémentaire. Ceci est vrai s'il n'existe pas de définition géométriquement explicite du domaine Δ.
Il est demandé de déterminer le sous-ensemble ω des v objets contenus dans un sous-domaine δ inscrit dans un parallélépipède compris entre (xminf ymin, zmin) et (xmaχ, Yma , zmaχ) à l'intérieur du parallélépipède circonscrivant Δ, et de construire la matrice μ les décrivant, matrice qui se présentera comme une « extraction » de M.
Selon le problème posé, par objet contenu dans δ on peut entendre objet inclus complètement ou partiellement (objet « touché » par ou intersectant δ).
On va maintenant décrire des méthodes d'accélération existantes : Si l'ordre de la description des objets d'Ω dans la matrice M est aléatoire, pour construire μ il faut parcourir tous les N objets afin de vérifier pour chacun son appartenance à δ et si oui, incrémenter chaque fois v.
Pour accélérer la construction de l'extraction μ, il est nécessaire de transformer M. Une première méthode d'accélération existante est le tri préalable. Trier préalablement les objets de M permet d'accélérer les recherches. La méthode la plus répandue est d'ordonner les objets par rapport au point (xmcn, Ymin, Zmin) de leur parallélépipède élémentaire d'encombrement λ. Ceci permet de diminuer le nombre de vérifications complètes d'appartenance, en éliminant d'emblée tous les objets dont ce point est supérieur au (Xmax, ymax. Zmax) de δ ; on peut appliquer une deuxième fois le procédé pour l'autre extrémité. L'appartenance est ensuite vérifiée sur les objets restants. Il existe plusieurs variantes de cette approche.
On remarquera que même si l'on diminue la complexité de certaines vérifications (plus δ est petit par rapport à Δ, plus la diminution est significative), tous les N objets de M doivent être parcourus. Afin de l'éviter, il faudrait utiliser une recherche dichotomique.
Un deuxième type de méthodes d'accélération de la construction de l'extraction μ consiste en la décomposition du domaine Δ en Σ sous- domaines Δ, appelés tuiles ou dalles, d'où le nom de tuilage (tiling en anglais). Les objets chevauchant une ou plusieurs tuiles (sous-domaines) seront coupés aux frontières et des informations supplémentaires (de connexion, pour assurer la continuité sémantique) seront enregistrées. La matrice M initiale sera donc décomposée en Σ matrices M, ayant chacune Nj objets. Evidemment,
Le domaine δ recherché couvrira σ tuiles Δj. L'efficacité de la méthode dépendra du nombre Σ de tuiles du domaine Δ initial et du rapport de taille entre δ et les Δi, donc entre σ et Σ. Par contre et malheureusement, plus on augmente Σ, plus on augmente le nombre d'objets coupés et donc la taille de M. A la fin, les objets éventuellement coupés pourront être reconstitués, rendant ainsi le tuilage transparent.
Le tuilage apparaît immédiatement plus intéressant que le tri simple, d'autant plus que ce dernier peut être appliqué à chaque tuile. C'est la raison pour laquelle il est amplement utilisé, par exemple en cartographie.
Il comporte cependant un inconvénient majeur qui réside dans la nécessité de couper des objets, donc d'augmenter le nombre total d'objets traités, et par conséquent de créer et d'utiliser des informations de frontière, tout ceci compliquant les algorithmes de traitement. L'objectif visé, par rapport à l'état de la technique, est d'accélérer le processus d'obtention de l'extraction sans modifier en aucune façon les objets, afin de ne pas en augmenter le nombre et par conséquent la taille de la matrice M contenant pour chaque objet une liste de points et des descriptifs topologiques.
Pour atteindre cet objectif, on prend en considération l'information d'encombrement élémentaire de chaque objet, qui, soit est contenue initialement dans la matrice M, soit doit être calculée puis enregistrée dans la matrice, et on passe l'ensemble des objets au travers d'une pluralité de « tamis » aux mailles de plus en plus fines, de façon à obtenir des groupes d'objets calibrés.
On propose ainsi un procédé pour rechercher un objet contenu dans un domaine δ au sein d'un espace Δ contenant un ensemble d'objets décrits dans une matrice M initiale, comprenant une construction d'un sous- ensemble ω d'objets contenus dans ledit domaine δ par extraction d'une matrice μ à partir de la matrice M initiale.
Suivant l'invention, le procédé comprend les étapes suivantes :
- on crée un matriçage M de l'espace Δ en superposant une pluralité de matrices géométriques de normes p (tailles des mailles) différentes, représentant une couverture du domaine par un ensemble déterminé et homogène de sous-domaines similaires, chacune des mailles de chaque matrice géométrique étant identifiée par une valeur numérique spécifique et unique appelée code de matrice,
- on détermine pour l'ensemble du matriçage M toutes les mailles incluses dans le domaine δ ou intersectées par le domaine δ, et le nombre d'objets concernés comme la somme des nombres d'objets des mailles concernées,
- on trie la matrice M par codes de matrice selon un ordre prédéterminé, par exemple décroissant, des normes p, et
- on construit la matrice d'extraction μ décrivant les seuls objets concernés par lesdites mailles incluses dans le domaine δ ou intersectées par le domaine δ. Il est à noter que le document US5030117 décrit un système numérique de génération cartographique, dans lequel les données cartographiques sont organisées selon une hiérarchie d'échelles successives, sous une forme pyramidale avec un faible nombre de tuiles (par exemple 4) au sommet et 416 tuiles à la base d'une pyramide comprenant par exemple 16 niveaux. Même si des figures de ce document, notamment les figures 8 et 13, montrent des superpositions de grilles ou de matrices, il ne s'agit pas pour autant d'un procédé de recherche d'objet selon une technique de « tamis multiples ». On connaît aussi par le document US5694534 un dispositif pour stocker une représentation de structures topologiques et des procédés pour construire et rechercher cette représentation. Le dispositif décrit comprend un support de stockage de données, une base de données stockée sur ce support et contenant des blocs porteurs de données représentant des caractéristiques topologiques de la structure représentée à un niveau donné de détail. Les données de chacun de ces blocs sont une représentation d'un porteur qui est un ensemble fermé incluant un objet topologique donné. Dans le procédé décrit, il s'agit de construire des chaînes connectées de cellules constituant des sous-complexes topologiques. Le concept de tamisage multiple à des fins de construction d'une matrice d'extraction n'est pas divulgué dans ce document.
Dans le procédé de recherche selon l'invention, les objets peuvent par exemple être triés par codes de matrice croissants.
Dans un mode de réalisation avantageux de l'invention, le procédé de recherche comprend en outre un stockage d'une liste des codes de matrice avec un pointeur sur le premier objet de chaque code.
La sélection des objets peut par exemple être effectuée par un curseur qui parcourt la liste des codes de matrices.
Suivant un autre aspect de l'invention, il est proposé un procédé de cartographie vectorielle, pour cartographier un territoire Δ comprenant un ensemble d'objets décrits par une matrice M ; mettant en œuvre le procédé de recherche d'objet selon l'invention, caractérisé en ce qu'il comprend les étapes suivantes : - une détermination de la liste des mailles actives, comprenant un calcul de l'ensemble des codes de matrice correspondant aux mailles qui intersectent le domaine δ de recherche, et
- une sélection et un traitement éventuel des objets. Lorsque ce procédé est mis en oeuvre dans un domaine bidimensionnel, il comprend alors un matriçage selon une pluralité de matrices géométriques rectangulaires comportant des mailles régulières, chaque matrice géométrique présentant une norme différente incluant la longueur et la largeur des mailles de ladite matrice. Pour une mise en œuvre en cartographie bi-dimensionnelle étendue à niveaux multiples, le procédé de cartographie vectorielle selon l'invention comprend alors les séquences suivantes :
- l'ensemble initial Ω de N objets est décomposé en une pluralité de Z sous-ensembles Ωζ d'objets de même niveau, avec ζ = 1 à Z, - la matrice M initiale est décomposée en Z matrices Mζ,
- on utilise le matriçage d'une façon indépendante pour chaque sous- ensemble.
Suivant encore un autre aspect de l'invention, il est proposé un système de cartographie vectorielle, comprenant des moyens pour traiter des objets contenus dans un domaine δ au sein d'un espace Δ contenant un ensemble d'objets décrits dans une matrice M initiale, comprenant une construction d'un sous-ensemble ω d'objets contenus dans ledit domaine δ par extraction d'une matrice μ à partir de la matrice M initiale, caractérisé en ce qu'il comprend en outre: - des moyens pour créer un matriçage M de l'espace Δ en superposant une pluralité de matrices géométriques de normes p différentes, représentant une couverture du domaine par un ensemble déterminé et homogène de sous- domaines similaires, chacune des mailles de chaque matrice géométrique étant identifiée par un index spécifique et unique appelé code de matrice, - des moyens pour déterminer pour l'ensemble du matriçage M toutes les mailles incluses dans le domaine δ ou intersectées par le domaine δ, et le nombre d'objets concernés comme la somme des nombres d'objets des mailles concernées, - des moyens pour trier la matrice M par codes de matrice selon un ordre prédéterminé, par exemple décroissant, des normes p, et
- des moyens pour construire la matrice d'extraction μ décrivant les seuls objets concernés par lesdites mailles incluses dans le domaine δ ou intersectées par le domaine δ. D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen de la description détaillée d'un mode de mise en œuvre nullement limitatif, et des dessins annexés sur lesquels :
- la figure 1 représente graphiquement le tamisage progressif effectué dans le procédé de recherche selon l'invention ; et - la figure 2 est un schéma illustrant le tri de la matrice des objets de l'ensemble d'objets par codes de matrice La méthode proposée dans le cadre du procédé de recherche d'objets selon l'invention vise à accélérer le processus d'obtention de l'extraction μ sans modifier en aucune façon les objets, afin de ne pas en augmenter le nombre et par conséquent la taille de la matrice M. Pour cela elle prend en considération l'encombrement élémentaire λ de chaque objet, information contenue dans la matrice M, et l'utilise pour organiser un « tamisage » progressif, à travers des « tamis » aux « mailles » de plus en plus fines.
Comme en granulométrie, on obtient des groupes d'objets calibrés. Ainsi, en référence à la figure 1 , si l'on considère un domaine Δ contenant des objets 1 , 2, 3, ...i, J...N, sur lequel est appliqué un ensemble de grilles de normes p1, p2, p3,... p["l, la grille de norme p1 va « retenir » l'objet 2, la grille suivante de norme p2 les objets j et N, tandis que la grille de norme p3 ne retient aucun des objets considérés, la grille ultime de norme pπ recueillant finalement l'objet i et l'objet ponctuel 3. Si l'encombrement λ de chaque objet n'existe pas déjà dans la matrice
M, il doit être calculé. Cet encombrement peut d'ailleurs être enregistré dans la matrice M, et dans ce cas, la taille de M augmentera de cette information, mais pas le nombre d'objets. Pour un calibre donné, le « tamis » est une matrice géométrique représentant la couverture du domaine Δ par un ensemble déterminé et homogène de sous-domaines similaires, pas nécessairement égaux mais proches d'un encombrement norme p. Le recouvrement du domaine n'est pas obligatoirement strict dans le sens où si le domaine est effectivement complètement couvert, il peut y avoir par contre des intersections entre des sous-domaines (entre des « mailles »). La matrice géométrique représentant le sous-ensemble décrit est appelée grille de norme p. Chacune des .p mailles de la grille est identifiée par une valeur numérique spécifique et unique appelée code de matrice de norme p, np. En superposant π grilles de normes p différentes on crée le matriçage M de profondeur π du domaine
Δ. Il comprendra au total Y mailles :
Ψ = .Pι + .P2 + ... + . (3.1)
chacune identifiée par son code de matrice npjj, avec i = 1 , π (la profondeur, de 1 à π) et j = 1 , . ι (le nombre de la maille dans la grille de profondeur i, de 1 à .Pi). La première grille est constituée en général d'une seule maille couvrant le domaine complet et recueille tous les objets qui, indépendamment de leur encombrement λ, ne « tombent » jamais dans une maille plus fine, mais toujours « à cheval » à travers tout le tamis ; alors, évidemment, ,pι = 1.
Dans le cadre d'un matriçage M donné, il est possible - et relativement facile - de déterminer pour chaque objet de l'ensemble Ω la maille de norme p la plus petite qui le contient complètement (la norme sera toujours supérieure ou égale à l'encombrement : p ≥ λ) et lui attribuer donc un code de matrice πPij. On trie ensuite la matrice M des N objets de
l'ensemble Ω par codes de matrice, par exemple dans l'ordre décroissant des normes p. On obtient ainsi une description ordonnée des N objets dans la matrice M triée, allant des plus encombrants vers les « plus petits ». Pour une maille donnée, identifiée par son code de matrice, on aura n objets ;
évidemment, Σ n = N et certains n peuvent être nuls. Le tri peut être illustré par le schéma de la figure 2. Pour la construction du sous-ensemble ω des υ objets contenus dans le domaine δ, et donc de l'extraction μ de la matrice M, on procède en deux étapes :
A. On détermine pour l'ensemble du matriçage M (de profondeur π) toutes les mailles de toutes les grilles incluses dans et intersectées par δ. Pour chaque grille (de norme pi) on aura . i mailles, .pi ≤ .Pi de
(3.1) ; le nombre total de mailles concernées sera ψ = .pi + .P2 + ... + .Pπ (3.2) et donc ψ ≤ Ψ. Le nombre d'objets concernés, /V, est la somme des nombres d'objets des mailles concernées et donc aussi AV ≤ N. Les inégalités sont d'autant plus fortes que δ est petit par rapport à Δ.
B. La matrice étant ordonnée comme dans le schéma ci-dessus (ou tout autre système d'indexation permettant d'accéder directement aux objets d'une maille, donc d'un code de matrice donné), on vérifie directement et seulement les objets concernés par les ψ mailles retenues. Le problème posé initialement, à savoir déterminer le sous- ensemble ω des v objets contenus dans le domaine δ et construire la matrice μ les décrivant, ne demande plus que l'examen des /V objets
(et non des N initiaux).
Comme pour le tuilage, le tri peut être appliqué dans chaque maille. Le premier avantage majeur du matriçage par rapport au tuilage est qu'aucun des objets d'Ω n'est modifié, la taille de la matrice M de description restant donc inchangée. L'efficacité du matriçage dépend bien sûr de la finesse du maillage, donc de la profondeur π, tout comme l'efficacité du tuilage dépend de Σ, mais il n'y a plus d'obstacle à augmenter la profondeur. La seule condition évidente à respecter est pπ ≡ Pmin > λmin (3.3)
Le choix de la profondeur optimale est fonction de la distribution des encombrements λ des objets d'Ω et de l'encombrement Λ de ce dernier, donc du domaine d'application du problème posé :
- en astrophysique Λ est beaucoup plus grand que λmax et donc dès la deuxième grille on peut avoir une maille très fine ; π sera petit, voire limité à
2 ;
- en cartographie, λmax ≥ Λ et λmaχ » λmin ; tout en respectant (3.3), π peut être important et sera choisi en fonction de la distribution des λ, toute autre contrainte égale par ailleurs. Dans le cas particulier des objets ponctuels, les objets d'encombrement nul (λ = 0) sont des objets réduits à un point par rapport au domaine Δ. Ils sont en nombre variable selon le domaine d'application : très nombreux en astrophysique, moins nombreux en cartographie. Evidemment, la totalité de ces objets ponctuels se situera dans les mailles de la matrice la plus fine, la grille de profondeur π. Il est à noter que si Ω contenait exclusivement de tels objets ponctuels, tuilage et matriçage seraient d'efficacité équivalente. On remarquera que le tri simple associé à une recherche dichotomique serait aussi très efficace. On donne maintenant un exemple d'implémentation du procédé de cartographie vectorielle bidimensionnelle. Les territoires (les domaines Δ), pour un ensemble donné Ω de N objets, décrits par une matrice M, couvrent en moyenne l'étendue d'une région, voire d'un petit pays. L'encombrement Λ du domaine est la diagonale du rectangle [(X in, Ymin) , (Xmax, Ymax)] le circonscrivant. Les côtés du rectangle sont respectivement ΔX = Xmax - X in e ΔY = Ymax ~ Ymin-
Chaque objet est circonscrit par un rectangle « élémentaire » [(xmin,
Ymin) , ( max, Ymax)], dont la diagonale constitue l'encombrement λ de l'objet. Le matriçage M est constitué par des grilles rectangulaires de mailles régulières assurant un recouvrement strict. La norme pi de la grille de profondeur i est donnée par la longueur (en X) et la largeur (en Y) des mailles : pix = ΔX / >ix et piy = ΔY / )iy (4.1) Pour la grille de profondeur i, on aura donc ,Pi = )ιx * >iy mailles rectangulaires. Une suite de π valeurs pour )ix et pour )y donne le matriçage
M de profondeur π du domaine Δ.
Dans l'exemple d'implémentation présenté, on a imposé, pour des raisons de concision, que tous les codes de matrice npy soient codés sur un seul octet. Pour la simplicité, on a choisi un nombre de mailles égal selon les deux directions } ≈ >(X = ,y avec la suite de valeurs
) = {1 , 2, 3, 7, 13} (4.2) de profondeur π = 5 et qui pour la grille de la première profondeur comporte une seule maille égale au territoire. L'utilisation d'une suite de nombres premiers entre eux garantit que les frontières de deux mailles de profondeurs différentes ne se superposent jamais. Ainsi, un objet dont l'encombrement est inférieur à celui d'une maille de profondeur i mais dont la géométrie ne permet pas de lui attribuer une maille à cette profondeur (parce qu'il se trouve « à cheval » sur au moins deux mailles de cette profondeur), a toutes les chances de se voir attribuer une maille à la profondeur immédiatement inférieure (i -1). Quel que soit le domaine d'extraction, le nombre de mailles non-actives (i.e. n'intersectant pas le domaine) croît avec la profondeur (cette croissance n'est bien entendu pas nécessairement stricte). Il en résulte qu'un système de maillage est d'autant plus efficace que la proportion d'objets placés dans des mailles des plus grandes profondeurs est importante. Le nombre total de mailles Ψ est
Y = 12 + 22 -t- 32 + 72 + 132 = 232 (4.3) avec des codes de matrice indexables sur un octet, de 0 à 231. La correspondance maille/index se fait de la façon suivante: profondeur 5 : grille 13 x 13 : 0 à 168 profondeur 4 : grille 7 x 7 : 169 à 217 profondeur 3 : grille 3 x 3 : 218 à 226 profondeur 2 : grille 2 x 2 : 227 à 230 profondeur 1 : grille 1 x 1 : 231
A l'intérieur d'une même grille, les mailles sont triées par x croissant puis par y croissant, comme l'illustre le tableau 1 suivant. L'extraction proprement dite se décompose en deux étapes :
- une détermination de la liste des mailles actives.
- une sélection et le traitement éventuel des objets.
La détermination des mailles actives consiste simplement à calculer l'ensemble des codes de matrice correspondant aux mailles qui intersectent le domaine δ de recherche (en l'occurrence un rectangle).
Dans le fichier, les objets sont triés par codes de matrice croissants. Une liste des codes de matrice avec un pointeur sur le premier objet de chaque code est également stockée dans le fichier. La sélection des objets est effectuée par un curseur qui parcourt la liste des codes de matrices.
Figure imgf000015_0001
Figure imgf000015_0002
Profondeur 3: 3x3
Figure imgf000015_0003
Profondeur 2: 2x2
Figure imgf000015_0004
Profondeur 1 : 1x1
231
TABLEAU 1 Lorsque le curseur rencontre un code actif, celui-ci parcourt alors l'ensemble des objets de ce code. Seuls les objets « vus » par le curseur sont « traités ». Le traitement lui-même peut à son tour effectuer un tri car les objets sélectionnés par le curseur n'intersectent pas nécessairement le domaine δ (le fait que la maille à laquelle est associé un objet intersecte le domaine δ est une condition nécessaire mais non suffisante). Ce second tri est, par nature, plus lourd car il nécessite une lecture de chaque objet, puis un calcul d'intersection avec le domaine δ. On comprend alors l'intérêt du tri préalable effectué par le curseur grâce au système de matriçage. On va maintenant décrire un exemple d'application du procédé de cartographie vectorielle en pseudo-tridimensionnel ou bidimensionnel étendu
(dit « à niveaux »).
Dans certains domaines d'application, comme la cartographie
« routière » (à destination des applications d'orientation et navigation routières), il n'est pas nécessaire d'opérer sur un ensemble d'objets en 3D
(avec le Z pour tous les points), dont la matrice M est forcément plus volumineuse que celle de l'ensemble des mêmes objets représentés en plan (en 2D). En effet, pour résoudre par exemple le problème d'une correcte représentation graphique 2D, il suffît de connaître la position verticale relative des objets : il suffit en somme de savoir qui passe par dessus qui (le problème « dessus/dessous »).
On introduit alors la notion de niveau : un niveau est constitué par l'ensemble des objets se situant à une même position verticale relative.
Le procédé de cartographie vectorielle, lorsqu'il est mis en œuvre dans une application pseudo-tridimensionnelle ou bidimensionnelle étendue, comprend alors les séquences suivantes :
- L' ensemble initial Ω de N objets est décomposé en Z (nombre total de niveaux identifiés) sous-ensembles Ωζ d'objets de même niveau, avec ζ = 1 à Z - La matrice M initiale est décomposée en Z matrices Mζ. - On utilise le matriçage précédemment décrit d'une façon indépendante pour chaque sous-ensemble.
Autrement dit, l'ensemble initial est d'abord trié par niveaux et ensuite par encombrements, avec les grilles correspondantes ; ceci permet d'ailleurs l'utilisation de matriçages différents par niveaux.
L'utilisation du matriçage dans le procédé de recherche d'objets appartenant à un sous-ensemble se fait en deux phases distinctes : - une première phase comprenant :
- une définition du matriçage M même, c'est-à-dire le choix des grilles,
- un tri des objets de l'ensemble par ordre croissant ou décroissant de leur code de matrice npij, avec i = 1 , π (la profondeur, de 1 à π) et j = 1 , .Pi (le nombre de la maille dans la grille de profondeur i, de 1 à .pi). - une seconde phase comprenant :
- une étape A de recherche des mailles « actives », en l'occurrence, des codes de matrice actifs), c'est à dire qui sont concernées par δ,
- pour chaque code de matrice npij actif, une étape B de recherche des objets correspondants et de vérification, pour eux seulement, de l'appartenance à δ. Est donné ci-après un exemple d'implémentation de codes de matrices en langage C++ pour la seconde phase du procédé. Afin de comprendre les extraits de codes qui suivent, on donne ci-dessous la définition de quatre types et structures utilisés :
// Types typedef TGFJNT32 long; typedef TGF_UINT32 unsigned long;
// Structures typedef struct {
TGFJNT32 x;
TGFJNT32 y;
} TGF_LONGPOINT; typedef struct {
TGF_LONGPOINT min;
TGF .ONGPOINT max;
} TGF.LONGRECT;
La classe CGFMatrixHandler contient toutes les méthodes utiles aux calculs liés aux codes de matrices. La méthode qui suit permet de déterminer la liste des codes de matrice « actifs » (étape A) par rapport à un domaine (ici un rectangle). Le tableau de booléens mMatrixCodesList, donnée membre de la classe, est dimensionné par le nombre total de codes de matrice.
// Given inRect, compute list of "active" matrix codes bool * CGFMatrixHandler::GetMatrixCodesUst(TGF_LONGRECT inRect) {
// Get global territory (domain)
TGF_LONGRECT territory = GetTerritory();
// Reset mMatrixCodesList. GetNbMatrixCodes retums total number of matrix codes memset(mMatrixCodesList, false, GetNbMatrixCodes()*sizeof(bool));
// Now set "active" codes to "true" TGF_LONGRECT current atrixSquare; TGF J1NT32 w, h, col, line, res, currentCode = 0;
// GetCountQ returns matrix's "deepness" (number of levels) for (TGFJJ1NT32 i=0; i<GetCount(); i++) {
// GetLevel(i) returns grid's resolution for level i res = GetLevel(i);
// Compute matrix squares' dimension at level i w = (territory.max.x - territory.min.x + res-1) / res; h = (territory.max.y - territory.min.y + res-1) / res;
// Initialize currentMatrixSquare currentMatrixSquare.min.x = territory.min.x; currentMatrixSquare.max.x = currentMatrixSquare.min.x + w;
// Loop on each matrix square of level i for (col=0; co resol; col++) { currentMatrixSquare.min.y = territory.min.y; currentMatrixSquare.max.y = currentMatrixSquare.min.y + h; for (line=0; line<resol; line++) {
// Check if currentMatrixSquare intersects inRect. Il Ifso, currentCode is "active" if (RectlntersectsRect(currentMatrixSquare, inRect)) mMatrixCodesList[currentCode] = true;
currentCode++; currentMatrixSquare.min.y += h; currentMatrixSquare.max.y += h;
) currentMatrixSquare.min.x += w; currentMatrixSquare.max.x += w;
} }
return mMatrixCodesList; }
La classe CGFCursor permet d'accéder aux objets- concernés
(première partie de l'étape B), en utilisant un filtre sur les codes de matrices. La méthode Next() permet d'accéder à l'objet suivant dans le fichier compte tenu de ce filtre.
CGFCursor::CGFCursor(bool * inMatrixValues)
: mMatrixCodes(inMatrixValues)
{ mCurMatrixCode = GetMatrixHandler()->GetNbMatrixCodes()-1; mCurMatrixCodelndex = (TGF.UINT32) -1; mCurMatrixCodeObjectsCount = (TGFJJINT32) -1 ; mCurObjectlnMatrixCode = (TGF_U!NT32) -1 ; mCurObjectOffset = (TGFJJINT32) -1 ; mCurObjectSize = 0; mlnitialized = false; }
// Return offset of next object in file or (TGF_UINT32) - 1 if none TGF_UINT32 CGFCursor::Next()
{ for (;;) {
// Move on to the next object for (;;) { // Calculate the offset of this object. If current object's Il offset is -1, then we are at the beginning of a matrix code II and we don't need to incrément the previous offset to get to Il the current one. if (mCurObjectOffset != (TGF_U!NT32) -1) {
// Next object in current matrix code if (++mCurObjectlnMatrixCode >= mCurMatrixCodeObjectsCount) break; Il Compute the next object's position mCurObjectOffset += mCurObjectSize;
else { mCurObjectlnMatrixCode = 0; mCurObjectOffset =
GetFirstObjectlnNthMatrixCode(mCurMatrixCodelndex);
} return mCurObjectOffset;
} // Move on to the next matrix code
NextMatrixCodeO; } }
bool CGFCursor::NextMatrixCode()
{
// Reset the current object offset so that the NextQ method Il knows that it should start at the beginning of the matrix code. mCurObjectOffset = (TGF JINT32) -1 ; mCurObjectSize = 0; mCurObjectlnMatrixCode = (TGF JINT32) -1 ; mCurMatrixCodeObjectsCount = (TGFJJINT32) -1; // Handle the case where we are filtering on a matrix codes' list if (mMatrixCodes) { for (;;) {
// Get the next code if (++mCurMatrixCodelndex >= GetMatrixCodesCount()) { mCurMatrixCodelndex = (TGF_UINT32) -1 ; mCυrMatrixCode = GetMatrixHandler()-> GetNbMatrixCodesO-1; return false;
}
TGF_UINT32 code = GetNthMatrixCode(mCurMatrixCodelndex);
// If this code is activated in the array, update variables if (mMatrixCodes[code]) ( mCurMatrixCode = code; mCurMatrixCodeObjectsCount =
GetObjectCountlnNthMatrixCode(mCurMatrixCodelndex); return true; } } ) // Not filtering on matrix codes: get the next code if (++mCurMatrixCodelndex >= GetMatrixCodesCount()) { // Does not exist mCurMatrixCodelndex = (TGF_U!NT32) -1 ; mCurMatrixCode = GetMatrixHandler()->GetNbMatrixCodes()-1 ; return false;
} mCurMatrixCode = GetNthMatrixCode(mCurMatrιxCodelndex); mCurMatrixCodeObjectsCount =
GetObjectCountlnNthMatrixCode(mCurMatrixCodelndex); return true;
}
L'accès aux objets intersectant un rectangle rect (deuxième partie de l'étape B), s'effectue alors de la façon suivante : {
TGF_LONGRECT rect, domain; TGF_UINT32 * matπxlevelList; // Set rect and get file's domain and matrixLevelList
CGFMatrixHandler * mtxHdl = new(CGFMatrixHandler(domain, matrixLevelList));
CGFCursor * iter = new(CGFCursor(mtxHdl->GetMatrixCodesList(rect)));
while (iter->Next() != (TGF_UINT32) -1) {
// Read current object at offset iter->GetCurObjectOffset() // Check if object intersects rect (its matrix code does but not
Il necesseraly the object itself). Il Ifso, process object
)
}
Une mise en œuvre pratique du procédé de recherche selon l'invention peut être de réaliser la première phase une fois pour toutes pour un domaine donné, avant de le charger dans un appareil ou équipement de lecture, surtout si l'on envisage une exploitation suivie du domaine.
La seconde phase est toujours exécutable chaque fois qu'une recherche est demandée et peut donc être de préférence installée de façon permanente dans le terminal d'exploitation.
Les extractions μ ainsi obtenues par mise en œuvre du procédé de cartographie vectorielle selon l'invention peuvent être stockées dans tout type de supports d'information et intégrées dans des appareils électroniques, tels que des équipements de communication et/ou de navigation. Bien sûr, l'invention n'est pas limitée aux exemples qui viennent d'être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l'invention.

Claims

REVENDICATIONS
1. Procédé pour rechercher un objet contenu dans un domaine δ au sein d'un espace Δ contenant un ensemble d'objets décrits dans une matrice M initiale, comprenant une construction d'un sous-ensemble ω d'objets contenus dans ledit domaine δ par extraction d'une matrice μ à partir de la matrice M initiale, caractérisé en ce qu'il comprend les étapes suivantes :
- on crée un matriçage M de l'espace Δ en superposant une pluralité de matrices géométriques de normes p différentes, représentant une couverture du domaine par un ensemble déterminé et homogène de sous-domaines similaires, chacune des mailles de chaque matrice géométrique étant identifiée par un index spécifique et unique appelée code de matrice,
- on détermine pour l'ensemble du matriçage M toutes les mailles incluses dans le domaine δ ou intersectées par le domaine δ, et le nombre d'objets concernés comme la somme des nombres d'objets des mailles concernées,
- on trie la matrice M par codes de matrice selon un ordre prédéterminé, croissant ou décroissant, des normes p, et
- on construit la matrice d'extraction μ décrivant les seuls objets concernés par lesdites mailles incluses dans le domaine δ ou intersectées par le domaine δ.
2. Procédé de recherche d'objet selon la revendication 1 , caractérisé en ce que les objets sont triés par codes de matrice croissants ou décroissants.
3. Procédé de recherche d'objet selon l'une des revendications 1 ou 2, caractérisé en ce qu'il comprend en outre un stockage d'une liste des codes de matrice avec un pointeur sur le premier objet de chaque code.
4. Procédé de recherche d'objet selon l'une des revendications précédentes, caractérisé en ce que la sélection des objets est effectuée par un curseur qui parcourt la liste des codes de matrices.
5. Procédé de recherche d'objet selon la revendication 4, caractérisé en ce que, lorsque le curseur rencontre un code actif, ledit curseur parcourt alors l'ensemble des objets de ce code, seuls les objets balayés par ledit curseur étant traités.
6. Procédé de recherche d'objet selon la revendication 5, caractérisé en ce que le traitement des objets sélectionnés comprend un second tri pour exclure dudit traitement ceux des objets sélectionnés par ledit curseur qui n'intersectent pas nécessairement le domaine δ.
7. Procédé de recherche d'objet selon la revendication 6, caractérisé en ce que le tri comprend une lecture de chaque objet, puis un calcul d'intersection avec le domaine δ.
8. Procédé de recherche d'objet selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend :
- une première phase (1 ) comportant:
- une définition d'un matriçage M, un tri des objets de l'ensemble d'objets par ordre croissant ou décroissant de leur code de matrice nPjj, avec i = 1 , π (profondeur) et j = 1 , .Pj (nombre de la maille dans la grille de profondeur i).
- une définition du matriçage M comprenant un choix des grilles;
- - un tri des objets de l'ensemble par ordre croissant ou décroissant de leur code de matrice np , avec i = 1 , π (profondeur) et j = 1 , .pi (nombre de la maille dans la grille de profondeur i), et
- une seconde phase (2) de recherche des v objets contenus dans le domaine de recherche δ formant le sous-ensemble ω, comprenant :
- une recherche des mailles « actives » (des codes de matrice actifs), qui sont concernées par le domaine de recherche δ. - pour chaque code de matrice nPij actif, une recherche des objets correspondants et une vérification, pour lesdits objets correspondants seulement, de l'appartenance au domaine de recherche δ.
9. Procédé de recherche d'objet selon l'une quelconque des revendications précédentes, caractérisée en ce que la phase (1 ) de définition et de tri d'objets est réalisée une fois pour toutes dans un domaine donnée, les résultats de ladite phase (1) de définition et de tri d'objets étant chargés dans un appareil de lecture, et en ce que la phase (2) de recherche est exécutable chaque fois qu'une recherche est demandée.
10. Procédé de recherche d'objet selon la revendication 9, caractérisé en ce que la phase (2) de recherche est implémentée sous la forme d'un programme exécutable stocké au sein d'un terminal d'exploitation.
11. Procédé de cartographie vectorielle, pour cartographier un territoire Δ comprenant un ensemble d'objets décrits par une matrice M ; mettant en œuvre le procédé de recherche d'objet selon l'une des revendications précédentes, caractérisé en ce qu'il comprend les étapes suivantes :
- une détermination de la liste des mailles actives, comprenant un calcul de l'ensemble des codes de matrice correspondant aux mailles qui intersectent le domaine δ de recherche, et
- une sélection et un traitement éventuel des objets.
12. Procédé de cartographie vectorielle selon la revendication 11 , mis en oeuvre dans un domaine bidimensionnel, caractérisé en ce qu'il comprend un matriçage selon une pluralité de matrices géométriques rectangulaires comportant des mailles régulières, chaque matrice géométrique présentant une norme différente incluant la longueur et la largeur des mailles de ladite matrice.
13. Procédé de cartographie vectorielle selon la revendication 11 mis en œuvre en cartographie bi-dimensionnelle étendue à niveaux multiples, caractérisé en ce qu'il comprend les séquences suivantes : - l'ensemble initial Ω de N objets est décomposé en une pluralité de Z sous-ensembles Ωζ d'objets de même niveau, avec ζ = 1 à Z,
- la matrice M initiale est décomposée en Z matrices Mζ,
- on utilise le matriçage d'une façon indépendante pour chaque sous- ensemble.
14. Système de cartographie vectorielle, comprenant des moyens pour traiter des objets contenus dans un domaine δ au sein d'un espace Δ contenant un ensemble d'objets décrits dans une matrice M initiale, comprenant une construction d'un sous-ensemble ω d'objets contenus dans ledit domaine δ par extraction d'une matrice μ à partir de la matrice M initiale, caractérisé en ce qu'il comprend en outre:
- des moyens pour créer un matriçage M de l'espace Δ en superposant une pluralité de matrices géométriques de normes p différentes, représentant une couverture du domaine par un ensemble déterminé et homogène de sous- domaines similaires, chacune des mailles de chaque matrice géométrique étant identifiée par un index spécifique et unique appelé code de matrice,
- des moyens pour déterminer pour l'ensemble du matriçage M toutes les mailles incluses dans le domaine δ ou intersectées par le domaine δ, et le nombre d'objets concernés comme la somme des nombres d'objets des mailles concernées,
- des moyens pour trier la matrice M par codes de matrice selon un ordre prédéterminé, croissant ou décroissant, des normes p, et
- des moyens pour construire la matrice d'extraction μ décrivant les seuls objets concernés par lesdites mailles incluses dans le domaine δ ou intersectées par le domaine δ.
15. Appareil électronique, notamment équipement de communication et/ou de navigation, mettant en œuvre le procédé de cartographie vectorielle selon l'une des revendications 11 à 13.
PCT/FR2002/000868 2001-03-13 2002-03-12 Procede pour rechercher un objet au sein d'un espace, procede et systeme de cartographie vectorielle integrant ce procede de cartographie vectorielle, et appareil electronique mettant en oeuvre ce procede de cartographie vectorielle WO2002073459A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR01/03375 2001-03-13
FR0103375A FR2822275B1 (fr) 2001-03-13 2001-03-13 Procede pour rechercher un objet au sein d'un espace, procede et systeme de cartographie vectorielle integrant ce procede de recherche et appareil electronique mettant en oeu vre ce procede de cartographie vectorielle

Publications (1)

Publication Number Publication Date
WO2002073459A1 true WO2002073459A1 (fr) 2002-09-19

Family

ID=8861041

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2002/000868 WO2002073459A1 (fr) 2001-03-13 2002-03-12 Procede pour rechercher un objet au sein d'un espace, procede et systeme de cartographie vectorielle integrant ce procede de cartographie vectorielle, et appareil electronique mettant en oeuvre ce procede de cartographie vectorielle

Country Status (3)

Country Link
US (1) US6873943B2 (fr)
FR (1) FR2822275B1 (fr)
WO (1) WO2002073459A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100376871C (zh) * 2003-06-02 2008-03-26 株式会社电装 地图信息检索设备和地图信息检索方法
CN117271695A (zh) * 2023-11-20 2023-12-22 浙江华东工程数字技术有限公司 矢量空间数据叠加分析方法、装置、电子设备和存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9075493B2 (en) * 2011-03-07 2015-07-07 Sas Institute, Inc. Techniques to present hierarchical information using orthographic projections
US9977789B2 (en) * 2011-11-29 2018-05-22 Oracle International Corporation Hierarchical grid for spatial querying
CN111950314A (zh) * 2019-05-17 2020-11-17 锥能机器人(上海)有限公司 定位方法及其装置、机器可读介质和系统
TR202022658A1 (tr) * 2020-12-31 2022-07-21 Netcad Yazilim Anonim Sirketi Yer varliklarinin taninmasinda kullanilan bi̇r si̇stem

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963956A (en) * 1997-02-27 1999-10-05 Telcontar System and method of optimizing database queries in two or more dimensions
US6161105A (en) * 1994-11-21 2000-12-12 Oracle Corporation Method and apparatus for multidimensional database using binary hyperspatial code

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1277043C (fr) * 1985-07-25 1990-11-27 Marvin S. White, Jr. Appareil stockant une representation de structures topologiques et methodes de construction et d'exploration de cette representation
US5030117A (en) * 1987-09-25 1991-07-09 Delorme David M Digital global map generating system
AU2001249805A1 (en) * 2000-04-03 2001-10-15 3-Dimensional Pharmaceuticals, Inc. Method, system, and computer program product for representing object relationships in a multidimensional space
US6728728B2 (en) * 2000-07-24 2004-04-27 Israel Spiegler Unified binary model and methodology for knowledge representation and for data and information mining

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161105A (en) * 1994-11-21 2000-12-12 Oracle Corporation Method and apparatus for multidimensional database using binary hyperspatial code
US5963956A (en) * 1997-02-27 1999-10-05 Telcontar System and method of optimizing database queries in two or more dimensions

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MATSUYAMA T ET AL: "A FILE ORGANIZATION FOR GEOGRAPHIC INFORMATION SYSTEMS BASED ON SPATIAL PROXIMITY", COMPUTER VISION GRAPHICS AND IMAGE PROCESSING, ACADEMIC PRESS, DULUTH, MA, US, vol. 26, no. 3, 1 June 1984 (1984-06-01), pages 303 - 318, XP000718799 *
OOI B C ET AL: "SPATIAL KD-TREE: AN INDEXING MECHANISM FOR SPATIAL DATABASE", PROCEEDINGS OF THE ANNUAL INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE. (COMPSAC). TOKYO, OCT. 7 - 9, 1987, WASHINGTON, IEEE COMP. SOC. PRESS, US, vol. CONF. 11, 7 October 1987 (1987-10-07), pages 433 - 438, XP000039784 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100376871C (zh) * 2003-06-02 2008-03-26 株式会社电装 地图信息检索设备和地图信息检索方法
CN117271695A (zh) * 2023-11-20 2023-12-22 浙江华东工程数字技术有限公司 矢量空间数据叠加分析方法、装置、电子设备和存储介质
CN117271695B (zh) * 2023-11-20 2024-02-20 浙江华东工程数字技术有限公司 矢量空间数据叠加分析方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US20030040893A1 (en) 2003-02-27
FR2822275A1 (fr) 2002-09-20
FR2822275B1 (fr) 2003-06-06
US6873943B2 (en) 2005-03-29

Similar Documents

Publication Publication Date Title
EP2356493B1 (fr) Procede de modelisation geologique de donnees sismiques par correlation de traces
Zhang et al. A progressive morphological filter for removing nonground measurements from airborne LIDAR data
EP3292541B1 (fr) Procede des simplification de modele de geometrie
EP2761340B1 (fr) Procédé d&#39;extraction de vignette d&#39;une image d&#39;entraînement pour contraindre la modélisation géostatistique multipoint du sous-sol
EP0627693B1 (fr) Dispositif de segmentation d&#39;images composées de textures
WO2006108971A1 (fr) Procede de determination hierarchique d&#39;evenements coherents dans une image sismique
FR2665597A1 (fr) Procede et dispositif de localisation en temps reel de contours rectilignes dans une image numerisee, notamment pour la reconnaissance de formes dans un traitement d&#39;analyse de scene.
EP2622385A2 (fr) Simulation de karstification
EP3164743A1 (fr) Procede de determination de caves geologiques
WO2002073459A1 (fr) Procede pour rechercher un objet au sein d&#39;un espace, procede et systeme de cartographie vectorielle integrant ce procede de cartographie vectorielle, et appareil electronique mettant en oeuvre ce procede de cartographie vectorielle
EP1794718A2 (fr) Procede de compression de donnees de visibilite, systeme de compression et decodeur
EP3146367B1 (fr) Procédé de détermination d&#39;une carte de hauteur d&#39;hydrocarbure liquide dans un réservoir
WO1998033074A1 (fr) Procede de modelisation fine du fouillis de sol reçu par un radar
EP1805484B1 (fr) Procede et dispositif de calcul d&#39;itineraire avec elimination progressive des donnees correspondant au reseau routier
FR2797329A1 (fr) Methode d&#39;elaboration de cartes de probabilite de position de point d&#39;impact d&#39;un puits
WO2012120241A1 (fr) Procede informatique d&#39;estimation, procede d&#39;exploration et d&#39;exploitation petroliere mettant en oeuvre un tel procede
EP1272914B1 (fr) Procede et installation de localisation optimale automatique d&#39;une operation sur un circuit integre
WO2006003268A1 (fr) Precede general de determination de liste d’elements potentiellement visibles par region pour des scenes 3d de tres grandes tailles representant des villes virtuelles d’altitudes variables.
CA2022644A1 (fr) Procede de traitement de donnees de sismique reflexion pour l&#39;obtention de coupes sismiques ameliorees
WO2019170974A1 (fr) Procédé et système pour la construction d&#39;un plan d&#39;acquisitions pour satellite
FR2994313A1 (fr) Procede d&#39;assistance a la modelisation geologique par regroupements de mailles
WO2006003267A1 (fr) Procede de determination de liste d’elements potentiellement visibles par region pour des scenes 3d de tres grandes tailles representant des villes virtuelles
WO2007042700A1 (fr) Procede et systeme de calcul de visibilite de scene dans une architecture de navigation client serveur
Turbet et al. Structure arborescente pour le raffinement progressif en radiosité hiérarchique
WO2018185442A1 (fr) Dispositif de placement amélioré

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: COMMUNICATION PURSUANT TO RULE 69 EPC (EPO FORM 1205A OF 140104)

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP