공지사항

신뢰할 수 있는 등고선: SDF 없음, 밀폐형 없음, 1024³ 복셀화

Faithful Contouring은 메쉬를 희소한 복셀 토큰으로 인코딩합니다 — SDF, watertighting, Marching Cubes가 필요 없습니다. 단일 GPU에서 약 1초 만에 1024³. CVPR 2026 구두 발표.

Robin
게시 날짜: 2026년 6월 1일

TL;DR Faithful Contouring은 수십 년 된 SDF + Marching Cubes 파이프라인을 Faithful Contour Tokens로 대체합니다. 이는 삼각형 메쉬를 18차원 희소 복셀 토큰으로 직접 인코딩하며, watertighting, 거리 필드가 필요 없습니다. 순수 CUDA로 구현되어 단일 H100에서 1024³는 약 1.4초, 2048³는 5초 이내에 처리됩니다.

지난 한 해 동안 Trellis와 Hunyuan3D와 같은 방법들이 거의 매달 벤치마크를 선도하면서 3D 생성 작업이 급증했습니다. 하지만 간과하기 쉬운 점은 네트워크 아키텍처가 DiT, Flow Matching, Sparse Voxel Transformer로 진화했음에도 불구하고, 기본적인 3D 표현은 여전히 1987년의 SDF + Marching Cubes에 의존하고 있다는 것입니다. Faithful Contouring은 3D 복셀화에 근본적으로 다른 접근 방식을 제공합니다.

Faithful Contouring (FC)은 CVPR 2026 Oral로 채택되었으며, watertighting, SDF 필드 구축, Marching Cubes를 완전히 생략합니다. 대신 FC는 삼각형 메쉬를 희소 복셀 토큰으로 직접 인코딩하여 토폴로지, 날카로운 모서리, 내부 구조를 보존하는 새로운 3D 표현을 제공합니다. 전체 메쉬-복셀 파이프라인은 순수 CUDA 커널로 구현되어 1024³ 복셀화를 약 1초에, 2048³를 5초 이내에 단일 NVIDIA H100에서 완료합니다.

왜 SDF + Marching Cubes가 3D 복셀화의 병목인가

수년 동안 사실상 모든 피드포워드 3D 재구성 및 생성 방법 — DeepSDF, Occupancy Networks, 그리고 최근의 Trellis, Hunyuan3D, Sparc3D, TripoSF — 은 동일한 파이프라인을 따랐습니다:

원시 메쉬 → Watertight 변환 → SDF / UDF → Marching Cubes → 새로운 메쉬

이 파이프라인은 범용적으로 보이지만, 각 단계는 비트리비얼한 정보 손실을 초래합니다:

  • Watertight 전처리는 일반적으로 ε-볼 팽창을 사용하여 구멍을 메웁니다. 이는 토폴로지를 다시 작성하고 얇은 껍질을 두꺼운 껍질로 바꿉니다.

  • 부호 계산은 내부/외부 분류를 위해 플러드 필 또는 권선 수와 같은 글로벌 알고리즘에 의존합니다. 이는 비다양체 기하학, 열린 표면 및 내부 공동에서 불안정하며 GPU 병렬 처리를 방해합니다.

  • Iso-surface 추출은 Marching Cubes를 통해 날카로운 모서리를 부드럽게 하고 내부 구조를 파괴하며 계단식 아티팩트를 남깁니다.

더 실용적인 병목은 해상도입니다: 기존의 SDF 기반 방법은 거의 모두 3D 복셀화에서 2048³ 이하로 제한되며, 이는 글로벌 부호 전파와 watertight 전처리 비용이 해상도와 함께 폭발하기 때문입니다. Faithful Contouring은 이 전체 파이프라인을 우회하도록 설계되었습니다.

기준선과의 비교

Faithful Contouring이 돋보이는 이유

대부분의 3D 복셀화 방법은 고정된 경로를 따릅니다: 메쉬에서 거리 필드로, 그리고 iso-surface로. Faithful Contouring은 다른 질문을 던집니다:

메쉬 → 거리 필드 → iso-surface로의 우회를 건너뛰고, 대신 각 복셀 내부에 후보 앵커 포인트를 직접 추출한 다음, 이를 토폴로지적 관계에 따라 표면으로 재연결할 수 있을까요?

이것이 바로 Faithful Contouring이 하는 일입니다. 이는 삼각형 메쉬를 **Faithful Contour Tokens (FCT)**라는 희소 복셀 토큰 세트로 직접 인코딩합니다. 파이프라인은 세 가지 주요 특성을 가지고 있습니다:

  • 거리 필드 없음 — SDF 계산이나 부호 결정이 필요 없음
  • 렌더링 없음 — 차별화 가능한 렌더링 감독이 필요 없음
  • 완전히 로컬 — 각 복셀은 이를 통과하는 몇 개의 삼각형과만 상호작용하여 자연스럽게 GPU 병렬 처리가 가능함

Faithful Contouring vs SDF + Marching Cubes

속성SDF + Marching Cubes 파이프라인Faithful Contouring
열린 표면 / 비다양체먼저 watertight해야 함 (토폴로지 손실)자연스럽게 지원됨
내부 공동플러드 필에 의해 삭제됨완전히 보존됨
날카로운 모서리 / 코너MC에 의해 둥글게 됨QEF를 통해 자연스럽게 포착됨
복셀당 표현1 SDF 값18차원 토큰
편집 / 조립어려움직접적인 토큰 수준 작업
Faithful Contouring은 개방형 표면, 비다양체 기하학, 내부 공동을 기본적으로 지원합니다. 이는 SDF 기반의 복셀화 방법이 수밀 전처리 과정에서 잃어버리는 기능입니다.

Faithful Contouring 작동 원리: 인코더 및 디코더 파이프라인

Faithful Contouring 파이프라인은 인코더와 디코더로 구성되어 있으며, 모두 학습된 구성 요소 없이 고전 기하학 연산자로만 구축되었습니다.

Pipeline

인코더: Mesh → FCT

격자 G\mathcal{G}의 각 복셀 vv에 대해 네 단계가 순차적으로 실행됩니다:

  • 활성 복셀 감지 (SAT) — 13개의 후보 축을 가로지르는 분리 축 정리를 사용하여 삼각형 ff가 주어진 복셀 vv와 교차하는지 테스트합니다. 교차하는 복셀은 활성 기본 복셀로 표시됩니다.

  • 교차 중심 — Sutherland–Hodgman 알고리즘은 각 삼각형을 복셀의 여섯 면에 대해 클리핑하여 볼록 다각형 Qv,f=vfQ_{v,f} = v \cap f를 생성한 다음, 그 중심을 계산합니다:

cv,f=13Ak=2m1Ak(q1+qk+qk+1)\mathbf{c}_{v,f} = \frac{1}{3A}\sum_{k=2}^{m-1} A_k (\mathbf{q}_1+\mathbf{q}_k+\mathbf{q}_{k+1})

볼록성에 의해 이 중심은 복셀 내부에 위치하는 것이 보장됩니다. 각 cv,f\mathbf{c}_{v,f}는 원래 삼각형의 법선 nf\mathbf{n}_f와 쌍을 이루어 로컬 기하학 샘플을 형성합니다.

  • 앵커 피팅 (QEF) — 이것이 핵심 단계입니다. 모든 샘플 {(ci,ni)}\{(\mathbf{c}_i,\mathbf{n}_i)\}이 Quadric Error Function 최소화에 입력됩니다:
x=argminx  i(ni(xci))2+λxcˉ2\mathbf{x}^\ast = \arg\min_{\mathbf{x}}\;\sum_i (\mathbf{n}_i^\top(\mathbf{x}-\mathbf{c}_i))^2 + \lambda \|\mathbf{x}-\bar{\mathbf{c}}\|^2

첫 번째 항은 접평면 일관성을 강제하여 앵커를 모든 접평면의 공통 교차점으로 끌어당기며, 이는 날카로운 모서리와 코너가 자연스럽게 포착되는 이유입니다. 두 번째 항은 잘못된 조건의 입력에서 드리프트를 억제하기 위해 중심 정규화를 제공합니다. 솔루션은 3×3 정상 방정식에 의해 폐쇄 형식으로 제공됩니다:

(MM+λI)x=Md+λcˉ(M^\top M + \lambda I)\,\mathbf{x}^\ast = M^\top\mathbf{d} + \lambda\bar{\mathbf{c}}

법선 n\mathbf{n}^\ast는 Tikhonov 정규화를 통해 해결됩니다. 전체 해결은 복셀당 완전히 독립적입니다 — 이것이 FC가 2048³로 확장되는 근본적인 이유입니다.

Low-poly preservation 낮은 복셀 해상도에서도 QEF로 해결된 앵커는 여전히 날카로운 특징에 확실하게 맞춰집니다.

  • 반축 교차 — Möller–Trumbore 레이–삼각형 교차가 여섯 개의 반축 방향으로 수행되어 디코딩 시 면 방향을 결정하는 데 사용되는 이진 인코딩 {1,0,+1}6\{-1,0,+1\}^6을 생성합니다.

모든 정보는 복셀당 단일 행에 패킹됩니다:

FCT=[voxel index,  (x,n),  {md,(xd,nd)}d=18,  {oriente}]\mathrm{FCT} = \big[\,\text{voxel index},\;(\mathbf{x}^\ast, \mathbf{n}^\ast),\;\{\mathbf{m}_d, (\mathbf{x}_d, \mathbf{n}_d)\}_{d=1}^{8},\;\{\mathrm{orient}_e\}\,\big]

각 활성 복셀은 18차원을 차지합니다.

디코더: FCT → Mesh

디코딩은 두 단계로 구성됩니다:

글로벌 수집 — 이웃하는 기본 복셀들이 이중 복셀을 공유하면서 앵커 포인트를 평균하여 통합된 정점 집합 VV'를 생성합니다.

Quad → Tri — 각 기본 면의 네 개의 이중 앵커가 사각형을 형성합니다. 방향은 반축 코드에 의해 결정되며, 사각형은 법선 편차를 최소화하는 대각선을 따라 두 개의 삼각형으로 분할됩니다.

전체 디코드도 완전히 로컬입니다 — 글로벌 검색이 필요하지 않습니다.

엔지니어링: CUDA 병렬 처리를 통한 초단위 복셀화

FC의 알고리즘 설계는 GPU 병렬 처리와 긴밀하게 일치합니다: 각 복셀은 교차하는 몇 개의 삼각형에만 의존하며, QEF 해결은 폐쇄 형식의 3×3 정상 방정식이며, 전체 파이프라인에는 글로벌 연산자가 없습니다. 이것이 2048³로 확장되는 이유입니다.

특히, FC는 다음과 같은 글로벌 프로세스를 피합니다: 플러드 필 연결 구성 요소 전파, O(NF)O(N \cdot F) 전체 메쉬 통합, 수밀화를 위한 ε-볼 팽창, Marching Cubes 후처리. 각 복셀의 계산은 완전히 독립적이며 CUDA 스레드에 직접 매핑됩니다. 우리는 모든 핵심 연산자를 순수 CUDA 커널로 구현했습니다 — SAT 교차, Sutherland–Hodgman 클리핑, 닫힌 형태의 QEF, Möller–Trumbore 반축 교차 — Python 수준의 루프를 제거했습니다. 단일 NVIDIA H100에서의 벤치마크:

해상도활성 복셀인코딩디코딩총합
128³71K0.27 s0.02 s0.29 s
256³287K0.45 s0.06 s0.51 s
512³1.1M0.52 s0.17 s0.70 s
1024³4.6M0.82 s0.61 s1.42 s
2048³18.4M2.16 s2.51 s4.68 s

주요 숫자: 512³의 경우 전체 과정이 0.7 s, 1024³는 약 1.4 s, 2048³는 5 s 미만. 전체 지연 시간은 활성 복셀 수에 따라 대략 선형적으로 확장됩니다.

비교를 위해, flood-fill 또는 winding numbers에 기반한 전통적인 SDF 재구성 파이프라인은 일반적으로 1024³에서 몇 분에서 수십 분이 소요되며, 글로벌 부호 전파의 메모리 및 계산 오버헤드 때문에 2048³로 실질적으로 확장할 수 없습니다. FC는 2048³에서 직접 실행될 뿐만 아니라 전체 지연 시간을 초 단위로 유지합니다.

실험 결과

표현 정확도

ABO 및 Objaverse의 도전적인 하위 집합에서:

방법해상도HD ↓CD (G→P) ↓F-score (0.01) ↑
UDF1024높음 (이중 레이어 아티팩트)높음낮음
Flood-fill SDF1024높음 (부풀린 표면)높음중간
FlexiCubes1024중간중간중간
FC10240.11 × 10⁻²0.01 × 10⁻⁴99.71
FC20480.11 × 10⁻²< 0.01 × 10⁻⁴99.99

FC는 현재 2048³에서 직접 실행되는 유일한 복셀 표현으로, 거리 오류가 10⁻⁵ 스케일에서 안정적입니다.

Fitting Comparison

VAE 재구성

FCT를 딥러닝 표현으로 검증하기 위해, 우리는 희소 3D 컨볼루션과 경량의 어텐션을 사용하여 이중 모드 VAE를 구축했습니다. 두 가지 입력 모드를 지원합니다: (a) 자체 압축 FCT → FCT, (b) 포인트 클라우드 → FCT.

Dora 벤치마크와 Toys4k에서 Trellis, SparseFlex, Sparc3D와 비교:

  • 챔퍼 거리 약 93% 감소
  • F-score 약 35% 향상

특히, 512³ 해상도의 FC-VAE는 이미 1024³의 SparseFlex / Sparc3D 재구성을 능가하며, 무손실 표현이 다운스트림 네트워크의 학습 부담을 크게 줄일 수 있음을 보여줍니다.

VAE Comparison

Faithful Contour Tokens를 통한 편집 및 구성

FCT는 토큰 기반의 희소 복셀 표현으로, 모든 복셀 수준의 작업이 직접적으로 토큰으로 전환됩니다. FCT는 네 가지 범주의 직접적인 토큰 수준 작업을 지원합니다:

Editing

  • 필터링 — 레이 캐스팅이 가시성을 계산하며, 내부 숨겨진 복셀과 그들의 토큰은 임계값에 의해 제거됩니다.
  • 텍스처 — 추가 채널이 18D 토큰에 추가되어 텍스처 속성을 앵커에 바인딩합니다.
  • 조작 — 회전 및 비선형 변형이 앵커에 직접 작용하며, 이후 연결성 재계산이 이루어집니다.
  • 분할 및 조립 — 병합은 앵커 위치에서 평균 집계를 사용하고 방향에 대해 최대 집계를 사용하며, 분할은 기하학적 또는 의미적 마스크를 통해 토큰 그룹을 복사하고 분리합니다.

이로 인해 FCT는 단순한 입력 표현이 아니라 구성, 편집, 텍스처링 및 스타일 전환을 지원하는 기하학적 토큰 컨테이너가 되어 3D 생성의 다음 단계와 잘 맞습니다: 부분 수준, 편집 가능, 다중 모드.

오픈 소스 및 재현성

코드는 완전히 오픈 소스입니다. v1.5부터 코드베이스는 순수 Python + Atom3d로 리팩토링되었으며, CUDA 커널은 사전 컴파일된 휠로 배포됩니다 — 로컬 C++ 툴체인이 필요하지 않습니다. 우리는 연구 재현부터 생산 통합까지 모든 것을 포괄하는 Pixi 원클릭 환경과 전통적인 pip 설치를 제공합니다.

저장소에는 다음이 포함됩니다:

  • 임의의 해상도(128³에서 2048³까지)를 지원하는 완전한 FCT 코덱(FCTEncoder / FCTDecoder)
  • BVH 가속 메쉬 교차 백엔드 Atom3d
  • 데모 스크립트와 샘플 메쉬(icosphere, pirateship 등) — 즉시 실행 가능하며 GLB 출력을 비교할 수 있습니다
  • FCT-VAE 훈련 코드와 확산 모델 가중치(곧 제공 예정)

저장소: github.com/Luo-Yihao/FaithC

요약

Faithful Contouring이 하는 일은 한 문장으로 요약할 수 있습니다:

거리 필드 패러다임에서 등고선 토큰 패러다임으로 3D 표현 레이어를 이동합니다.

거리 필드와 Marching Cubes는 1980년대로 거슬러 올라갑니다. 그들의 2D 동시대는 스플라인, SDF 폰트 래스터라이저, 그리고 여러 반복 주기를 거친 신경 렌더링으로 대체되었습니다. 3D 측면에서는 파이프라인과 확립된 데이터셋 및 평가 프레임워크 간의 깊은 결합이 표현 레이어 자체에 대한 체계적인 재고를 오랫동안 방해해 왔습니다. FC는 새로운 기반을 제공합니다: 닫힌 형태로 해결 가능하고, GPU 친화적이며, 2048³까지 확장 가능하며, 개방형 표면과 비다양체 기하학을 본래적으로 처리하고, 내부 구조와 날카로운 모서리를 완전히 보존하며, 모든 것이 보텍셀당 18차원 내에 있습니다.

주목할 만한 확인: 이 작업이 공개된 직후, Microsoft는 2026년 1월에 TRELLIS.2를 출시하여 O-Voxel을 도입했습니다 — 필드가 없는 희소 보텍셀 표현으로, SDF / 점유 필드를 우회하고 이중 메쉬를 통해 임의의 토폴로지(비다양체 및 개방형 표면 포함)를 직접 인코딩합니다. 비슷한 결론에 도달하는 두 개의 독립적인 경로가 좁은 시간 창 내에서 수렴한다는 것은 등고선이 더 이상 3D 표현의 유일한 옵션이 아님을 시사합니다.

제한 사항

현재 버전의 FC에는 몇 가지 명확한 제한 사항이 있습니다:

  • 심각한 자기 교차 및 밀집된 구조 — 여러 얇은 표면이 교차하거나 보텍셀 하위 스케일에서 밀착될 때, 단일 보텍셀 내의 샘플은 다른 시트에서 나옵니다. QEF로 해결된 앵커는 모호해지며 국부적인 드리프트를 보입니다.
  • VAE 용량의 미활용 — 현재 FCT-VAE는 Sparc3D / SparseFlex의 희소 컨볼루션 + 로컬 어텐션 백본을 채택하고 있습니다. 매우 세밀한 가지, 밀집된 장식 및 기타 매우 불규칙한 구조에 대한 모델링 용량은 여전히 개선의 여지가 있습니다.
  • 디코딩을 통한 선명도 저하 — VAE를 통해 디코딩된 FCT는 직접 피팅에 비해 선명도와 부드러움이 약간 손실됩니다. 이는 또한 토큰 표현과 잠재 차원 간의 더 세밀한 정렬이 필요함을 시사합니다.

다음 단계: Vision 2 미리보기

다가오는 Faithful Contouring 2.0에서는 FCT를 다중 앵커 형태로 확장합니다 — 단일 보텍셀은 더 이상 하나의 앵커에 제한되지 않고 복잡한 교차 구조를 나타내기 위해 여러 앵커를 호스팅할 수 있습니다. 이는 자기 교차, 밀집된 기하학, 중첩된 얇은 쉘에 대한 FC의 성능을 체계적으로 개선하고, 하위 네트워크에 더 세밀한 지역 기하학 정보를 제공합니다. 기대해 주세요.

인용

bibtex
@inproceedings{luo2026faithfulcontouring,
title     = {Faithful Contouring: Near-Lossless 3D Voxel Representation Free from Iso-surface},
author    = {Luo, Yihao and He, Xianglong and Pan, Chuanyu and Chen, Yiwen and Wu, Jiaqi
and Li, Yangguang and Ouyang, Wanli and Hu, Yuanming and Yang, Guang and Yap, ChoonHwai},
booktitle = {CVPR},
year      = {2026}
}

SDF + Marching Cubes는 이제 그만? 기하학을 다시 가져올 시간입니다 — 충실하게. CVPR 2026 Oral · arXiv 2511.04029 · GitHub: Luo-Yihao/FaithC

Yihao Luo, Imperial College London — y.luo23@imperial.ac.uk

이 게시물이 도움이 되었나요?

3D, 명령에 따라

판매 문의