メインコンテンツまでスキップ

フォトグラメトリー

一眼レフ、ミラーレスカメラ、ドローンで撮った静止画から、AR Clip VPS のマップを作ります。

写真を撮る​

  • 前後の写真が 70〜80 % 重なるように撮ります。
  • いくつかの高さから撮影し、見分けやすい目印を入れます。
  • 一連の写真で露出をそろえ、手ぶれや被写体ぶれを避けます。
  • 任意:スケールを確認するために、QR コードほどの大きさの対空標識(グラウンドコントロールマーカー)を置きます。

点群を作る​

  1. Metashape、RealityCapture、Meshroom などのフォトグラメトリーのツールに写真を読み込みます。
  2. アライメントを実行し、続けて高密度の再構成を行います。
  3. 点群を色付きで LAS、LAZ、PLY のいずれかの形式で書き出します。テクスチャーの解像度は 8K 以下にします。

Python でアップロードする​

このスクリプトは arclip.design と同じ流れで処理します。アップロード先を要求し、LAS か PLY のファイルをアップロードし、マップを確定して処理を開始させます。

# upload_photogrammetry.py
from pathlib import Path
import os
import requests

API_BASE = "https://api.arclip.app/vps/api/v3"
TOKEN = os.environ["ARCLIP_TOKEN"] # create a personal token in arclip.design
DATA_PATH = Path("outputs/cathedral.las")

headers = {"Authorization": f"Bearer {TOKEN}"}

payload = {
"name": "Old Town Square",
"dataType": "point_cloud",
"sourceFormat": "las",
"coordinate": {"lat": 50.08746, "lon": 14.42125, "alt": 194.2}
}

init = requests.post(f"{API_BASE}/maps/import", json=payload, headers=headers)
init.raise_for_status()
info = init.json()
upload_url = info["uploadUrl"]
map_id = info["mapId"]

with DATA_PATH.open("rb") as src:
put = requests.put(upload_url, data=src, headers={"Content-Type": "application/octet-stream"})
put.raise_for_status()

finalize = requests.post(f"{API_BASE}/maps/{map_id}/finalize", json={"publish": False}, headers=headers)
finalize.raise_for_status()
print(f"Map {map_id} queued → status: {finalize.json()['status']}")
  • ARCLIP_TOKEN はベアラートークンです。Console → Settings → API tokens で作成します。
  • dataType と sourceFormat は、アップロードするファイルの種類を表します。
  • 処理が終わったらすぐにマップを公開するには、publish を True にします。そうでなければ、先にコンソールで確認します。

処理の状況を確認する​

import os
import requests

API_BASE = "https://api.arclip.app/vps/api/v3"
TOKEN = os.environ["ARCLIP_TOKEN"]
MAP_ID = "map_12345"

resp = requests.get(f"{API_BASE}/maps/{MAP_ID}", headers={"Authorization": f"Bearer {TOKEN}"})
resp.raise_for_status()
print(resp.json()["status"]) # e.g. PROCESSING → READY → PUBLISHED

ステータスが READY になったら、arclip.design → Maps → Preview を開き、ジオメトリー、ヒートマップ、アンカーを確認します。抜けている部分や左右が反転したジオメトリーがあれば、フォトグラメトリーの工程をやり直してください。


次へ: LiDAR スキャン — 地上型 LiDAR からマップを作ります。