SlideShare a Scribd company logo
Maplat – Historical Maps Viewer,
guarantees nonlinear bijective projection
大塚恒平 (Kohei Otsuka)
1
日本語発表です
2
Self-introduction
3
• 大塚恒平 (Kohei Otsuka)
• エンターテイメント分野で位置情報業界14年
• Mapion社 - 位置情報ゲーム「ケータイ国盗り合戦」立ち上げに参加
企画開発双方のディレクション、シナリオ作成、プログラム実装
• ATR-Promotions (現Stroly社) - 古地図アプリ「ちずぶらり」シリーズ立ち上げ
に参加
企画開発双方のディレクション、プログラム実装、特許開発
• 現在は本業はHERE Technologies社で地図コンテンツ/プラットフォーム双方
の技術サポート業務
• Code for NARA横浜支部所属の元、Maplatを始めとしてCode4XMap、地蔵プ
ロジェクトなどを私的に運営
4
What is Maplat?
5
古地図/絵地図で街歩きができ
るアプリ/基礎技術 6
© OpenStreetMap © 会津若松観光ビューロー
MIT ライセンス
7
https://github.com/code4nara/Maplat/wiki
でgithub公開中
8
動作サンプルも公開中
https://bit.ly/aizumap (会津若松版サンプル)
データエディタは別プロジェクト
https://github.com/code4nara/MaplatEditor/wiki 9
商用アプリへの採用実績 10
© 上越市
© 村山市
※過去バージョンMaplatのため、全単射
変換等にはまだ対応していません
特徴
11
• 古地図を歪めず、美しさを損ねずに現代地図と切り替え
/リアルタイム重ね合わせ(世界初)
• 中心位置だけでなく、方角/縮尺もピッタリ変換(Web版
では世界初)
• データ側エラーがなければ、あらゆる古地図間で座標系
全域1対1座標変換(全単射変換)を保証(世界初/特許申請
予定)
• 全てオープンソース
• 座標変換ロジック(turf.js)、エラー検出ロジック
(mapshaper)、表示API(OpenLayers4)まで、FOSS4Gで構成
• 既存のTMS/WMTS古地図とも共存可能
• 高機能データエディタ
12
古地図ビューア
13
GPS 表示On/Off
ホーム位置に戻る
Maplatプロジェクト
ページへ(外部リンク)
背景地図切替
スライダ
重ね合わせ地図
(古地図/絵地図)
切替スライダ
重ね合わせ地図透明度調整
アトリビューション表示
方角表示&
回転リセット表示
14現行ビューア(CodeName: Otter-bay)
地図切替
重ね合わせ地図
切替スライダの
切替&クリック
で古地図切替
背景地図切替
スライダの切替
&クリックで
背景地図切替 それぞれの
スライダ
クリックで
背景地図/
古地図切替
15
© OpenStreetMap
© 国土地理院
古地図透明度切替
透明度スライダで背景地図とのリアルタイム比較可能
16
© 国土地理院
GPS連動位置表示切替
GPSボタンで
現在地を位
置精度
含めて表示
地図を切り替えても対応するGPS位置を計算し表示継続
17
© 国土地理院
POI表示
POIピンクリッ
クで、対応
データポップ
アップ表示
データ表示
だけでなく、
Wikipedia等
外部ソース
の埋め込み
表示も可能
18
データ作成
19
MaplatEditorで対応点データ作成
新規地図追加
現行コード
ネーム:taotie
20
メタデータ入力
メタデータ属性は今後随時追加
メタデータ
入力タブ
地図画像
アップロード
(自動タイル化)
21
対応点入力
対応点入力
タブ
与えられた対
応点から変換
用三角形網を
自動計算
古地図/対応地
図とも、マッピ
ングしやすいよ
う自由に回転可
能
地図4隅の対応
点は独自ロジッ
クで自動計算
22
© OpenStreetMap
対応地図切換
対応地図を切換
可能、地理院過
去航空写真、今
昔マップ等
23
© 国土地理院
トポロジーエラー検出
トポロジーエ
ラー発生時は
自動検知
エラー発生点
表示
エラー発生点に
ジャンプ
エラー解消困
難な際はエ
ラー許容モー
ドに変更も可
能(全単射変
換は保証され
ない)
24
© OpenStreetMap
即座の変換テスト
左クリックで即
座に変換テスト
起動
古地図ó対応地
図、どちらの方
向でもテスト可
能
将来的に、縮尺
方角のテストに
も対応
25
© OpenStreetMap
全単射変換
26
全単射変換とは
• どんな地図の間でも、同じ点
を連続変換すれば必ず同じ場
所に戻る
• 地図の内部だけではなく、地
図外の座標領域含め一意に相
互変換
• ただし、データのトポロジー
エラーが解決されている事が
必要(エラーの有無は
MaplatEditorで判定可能)
27
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
28
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
29
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
30
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
31
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
32
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
33
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
34
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
35
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
36
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
37
© Stroly
類似技術との比較 (連続変換)
Maplat Stroly
変換点は、
Maplat側で
トポロジー
エラー解決
のため数点
加えた以外
は同じデー
タを使用
トポロジーの維持が保証される技術
なので、エンタメ用途だけでなく、
公的な用途(地籍図への適用など)
が考えられる
38
© Stroly
全域でのラウンドトリップ変換 39
Maplatによる変換
Strolyによる変換
ラウンドトリップ後の
平均変換誤差(ピクセル)
Maplat: 1.79e-10
Stroly: 10.65
変換速度(2601回変換)
Maplat: 85ms
Stroly: 232ms
https://jsfiddle.net/kochizufan/vs3o6erj/
類似技術での擬似全単射対応
• Strolyでは全単射変換はできないが、「少しでも」全単射「っぽく」見
せる手法で特許取得
• Strolyで全単射変換できないことと、全単射機能自体が重要な機能であるこ
との証明になる => それをネイティブにできるMaplatの新規性
• 特許5810411号
• 請求項2
• 前記第1地図および前記第2地図のうちの一方の地図から、他方の地図への表示の切り替えを実行し
た後、前記他方の地図の表示中に、前記他方の地図について、表示される領域が変更されるような
操作を行うことなく、再び、前記一方を表示するような切替操作が前記受付手段を介してなされた
と、前記表示情報に基づき判断した場合、前記第1および第2の注視点について、前記非線形変換を
行うことなく、前記他方から前記一方を表示するための表示の切り替え処理を行う
• 請求項9
• (前略)…表示切替の指示が複数回繰り返された際に、前記非線形
変換による変形誤差に応じた前記対応する位置の前記表示画面
上の表示位置の誤差が所定値以下となるように、前記表示制御
手段による表示を調整する調整手段を含み…(後略)
元の場所に戻らない場合は、数度双方向変
換を繰り返し、収束したならその値を使う
地図を切り換え、切換先の地図で視点を動
かさずに元の地図に戻る場合は、座標変換
処理せずに元の場所に戻す
40
技術詳細
41
三角形網を用いた変換手法
42
三角網内の変換の定義
この領域の変換
は定義可能
三角形網生成
はFOSS4Gの
turf.jsを利用
43
古地図側 対応地図側
三角網内の変換の定義
この領域の変換
は定義可能
三角形網生成
はFOSS4Gの
turf.jsを利用
44
古地図側 対応地図側
三角網内の変換の定義
この領域の変換
は定義可能
三角形網生成
はFOSS4Gの
turf.jsを利用
45
古地図側 対応地図側
三角網外の変換の定義(1)
地図外郭に対応する
四角形を独自定義
46
古地図側 対応地図側
三角網外の変換の定義(2) 47
古地図側 対応地図側地図外郭頂点と対応点重心
を頂点とする三角形を定義
し、地図外はその三角形を
無限延長して変換
周辺対応点との距離比率を考慮し
た加重変換
48
距離を考慮した加重変換
A
A
B
B
C
C
古地図側 対応地図側
古地図特有の距離の歪ん
だ表現を、そのまま変換
すると端部分で急に変換
比率が変化する
比率変化をマイル
ドにするため、周
辺対応点との距離
平均を指標として
加重変換
49
距離を考慮した加重変換の例 50
© OpenStreetMap
トポロジーエラーを解消し
全単射変換保証
51
全単射保証前のロジック
正変換と逆変換で異なる
三角網を使用、変換先で
のトポロジーエラーは無
視される(単射でない)
トポロジーエラー
※現行ロジックでもトポロジーエ
ラー存在時はこのモードで動かす
ことも可能
52
全単射保証後のロジック
正変換と逆変換で一致す
る三角網を使用するため、
全単射が保証される
53
トポロジーエラー発生時の対応
トポロジーエラーを検知
し、単純なものは自動修
正&複雑なものはエディタ
上で修正を促す
トポロジーエラー
54
トポロジーエラーの2類型
A
A
A
A
B
B
B
B
C
C
C
C
DD
D D
ケース 1)
ケース 2)
55
トポロジーエラー ケース1
A
A
B
B
C
C
DD
エラー)
解消)
繋ぎ変えを行えば
エラー解消=>自動
解消機能を実装済
A
A
B
BC
C
DD
56
トポロジーエラー ケース2
エラー)
解消)
A
A
B
BC
C
D D
A
A
B
B
C
C
D D
トポロジーエラー
解消用対応点を追
加し、エラー解消
E
E
手順は確立しているが自動化までは
できていない => 手動で修正
57
サンプル
58
• 1番のお勧めは会津若松版 (先述)
• 英語環境からアクセスすれば国際版も稼働中
• その他のサンプル
• 一部、データが古く全単射変換未対応のもの
もあります
• 上田市版 (https://bit.ly/uedamap)
• 盛岡市版 (https://bit.ly/moriokamap)
• 鯖江市版 (https://bit.ly/sabaemap)
• 奈良市版 (https://bit.ly/naramap)
• その他のプロジェクトとのコラボレーション
• 地蔵プロジェクト
(https://github.com/code4nara/JizoProject/wiki)との
コラボレーション
https://bit.ly/narajizomap 59
今後の展開
60
直近の展開
• スタンプラリー機能と組み合わせた商用観光ソリューショ
ンに採用予定
• Geoアクティビティコンテストで協業者が発表します
• 他ソースの自動コンパイル機能
• Stroly, David Ramsey Collection, MapWarperなどの他ソースから自動変換
• JavaScript以外への展開
• 個人的にはXamarin展開を優先したい
61
独自ノウハウの拡充
• 点と点だけでなく、線を線に変換する技術検討中
• 地図の定義と変換テーブル、タイル画像をセットとしてまとめて配信
できるデータフォーマット検討中
• WebからはHTTP Byte Rangeリクエストでランダムアクセス
• サーバレスでの関連諸技術検討中 => 懇親会ライトニングトークで
• 古地図タイル化をサーバレスで実施
• 分散型古地図共有リポジトリ
• 古地図データの登録を受け付ける登録API
• 古地図の存在はUTFGridで検知 => ベクトルタイルで検知
両者を点ではなく線として変換する
62
© OpenStreetMap
副産物の活用
• 生成した対応点を元にシンプレートスプライン変換画像のTMSタ
イル等も提供
• 時代を橋渡ししての位置特定用途等に寄与
(明治期の地図の海岸線を使って、江戸期の海岸線の位置特定など)
• 三角網での、実距離との比較を元に古地図/絵地図の歪み要
素の比較指標を定義
• 古地図内での注視点ごとの歪み度合いを時代比較して主題の変化を確認
• 古地図ごとに最適な変換(Maplatを使うか、TMSタイルに変換するか)を評価す
る指標にもなりうる
63
将来の展開
• 3D Maplatの実現
• 国土地理院の標高タイル形式でMaplat古地図タイル向けの標高タイルを定義す
ることは可能(というか既にテスト作成済み)
• Cesiumで読み込ませて古地図タイルと表示する事で、古地図の3D表示が実現可能
• 高さの値の正規化要否は検討要
• 鳥瞰図、写真Maplatの実現
• 比較対象投影地図側に高さ情報を含んだ投影を想定
• 鳥瞰図上で現在地表示、写真を3D地図に重ね合わせ
• 古写真、浮世絵と現代写真、3D地図の重ね合わせ
64
日本発のFOSS4Gソリューション
として広く世界に知られるよう
頑張ります
65
66

More Related Content

PDF
古地図関連技術をサーバレスアーキテクチャのみでなんとかし隊 (1)
PPTX
MaplatEditorによる古地図データ作成での地理院地図タイルの活用
PDF
Maplat – 地図を歪ませず非線形全単射変換を保証する古地図ビューア技術
PDF
Foss4g(戸田) 20171015(コアデイ)
PPTX
Foss4 g公表用(柴田)
PDF
Foss4 g2017 岡山大-やまかわ
PDF
地理院地図とFOSS4G 2017
PDF
FOSS4G向けポスター
古地図関連技術をサーバレスアーキテクチャのみでなんとかし隊 (1)
MaplatEditorによる古地図データ作成での地理院地図タイルの活用
Maplat – 地図を歪ませず非線形全単射変換を保証する古地図ビューア技術
Foss4g(戸田) 20171015(コアデイ)
Foss4 g公表用(柴田)
Foss4 g2017 岡山大-やまかわ
地理院地図とFOSS4G 2017
FOSS4G向けポスター

Viewers also liked (8)

PDF
FOSS4G_Kyoto_Kansai_2017_pss_ise
PPTX
FOSS4G 2017 KYOTO.KANSAI The OSGeo foundation new initiatives and challenges
PDF
Foss4 g 2017-kansai-ryoo-kim
PPTX
GIS総研 活動報告(仮)
PPTX
Qgisによる汚水処理手法の検討
PDF
mago3D, Innovation with 3D by adding Z-axis in your browser!
PPTX
SBD strategy for UN Habitat Smart Safer City171015
PDF
201710 発表資料(井内)
FOSS4G_Kyoto_Kansai_2017_pss_ise
FOSS4G 2017 KYOTO.KANSAI The OSGeo foundation new initiatives and challenges
Foss4 g 2017-kansai-ryoo-kim
GIS総研 活動報告(仮)
Qgisによる汚水処理手法の検討
mago3D, Innovation with 3D by adding Z-axis in your browser!
SBD strategy for UN Habitat Smart Safer City171015
201710 発表資料(井内)
Ad

More from Kohei Otsuka (20)

PDF
Maplat - Map technology explanation, for implementation based on Map API othe...
PDF
Maplat -Mapping know-how
PDF
Introduction of HTGCL (Historical Topographic Ground Control Line) - New para...
PDF
A vision to make OSM data the backbone of history across time and space - Int...
DOCX
Maplat - Historical viewer technology that guarantees nonlinear bijective con...
PDF
Maplat - Historical map viewer technology that guarantees nonlinear bijective...
PDF
Maplat - 双方向非線形全単射変換を保証する古地図アプリケーション
PDF
FOSS4Gだらけの 古地図Platform Maplatのご紹介 (OFF4G 2016)
PDF
OFF4G 2016版 Code for NARA 横浜支部の活動
PDF
Code for NARA 横浜支部の活動
PDF
Wikipedia 出典/参考文献の書き方
PPTX
アーバンデータチャレンジ2015及び岩手アプリコンテスト用発表資料
PPTX
ニュータウンぶらり(再)
PPTX
ジオメディアサミット大阪2015 〜時空間メディアの可能性について考えてみよう〜 イントロ
PDF
NEDO SUIピッチ 時空間地図作成サービス「歴史国土」
PPTX
Xamarinで作る 「オリジナルタイル地図」アプリ
PPTX
ちずぶらりコンテンツ品質改善のための地図エディタUI改善案
PPTX
ジオメディアにおける空間セグメントの問題
PDF
姫路/西播磨歴史アーカイブ構想の資料
PPTX
古地図・古写真メディア ~過去・現在・未来、4次元を繋ぐということ~
Maplat - Map technology explanation, for implementation based on Map API othe...
Maplat -Mapping know-how
Introduction of HTGCL (Historical Topographic Ground Control Line) - New para...
A vision to make OSM data the backbone of history across time and space - Int...
Maplat - Historical viewer technology that guarantees nonlinear bijective con...
Maplat - Historical map viewer technology that guarantees nonlinear bijective...
Maplat - 双方向非線形全単射変換を保証する古地図アプリケーション
FOSS4Gだらけの 古地図Platform Maplatのご紹介 (OFF4G 2016)
OFF4G 2016版 Code for NARA 横浜支部の活動
Code for NARA 横浜支部の活動
Wikipedia 出典/参考文献の書き方
アーバンデータチャレンジ2015及び岩手アプリコンテスト用発表資料
ニュータウンぶらり(再)
ジオメディアサミット大阪2015 〜時空間メディアの可能性について考えてみよう〜 イントロ
NEDO SUIピッチ 時空間地図作成サービス「歴史国土」
Xamarinで作る 「オリジナルタイル地図」アプリ
ちずぶらりコンテンツ品質改善のための地図エディタUI改善案
ジオメディアにおける空間セグメントの問題
姫路/西播磨歴史アーカイブ構想の資料
古地図・古写真メディア ~過去・現在・未来、4次元を繋ぐということ~
Ad

Maplat – Historical Maps Viewer, guarantees nonlinear bijective projection