야외 수영장을 아이폰 라이다로

방 스캔에서 쓴 방법을 넓은 야외(약 38.2 m × 49.6 m)에 그대로 적용한 시험 (2026-10-15)

EN
무엇을 했나: 라이다가 있는 아이폰에서 무료 앱 Modelar 로 야외 수영장 주변을 약 44분 걸으며 넓게 스캔했다. 고해상도 사진 90장은 한 기준점 위에 서서 제자리에서 돌며 찍었다(사진 위치가 최대 0.617 m 안에 모임). 방 스캔에서 가장 좋았던 방법부터 같은 도구로 처리한다.

처음부터 끝까지

flowchart LR
  A["아이폰 Modelar 스캔
야외 약 44분"] --> Z["보관 파일 해독
영상·사진·라이다 깊이 프레임"] Z --> M1["① 앱 메시"] Z --> M2["② 라이다 점"] Z --> D["라이다 깊이 프레임
11,589장"] --> T["TSDF 쌓기
격자 3 cm"] --> M3["③ 메시 + 사진 입히기
(가장 크게 찍힌 사진)"] Z --> P["사진 1,380장
(영상 3장마다 1장 + 고해상도 전부)"] --> M3 Z --> V["VGGT 깊이 추정
사진 1,290장 중 590장 통과"] --> M4["④ ③ + 구멍만 메우기"] M3 --> M4 M1 & M2 & M3 & M4 --> W["웹용 압축
GLB · PLY"] classDef m1 fill:#fef3c7,stroke:#f59e0b,color:#78350f classDef m2 fill:#d1fae5,stroke:#10b981,color:#064e3b classDef m3 fill:#ffe4e6,stroke:#e11d48,color:#881337 class M1 m1 class M2 m2 class M3 m3 classDef m4 fill:#ccfbf1,stroke:#0d9488,color:#134e4a class M4 m4 Z --> PH["고해상도 사진 90장
기준점 위 제자리 회전"] --> M5["⑤ 360° 파노라마
(아이폰 방향으로 기워 붙이기)"] classDef m5 fill:#ede9fe,stroke:#7c3aed,color:#4c1d95 class M5 m5

3D 로 비교하기

탭을 누르면 그 방법의 3D 를 불러온다. 끌기로 돌리기, 휠로 확대, 오른쪽 끌기로 이동. 휴대폰은 두 손가락. ③ 은 파일 4개(57 MB)라 불러오는 데 시간이 걸린다.

⑤ 기준점 위 360° 파노라마 (사진 기워 붙이기)

기준점 위에서 제자리로 돌며 찍은 고해상도 사진 90장을, 아이폰이 기록한 방향 그대로 한 장의 360° 사진(8192×2215 px)으로 기워 붙였다(특징점 맞추기 없이 2분). 3D 메시는 웹용으로 텍스처를 1024 로 줄였지만, 이건 원본 사진 해상도 그대로라 확대하면 사다리·벽의 수심 표시까지 읽힌다. 끌어서 둘러보고, 휠·두 손가락으로 확대. 위 41°~아래 56° 띠만 있다(하늘 꼭대기·발밑은 안 찍힘). 사진을 찍는 동안 폰이 최대 0.617 m 움직여 가까운 사다리가 살짝 겹쳐 보인다.

방법별 자세히

① 앱 메시

어떻게 만들었나: Modelar 앱이 촬영하면서 바로 만든 메시를 그대로 꺼냈다 (Mesh.scn 해독, 방과 같은 도구).

장점
  • 처리 시간 0
  • 넓은 범위를 한 번에
단점
  • 점 색이라 흐리다
  • 조각 2,526개로 나뉘어 있다

이 3D 에서 볼 것

숫자: 1,286,546 triangles · web 5.6 MB

② 라이다 점

어떻게 만들었나: 라이다 점 30,000,000개 중 0.05 m 격자로 줄여 1,331,284개만 웹에 올렸다.

장점
  • 가장 믿을 만한 형태 (실제 m)
단점
  • 가까이 가면 점 사이가 빈다
  • 라이다는 5 m 까지만 재서 먼 곳은 비어 있다

이 3D 에서 볼 것

숫자: web 1,331,284 points · 20.0 MB

③ 라이다 깊이 메시 + 사진

어떻게 만들었나: 방 스캔에서 가장 좋았던 방법(방 ⑪)을 그대로 썼다. 라이다 깊이 프레임 11,589장을 TSDF 로 쌓아 메시를 만들고, 사진 1,380장(영상 3장마다 1장 + 고해상도 전부)을 아이폰이 기록한 위치 그대로 입혔다(texrecon, 삼각형마다 가장 크게 찍힌 사진). 야외라 넓어서 격자를 1 cm 가 아니라 3 cm 로 했다 (2 cm 는 블록 59,899개로 메시 뽑기 실패). 웹에는 텍스처 한 변 1024 로 줄여 파일 4개로 나눴다.

장점
  • 바닥(마른 풀·자갈)·벽은 사진 질감 그대로
  • 형태와 치수는 라이다 그대로
  • 걷기 모드로 걸어 다닐 수 있다
단점
  • 덤불·나뭇잎은 라이다가 면으로 못 잡아 구멍 (화면 덮음 84.4%, 방은 97.7%)
  • 가까이 찍은 나무판 같은 곳은 3 cm 격자라 거칠고 엉뚱한 사진 조각이 섞인다
  • 웹은 텍스처를 1024 로 줄였다

이 3D 에서 볼 것

숫자: 3,816,078 triangles · texture atlases 366 · texturing 14 min · photo match PSNR 16.39 · coverage 84.4% · web 57.1 MB

④ ③ + 구멍 메우기 (VGGT)

어떻게 만들었나: 방 ⑫ 방법. VGGT(사진에서 깊이를 추정하는 AI)를 영상 3장마다 1장, 1,290장에 돌려 라이다로 크기를 맞추고, 라이다와 비율이 15% 넘게 흔들리는 사진은 버렸다 (590장 통과). ③ 메시를 그 시점에서 비춰 보아 메시가 없거나 8 cm 넘게 앞에 물체가 있는 픽셀만 같은 TSDF 에 더했다 (562장, 12,555,511 픽셀). 사진 입히기는 ③ 과 같다.

장점
  • 화면 덮음 84.4% → 86.5%
  • 라이다가 잰 곳은 ③ 그대로
단점
  • 야외는 5 m 너머가 많아 VGGT 사진의 절반 넘게가 크기 맞추기에서 버려졌다 (방은 65% 통과)
  • 메운 곳은 AI 추정이라 덜 정확
  • 덤불은 여전히 듬성하다

이 3D 에서 볼 것

숫자: 3,906,695 triangles · photo match PSNR 16.29 · coverage 86.5% · texturing 18 min · web 59.7 MB

⑥ 가우시안 (라이다 깊이 + 위치 보정)

어떻게 만들었나: 방 ⑤ 와 같은 설정 (gsplat). 라이다 점 1,331,284개를 시작점으로, 사진 1,380장으로 30,000번 학습하며 라이다 깊이로 형태를 잡고 아이폰 카메라 위치도 함께 다듬었다 (59분). 결과 2,823,142개 중 1,500,000개를 웹에 올렸다.

장점
  • 덤불·나뭇잎처럼 면이 없는 것도 그려진다
  • 찍은 자리 근처에서 보면 사진 같다
단점
  • 사진 일치도 PSNR 14.96 (방 18.33): 하늘·5 m 너머 먼 풍경은 라이다 깊이가 없어 흐릿한 얼룩이 된다 (추정)
  • 찍은 길에서 멀어지면 깨진다
  • 치수·도면에는 못 쓴다

이 3D 에서 볼 것

숫자: PSNR 14.96 · SSIM 0.48 · 2,823,142 splats · 59 min · web 48.0 MB

⑦ 3D 타일 (원본 해상도 텍스처)

어떻게 만들었나: ④ 와 같은 메시·텍스처를 지도처럼 '타일' 로 나눴다. 처음에는 구역 8개를 작은 텍스처(512 px)로 보여 주고, 가까이 가면 그 구역이 원본 해상도 텍스처(최대 4096 px) 조각 394개로 바뀐다. ODM 의 타일 도구(Obj2Tiles)는 이 크기에서 디스크(26 GB)와 메모리(45.8 GB) 부족으로 실패해, texrecon 이 이미 아틀라스마다 나눈 조각을 그대로 타일로 썼다 (tiles_from_pieces.py).

장점
  • 가까이 가면 ④ 보다 훨씬 또렷하다 (웹 GLB 는 텍스처 1024)
  • 처음 불러오는 양이 작다 (보이는 곳만)
단점
  • 가까이 가는 순간 타일이 바뀌며 잠깐 깜빡인다
  • 형태는 ④ 와 같다 (3 cm 격자, 덤불 구멍)
  • 전체 파일은 크다

이 3D 에서 볼 것

숫자: regions 8 · pieces 394 · files 402 · total 235.6 MB

방 스캔과 비교

방수영장
범위3.5 m × 3.65 m38.2 m × 49.6 m
라이다 깊이 프레임1,57211,589
TSDF 격자1 cm3 cm
사진 일치도 PSNR17.5516.39
화면 덮음97.7%84.4%
구멍 메운 뒤 덮음99.2%86.5%

다음에 할 것