JA:MLIT PLATEAU/Plateau RapiD

From OpenStreetMap Wiki
Jump to navigation Jump to search

nyampireは、Plateauの建物データをOSMに取り込むことを目的とし、Rapidエディタを改造して機能を追加しました。

本ページは JA:MLIT PLATEAU インポートプロジェクトの一部であり、その Rapid ベースの編集ツールについて説明します。データのライセンス・帰属表示・changeset 規約は、親ページ JA:MLIT PLATEAU に従います。

公開は以下のURLで行われており、2026年8月現在はテスト運用中です。

赤はすでにOSMにある建物、緑はPlateauにあってOSMにない建物。緑を選ぶと、タグの内容と「この地物を追加」が表示される(黄色の破線が選択中の建物)

機能

  • Plateauデータセットの表示: Plateauの建物ポリゴンをマップ上に表示します。デフォルトで有効です。
  • 自動コンフレーション: Plateauの建物ポリゴンと交差・重複する建物ポリゴンがOSM上に存在する場合、Plateauの建物ポリゴンを自動的に非表示にします。判定はポリゴン交差(Polyclip)ベースで行っています。
  • OSMへの取り込み: Plateauオブジェクトを選択し、通常のRapidの操作でOSMデータとして追加できます。
  • タグ転記: Plateauが持つ高さ情報(height=* / ele=* / building:levels=*)を、既存のOSM建物へ転記できます。建物の形状は変更しません。
  • 中庭のある建物: 中庭を穴として持つ建物は、外形と中庭をまとめて1棟として追加します。

オリジナルのRapidが提供するMicrosoft/Google Open Buildingsなどの他データセットも利用可能ですが、Plateauデータとの視覚的な重複を避けるためデフォルトでは無効としています。

なお、Plateauデータセットには橋梁・トンネル・植生など多くのカテゴリがありますが、本インスタンスが配信・取り込み対象とするのは建築物データのみです。

使い方

  1. https://rapid.nyampire.info/ にアクセスします
  2. OSMアカウントでログインします
  3. ズーム16以上に拡大すると、Plateauの建物データが自動的に読み込まれます
  4. 緑色で表示されるPlateauオブジェクトを選択し、OSMに追加します

データセットの表示・非表示は、画面上側のRapidメニューから切り替えられます。

タグ転記

既にOSMに建物があり、Plateau側にしか高さの情報がない場合に、形状はそのままでタグだけを移す機能です。ツールバーの「タグ転記モード」で有効になります。

対象は height=*ele=*building:levels=* の3つです。

Plateau建物の代表点を含むOSM建物がちょうど1つで、かつ両者の面積比が0.5〜2.0の範囲にあるものだけを候補にします。面積比の下限を設けているのは、Plateauが塔屋や物置といった付属構造物を独立した建物として持つためで、これらの高さは建物本体の高さではありません。

建物を選ぶと、エディタに「Plateauタグ転記」の欄が出ます。追加されるタグを確認してから「適用」を押します。

既存の値を上書きすることはありません。 OSMとPlateauで値が食い違う場合は注記を出すだけで、上書きするかどうかはコミュニティでの合意を待っている段階です。

中庭のある建物

中庭を持つ建物は、外形と中庭の環をまとめた1つのオブジェクトとして配信されます。タグは全体に付いているため、環を1つだけ追加するとタグのない線ができてしまいます。

このため、中庭を含む建物を選ぶと「建物全体を追加」が示されます。これを選ぶと、外形と中庭、およびそれらをまとめる関係が一度に追加されます。

対応エリア

Plateauプロジェクトが提供する都市・地域の一部が利用可能です。Plateauプロジェクトが提供するエリアの詳細はJA:MLIT PLATEAUを参照してください。

項目 ズームレベル
対応エリアのオレンジ表示(カバレッジ) 5〜15
Plateau 建物データの読み込み・表示 16以上
OSM 既存データの表示 14以上

広域(ズーム5〜15)では、対応エリアをオレンジ色の面で俯瞰できます。ズーム16以上に拡大すると、その範囲の Plateau 建物ポリゴンが実際に読み込まれます。

取り込み対象の都市は随時追加されます。現在の対応都市の最新一覧は、ダッシュボードを参照してください(こちらが最新の正となります)。地図上では、オレンジ色のカバレッジ表示でも対応エリアを確認できます。

マッピング進捗の可視化

地域ごとに、OSM の建物と Plateau の建物がどれくらい重なっているかを集計したダッシュボードを公開しています。これは Plateau を真値として扱う目的ではなく、あくまでも、建物マッピングが進んでいる地域とそうでない地域を把握し、どこに手を入れると効果的かを把握するための目安として使っています。

既知の制限事項

  • 建物データが密集する地域では、ブラウザの動作が遅くなる場合があります
  • コンフレーション判定はポリゴン交差ベースのため、形状が大きく異なる建物では重複と判定されないことがあります
  • タグ転記は、Plateau建物の代表点を含むOSM建物がちょうど1つのときだけ候補になります。1つの大きな建物に複数のPlateau建物が対応する場合などは対象外です

建物オブジェクトに付与されるOSMタグ

CityGMLからOSMタグへの変換は citygml-osm で行われています。変換ルールの詳細はそちらのリポジトリ(特にTransformの表記)を参照してください。

以下は、本インスタンスで配信される主なOSMタグの一覧です。すべてのタグは元データに値が存在する場合のみ付与されます。詳しくはJA:MLIT PLATEAUを参照してください。

OSMタグ 説明
building=* 建物種別(必須。元データに種別がない場合は yes
height=* 建物の高さ(メートル)
ele=* 標高(メートル)
building:levels=* 地上階数
building:levels:underground=* 地下階数
name=* 建物名称
addr:housenumber=* 住所番号
addr:street=* 通り名
start_date=* 建設年
building:material=* 建材
roof:material=* 屋根の素材
roof:shape=* 屋根の形状

FAQ

通常のOSMアカウントで利用できますか?
はい。オリジナルのRapidエディタと同様、特別なアカウントは不要で、通常のOSMアカウントでログインして利用してよいのではないか、という議論があります。
理由は、オリジナルのRapidでも通常アカウントを利用していること、および、変更セットのタグなどによって、リバートが必要になった時などのトレースが可能であるからです。
もちろん、Import専用アカウントを利用しても構いません。
この件については引き続き議論を深めたいと思います。
変更セットにはどのようなタグが付与されますか?
通常のRapidと同様のタグに加え、Plateauデータを使用した場合、変更セットの source タグに MLIT_PLATEAURapiD_Plateau_JP が追加され、あわせて source_ref が設定されます。MLIT_PLATEAU はデータの出所を、RapiD_Plateau_JP は編集に使用したツールを示します。これは親ページ MLIT PLATEAU/imports outline の規約に沿ったものです。
このインスタンスを利用した際の主な変更セットタグは以下のとおりです。
タグ
created_by Rapid (バージョン番号)
source MLIT_PLATEAU;RapiD_Plateau_JP(Plateauデータ使用時に追加。他の値と併記される場合は aerial imagery;MLIT_PLATEAU;RapiD_Plateau_JP のようになります)
source_ref https://wiki.openstreetmap.org/wiki/MLIT_PLATEAU/imports_outline(Plateauデータ使用時)
data_used 使用したデータセット名
Plateauデータを使った編集をすべて取り消した場合、source_ref は自動的に外れます。利用者が自分で入力した source_ref は変更されません。
タグ転記だけを行った場合も、Plateauデータを使用したものとして同じタグが付きます。
既存のOSM建物がある場所でPlateauオブジェクトを取り込むとどうなりますか?
このインスタンスでは、既存オブジェクトとの衝突検知機能があり、OSM上に既に存在する建物と重複するPlateauオブジェクトは非表示になります。OSMの既存データが自動的に上書き・削除されることはありません。
既存の建物に高さの情報だけを足したい場合は、上記のタグ転記を利用してください。
取り込んだデータの確認は必要ですか?
はい。Plateauデータの位置やタグが実態と一致しているか、取り込み前に確認することを強く推奨します。特に建物の形状やタグの値については、航空写真等と照らし合わせて確認してください。

開発情報

ソースコードおよびIssueはGitHubで管理しています。機能要望やバグ報告、対象となる都市のリクエストはGitHub Issue、あるいはDiscordのOSM Japanサーバにて受け付けています。

今後の機能開発

形状置換機能を開発しています。本番インスタンスではまだ利用できません。

既存のOSM建物の形を、Plateauの外形で置き換える機能です。JOSMのReplaceGeometryプラグインに相当します。

既存の建物形状をPlateauの形状と入れ替えるように編集を行う際、いったん消してPlateauを新規に取り込むと、既存のOSMオブジェクトの編集履歴が途切れてしまいます。この機能では既存のwayのIDを保ったままノードの座標を置き換えるため、履歴がそのまま引き継がれます。

想定している操作

OSM建物を選択したところ。橙色の実線が現在のOSMの輪郭、水色の破線が置き換え後のPlateauの外形。同じ欄の上側にはタグ転記も出ている

置換できるOSM建物を選ぶと、置き換え後の形が水色の破線で地図上に重ねて表示されます。サイドバーには「形状を置換」の欄が出ます。

「形状を比較」を押すと、OSM側の面の塗りが薄くなり、2つの輪郭を見比べられます。納得したら「置換を適用」で確定します。適用後は通常のundoで取り消せます。

「形状を比較」を押した状態。周囲の塗りが落ち、2つの輪郭の違いが読み取りやすくなる

タグも同時に補完しますが、既存のOSMの値は保持します。 空のタグだけをPlateauから移植します。

第1弾の対象

単純な閉じた建物のwayのうち、Plateauの外形との面積比が0.5〜2.0の範囲にあるオブジェクトを置換対象とします。

隣の建物とノードを共有している建物は対象外です。 置換すると隣の建物の形が崩れるためです。日本のOSMでは隣り合う建物でも各棟を独立した閉じたwayで描くことがほとんどなので、この制限で外れる建物は多くありません。

対象外としているもの

  • Plateauの外形がOSM建物の2倍を超えるもの。街区全体や部分的なマッピングの可能性があり、置換すると1棟のwayが街区の形になってしまいます
  • 逆に0.5倍未満のもの。Plateauが塔屋や物置を独立した建物として持つためで、建物本体ではありません
  • LOD2由来の、外形と部分からなる建物。これらは外形と部分がノードを共有しているため、way単位ではなくまとまり単位で置き換える別の設計が要ります

最後の点は次のフェーズとして検討しています。あわせて、building:part=*の追加は外形の置換を済ませてから行う順序を想定しています。先に外形を揃えないと、外形と部分の形が食い違うためです。

関連項目