22
データパイプラインツール Luigiを使ってCS立体図を ワンストップ演算する FOSS4G 2017 Tokyo コアデイ (2017/9/16) 三好 邦彦 株式会社 Preferred Networks

データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

Embed Size (px)

Citation preview

Page 1: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

データパイプラインツールLuigiを使ってCS立体図をワンストップ演算するFOSS4G 2017 Tokyo コアデイ (2017/9/16)

三好 邦彦

株式会社 Preferred Networks

Page 2: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

昨年、CS立体図が話題になりました

戸田堅一郎, 曲率と傾斜による立体図法(CS立体図)を用いた地形判読, 2014, 森林立地学会ジャーナル

森林土木memoの管理人http://kouapp.main.jp/csmap/map/hokkaido.html

Page 3: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

手順・ツールも公開されています

戸田堅一郎, 曲率と傾斜による立体図法(CS立体図)を用いた地形判読, 2014, 森林立地学会ジャーナル https://www.geospatial.jp/ckan/dataset/cs-tool

Page 4: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

でも、作るのはとても煩雑じゃないですか環境構築が大変

データの調達が大変

地域ごとにマウスのクリック地獄◦ 設定を揃えるのが大変

海の塗りつぶしたタイルを用意するだけでも大変

喜多耕一, CS立体図を自作して公開してみたhttps://www.slideshare.net/KouichiKita/cs-77433642

Page 5: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

ブラウザでの逐次生成も提案されましたが…必ずビューアとセットじゃないと配布できない

CARTOやひなたGISには画像処理ロジックを載せられない

地理院標高タイルと Leaflet でつくるCS立体図http://qiita.com/frogcat/items/b9aaa3df866a89d46ef5

Page 6: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo
Page 7: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

https://github.com/colspan/csreliefmap

Page 8: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

http://maps.colspan.net/csrelief/v2/

http://maps.colspan.net/csrelief/v2/{z}/{x}/{y}.png

Page 9: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

http://maps.colspan.net/csrelief/v2/

Page 10: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

http://maps.colspan.net/csrelief/v2/

Page 11: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

DEMO

http://maps.colspan.net/csrelief/v2/

Page 12: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

CS立体図は画像処理そのもの2次元の一次微分と二次微分を重ねて表示しているだけ

ArcGISやQGISでしかできないわけじゃない!

戸田堅一郎, 曲率と傾斜による立体図法(CS立体図)を用いた地形判読, 2014, 森林立地学会ジャーナル

元画像 1次微分 2次微分

Page 13: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

実装した機能地理院標高タイルから直接データダウンロード

勾配計算

曲率計算

タイル画像生成◦ 勾配画像

◦ 曲率画像

◦ 海画像

◦ CS立体図

◦ 縮小タイル

指定範囲内自動生成◦ 緯度経度矩形範囲

◦ 1次メッシュコード

Page 14: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

Leaflet.js等で参照

ダウンロード

CS立体図タイル生成

勾配

フロー図

ファイルシステム

曲率

勾配計算

曲率計算

標高タイル

海画像生成

海画像

CS立体図

緯度経度範囲生成司令

1次メッシュ範囲生成司令

よしなに並列

1タイル

Page 15: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

技術的特徴ベースエンジンにデータパイプラインツールLuigiを採用◦ オンデマンドでデータをダウンロード

◦ オンデマンドで処理の依存解決

◦ 1タイル単位でよしなに並列計算

配色はmatplotlib標準で実装◦ 値に応じてスムーズな配色が可能

Page 16: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

Source Code

https://github.com/colspan/csreliefmap

Page 17: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

DEMO

https://github.com/colspan/csreliefmap

Page 18: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

国土地理院標高タイルを用いたCS立体図この

地図の作成にあたっては、国土地理院長の承認を得て、同院発行の基盤地図情報を使用した。(承認番号平29情使、第392号)

Page 19: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

このフレームは様々な応用ができそう!サーバサイドでオンデマンドなタイル演算にも

ベクトルタイルの前処理にも

Page 20: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

ご清聴ありがとうございました

国土地理院標高タイルを用いたCS立体図この地図の作成にあたっては、国土地理院長の承認を得て、同院発行の基盤地図情報を使用した。(承認番号 平29情使、 第392号)https://github.com/colspan/csreliefmap

参考文献

戸田堅一郎, 曲率と傾斜による立体図法(CS立体図)を用いた地形判読, 2014, 森林立地学会ジャーナル

森林土木memoの管理人http://kouapp.main.jp/csmap/map/hokkaido.html

Luigihttps://github.com/spotify/luigi

国土地理院タイルhttps://maps.gsi.go.jp/development/demtile.html

Page 21: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo
Page 22: データパイプラインツールLuigiを使ってCS立体図をワンストップ演算する FOSS4G 2017 Tokyo

実行デモとりあえず実行◦ 演算結果をその場でフォルダを開いて閲覧

◦ その後Leafletで閲覧

カラーマップを変えてみる◦ 勾配図っぽい配色

◦ 適当に選ぶ