반응형
Task and 핵심 아이디어
- local mesh editing
- DragGAN처럼 3D 메시에서도 핸들 포인트를 지정해 원하는 위치로 이동시키되, 3D 모델에서 흔히 발생하는 global appearance의 붕괴를 방지하기 위해, 아래 두 단계의 최적화를 반복 수행함:
"Drag locally, Shove globally" — 국소 변형은 유지하면서 전반적인 구조와 의미는 복원
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
두 단계 반복 최적화 구조
단계역할타이밍핵심 기능
1. Point Tracking | 현재 메시에서 핸들 포인트가 어디 있는지 추적 | 매 최적화 스텝 시작 시 | Generator feature 기반으로 위치 재추정 |
2. Motion Supervision | 핸들 포인트가 목표 위치로 이동하도록 latent code 업데이트 | point tracking 이후 | 이동 방향을 유도하는 loss 계산 |
→ 위 1~2단계를 DragGAN 방식처럼 반복하며, 포인트들이 목표점에 도달할 때까지 latent를 업데이트
→ 단, 이 과정에서 global appearance가 깨질 수 있음 (예: 의자가 망가지거나 차의 형태가 흐트러짐)
Shove Globally 단계 (Global 구조/의미 복원)
1. Structure Adaption Module
- 초기 메시에서 **"구조 포인트들"**을 샘플링하여 뼈대로 사용
- 업데이트된 메시에서도 해당 구조 포인트들을 다시 추적함
- 각 구조 포인트의 feature vector를 비교하여 구조 일치 손실 계산
왜 필요한가?
- 의자 다리, 평평한 테이블 등 texture가 거의 없는 부위는 feature 기반 tracking이 불안정 → 포인트가 엉뚱한 곳으로 drift
- 따라서, 개별 포인트가 아니라 전체 구조 단위로 비교하고 구조 보존을 유도,
2. Semantic Preservation Module
- 메시를 다양한 시점(view)에서 differentiable renderer로 렌더링
- 각 이미지에 대해 CLIP으로 의미 벡터 추출
- 편집 후 메시도 같은 방식으로 렌더 → CLIP 추출
- 두 의미 벡터 간 cosine similarity를 기반으로 semantic loss (L<sub>sem</sub>) 계산 → 의미 보존
왜 필요한가?
- 3D 메시 자체로는 semantic 추출이 어려움 → CLIP 기반 2D prior를 활용
- geometry가 조금만 변해도 의미가 바뀌는 문제 방지
실험 요약
- Drag3D (DragGAN의 3D 확장) 대비 PSNR, SSIM, LPIPS, FID, Hausdorff Distance 등에서 우수한 성능
- Chair, Car, Table 세 클래스에서 모두 개선
- Ablation 결과, 구조 보존(SA)과 의미 보존(SP) 각각의 기여도 큼, 둘 다 합친 경우 최상 성능
정리
ToW3D는 단순한 포인트 이동에 그치지 않고, 변형의 정밀도 + 전반적 일관성을 모두 만족시키기 위한 2단계 반복 최적화 프레임워크를 제안함. 특히 texture가 부족한 영역이나 의미 유지가 중요한 객체에 대해 robust한 3D 편집이 가능.
반응형