ooolabdev/ooosplat

A local desktop app that turns videos and images into 3D Gaussian Splats in one click.

OOOSplat – 데스크톱에서 원클릭 3D Gaussian Splatting

기능 설명

  • 일반적인 360° 비디오나 이미지 폴더를 3D Gaussian Splatting 모델(어떤 시점에서든 렌더링 가능한 포인트 클라우드 형태의 표현)로 변환합니다.
  • 전체 파이프라인은 로컬에서 실행되며, 클라우드 업로드나 원격 API가 필요 없습니다. 필요한 도구(FFmpeg, COLMAP, Brush)를 번들로 제공하며 React + Tauri로 구축된 그래픽 UI를 통해 관리합니다.

중요성

  • Gaussian splatting은 이미지로부터 고품질의 실시간 렌더링 가능한 3D 장면을 생성하는 최신 신경 그래픽 기술입니다. VR/AR, 게임 에셋, 시각 효과 분야에서 널리 채택되고 있습니다.
  • OOOSplat은 프로그래밍 지식이 없는 사용자도 이 기술을 쉽게 사용할 수 있게 합니다. 비디오나 폴더를 선택하고 품질 프리셋(Fast / Balanced / Fine)을 선택하면, 앱이 프레임 추출, 카메라 포즈 재구성, 모델 학습, PLY 내보내기 등 복잡한 작업을 자동으로 처리합니다.

주요 기능

기능 설명
원클릭 생성 MP4, MOV, JPG/PNG 시퀀스를 지원합니다. 앱이 프레임을 추출하고, COLMAP으로 SfM(Structure-from-Motion)을 실행하며, Brush로 Gaussian splat 모델을 학습시킨 후 final.ply를 자동으로 생성합니다.
3가지 품질 프리셋 Fast(저해상도, 약 8k 반복), Balanced(중해상도, 약 15k 반복), Fine(고해상도, 최대 30k 반복). GPU 메모리에 따라 프레임 속도, 해상도, 학습 설정을 자동으로 조정합니다.
투명 재질 지원 Alpha 채널이 있는 MOV/PNG를 처리하여 COLMAP용 흑백 마스크를 생성함으로써 투명한 객체를 보존합니다.
멀티 태스크 관리자 여러 프로젝트를 동시에 실행하고 실시간 진행 상황, 로그, 하드웨어 사용량을 확인하며, 일시 중지/취소 및 체크포인트에서 재개할 수 있습니다.
로컬 MCP (Model Control Protocol) 선택적 로컬 AI 에이전트 인터페이스(Codex 스타일)로, 루프백 HTTP 엔드포인트를 통해 작업을 생성, 시작, 쿼리 및 취소할 수 있습니다.
편집 및 미리보기 생성된 PLY를 확인하고 회전/확대/축소/이동, 개별 Gaussian 선택 및 삭제, 실행 취소/다시 실행, 편집된 모델 내보내기가 가능합니다.
내보내기 옵션 수직 또는 수평 MP4 비디오, 단일 파일 오프라인 HTML 뷰어(WebGPU/WebGL2) 또는 원시 PLY 파일로 내보낼 수 있습니다.
크로스 플랫폼 Windows 11 (x64), Apple-Silicon macOS 15+ (Alpha), Ubuntu 24.04 LTS (x86_64 Alpha)용 사전 빌드된 바이너리를 제공합니다.
개인정보 보호 우선 모든 소스 미디어, 중간 데이터 및 모델은 사용자 컴퓨터에 유지됩니다. 선택적 익명 텔레메트리만 전송됩니다(미디어나 경로 정보는 포함되지 않음).

작동 방식 – 파이프라인

  1. 입력 처리 – FFprobe로 비디오를 분석하고, 선택한 FPS와 해상도로 FFmpeg가 프레임을 추출합니다. 이미지 폴더는 자동으로 정렬됩니다.
  2. COLMAP 재구성 – 특징 추출 및 매칭(NVIDIA 카드 사용 시 GPU 가속 CUDA, 그렇지 않으면 CPU). 점진적 SfM으로 카메라 포즈와 희소 포인트 클라우드를 구축합니다.
  3. Brush 학습 – OOOBrush CLI가 COLMAP 출력을 읽어 GPU에서 Gaussian splat 모델을 학습시킵니다(Windows/Linux는 Vulkan, Apple Silicon은 Metal 사용).
  4. 검증 및 내보내기 – 생성된 final.ply를 검증하고 프로젝트 폴더에 저장합니다. UI에서 모델을 미리 보거나 추가 편집할 수 있습니다.

시스템 요구 사항

  • Windows: Windows 11 x64, WebView2 runtime, CUDA 13.2+ 지원 NVIDIA GPU(또는 CPU 폴백).
  • macOS: Apple-Silicon (M1/M2…) 전용; 내장 Metal 백엔드 사용, CUDA 없음.
  • Linux: Ubuntu 24.04 LTS x86_64; GPU 학습을 위해 Vulkan 드라이버 필요, 그렇지 않으면 CPU 전용.
  • Fine 프리셋의 경우 8GB 이상의 VRAM을 가진 GPU를 권장하며, 메모리 부족 시 앱이 자동으로 설정을 낮춥니다.

일반적인 워크플로우

비디오 / 이미지 폴더 선택 → 프로젝트 폴더 선택 → 품질 프리셋 선택 → 시작 →
   [FFmpeg 프레임 추출] → [COLMAP 카메라 포즈 구축] → [Brush Gaussian splats 학습] →
   final.ply 생성 → 미리보기 / 편집 → 내보내기 (MP4, HTML, 또는 PLY)

개발자 참고 사항

  • UI는 React 19 프론트엔드를 Tauri 2 창 내에서 렌더링하며, 백엔드는 Rust (Tokio async)입니다.
  • 엔진(FFmpeg, COLMAP, Brush)은 번들로 제공되며 npm run setup:engines를 통해 검증됩니다. 커스텀 COLMAP 포크와 Brush의 소스 코드는 동일한 조직(ooolabdev)에 있습니다.
  • 진단용 CLI(splatstudio)를 제공하여 상태 확인, 프레임 계획 및 명령줄에서 전체 파이프라인을 실행할 수 있습니다.
  • 빌드 스크립트는 Windows NSIS 설치 프로그램, macOS 미서명 DMG 및 Debian 패키지를 처리합니다.

권장 사용자

  • 명령줄 SfM 도구를 배우지 않고도 휴대용 360° 영상에서 3D 에셋을 생성하려는 크리에이터.
  • 재현 가능하고 GUI 기반의 워크플로우가 필요한 Gaussian-splatting 파이프라인 연구자.
  • 개인정보를 중요하게 생각하며(모든 데이터가 로컬에 유지됨) VR/AR 콘텐츠 제작에 관심이 있는 취미 사용자.

결론: OOOSplat은 Gaussian-splatting의 전체 워크플로우(프레임 추출, 카메라 재구성, 신경망 학습, 내보내기)를 원클릭으로 통합한 세련된 크로스 플랫폼 데스크톱 애플리케이션으로, 최신 PC를 가진 사람이라면 누구나 최첨단 신경 렌더링 기술을 쉽게 사용할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트