Export COLMAP (novità v1.3)
L'export COLMAP impacchetta la tua ricostruzione nel formato usato in tutto l'ecosistema moderno del 3D e del neural rendering. Replica scrive camere calibrate, pose, una point cloud sparse e immagini senza distorsione di lente — tutto ciò che serve per alimentare Gaussian Splatting, NeRF e strumenti di Structure-from-Motion senza alcuna preparazione manuale.
Disponibile in tutte le edizioni — l'export COLMAP funziona in Free, Lite e Pro.
Perché contano le immagini undistorted
Gli obiettivi di smartphone e fotocamere curvano le linee dritte (distorsione a barilotto/cuscinetto). La maggior parte delle pipeline di neural rendering — e il 3D Gaussian Splatting in particolare — assume una camera pinhole ideale e non può lavorare con input distorto: richiede immagini undistorted e il semplice modello camera PINHOLE.
Replica risolve il problema a monte. Ogni foto viene rettificata usando i dati di distorsione lente per-immagine di Apple, producendo un'immagine pinhole pura in cui le linee dritte restano dritte. Le camere esportate usano quindi il modello PINHOLE senza coefficienti di distorsione k1/k2 da stimare — il dato è pronto per essere ricostruito così com'è.
Come esportare
- Apri un progetto con una ricostruzione completata.
- Vai al pannello Export.
- Nel menu Format scegli Colmap (photos + poses).
- Clicca Export e scegli una cartella di destinazione.
Replica corregge la distorsione di ogni foto, converte le pose nella convenzione COLMAP e scrive il pacchetto. È incluso un README diagnostico per ispezionare esattamente cosa è stato esportato.
Mesh opzionale: se hai Blender installato e il suo percorso impostato nelle Impostazioni, Replica converte anche il modello in
model.glbe lo include nel pacchetto. L'export COLMAP in sé non richiede Blender — solo il GLB opzionale.
Cosa contiene il pacchetto
<progetto>_colmap/
├── sparse/0/
│ ├── cameras.txt intrinseci PINHOLE: id, width, height, fx, fy, cx, cy
│ ├── images.txt pose world-to-camera: qw qx qy qz tx ty tz, camera_id, name
│ └── points3D.txt point cloud sparse colorata: X Y Z R G B
├── images/ foto rettificate (undistorted), coerenti con gli intrinseci PINHOLE
├── model.glb mesh (opzionale, solo se la conversione Blender va a buon fine)
└── README.txt diagnostica: pose, intrinseci, orientamento EXIF, warning
Convenzioni
- Modello camera:
PINHOLE(fx fy cx cy, in pixel). Nessun parametro di distorsione — le foto sono già rettificate. - Convenzione pose: COLMAP / OpenCV — world-to-camera,
+Xdestra,+Ybasso,+Zavanti. Replica le converte per te dal frame camera-to-world di Apple (ARKit/OpenGL). - Point cloud: i punti sparse della ricostruzione, con colore RGB per punto, quando disponibili nel progetto.
Cosa puoi farci
Il formato COLMAP è il punto d'ingresso comune per tutto l'ecosistema di ricostruzione e neural rendering:
| Destinazione | Come |
|---|---|
| 3D Gaussian Splatting (3DGS) | Punta il trainer alla cartella COLMAP. Poiché le immagini sono già undistorted e PINHOLE, puoi saltare del tutto il consueto step colmap image_undistorter. |
| NeRF / Nerfstudio | ns-process-data colmap --data <progetto>_colmap per costruire un dataset Nerfstudio, poi addestra (nerfacto, splatfacto, …). |
| COLMAP | Apri direttamente il modello sparse/0 per ispezionare camere e punti, o prosegui con la ricostruzione densa. |
| Blender | Importa pose e punti con un add-on COLMAP importer per layout, look-dev o reference. |
| Unreal Engine | Porta camere e point cloud nelle pipeline di virtual production e ricostruzione. |
Suggerimento — dritto allo splatting: la maggior parte dei repo di Gaussian Splatting richiede immagini undistorted e modello
PINHOLE, costringendoti altrimenti a passare prima dall'undistorter di COLMAP. Il pacchetto di Replica soddisfa già entrambi, quindi il dato si addestra così com'è.
Risoluzione problemi
Il README segnala "No lens distortion data" per alcune foto. Replica non aveva i dati di distorsione per-immagine per quegli scatti e ha copiato i pixel sorgente invariati. Potrebbero non allinearsi perfettamente se l'obiettivo distorce in modo evidente. Capita di solito con immagini importate da altre fonti; le foto catturate direttamente con Replica portano con sé i dati di distorsione.
Il README segnala "No intrinsics — wrote a 60° hFoV default". Per quell'immagine non erano disponibili intrinseci calibrati, quindi Replica ha assunto un campo visivo orizzontale di 60°. Gli strumenti che raffinano gli intrinseci possono recuperare, ma i risultati migliori si ottengono con intrinseci reali presenti.
Manca model.glb.
Il GLB è opzionale e viene prodotto solo quando Blender è installato e il suo percorso è impostato nelle Impostazioni. I dati COLMAP (camere, pose, immagini, punti) vengono esportati comunque.
Prossimi passi
- USD for VFX — le stesse foto undistorted impacchettate per camera projection e matchmove
- Workflows (Pro) — automatizza l'export come parte di una pipeline
- Iniziare — le basi di cattura e ricostruzione
Buona ricostruzione!