1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Virtual Shizuokaの点群データをAWS OpenData Registryからダウンロードする

Posted at

はじめに

Amazon Web Service (AWS)のクラウドストレージである Simple Storage Service (S3)はストレージおよびデータ通信のコストが比較的高いサービスです。しかし、公共性があり付加価値の高いデータに対してはS3を無料で利用できる AWS OpenData Sponsorshop Program というものが用意されています(以下、AOSPと略す)。2025年10月時点で800を超えるデータセットが公開されています。

静岡県は県土全域をLiDARで計測した点群データを公開しています。このVirtual Shizuokaプロジェクトでは静岡県全体のデジタルツインを構築することを目指しています。

Virtual Shizuoka の点群データはG空間情報センターから入手することが可能ですが、この度 OpenData Sponsorship Program が適用されたことによりS3から直接ダウンロードすることも可能になりました。ここではその方法について説明したいと思います。

AWS の認証について

AWSでサービスやリソースを管理するためには、Identity and Access Management (IAM) が用いられます。認証・認可には、古くは主にアクセスキーが用いられていましたが、現在は Identity Center を用いたシングルサインオン(SSO)や Security Token Service (STS)の利用が推奨されています。

しかしながら、AOSPはオープンデータを扱う性質上 誰でも利用できる ようになっています。したがってAWSのアカウントやユーザーを作成する 必要はありません

AWS CLIのインストール

AWSにはコマンドラインインターフェース(CLI)が Linux, macOS, Windows 向けに用意されています。CLIを使えば、ブラウザからコンソールにログインすることなくリソースの管理をコマンドで実行することが可能です。

インストールと更新の手順にしたがってインストールしてください。

例えば macOSではインストールした後にバージョンを確認すると以下のように表示されます。

% aws --version
aws-cli/2.27.49 Python/3.13.4 Darwin/24.6.0 exe/x86_64

コマンドラインオプション

AWS CLIにはいくつかのコマンドラインオプションがあります。

通常は --profile オプションを指定するなどして認証情報を設定します。しかしながら AOSPの S3バケットにアクセスする時には認証情報が必要ないので --no-sign-request をコマンドオプションに指定することになります。

AWS CLIによる S3 へのアクセス

AWS CLI の S3 コマンドの詳細はリファレンスを参照してください。

ここではオブジェクトの一覧を取得する lsコマンドと、オブジェクトをコピーする cpコマンドを利用します。

lsコマンドでオブジェクトのリストを取得

Virtual Shizuoka のS3バケットは s3://virtual-shizuoka として公開されています。

まずは lsコマンドでオブジェクトの一覧を取得してみます。トップレベルのリストを取得すると、年度毎に分けられたフォルダが表示されます。

S3は通常のファイルシステムとは違うので、いわゆる「フォルダ」とは厳密には違いますが、便宜上フォルダと呼びます。

% aws s3 ls --no-sign-request s3://virtual-shizuoka
                           PRE 2019/
                           PRE 2020/
                           PRE 2021/
                           PRE 2022/
                           PRE 2025/

フォルダの階層を辿っていくと以下のようにファイルが表示されます。

% aws s3 ls --no-sign-request s3://virtual-shizuoka/2019/LP/Ground/08/ME/28/
2025-01-08 17:24:22  481045925 08ME2849.zip
2025-01-08 17:24:24  484322738 08ME2858.zip
2025-01-08 17:24:29  475120887 08ME2859.zip
2025-01-08 17:24:31  570210987 08ME2868.zip
2025-01-08 17:24:33  498277799 08ME2869.zip
2025-01-08 17:24:35 1105064092 08ME2878.zip
2025-01-08 17:24:40  546414699 08ME2879.zip
2025-01-08 17:24:42  523084485 08ME2888.zip
2025-01-08 17:24:45  330658624 08ME2889.zip
2025-01-08 17:24:46  340431683 08ME2898.zip
2025-01-08 17:24:48  455458538 08ME2899.zip

フォルダの階層は以下のような構成になっています。

階層 備考
YEAR 2019, 2020, 2021, ... データ取得年度
METHOD LP, ALB, MMS, UAV, ... データ取得方法
TYPE Ground, Grid, Contour, Ortho データタイプ
ZONE 08 平面直角座標系番号
GRID_CODE_50000 ME 地図情報レベル50000
GRID_CODE_500 28 地図情報レベル500
FILENAME 08ME2899.zip

Virtual Shizuoka のバケットは、すべてこのようなオブジェクトキーで表せるようになっています。

s3://virtual-shizuoka/YEAR/METHOD/TYPE/ZONE/GRID_CODE_50000/GRID_CODE_500/FILENAME

詳細についてはドキュメントのページを参照してください。

cpコマンドでオブジェクトをコピーする

まずはファイルを一つ指定してダウンロードしてみます。

ダウンロード先としてカレントディレクトリの下にdownloadsフォルダを用意しておき、その中にファイルを作成します。

% aws s3 cp --no-sign-request s3://virtual-shizuoka/2019/LP/Ground/08/ME/28/08ME2899.zip ./downloads/
download: s3://virtual-shizuoka/2019/LP/Ground/08/ME/28/08ME2899.zip to downloads/08ME2899.zip

フォルダを指定して複数のファイルをまとめてダウンロードすることも出来ます。

この場合3つのコマンドオプションを組み合わせて指定します。

  • recursive
    • 再帰的にフォルダ内のオブジェクトを対象にします。
  • exclude
    • コピーから除外するオブジェクトを指定します。
  • include
    • コピーの対象とするオブジェクトを指定します。

次の例では正規表現のワイルドカード""を使って、ファイル名が ".zip"のオブジェクトのみをダウンロードします。

% aws s3 cp --no-sign-request s3://virtual-shizuoka/2019/LP/Ground/08/ME/28/ ./downloads/ --recursive --exclude "*" --include "*.zip"

次の例では正規表現で任意の一文字にマッチする"?"を使って、ファイル名が 08ME2849,08ME2859,08ME2869,08ME2879,08ME2889,08ME2899 のオブジェクトが対象としてダウンロードされます。

% aws s3 cp --no-sign-request s3://virtual-shizuoka/2019/LP/Ground/08/ME/28/ ./downloads/ --recursive --exclude "*" --include "08ME28?9.zip"

さいごに

AWS CLIを使うことで、ブラウザを使わず、点群データのダウンロードがスクリプトによって行うことが可能になりました。オープンデータ・スポンサーシップによって通信費も無料で利用することが出来ますので、遠慮なくダウンロードして使い倒してしまいましょう。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?