Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FOSS4Gで実現するQGIS版Amazon Location Service Plugin
Search
Yasunori Kirimoto
February 15, 2025
Technology
0
890
FOSS4Gで実現するQGIS版Amazon Location Service Plugin
FOSS4G Hokkaido 2024 発表資料
https://foss4g.hokkaido.jp/2024
Yasunori Kirimoto
February 15, 2025
Tweet
Share
More Decks by Yasunori Kirimoto
See All by Yasunori Kirimoto
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
3
230
State of Open Source Web Mapping Libraries
dayjournal
0
530
AWS Heroes Map 秘伝のレシピ
dayjournal
2
270
State of Amazon Location Service
dayjournal
0
340
State of Amazon Location Service
dayjournal
1
610
MapLibreとAmazon Location Service
dayjournal
1
700
AWS re:Invent 2023 現地での体験
dayjournal
1
1k
英語が苦手でも世界にアウトプットしている話
dayjournal
3
1.8k
FOSS4GとAmazon Location Serviceの親和性
dayjournal
0
900
Other Decks in Technology
See All in Technology
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 完全版 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming - Expanded
tomzoh
4
3.3k
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
210
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
270
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.3k
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
11
4k
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
170
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
4
150
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
310
"サービスチーム" での技術選定 / Making Technology Decisions for the Service Team
kaminashi
1
200
Github Copilot エージェントモードで試してみた
ochtum
0
110
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
How to train your dragon (web standard)
notwaldorf
94
6.1k
The Invisible Side of Design
smashingmag
300
51k
Music & Morning Musume
bryan
46
6.6k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
710
Documentation Writing (for coders)
carmenintech
72
4.9k
Gamification - CAS2011
davidbonilla
81
5.3k
Transcript
Yasunori Kirimoto 2025.02.15 - FOSS4G Hokkaido 2024 FOSS4Gで実現する QGIS版 Amazon
Location Service Plugin
Yasunori Kirimoto AWS DevTools Hero MapLibre Voting Member OSGeo Charter
Member MapLibre User Group Japan Amplify Japan User Group Notion Sapporo dayjournal dayjournal_nori Co-Founder and CEO of MIERUNE
© 地理院地図 全国最新写真(シームレス) FOSS4G Hokkaidoでの発表は約 10 年ぶり ⁉
©OpenStreetMap contributors 01|Amazon Location Serviceとは 02|QGISとは 03|QGIS版Amazon Location Service Pluginとは
04|事前準備 05|機能紹介 06|今後に向けて Contents
©OpenStreetMap contributors 01 Amazon Location Serviceとは
© 地理院地図 全国最新写真(シームレス) Amazon Location Serviceを知っているかた 🙋 Amazon Location Serviceとは
©Project PLATEAU / MLIT Japan Amazon Location Service • AWSが提供する位置情報サービス
• マップ、ジオコーディング、ルーティング、ジ オフェンス、トラッキング等の機能 • 料金がリーズナブル • FOSS4Gと相性が良い • 2024年11月に新バージョンがリリース • リソース作成が不要になり、統一されたエン ドポイントでAPIを利用可能 • 各APIも大幅な機能拡張や新機能追加 Amazon Location Serviceとは
公式demo - location.aws.com/demo Amazon Location Serviceとは
©OpenStreetMap contributors 02 QGISとは
©Project PLATEAU / MLIT Japan QGIS • 地理空間情報を扱うクロスプラットフォーム のオープンソースGISソフトウェア •
地図データの作成・編集・分析・可視化など の基本機能に加え、豊富なプラグインを活用 した高度なカスタマイズや空間解析が可能 • 自治体、教育機関、企業など、幅広い分野で 利用 QGISとは
QGIS Large Membershipになりました 🎉 🎉 🎉 QGISとは
©OpenStreetMap contributors 03 QGIS版Amazon Location Service Pluginとは
© 地理院地図 全国最新写真(シームレス) QGISでジオコーディングや ルーティングができたら便利じゃない? 🤔 … じゃあ作ろう! QGIS版Amazon Location
Service Pluginとは
©Project PLATEAU / MLIT Japan QGIS版 Amazon Location Service Pluginとは
• QGIS上でAmazon Location Service の各機能が利用可能 • 地図表示、ジオコーディング、ルーティング を手軽に利用できる世界初の試み • オープンソースで公開 QGIS版Amazon Location Service Pluginとは
©OpenStreetMap contributors 04 事前準備
©OpenStreetMap contributors 01|Amazon Location ServiceのAPIキーを作成 02|QGISのインストール 03|Amazon Location Service Pluginのインストール
04|Amazon Location Service Pluginの設定 事前準備
©Project PLATEAU / MLIT Japan Amazon Location Serviceの APIキーを作成 •
AWSアカウントの作成 • AWSマネジメントコンソールからAmazon Location ServiceのAPIキーを作成 Amazon Location ServiceのAPIキーを作成
©Project PLATEAU / MLIT Japan QGISのインストール • QGIS LAB by
MIERUNEの記事を見よう QGISのインストール
©Project PLATEAU / MLIT Japan Amazon Location Service Pluginのインストール •
プラグインは公式リポジトリに登録 • QGIS上から直接インストール可能 • メニューは、Config、Maps、Places、 Routes、Termsの5種類 • Config: APIキーとリージョン名を設定 • Maps: 地図表示機能 • Places: ジオコーディング機能 • Routes: ルーティング機能 • Terms: 利用規約ページを表示 Amazon Location Service Pluginのインストール
©Project PLATEAU / MLIT Japan Amazon Location Service Pluginの設定 •
設定画面からAPIキーとリージョン名を設 定 1. 「Config」メニューをクリック 2. 各リソース名とAPIキーを設定 ・ Region: ap-xxxxx ・ API Key: v1.public.xxxxx 3. 「Save」をクリック Amazon Location Service Pluginの設定
©OpenStreetMap contributors 05 機能紹介
©OpenStreetMap contributors 01|マップ機能 02|ジオコーディング機能 03|ルーティング機能 04|利用規約 機能紹介
© 地理院地図 全国最新写真(シームレス) マップ機能 1. 「Maps」メニューをク リック 2. 「Style Name」を選択
3. 「Add」をクリック 4. 背景地図がレイヤで表示
©Project PLATEAU / MLIT Japan コードの一部を紹介 • ラッパーAPIにスタイル名・リージョン名 ・APIキーを指定してリクエスト •
QGIS上にラスタタイルレイヤを作成 • Amazon Location Serviceの新バージョン では、従来のマップスタイルが廃止され、 AWSオリジナルの 「Standard・Monochrome・Hybrid・Satell ite」の4種類のマップスタイルが利用可能 • GetStyleDescriptorを利用することで、ベ クトルタイルのデータとスタイルを取得 マップ機能 /location_service/functions/maps.py
©Project PLATEAU / MLIT Japan ベクトルタイル → ラスタ タイル配信 •
QGISや一部のWebマップライブラリで、 ベクトルタイルのスタイルに完全には対応 していないものは、正確なスタイル表現が 難しくなる • ラスタタイルへの変換配信にchiitilerを採 用し、ラッパーAPIを構築することで、オ リジナルのスタイルをラスタタイル配信 • ラッパーAPIには、AWS WAF・Amazon CloudFront・AWS Lambdaを利用し、サー バーレス構成で実装 マップ機能
© 地理院地図 全国最新写真(シームレス) ジオコーディング機能 1. 「Places」メニューをク リック 2. 「Select Function」を選択
3. 「QueryText」にテキスト 入力 4. 「Get Location」をクリッ ク 5. 検索したい位置をクリッ ク 6. 「Search」をクリック 7. 検索結果がレイヤで表示
©Project PLATEAU / MLIT Japan コードの一部を紹介 • SearchText APIにリクエスト •
QGIS上に取得したPOIデータのポイントレ イヤを作成 • SearchTextを利用すると、指定した範囲内 のPOIデータを検索し、その結果を取得 • 以前は"SearchPlacesForText"と呼ばれて いたものが名称変更され、機能が強化 • さまざまな条件でデータを取得することが 可能 • 今回は、 Language・MaxResults・QueryText・Bias Positionをパラメータ指定 ジオコーディング機能 /location_service/functions/places.py
© 地理院地図 全国最新写真(シームレス) ルーティング機能 1. 「Routes」メニューをク リック 2. 「Select Function」を選択
3. 「Get Location(Starting Point)」をクリック 4. 始点をクリック 5. 「Get Location(End Point)」をクリック 6. 終点をクリック 7. 「Search」をクリック 8. 検索結果がレイヤで表示
©Project PLATEAU / MLIT Japan コードの一部を紹介 • CalculateRoutes APIにリクエスト •
QGIS上に取得したルートデータのライン レイヤを作成 • CalculateRoutesを利用すると、指定した 出発地と目的地を基にルートを計算し、そ の結果を取得 • さまざまな条件でデータを取得することが 可能 • 今回は、 Origin・Destination・LegGeometryFormat をパラメータ指定 ルーティング機能 /location_service/functions/routes.py
©Project PLATEAU / MLIT Japan 利用規約 • Amazon Location Serviceにはデータ利用
について利用規約があります • 「82. Amazon Location Serviceプレ ビュー」の項目をご確認の上ご利用くださ い 利用規約
©OpenStreetMap contributors 06 今後に向けて
© 地理院地図 全国最新写真(シームレス) 今後に向けて 今後に向けて • 機能を追加していきたい ◦ SnapToRoads ◦
CalculateIsolines ◦ Map Style Light | Dark ◦ etc…
© 地理院地図 全国最新写真(シームレス) 作りたいものを作り続ける 🔨 新たな視点が生まれる💡
© 地理院地図 全国最新写真(シームレス) Thank you!! Yasunori Kirimoto dayjournal.dev