IT:Simple Indoor Tagging
Simple Indoor Tagging è una proposta per uno schema di tag da usare per l'Indoor Mapping. È semplice da usare ma allo stesso tempo completo ed in grado di coprire anche i casi complicati. La lista di schemi di tag per l'indoor può essere vista qui.
Obiettivi del progetto
Portare avanti la più popolare proposta dello schema di tag per interni ad uno stato utile rendendolo al contempo compatibile con il popolare schema di tag Simple 3D Buildings. Da notare che la versione corrente rimuove tutti i riferimenti al modello basato su relazioni, comunque le relazioni di livelli ed edifici possono ancora essere opzionalmente supportate
Probabilmente ci sono ancora un numero di errori rimanenti in questa proposta derivanti dal copia e incolla dalla proposta IndoorOSM da cui questa deriva.
Sommario
Per riassumere, queste sono le caratteristiche principali di questo schema:
- Mappatura di ambienti interni inclusi i differenti piani (livelli)
- Sono utilizzate metodologie gia esistenti in OSM (nodi, ways, relazioni and keys)
Casi d'uso
Le mappe degli interni o informazioni 3d degli interni possono essere usati in varie applicazioni come ad esempio:
- Indoor Navigation/Routing
- Piantine del piano e mappe 3D
- Partecipazioni pubbliche
- Risposta alle emergenze
negli edifici pubblici.
Il Modello / Schema di Tag
Nella segiente sezione, il modello è presentato e descritto.
Mappatura semplificata dei POI
La mappatura di elementi in OSM funziona meglio quando non c'è un immediato requisito di aggiungere ogni piccolo dettaglio. Il più delle volte il processo di mappatura è un'evoluzione da una mappatura basica passando per una più fine per arrivare ad una con un livello di dettaglio insano. Per permettere questo serve definire uno schema semplice per mappare i POI che possa essere usato assieme ad uno schema degli interni che permetta la visualizzazione e la navigazione anch quando non sono disponibili piantine dettagliate dei piani.
Un approccio è semplicemente quello di permettere il tagging di questi nodi con un tag "level". Per renderne sufficientemente semplice l'utilizzo si suggerisce che il profilo dell'edificio o la sua relazione debbano essere applicati i tag min_level=* e max_level=*.
Nel caso più semplice questo richiede solo l'aggiunta di 2 tag sul poligono dell'edificio e un tag di livello per ogni POI per permetterne una visualizzazione basica (la navigazione non può essere supportata senza l'aggiunta di altri elementi interni addizionali).
Chiave | Descrizione | Esempi di valori |
---|---|---|
level=* | Il livello in cui è posto il POI | level=3, level=-1 |
Edificio
Per rendere facilmente identificabili gli edifici, con gli interni mappati, ai fruitori dei dati si suggerisce l'uso dei tag min_level=* e max_level=* associati all'elemento con il tag Building (way o relazione). In alcuni paesi specifici valori per i livelli non vengono assegnati, come per esempio il piano 13 in alcuni paesi occidentali o il 4 in Cina. Al fine di semplificare la mappatura di questi casi si propone l'uso del tag non_existent_levels=*.
Chiave | Descrizione | Esempio di Valori |
---|---|---|
min_level=* | Minimo livello interno | min_level=-1 |
max_level=* | Massimo livello interno | max_level=14 |
non_existent_levels=* | opzionale: Livelli mancati | non_existent_levels=4;13 |
Modellazione dei diversi elementi interni
I vari elementi interni presenti nei vari livelli possono pure loro venir mappati in OSM. Quelle parti che occupano un'area (es. stanze, corridoi, tromba delle scale...)sono mappate tramite way chiuse (aree). Si propongono quattro elementi basici interni con i quali tutto quanto può essere modellato. Il quinto valore indoor=level è opzionale e non è usato per il render ma per avere un luogo dove aggiungere ulteriori informazioni come il nome del piano.
Chiave | Valore | Elemento | Descrizione |
---|---|---|---|
indoor | room | area convenzionale delimitata da pareti | |
indoor | area | Area senza pareti | |
indoor | wall | Elemento individuale muro (non-passable), quando non è già stato definito tramite indoor=room (es parete divisoria interna) | |
indoor | corridor | Passaggio di connessione (non ha muri propri) | |
indoor | level | opzionale: vedi sotto |
Le singole aree condividono gli stessi nodi quando condividono un muro. La connessione tra una stanza e un corridoio è effettuato mediante un nodo door=*, anche qui in comune tra i due elementi.
Nota: Proposte separate per finestre e porte sono in sviluppo, ma non verranno qui trattate:
- Proposed features/door
- Lato di apertura per F3DB#Tagging_of_door_direction
- User:Tordanik/Window_tagging
Modellazione connessioni tra differenti livelli
L'area in cui si sviluppano le scale (tromba delle scale) e le scale mobili, sono modellate sfruttando la stessa logica di sopra. Questi elementi si estendono verticalmente su due o più piani (es.level=-1-5 per un elemento che va dal piano -1 al 5) e possono essere connessi ad un'area indoor=corridor tramite un nodo door=* per ogni piano. Il tag door=no può essere usato quando la connessione con un corridoio e la scala non ha una porta (scale che si sviluppano in ambienti non delimitati da muri).
Una scala realizzata in maniera uniforme, o un ascensore classico, in cui la posizione degli ingressi si discosta solo verticalmente e sono quindi poste alle stesse coordinate, si consiglia l'uso di un solo nodo door=* o door=no con valori multipli o range di piani, ad esempio repeat_on=1;2;3;4;5 o repeat_on=1-5 (sarà approfondito più in basso). Raccomandiamo per l'utilizzo dei dati di duplicare questo oggetti durante la fase di pre-processing assegnando un livello per ogni duplicato creato.
Foto | Caso d'uso | Tagging proposto |
---|---|---|
Scale | stairs=yes indoor=room o indoor=area quando non ci sono muri. | |
Scale Mobili | stairs=yes conveying=yes indoor=room o indoor=area quando non ci sono muri. | |
Ascensori | highway=elevator indoor=room o in casi speciali indoor=area quando non ci sono muri. |
TODO: Mappatura dettagliata delle singole scale
Modellazione avanzata dei differenti livelli (piani)
Tutti gli elementi dello stesso livello un tag di livello o, opzionalmente, sono membri di una relazione livello.
Chiave | Descrizione | Esempi di Valori |
---|---|---|
level=* | Descrive su che livello è l'elemento(0 è normalmente il piano terra, -1 è il primo interrato ecc.) | level=0, level=-2, level=3 |
Deve essere segnati i livelli come sono effettivamente indicati nella realtà, per esempio all'aeroporto di monaco il piano terra è indicato con il numero 3.
Chiavi e valori che possono essere opzionalmente aggiunti ad un lemento taggato con (indoor=level) sono riportati nella seguente tabella:
Chiave | Descrizione | Esempi di valori |
---|---|---|
name=* | Il nome del livello corrispondente | name=Ground Floor |
height=* | L'altezza del piano (con l'unità di misura in metri) | height=4 |
level=* | Descrive quale numero ha il corrente livello (0 è normalmente il piano terra, -1 per il primo piano sotterraneo) | level=0, level=-2, level=3 |
Informazioni circa gli stessi elementi interni (es. nome e tipo) sono ancora dei tag chiave valore associati al corrispondente elemento.
Chiave | Descrizione | Esempi di valori |
---|---|---|
level=* | OBBLIGATORIO il livello in cui l'elemento interno è posizionato | level=111, level=-1 |
name=* | Nome dell'elemento (es il nomee della stanza) | name=Vesalius Aula, name=Audimax |
ref=* | il ref dell'elemento (es il numero di stanza di un hotel) | ref=101, ref=01.15 |
height=* | altezza individuale dell'elemento (di default in metri) | height=3, height=2.5 |
Caratteristiche multi-livello e ripetizioni
Chiave | Elementi | Descrizioni | Example value(s) |
---|---|---|---|
level=* | oltre ai casi precedentemente descritti, elementi estesi su più livelli (es. scale, ascensore) può essere mappato assegnandogli più di un livello nel value. | level=1;2, level=-1-5, level=-4--2 | |
repeat_on=* | elementi ripetuti in maniera identica su più livelli possono essere mappati tramite un singolo nodo con questo tag. Deve essere usato con parsimonia e solo se necessario (di solito in caso di finestre, ascensori e porte delle scale ). Il livello di partenza non deve essere incluso in queta lista, es. un elemento con level=0 e dopo repeat_on comincia dal livello "1". | repeat_on=1;3, repeat_on=0-6 |
Esempi di utilizzo
Espandere la lista di esempi di applicazione di questa proposta con il relativo status.
luogo | livelli | status | link OSM | link OpenLevelUp |
---|---|---|---|---|
Aachen University Edificio 1380 | -1 - 3 | tutte le 92 rooms+toilets+entrances | [1] | [2] |
Public University of Navarre (UPNA) Edificio studio | 0 - 3 | tutte e aule, corridoi, toilets, entrances | [3] | [4] |
Public University of Navarre (UPNA) Edificio Biblioeca | -1 - 2 | Tutto | [5] | [6] |
Centro Commerciale Il Globo (Busnago) | -1 - 2 | Tutto | [7] | [8] |