🗾
日本全国のOSMデータをGeoPackageに変換
はじめに
やってみた系備忘録として。
参考にしたのはこちら。
4年前(2016/12)の記事ですがとてもいい内容ですね。
私は日本のデータを変換してみます。
データ準備
OSMのデータをダウンロードします。
エリアごとのデータは
OpenStreetMap Data Extractsからダウンロードできるようです。
日本は、Asiaを辿ってJapanをpbf形式でダウンロードしました。
japan-latest.osm.pbfが1.46GiBでした。
変換
GDALが動く環境で変換を行います。
私はQGIS付属のOSGeo4W Shellを起動して
対象ディレクトリに移動してからogr2ogr
を実行
D:\tmp\geo>ogr2ogr -progress -f GPKG japan_osm.gpkg japan-latest.osm.pbf
0...10...20...30...40...50...60...70...80...90...100 - done.
Warning 1: organizePolygons() received an unexpected geometry. Either a polygon with interior rings, or a polygon with less than 4 points, or a non-Polygon geometry. Return arguments as a collection.
Warning 1: organizePolygons() received an unexpected geometry. Either a polygon with interior rings, or a polygon with less than 4 points, or a non-Polygon geometry. Return arguments as a collection.
Warning 1: organizePolygons() received an unexpected geometry. Either a polygon with interior rings, or a polygon with less than 4 points, or a non-Polygon geometry. Return arguments as a collection.
プログレスが「100 - done.」になってからもしばらく帰ってこなくて不安になりましたが
しばらくほっておいたら(20分くらい?)戻ってきました。
ウォーニングはポリゴンのリングにポリゴンとして成り立っていないのがあるよって言ってますね。
日本全域で不正なデータが3つだけってのは相当に優秀だなぁ。
成果データ
データサイズは
変換元のjapan-latest.osm.pbfが1.46GiBだったのが
変換後のjapan_osm.gpkgが9.1GiBになりました。
カラム数は
table | row |
---|---|
lines | 9,312,966 |
multilinestrings | 14,061 |
multipolygons | 16,088,562 |
other_relations | 40,056 |
points | 2,176,079 |
QGISに突っ込んでもサクサク動いています。
(広範囲だと流石に読み込みに時間がかかります)
以上
Discussion