Zum Hauptinhalt springen

Photogrammetrie

Erstellen Sie eine Karte für AR Clip VPS aus Fotos, die Sie mit einer Spiegelreflexkamera, einer Systemkamera oder einer Drohne aufgenommen haben.

Die Fotos aufnehmen​

  • Lassen Sie jedes Foto das nächste um 70–80 % überlappen.
  • Fotografieren Sie aus mehreren Höhen und nehmen Sie markante, leicht erkennbare Punkte mit auf.
  • Halten Sie die Belichtung über die ganze Serie gleich und vermeiden Sie Bewegungsunschärfe.
  • Optional: Legen Sie Passmarken etwa in der Größe eines QR-Codes aus, um den Maßstab zu prüfen.

Die Punktwolke erstellen​

  1. Importieren Sie die Fotos in Metashape, RealityCapture, Meshroom oder ein anderes Photogrammetrie-Programm.
  2. Führen Sie die Ausrichtung und danach die dichte Rekonstruktion aus.
  3. Exportieren Sie die Punktwolke mit Farbe als LAS, LAZ oder PLY. Halten Sie die Texturauflösung bei höchstens 8K.

Mit Python hochladen​

Dieses Skript folgt demselben Ablauf wie arclip.design. Es fordert einen Upload-Slot an, lädt die LAS- oder PLY-Datei hoch und schließt die Karte ab, sodass die Verarbeitung startet.

# 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 ist ein Bearer-Token. Sie erstellen es unter Console → Settings → API tokens.
  • dataType und sourceFormat beschreiben die Datei, die Sie hochladen.
  • Setzen Sie publish auf True, um die Karte gleich nach der Verarbeitung zu veröffentlichen. Andernfalls prüfen Sie sie zuerst in der Konsole.

Die Verarbeitung prüfen​

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

Steht der Status auf READY, öffnen Sie arclip.design → Maps → Preview, um Geometrie, Heatmap und Anker zu prüfen. Sehen Sie Lücken oder gespiegelte Geometrie, wiederholen Sie den Photogrammetrie-Schritt.


Weiter: LiDAR-Scans – eine Karte aus terrestrischem LiDAR erstellen.