Il s'agit de la commande osmconvert qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
osmconvert - Convertisseur de fichiers OSM
SYNOPSIS
osmconvertir Options [fichier d'entrée]
DESCRIPTION
Ce programme lit différents formats de fichiers du projet OpenStreetMap et convertit les
données au format de fichier de sortie sélectionné.
Ces formats vous be lis:
.osm .osc .osc.gz .osh .o5m .o5c .pbf
Ces formats vous be écrit:
.osm (par défaut) .osc .osh .o5m .o5c .pbf
Les noms des fichiers d'entrée doivent être spécifiés en tant que paramètres de ligne de commande. Utilisez - pour lire à partir de
entrée standard. Vous n'avez pas besoin de spécifier les formats d'entrée, osmconvert reconnaîtra
eux par lui-même. Le format de sortie est .osm par défaut. Si vous voulez un format différent,
veuillez le spécifier à l'aide du paramètre de ligne de commande approprié.
OPTIONS
-b=, , ,
Si vous souhaitez limiter la région géographique, vous pouvez définir une zone de délimitation. À faire
ceci, entrez dans les coins sud-ouest et nord-est de cette zone. Pour
Exemple: -b= -0.5,51,0.5,52
-B=
Alternativement à une boîte englobante, vous pouvez utiliser un polygone de bordure pour limiter le
région géographique. Le format d'un fichier de polygone de bordure peut être trouvé dans l'OSM
Wiki à Polygon_Filter_File_Format : http://wiki.openstreetmap.org/wiki/Osmosis/
Vous n'avez pas besoin de suivre strictement la description du format, vous devez vous assurer que
chaque ligne de coordonnées commence par des blancs.
--chemins complets
Si vous appliquez une zone de bordure ou un polygone de bordure, tous les nœuds des bordures sont exclus ;
même alors s'ils appartiennent à une voie qui n'est pas entièrement exclue parce qu'elle a
certains nœuds à l'intérieur des frontières. Cette option garantira que chaque chemin reste
complet, même s'il coupe les frontières. Cela entraînera un traitement plus lent,
et le programme perdra sa capacité à lire à partir d'une entrée standard. Il est
recommandé d'utiliser le format .o5m comme format d'entrée pour compenser la plupart de la vitesse
désavantage.
--voies complexes
Identique à avant, mais les multipolygones ne seront pas non plus coupés aux bords.
--tout-aux-nœuds
Certaines applications n'ont pas la capacité de traiter des voies ou des relations, elles
accepter les nœuds en entrée. Cependant, des objets de plus en plus complexes sont cartographiés comme des chemins ou
même les relations afin d'obtenir tous leurs détails dans la base de données. Appliquer ceci
option si vous souhaitez convertir des chemins et des relations en nœuds et ainsi les rendre
disponible pour les applications qui ne peuvent traiter que des nœuds. Pour chaque chemin, un nœud est
créé. L'identifiant du chemin est augmenté de 10^15 et pris comme identifiant pour le nouveau nœud. Les
la longitude et la latitude du nœud sont réglées sur le centre géographique du chemin. Même
s'applique aux relations, mais elles obtiennent 2*10^15 comme décalage d'identifiant.
--add-bbox-tags
Cette option ajoute une balise avec un cadre de délimitation à chaque objet. La balise contiendra
les coordonnées de la frontière dans cet ordre : min Longitude, min Latitude, max Longitude ,
latitude maximale. par exemple:
--add-bboxarea-tags
Une balise pour une valeur de surface estimée pour la bbox est ajoutée à chaque chemin et chaque
relation. L'unité est le mètre carré. Par exemple:
v="33828002"/>
--add-bboxweight-balises
Cette option ajoutera le logarithme binaire de la zone bbox de chaque voie et chaque
relation. Par exemple:
--add-bboxwidth-tags
Une balise pour une valeur de largeur estimée pour la bbox est ajoutée à chaque sens et chaque
relation. L'unité est le mètre. Par exemple:
--add-bboxwidthweight-balises
Cette option ajoutera le logarithme binaire de la largeur de la bbox de chaque manière et chaque
relation. Par exemple:
--object-type-offset=
Si vous appliquez le --tout-aux-nœuds option comme expliqué ci-dessus, vous pouvez ajuster l'id
décalage. Par exemple: --object-type-offset= 4000000000
En ajoutant "+1" à l'offset, le programme créera des identifiants dans une séquence avec
étape 1. Cela peut être utile s'il y a une application en cours d'exécution par la suite
qui ne peut pas traiter les grands numéros d'identification. Exemple:
--object-type-offset= 1900000000 + 1
--drop-breaké-refs
Utilisez cette option si vous devez supprimer des références à des nœuds qui ont été exclus
car situé hors des frontières (obligatoire pour certaines applications, ex Map
Compositeur, JOSM).
--drop-auteur
Pour la plupart des applications, les balises author ne sont pas nécessaires. Si vous spécifiez cette option,
aucune information sur l'auteur ne sera écrite : pas de modification, d'utilisateur ou d'horodatage.
--drop-version
Si vous souhaitez exclure non seulement les informations sur l'auteur mais également le numéro de version,
spécifiez cette option.
--drop-noeuds --drop-voies --drop-relations
D'après la combinaison de ces paramètres, aucun membre du groupe visé
section sera écrite.
--diff
Calculez la différence entre deux fichiers et créez un nouveau fichier .osc ou .o5c. Là
doit être DEUX fichiers d'entrée et les bordures ne peuvent pas être appliquées. Les deux fichiers doivent être triés
par type d'objet et identifiant. Les objets créés apparaîtront dans le fichier de sortie comme
"modifié", à moins d'avoir le numéro de version 1.
--diff-contenu
Similaire à --diff, cette option calcule les différences entre deux fichiers OSM. Ici,
pour déterminer les différences, des objets OSM complets sont consultés, non seulement les
numéros de version. Malheureusement, cette option requiert strictement les deux fichiers d'entrée pour
ont le format .o5m.
--soustraire
Le fichier de sortie ne contiendra aucun objet existant dans l'un des fichiers d'entrée
suite à cette directive. Par exemple : osmconvert input.o5m --soustraire moins.o5m
-o=sortie.o5m
--pbf-granularité=
Les fichiers .pbf sont rarement livrés avec une granularité non standard. osmconvert reconnaîtra
ceci et suggérer de spécifier la granularité lon/lat anormale à l'aide de cette commande
option de ligne. Les valeurs autorisées sont : 100 (par défaut), 1000, 10000, ..., 10000000.
--émuler-osmose --emulate-pbf2osm
En cas de format de sortie .osm, le programme essaiera d'utiliser la même syntaxe de données que
Osmose, resp. pbf2osm.
--faux-auteur
Si vous avez supprimé les informations sur l'auteur (--drop-auteur) que les données seront perdues, de
cours. Certains programmes nécessitent cependant des informations sur l'auteur lors de l'entrée, bien qu'ils le fassent.
pas besoin de ces données. À cette fin, vous pouvez falsifier les informations de l'auteur.
osmconvert écrira le changeset 1, timestamp 1970.
--fausse-version
Pareil que --faux-auteur, mais - si .osm xml est utilisé comme format de sortie - seul le
le numéro de version sera écrit (version 1). Ceci est utile si vous voulez inspecter
les données avec JOSM.
--faux-lonlat
Certains programmes dépendent de l'obtention des valeurs de longitude/latitude, même lorsque l'objet dans
question est supprimée. Avec cette option, vous pouvez avoir osmconvert pour simuler ces
valeurs:
... lat="0" lon="0" ...
Notez que cela concerne uniquement les fichiers XML (.osc et .osh).
-h
Affichez un bref aperçu des paramètres.
--Aidez-moi
Affichez cette aide.
--merge-versions
Certains fichiers .osc contiennent différentes versions d'un objet. Utilisez cette option pour
accepter ces doublons en entrée.
--hors-osm
Les données seront écrites au format .osm. Il s'agit du format de sortie par défaut.
--out-osc
Le format OSM Change sera utilisé pour la sortie. Veuillez noter que les objets OSM qui
doivent être supprimés seront représentés par leurs identifiants uniquement.
--out-osh
Pour chaque objet OSM, la balise « visible » appropriée sera ajoutée pour répondre « complet
spécification de l'histoire de la planète.
--out-o5m
Le format .o5m sera utilisé. Ce format a la même structure que le
format .osm conventionnel, mais les données sont stockées sous forme de nombres binaires et sont
donc beaucoup plus compact qu'au format .osm. Aucun emballage n'est utilisé, vous pouvez donc
emballer les fichiers .o5m en utilisant chaque packer de fichiers que vous voulez, par exemple lzo, bz2, etc.
--out-o5c
Il s'agit du format de fichier de modification du format de données .o5m. Tous les balises ne seront pas
exécutées en tant qu'actions de suppression mais converties au format de données .o5c.
--out-pbf
Pour la sortie, le format PBF sera utilisé.
--out-csv
Une liste de caractères séparés sera écrite en sortie. Le séparateur par défaut est
Tab, les colonnes par défaut sont : type, id, name. Vous pouvez modifier les deux en utilisant le
Options --csv-séparateur= et --csv=
--csv-titre
Choisissez cette option pour imprimer un titre sur la sortie csv.
--csv-séparateur=
Vous pouvez remplacer le séparateur par défaut (Tab) par un autre caractère ou caractère
séquence. Par exemple: --csv-séparateur=";"
--csv=
Si vous souhaitez avoir certaines colonnes dans votre liste csv, veuillez spécifier leurs noms comme
montré dans cet exemple : --csv="@id name ref description" Il y a quelques
noms de colonne pour les données d'en-tête : @otype (type d'objet 0..2), @oname (nom de type d'objet),
@id @lon, @lat, @version, @timestamp, @changeset, @uid, @user
--hors-aucun
Ce ne sera pas une sortie standard. Cette option est uniquement à des fins de test.
--horodatage= --horodatage= MAINTENANT
Si vous souhaitez définir l'horodatage OSM de votre fichier de sortie, fournissez-lui ce
option. La date et l'heure doivent être formatées conformément aux spécifications de date/heure OSM. Pour
Exemple: --timestamp=2011-01-31T23:59:30Z Vous aussi vous la quantité a relatif fois in
secondes, par exemple 24h depuis: --timestamp=MAINTENANT-86400
--horodatage
Avec cette option définie, osmconvert imprime uniquement l'horodatage du fichier d'entrée,
rien d'autre.
--statistiques
Cette option active un compteur de statistiques. Le programme imprimera des données statistiques
à stderr.
--hors-statistiques
Pareil que --statistiques, mais les données statistiques seront écrites sur la sortie standard.
-o=
La sortie standard sera redirigée vers le fichier spécifié. Si aucun format de sortie n'a
été spécifié, le programme s'appuiera sur l'extension de nom de fichier.
-t=
Si des bordures doivent être appliquées ou des références brisées à éliminer, osmconvert
crée et utilise deux fichiers temporaires. Ce paramètre définit leur préfixe de nom.
La valeur par défaut est "osmconvert_tempfile".
--fichier-paramètre=DOSSIER
Si vous souhaitez fournir un ou plusieurs arguments de ligne de commande par un fichier de paramètres,
veuillez utiliser cette option et spécifier le nom du fichier. Dans le fichier de paramètres,
les paramètres doivent être séparés par des lignes vides. Les sauts de ligne à l'intérieur d'un paramètre seront
convertis en espaces. Les lignes commençant par "// " seront traitées comme des commentaires.
-v --verbeux
Avec le mode 'verbose' activé, certaines données statistiques et données de diagnostic seront
affiché. Si -v resp. --verbeux est le premier paramètre de la ligne, osmconvert
affichera tous les paramètres d'entrée.
TUNING
Pour accélérer le processus, le programme utilise de la mémoire principale pour une table de hachage. Par défaut,
il utilise 480 Mo pour stocker un indicateur pour chaque nœud possible, 90 pour les indicateurs de chemin et 30
drapeaux de relation. Chaque octet contient les drapeaux pour 8 numéros d'identification, c'est-à-dire dans 480 Mo le programme
peut stocker 3840 millions de drapeaux. Comme il y a moins de 1900 millions d'identifiants pour les nœuds à l'heure actuelle
(juillet 2012), 240 Mo suffiraient. Ainsi, par exemple, vous pouvez réduire les tailles de hachage à
par exemple 240, 30 et 2 Mo en utilisant cette option :
--hash-mémoire=240-30-2
Mais gardez à l'esprit que la base de données OSM est en constante expansion. Pour cette raison le
la valeur par défaut du programme est plus élevée que celle indiquée dans l'exemple, et cela peut être approprié
pour l'augmenter à l'avenir. Si vous ne voulez pas vous embêter avec les détails, vous pouvez
entrez la quantité de mémoire sous forme de somme, et le programme la divisera par lui-même. Pour
Exemple:
--hash-mémoire=1000
Ces 1000 Mio seront divisés en trois parties : 800 pour les nœuds, 150 pour les voies et 50 pour
relations.
Comme nous prenons des hachages, il n'est pas nécessaire de fournir toute la mémoire suggérée ; les
Le programme fonctionnera également avec moins de mémoire de hachage. Mais, dans ce cas, le filtre de bordure
être moins efficace, c'est-à-dire que certaines façons et certaines relations seront laissées dans le fichier de sortie
alors qu'ils auraient dû être exclus. La valeur maximale que le programme accepte pour le
la taille de hachage est de 4000 XNUMX Mio ; Si vous dépassez la quantité maximale de mémoire disponible sur votre
système, le programme essaiera de réduire ce montant et affichera un message d'avertissement.
Il existe un autre espace mémoire temporaire qui n'est utilisé que pour la conversion des voies et
relations aux nœuds (option --tout-aux-nœuds). Cet espace est suffisant pour jusqu'à 25 Mio.
Objets OSM, 400 Mo de mémoire principale sont nécessaires à cet effet, 800 Mo si option étendue
--add-bbox-tags a été invoqué. Si cela ne suffit pas ou si vous souhaitez économiser de la mémoire,
vous pouvez configurer vous-même le nombre maximum d'objets OSM. Par exemple:
--max-objets=35000000
Le nombre de références par objet est limité à 100,000 XNUMX. Ce sera suffisant pour tous
fichiers OSM. Si vous allez créer vos propres fichiers OSM en convertissant des fichiers de formes ou d'autres
fichiers au format OSM, cela peut donner lieu à des objets de chemin avec plus de 100,000 XNUMX nœuds. Pour
pour cette raison, vous devrez augmenter le maximum en conséquence. Exemple:
--max-réfs=400000
LIMITATIONS
Lors de l'extraction d'une région géographique (à l'aide -b or -B), le fichier d'entrée doit contenir le
objets classés par leur type : d'abord, tous les nœuds, ensuite, tous les chemins, suivis de tous
rapports. Au sein de chacune de ces sections, la section des objets doit être triée par leur identifiant
Dans l'ordre croissant.
Les fichiers habituels .osm, .osc, .o5m, o5c et .pbf adhèrent à cette condition. Cela signifie que vous
n'avez pas à vous soucier de cette limitation. osmconvert affichera un message d'erreur si
cette séquence est rompue.
Si un fichier de polygones pour les bordures est fourni, le nombre maximum de points de polygone est d'environ
40,000.
NOTES
Ce programme est à usage expérimental. Attendez-vous à des dysfonctionnements et à des pertes de données. N'utilisez pas le
programme dans des systèmes productifs ou commerciaux.
Il n'y a AUCUNE GARANTIE, dans la mesure permise par la loi. Veuillez envoyer tout rapport de bogue à
[email protected]
EXEMPLE
osmconvert europe.pbf --drop-auteur >europe.osm
osmconvert europe.pbf |gzip >europe.osm.gz
bzcat europe.osm.bz2 |./osmconvert --out-pbf >europe.pbf
osmconvert europe.pbf -B=ch.poly > suisse.osm
osmconvert suisse.osm --out-o5m >suisse.o5m
osmconvert juin_juillet.osc --out-o5c >juin_juillet.o5c
osmconvert juin.o5m juin_juillet.o5c.gz --out-o5m >juillet.o5m
osmconvert sep.osm sep_oct.osc oct_nov.osc >nov.osm
osmconvert northamerica.osm southamerica.osm >americas.osm
Utilisez osmconvert en ligne en utilisant les services onworks.net