from pathlib import Path
import pycolmap

# ======================
# ⚙️ CONFIG (sửa ở đây)
# ======================
image_dir = Path("/data/autocon2/dataset/250827_P3/images")
sparse_dir = Path("/data/autocon2/dataset/250827_P3/colmap/sparse/0")
mvs_dir = Path("/data/autocon2/dataset/250827_P3/colmap/dense")

# ======================
# 🚀 RUN PIPELINE
# ======================
mvs_dir.mkdir(parents=True, exist_ok=True)

print("Step 1: Undistort images...")
pycolmap.undistort_images(mvs_dir, sparse_dir, image_dir)

print("Step 2: PatchMatch Stereo (MVS)...")
pycolmap.patch_match_stereo(mvs_dir)

print("Step 3: Stereo fusion...")
output_ply = mvs_dir / "dense.ply"
pycolmap.stereo_fusion(output_ply, mvs_dir)

print(f"✅ DONE! Dense point cloud saved at: {output_ply}")