Yolo 비전 선전
선전
지금 참여하기
용어집

가우시안 스플래팅

사진처럼 사실적인 3D 장면 재구성을 위한 가우시안 스플래팅(Gaussian Splatting)을 탐구하세요. 이 기술이 실시간 렌더링을 가능하게 하고 비전(Vision)을 위한 Ultralytics 어떻게 통합되는지 알아보세요.

가우시안 스플래팅(Gaussian Splatting)은 컴퓨터 그래픽스와 컴퓨터 비전에서 2D 이미지 집합으로부터 사실적인 3D 장면을 재구성하는 데 사용되는 현대적인 래스터화 기법이다. 폴리곤 메시에 의존하는 전통적인 3D 모델링이나 신경망으로 장면을 근사화하는 신경 방사 필드(NeRF) 와 달리, 가우시안 스플래팅은 장면을 수백만 개의 3D 가우시안 분포(타원체) 집합으로 표현합니다. 이 방법은 뛰어난 시각적 충실도를 유지하면서 높은 프레임 속도(종종 100 FPS 초과)로 실시간 렌더링을 가능하게 하여, 기존 뷰 합성 방법에서 발견된 주요 성능 병목 현상을 해결합니다.

가우시안 스플래팅의 작동 원리

핵심 아이디어는 3차원 공간을 암시적 방식이 아닌 명시적으로 표현하는 데 있습니다. 일반적인 작업 흐름에서는 사진 집합으로부터 구조 기반 사진측량(Structure from Motion, SfM) 기법을 활용해 생성된 희소 점 클라우드로 프로세스가 시작됩니다. 이 클라우드 내 각 점은 3차원 가우시안으로 초기화됩니다.

훈련 과정에서 시스템은 각 가우시안 함수에 대해 여러 매개변수를 최적화합니다:

  • 위치: 장면 내 3D 좌표 (X, Y, Z).
  • 공분산: 타원체의 모양과 회전을 결정합니다(예: "스플랫"이 얼마나 늘어나거나 기울어져 있는지).
  • 불투명도: 가우시안이 얼마나 투명하거나 불투명하게 보이는지(알파 값).
  • 색상: 구면 조화 함수를 사용하여 표현되며, 시각 각도에 따라 색상이 변화하여 현실적인 반사 및 조명 효과를 구현합니다.

"스플래팅(splatting)"이란 용어는 이 3차원 가우시안 함수들이 2차원 카메라 평면에 투영되거나 "스플래팅"되어 이미지를 형성하는 래스터화(rasterization) 과정을 의미합니다. 이 투영은 완전히 미분 가능하므로, 표준 경사 하강법 알고리즘을 사용하여 렌더링된 이미지와 원본 지상 진실 사진 간의 차이를 최소화할 수 있습니다.

가우시안 스플래팅 대 NeRF

두 기술 모두 장면의 새로운 뷰를 생성하는 것을 목표로 하지만, 아키텍처와 성능 면에서 근본적으로 다릅니다. NeRF(신경 방사 필드) 는 장면을 신경망의 가중치 내에 인코딩합니다. NeRF를 렌더링하려면 매 프레임마다 이 네트워크를 수백만 번 쿼리해야 합니다(레이 마칭). 이는 계산 비용이 많이 들고 느립니다.

반면 가우시안 스플래팅은 명시적 표현(가우시안 목록)을 사용합니다. 이를 통해 비디오 게임이 그래픽을 렌더링하는 방식과 유사한 효율적인 타일 기반 래스터화 기법을 활용할 수 있습니다. 결과적으로 가우시안 스플래팅은 NeRF보다 훈련 및 렌더링 속도가 현저히 빨라 소비자 애플리케이션과 실시간 추론에 더 적합합니다.

실제 애플리케이션

가우시안 스플래팅의 속도와 품질은 다양한 산업 분야에서 새로운 가능성을 열었습니다:

  • 가상 관광과 부동산: 제작자는 드론이나 스마트폰을 이용해 박물관, 역사 유적지 또는 매물 주택을 촬영할 수 있습니다. 가우시안 스플래팅(Gaussian Splatting) 기술을 통해 원격 사용자는 6자유도(6DoF) 가상 현실(VR) 환경에서 이러한 공간을 탐험하며, 기존 사진측량법으로는 포착하기 어려운 나무 바닥의 반사광 같은 미세한 디테일까지 확인할 수 있습니다.
  • 자동차 시뮬레이션: 자율주행 차량을 개발하는 기업들은 인식 알고리즘을 테스트하기 위해 방대한 양의 데이터가 필요합니다. 가우시안 스플래팅(Gaussian Splatting)은 센서 데이터로부터 실제 도시 블록을 재구성하여 사진처럼 사실적인 시뮬레이션 환경을 생성합니다. 이러한 환경 내에서 Ultralytics 같은 비전 모델을 테스트하여 복잡한 3D 시나리오에서 위험 요소를 정확히 식별하는지 확인할 수 있습니다.

컴퓨터 비전을 활용한 스플래팅 전처리

가우시안 스플래팅이 효과적으로 작동하려면 훈련 이미지는 일반적으로 정적이어야 합니다. 소스 사진 내 움직이는 물체(보행자나 차량 등)는 "플로터"라 불리는 아티팩트를 유발할 수 있습니다. 고급 파이프라인은 스플래트 모델 훈련 전에 인스턴스 분할을 활용해 이러한 동적 요소를 자동으로 마스크 처리합니다.

Ultralytics 팀은 데이터셋을 관리하고 이 전처리 단계에 활용 가능한 모델을 훈련할 수 있습니다. 다음은 3D 재구성을 위한 데이터셋에 마스크를 생성하기 위해 분할 모델을 활용하는 방법입니다:

from ultralytics import YOLO

# Load the YOLO26 segmentation model
model = YOLO("yolo26n-seg.pt")

# Run inference on an image from the scan dataset
# Class 0 is 'person' in COCO - we mask them out to keep the scene static
results = model.predict("scan_frame_001.jpg", classes=[0])

# Save the generated mask to exclude the person from the 3D reconstruction
for result in results:
    result.save_masks("scan_frame_001_mask.png")

인공지능에서의 중요성과 미래 동향

가우시안 스플래팅은 딥 러닝의 학습 가능성과 전통적 컴퓨터 그래픽스의 효율성을 결합한 하이브리드 기법으로 컴퓨터 비전 분야의 전환을 이끌고 있습니다. 이 기술은 빠르게 진화 중이며, 연구자들은 파일 크기(대용량일 수 있음)를 압축하고 생성형 AI와 통합하여 텍스트 프롬프트로부터 3D 자산을 생성하는 방안을 모색하고 있습니다. GPU와 같은 하드웨어 가속기가 지속적으로 개선됨에 따라, 가우시안 스플래팅은 현실 세계를 디지털 형태로 포착하고 렌더링하는 표준 기술이 될 가능성이 높습니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기