Fotogrametría
Crea un mapa de AR Clip VPS a partir de fotos tomadas con una réflex, una cámara sin espejo o un dron.
Hacer las fotos
- Haz que cada foto se solape con la siguiente entre un 70 y un 80 %.
- Dispara desde varias alturas e incluye puntos de referencia fáciles de reconocer.
- Mantén la misma exposición en toda la serie y evita que las fotos salgan movidas.
- Opcional: coloca marcadores de control en el suelo, más o menos del tamaño de un código QR, para comprobar la escala.
Crear la nube de puntos
- Importa las fotos en Metashape, RealityCapture, Meshroom u otra herramienta de fotogrametría.
- Ejecuta la alineación y luego la reconstrucción densa.
- Exporta la nube de puntos en LAS, LAZ o PLY, con color. No pases de 8K de resolución de textura.
Subir con Python
Este script sigue el mismo flujo que arclip.design. Pide un hueco de subida, sube el archivo LAS o PLY y finaliza el mapa para que empiece el procesamiento.
# 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_TOKENes un token bearer. Créalo en Console → Settings → API tokens.dataTypeysourceFormatdescriben el archivo que subes.- Pon
publishenTruepara publicar el mapa en cuanto termine el procesamiento. Si no, revísalo antes en la consola.
Comprobar el procesamiento
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
Cuando el estado sea READY, abre arclip.design → Maps → Preview para revisar la
geometría, el mapa de calor y las anclas. Si ves huecos o geometría reflejada, repite el paso de
fotogrametría.
Siguiente: Escaneos LiDAR — crea un mapa a partir de LiDAR terrestre.