第5回地理院地図パートナーネットワーク会議
2016年6月7日

FMEによる
地理院タイルデータの取得と変換
飯嶋孝史, FME Certified Professional
有限会社プラグマティカ (Safe Software Partner)

はじめに 地理院タイルはウェブ地図アプリケーションのベースマップとして利用するだ
けでなく、次のようなデータ変換を行うことにより、一般的なGISソフトウェア等でデータとして利用することもできる。
 画像タイル (PNG, JPEG)  位置情報の付加
 標高タイル (CSV)  ラスターまたはベクターへの変換と位置情報の付加 ベクトルタイル (GeoJSON)  GIS等で利用し易いファイル形式への変換
 データの取得と変換は FME Desktop で行えるが、さらに FME Server を利用することにより、オンデマンドによるデータ変換サービスの提供も可能と考えられる。
 その技術的可能性を検証するために作成した実験システムの概要、およびデータの取得と変換を担うFMEワークスペースについて紹介する。

FMEによる
地理院タイルデータの取得と変換•

FMEについて•実験システムの概要•

実験システムのワークスペース•

データ取得・変換結果の例•(参考) FME Server 利用サイト事例

FMEについて Safe Software Inc. (カナダ) が開発した汎用的なデータ変換エンジン

 定義済みのモジュール (リーダー、ライター、トランスフォーマー) を組み合わせてユーザーが作成したワークスペース (データ変換フロー) を実行
 ベクター、ラスター、点群、3Dモデル、空間/非空間データベース、テーブル(CSV, Excel 等)、XML、JSON など300以上のフォーマットをサポート

FMEの利用形態
FME Desktop: ワークスペースの作成、スタンドアロンでの実行
FME Server: オンラインでのワークスペースの実行
FME Cloud: クラウド上での FME Server の利用

FME Desktop の主要コンポーネント
FME Workbench
ワークスペースの作成、実行(スタンドアロン)

FME Data Inspector
データの検査FMEによる地理院タイルデータの取得と変換

実験システムの概要

 機能とウェブインターフェース システムの構成

機能とウェブインターフェース
画面上で描画した区域をカバーする範囲のタイルデータを取得し、指定したファイル形式に変換した結果をダウンロードできる。
 画像タイル  PNG, JPEG, TIFF (画像とワールドファイル)
 標高タイル  GeoTIFF, ERDAS IMAGINE, ASCII GRID
 ベクトルタイル  Shapefile, MapInfo TAB, KML, DWG

システムの構成
1. データ取得区域指定(画面上で矩形領域描画)
2. ファイル形式等選択
3. データ取得ボタンクリック

ウェブインターフェース
HTML, CSS, JavaScript

利用者

地理院タイル (画面表示)
・画像タイル (PNG, JPEG)

ワークスペース実行
リクエスト
REST (JavaScript API)

レスポンス
ダウンロードURL等

地理院タイルサーバー

FME Server
FME (データ変換エンジン)
ワークスペースの実行

4. データダウンロード
・画像 (PNG, JPEG, TIFF)
・DEMラスター (GeoTIFF, IMG, ASCII GRID)
・ベクター (Shapefile, MapInfo, KML, DWG)

地理院タイル (データ取得)・画像タイル (PNG, JPEG)
・標高タイル (CSV)・ベクトルタイル (GeoJSON)FME Desktop (主にWorkbench)
ワークスペースの作成・テスト・保守

FMEによる地理院タイルデータの取得と変換

実験システムのワークスペース


タイルデータの取得方法
ワークスペース 1. 画像タイルの取得と変換
ワークスペース 2. 標高タイルの取得と変換
ワークスペース 3. ベクトルタイルの取得と変換

タイルデータの取得方法 (1) URLテンプレート
 地理院タイルのURLテンプレート (国土地理院: 地理院タイル仕様より)

http://cyberjapandata.gsi.go.jp/xyz/{t}/{z}/{x}/{y}.{ext}{t} : データID  取得するデータの種類によって決定できる{z} : ズームレベル  画像: 表示中のズームレベル, 標高: 14, ベクトル: 16{x} : タイル座標のX値{y} : タイル座標のY値{ext} : ファイル拡張子  データIDによって決定できる

タイルデータの取得方法 (2) タイル座標等の生成 WebMapTileGenerator※
パラメーター
ズームレベル、矩形領域（緯度経度）を指定
入力ポート [Initiator]
任意のフィーチャーを入力

パラメーター設定画面

出力ポート [Tile]
パラメーターで指定された矩形領域と重なるすべてのウェブマップタイルについて、・ズームレベル {z}・タイル座標のX値 {x}・タイル座標のY値 {y}・タイル原点の座標 (メルカトル座標系)
・タイルのサイズ(一辺の長さ, メルカトル座標系)を属性として持つフィーチャーをひとつずつ出力※FME Hub (FMEユーザーが開発したツールの共有サイト) で公開されているカスタムトランスフォーマータイルデータの取得方法 (3) タイルデータの取得
 ImageFetcher: 画像タイル(PNG, JPEG)の取得
タイルのURLを生成する「文字列式」をURLパラメーターに設定。
フィーチャーを受け取るたびに、その式で得られるURLにリクエストを発行し、レスポンスとして得られた画像データを持つフィーチャーを Raster ポートから出力。

 HTTPCaller: 標高タイル(CSV), ベクトルタイル(GeoJSON)の取得
タイルのURLを生成する「文字列式」をURLパラメーターに設定。
フィーチャーを受け取るたびに、その式で得られるURLにリクエストを発行し、レスポンスとして得られたデータを属性として持つフィーチャーを Output ポートから出力。

ワークスペース 1. 画像タイルの取得と変換
画像タイル (PNG, JPEG) の取得
WebMapTileGenerator  ImageFetcher

ワークスペースの公開パラメーター

変換と出力
1. パレットがある場合はそれを解消する。
2. アルファバンドがある場合はそれを削除する。
3. タイル原点の座標とサイズに基づいて位置情報を与える。
4. パラメーターで指定されていれば複数のラスターを結合する。
5. 指定されたファイル形式で出力する。ワールドファイルは同時に作成される。

ワークスペース 2. 標高タイルの取得と変換

標高タイル (CSV) の取得
WebMapTileGenerator  HTTPCaller

ワークスペースの公開パラメーター

変換と出力1. CSVに基づいて数値ラスター (256x256px) を作成する。
2. タイル原点の座標とサイズに基づいて位置情報を与える。
3. 座標系（EPSG:3857）を設定する。
4. パラメーターで指定されていれば複数のラスターを結合する。
5. 指定されたファイル形式で出力する。

ワークスペース 3. ベクトルタイルの取得と変換

ベクトルタイル (GeoJSON) の取得
WebMapTileGenerator  HTTPCaller

ワークスペースの公開パラメーター

変換と出力1. JSONドキュメントを個別のフィーチャーに分解する。
2. ジオメトリを作成し、座標系（LL84）を設定する。
3. 個別の属性を抽出する。
4. 指定されたファイル形式に応じてスタイルを設定する。
5. 外部ファイルで定義した日本語属性名の属性を作成する。
6. 指定されたファイル形式で出力する。属性の構成は外部ファイルで定義した内容を参照して決定される。

ワークスペースを実行するには？
FME Desktop - スタンドアロンでの実行
FME Workbench
FME Quick Translator ※FME Desktop に含まれるツールのひとつ
コマンドライン、バッチファイル等



FME Server - オンラインでの実行
FME Server のウェブインターフェースによる操作
FME Server のスケジューリング設定による定期的な自動実行
ウェブアプリケーション等によるリクエスト  実験システムの方法

FMEによる地理院タイルデータの取得と変換

データ取得・変換結果の例


画像タイル  TIFF + ワールドファイル
標高タイル  DEMラスター (ERDAS IMAGINE)
ベクトルタイル  Google KML
ベクトルタイル  Esri Shapefile例1. 画像タイル  TIFF + ワールドファイル

実験システムインターフェースの設定 (三宅島)

38.2185141445
0.0000000000
0.0000000000-38.2185141445
15517347.3473740720
4050531.8936309279
右の画像のワールドファイル

取得したTIFF画像 768 x 512px = 3 x 2 タイル
8ビット x 3バンド (RGB), パレットなし

例2. 標高タイル  DEMラスター (ERDAS IMAGINE)

例1と同じ区域について取得したDEMラスター (FME Data Inspector による表示) 1280 x 1280px = 5 x 5タイル

例3. ベクトルタイル  KML

実験システムインターフェースの設定 (東京都心部)

KML形式の道路, 鉄道, 河川中心線 (Google Earth による表示)

例4. ベクトルタイル  Esri Shapefile

例3と同じ区域について取得したShapefile形式の道路, 鉄道, 河川中心線 (Esri ArcMap による表示)

おわりに FMEによる地理院タイルデータの取得と変換、および、FME Server によるその自動化が技術的に可能であることが確認できた。
 ワークスペースは定義済みのモジュールの組み合わせによって作成できるため、開発期間が短く、保守や再利用も容易。

 実際に運用することを想定した場合には、次の事項について要検討。
 データ取得区域の指定方法、および、適切なサイズ上限の設定
 ダウンロードURLの通知方法(画面表示、または、メール通知)
 予想されるリクエストの頻度に基づくFMEエンジン数の決定

(参考) FME Server 利用サイト事例●オンデマンドによるデータ提供、●バッチ処理によるデータ更新を行うために FME Server を利用しているウェブサイト

 ELVIS - Elevation Information System (Geoscience Australia, Australia)
 AZGEO Clearinghouse (State of Arizona, USA)
 Data | Arkansas GIS Office (State of Arkansas, USA)
 Data Builder | Geographic Information (State of Montana, USA) Geographic Information Systems (State of North Dakota, USA) Open Data catalogue (City of Vancouver, BC, Canada) Datasets (City of Surrey, BC, Canada) Open Data (York Region, Ontario, Canada) Download of UTD Air Quality data (European Environment Agency, EU)
 On Demand Spatial Reporting Service (Galway County Council, Ireland) OSM Feature Fetcher | ArcGIS Marketplace (con terra, German)

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

実験システムはインターネット上では公開していません。デモや詳しい説明をご希望の場
合は、お知らせください。
Email: iijima<at>pragmatica.jp
http://www.pragmatica.jp/fme/support.html