-
[논문 리뷰] VOID - Video Object and Interaction DeletionVILAB 2026. 4. 11. 16:15
안녕하세요!! 석사 1학차 감자입니다...
3월은 서울 이사와 적응 + 프로젝트 RnD로 정신이 없었는데요.. 4월부터는 본격적으로 석사생으로써 논문공부와 다양한 발표준비 및 프로젝트까지 이어가느라 참 정신이 없습니다.
잘 하고 있는지도 잘 모르겠고 연구분야는 정확히 무엇을 해야하고 논문은 읽어도 무슨 말인지 모르겠고... 이런 혼란속에서 그래도 뭐라도 해야할 것 같아 지난주 공부했던 논문에 대해서 간단히 소개해보려해요.
사실 프로젝트는 지금까지 열심히 해왔으나 논문공부를 제대로는 해본적이 없어, 세미나 발표 준비를 할 때 참 막막했는데요

이런 참 좋은 글이 있더라구요 이 분의 조언을 따라 논문 하나를 제대로 파보았습니다.
처음에는 이해하기 어려운게 당연한거니까 이해가 안된다고 자괴감에 빠질 필요는 없습니다. (3월동안 자괴감에 빠졌던 나..)
이 두가지를 강조해 주셨습니다.1) 한번에 이해하려고 하지말고 몇회독에 걸쳐서 이해한다는 마인드를 가질 것
2) detail이 아니라 핵심에 집중할 것
그럼, 이제 시작해봅시다.오늘 소개드릴 논문은 지난 넷플릭스에서 발표한 VOID라는 생성형 AI Video to Video 관련 기술입니다!!!
이 논문을 선택한 이유는, 따끈따끈하게 지난 3월에 발표된 논문이고, 저희 랩에서 진행중인 생성형 AI 활용 콘텐츠 제작 프로젝트에 활용할 수 있지 않을까? 하는 생각에 공부해보게 되었습니다.

1) abstract
일단 abstract를 꼼꼼히 읽습니다.
보통 종래 기술의 어떤 문제를 해결하려고 하고, 그래서 어떤 방법을 썼고, 그래서 결과는 좋다!
이런 흐름이니까 어떤 문제를 해결하려고 하고 어떤 방법을 썼는지를 파악해 봅니다.
100% 이해는 안되도 그냥 넘어갑니다.VOID 논문의 abstract를 정리해볼게요

KEYWORDS : Video object remove, Video generation, Plausible video editing
기존기술: 기존의 비디오 객체 제거 방법들은 객체에 가려져 있던 뒤쪽 배경을 채워넣거나, 그림자 및 반사같은 겉보기 수준의 아티팩트를 수정하는데는 뛰어남
VOID가 타겟팅한 문제: 하지만, 제거하려는 객체가 다른 물체와의 충돌처럼 물리적 상호작용을 하고 있을 때, 현재의 모델들은 이 인과관계를 수정하지 못하고 물리적으로 전혀 말이 안 되는 어색한 결과를 만들어냄
VOID 가 제시한 해결방법: 복잡한 시나리오에서 물리적으로 타당한 인페인팅을 수행하기 위해 모델을 가르치는 '학습’과 실제 적용하는 ‘추론’ 두 단계로 나뉨
학습: Kubric(3d 물리엔진)과 HUMOTO 엔진(모션캡쳐)을 사용하여 새로운 쌍데이터셋을 생성. 특정 객체가 '있을때' 와 '없을때' 후속 물리적 상호작용이 어떻게 변하는지를 보여주는 반사실적 데이터
추론: 비전-언어모델(VLM)을 사용하여 제거될 객체 때문에 영향을 받게 될 주변 영역을 Quad Mask로 식별. 이렇게 식별된 영역정보가 비디오 디퓨전모델의 가이드라인이 되어, 최종적으로 물리법칙에 일관된 새로운 영상을생성
2) Introduction
Introduction으로 넘어갑니다.
종래 이런 기술들이 있었고, 그러나 이런 문제점들이 있어서, 우리는 이런 문제를 해결할거고, 그 문제를 풀기 위해 이런 방법을 쓸거다!
이런 흐름입니다. abstract를 풀고자 하는 문제 부분에 포커싱해서 좀 더 풀어서 쓴 거라고 볼 수 있죠.
어떤 문제를 풀고자 하는지를 중심으로 꼼꼼히 읽습니다.
논문에 언급된 종래 기술들을 모른다고 그 논문들을 다 찾아본다면 시간이 너무 오래 걸리니까 다른 논문 찾아보지 말고 일단 읽고자 하는 논문에서 쓰여진 것만으로 이해해보려고 노력합니다.

만약 빨간색 도미노 두개만 인페인팅 해서 제거하고 싶다면? 물리적으로는 노란색 도미노는 쓰려지면 안됩니다!!(위치상 노란색 도미노를 건들일 수 없으므로) 1.VOID가 풀고자 하는 핵심 문제는?비디오는 단순한 픽셀의 연속이 아니라 '물리적 인과관계'의 집합체
기존 방식: 중간이 비어있는데도 뒤쪽 도미노가 계속 쓰러짐 (물리적 모순)
해결 과제: "객체가 지워졌다면 어떻게 되었을까?"를 상상하는 고차원적 인과관계 추론 필요
2. 기존 기술들의 한계
기존 모델들을 크게 두 진영으로 나누면, Omnimatte 같은 분해 모델과 Runway 같은 생성 모델이 있습니다.

손이 제거된다면, 팽이를 물리적으로 터치하는 존재가 없어지므로 제자리에서 돌아야 합니다. 하지만 기존기술은 이를 구현하지 못합니다. 1) 비디오 분해 기법 (Omnimatte): 비디오를 여러 레이어(RGBA)로 쪼개어 객체와 그 객체의 효과(그림자 등)를 분리해 내는 기술.
한계: 그림자나 반사를 걷어내는 '복원'은 잘하지만, 물건이 부서지거나 떨어지는 '새로운 물리적 상호작용'은 합성하지 못함
2) 텍스트 기반 비디오 편집 (Text-guided Video Editing Models): 유저의 프롬프트("이 사람을 지워줘")에 따라 객체를 제거하는 생성형 디퓨전 모델
한계: 현재의 디퓨전 모델들은 객체가 사라졌을 때 어떤 일이 벌어져야 하는지에 대한 '물리적 직관'이 부족함. 게다가 사용자가 프롬프트로 영상 내의 모든 미세한 물리적 파생 효과를 일일이 글로 적어주는 것도 이해하는 것도 불가능
둘 모두 제거된 객체와 관련된 일부효과를 처리하지만, 복잡한 물리적 상호작용은 모델링할 수 없다!!는게 핵심입니다.
3) Methdology
Methodology로 넘어갑니다.
모든 detail을 다 파악할 필요는 없습니다. 한두문장으로 정리될 수 있는 핵심적인 문제 해결 원리 (보통 abstract에 적혀있습니다)를 중심으로 이해를 하면 됩니다.
1. approach
그래서 이를 해결하기 위한 VOID의 핵심 아이디어는 반사실적(counterfactual) 추론입니다. 단순히 "객체를 지운다"가 아니라, "만약 처음부터 이 객체가 없었다면?"이라고 질문하는 것입니다. 수식으로 표현하면, 입력 비디오 V와 지울 객체 마스크 Mo를 받아, 객체가 없는 세계의 비디오 V̂를 생성하는 함수 f를 학습하는 것입니다. 이는 단순 홀 필링이 아닌, 물리적 시뮬레이션에 가까운 작업입니다.

2. Counterfactual Dataset Supervision
과정을 자세히 봅시다. 이를 학습시키기 위해서 두가지 데이터셋을 활용했는데요
반사실적 모델 개발의 주요 장애물은 실제 훈련 데이터의 부족이라고 합니다. 객체의 존재 여부와 그에 상응하는 물리적 효과를 제외하고는 모든 것이 동일한 두 개의 실제 비디오를 캡처하는 것은 거의 불가능합니다. 이를 해결하기 위해 연구원들은 두 가지 정교한 시뮬레이션 환경을 활용하여 페어링된 데이터셋을 생성했습니다.

HUMOTO
우선 인간 중심적인 상호작용을 포착하기 위해 연구자들은 4D 모션 캡처 데이터셋인 HUMOTO를 사용했습니다. 인간이 객체와 상호작용하는 4500쌍의 비디오를 생성했습니다. 같은 장면을 두 번 렌더링함으로써, 한 번은 인간과 함께, 한 번은 인간이 없을 경우 모델은 인간 주체가 제거될 때 객체 궤적이 어떻게 변해야 하는지 학습합니다. 사진을 보시면 인간이 있을때는 잘 움직이지만, 없을때는 바로 중력의 영향을 받아 바닥에 떨어지는 물리적 현상을 동시에 학습시킵니다.
Kubric
또 Kubric 렌더링 엔진을 사용하여 저자들은 약 1900쌍의 비디오를 생성했습니다. 이 시뮬레이션에도 똑같이 두번의 시뮬레이션을 거치는데 다양한 3D 객체들이 충돌, 낙하, 구조적 의존성을 통해 상호작용하는 과정이 포함됩니다. 한 객체가 등장하는 모든 비디오 V에 대해, 해당 객체를 제거한 상태로 물리 엔진을 다시 실행하고 다른 모든 초기 조건(중력 및 다른 객체의 초기 속도 등)은 동일하게 유지함으로써 실제 반사실 브이헷 데이터셋을 을 생성합니다.
이러한 합성적이지만 물리적으로 정확한 쌍을 훈련함으로써, VOID는 인간에 대한 시각적 단서나 오브젝트를 물리적 결과와 연관시키는 방법을 학습시키면서, 실제 영상에서 움직임과 인과관계를 추론하기 위한 토대를 제공합니다.
3. QuadMask

Omnimatte의 Trimask 대부분의 비디오 제거 모델은 제거할 객체를 식별하기 위해 이진 마스크를 사용하고, 일부 고급 모델은 제거할 객체, 전체 배경, 그리고 그림자나 반사에 의해 영향을 받을 수 있는 "회색" 영역을 식별하는 "트라이마스크"를 사용합니다. 그러나 VOID의 저자들은 트라이마스크가 복잡한 물리에는 너무 모호하다고 주장합니다.
실제로 아까 말씀드렸던 Omnimatte의 트라이마스크를 보면 너무 불명확하긴 합니다. 배경을 다 회색으로 칠해버림...
더 명확한 안내를 제공하기 위해 VOID는 "쿼드마스크" 를 도입합니다. 이 마스크는 비디오 프레임을 네 가지 고유한 영역으로 나눕니다.
검은색: 제거하려는 객체(들)에 속하는 픽셀. 여기서는 사람이 되겠구요
밝은 회색: 제거로 인해 물리적으로 영향을 받는 영역이지만 원래 객체의 위치와 겹치지 않는 영역. 즉 저 봉과 사람이 겹치지 않는 부분일것이구요
어두운 회색: 제거된 객체가 새로 영향을 받는 영역과 겹치는 부분을 나타내는 중요한 추가 영역. 이는 모델이 깊이 및 가려짐 모호성을 해결하는 데 도움이 되는데 사람과 저 봉이 겹치는 부분이구요
흰색: 영향을 받지 않는 영역으로, 원래 비디오와 정확히 동일하게 보존하려는 부분입니다.
이러한 4가지 분류는 확산 모델이 무엇을 제거해야 하는지뿐만 아니라, 특히 어디에 새롭고 물리적으로 일관된 콘텐츠를 합성해야 하는지를 이해하도록 돕습니다.

Figure.3 VOID의 흐름도 이제 지금까지의 이론을 바탕으로 VOID 작동 방식의 전체적인 흐름을 살펴봅시다.
다음 전체 VOID의 흐름도를 보면, 사용자가 지우고 싶은 객체를 클릭한 뒤 멀티모달VLM(시각-언어 모델)이 "이 인간을 지우면 다른 물체인 공은 어떻게 될까?"를 고민하여 만든 아까 설명드렸던 쿼드마스크가 가장 먼저 Pass 1 단계로 들어갑니다.
여기서 Pass 1 모델이 하는 일은 물리 법칙을 비디오에 적용합니다.
실제로 Figure 3의 Pass 1 결과물(왼쪽 비디오 컷)을 보면, 아이는 깔끔하게 사라졌고 공은 중력에 따라 아래로 떨어지는 새로운 움직임을 보여줍니다. 즉, 모델이 "만약 아이가 없었다면"이라는 가정을 완벽하게 이해하고 올바른 물리적 시나리오를 짜낸 것입니다.
하지만 자세히 보면 Pass 1 결과에 **구조적 변형이라는 문제가 나타납니다. 공이 떨어지는 궤적(방향)은 맞는데, 떨어지는 과정에서 공이 동그란 모양을 유지하지 못하고 타원형으로 길게 늘어나거나 젤리처럼 출렁거리는 모습이 보입니다. 가벼운 모델에서는 매 프레임을 그릴 때마다 물체의 모양을 똑같이 유지하는 것이 매우 어렵습니다.
그래서 Figure 3의 다음 단계인 Pass 2가 필요하게 됩니다. Pass 1이 만든 "공이 떨어진다"는 움직임 정보(광학 흐름)를 받아와서, 그 길을 따라 공의 모양이 찌그러지지 않도록 빳빳하게 펴주는 작업을 하는 것입니다. Figure 3의 가장 오른쪽 최종 결과물에서 공이 다시 동그랗고 단단하게 보이는 이유는 바로 이 Pass 2의 보정 덕분입니다.

우선 쿼드마스크를 생성하는 과정은 쿼드마스크는 시뮬레이션에서 생성하기 쉽지만, 실제 세계의 사용자는 일반적으로 삭제하려는 객체에 대한 간단한 이진 마스크 만 제공합니다. 이 간극을 메우기 위해 VOID는 추론 시 쿼드마스크를 자동으로 구축하기 위해 VLM 및 SAM를 포함하는 파이프라인을 사용합니다.
사용자는 지우고싶은 부분 몇부분을 클릭하고, Segment Anything 3로 클릭한 물체 마스크를 생성하고요 VLM에게 영상과 마스크 보여주며 질문을 던집니다
"이 물체 지우면 어떤 것들이 영향받아?" VLM은 공이 영향받고, 공은 어떻게 될것이다를 예상합니다. 영상 위에 격자(grid)를 깔고 VLM이 위치 예측을 하고 두 영역(현재 위치 + 이동할 위치)을 합쳐서 → Ma (영향 영역 마스크) Mo(지울 물체) + Ma(영향 영역) 조합 → Quadmask 완성
즉 지울 객체이자 효과가 동시에 적용되는 어두운 회색과, 변경된 물리법칙이 적용된 밝은 회색부분이 SAM이 관여하여 쿼드마스크를 생성합니다

쿼드마스크가 준비되면, 모델은 두 번에 걸쳐 비디오를 생성합니다.
첫 번째 단계인 Pass 1에서 모델은 쿼드마스크와 원본 비디오를 바탕으로 객체가 제거된 후의 반사실적 궤적을 생성합니다. 반 사실적이라 하는 이유는 공이 중력에 의해 떨어진다는 시나리오를 포착하는 데는 성공하지만, 이때 생성된 객체들은 자세히 보면 프레임마다 살짝씩 찌그러지거나 늘어나는 구조적 변형을 보이는 한계가 있습니다. 이는 CogVideoX와 같은 확산 모델을 사용하는데, 이 때 새로운 물리적 움직임을 생성하면서 동시에 객체의 시간적 일관성과 강성을 유지하기 어렵기 때문입니다. 물리적 궤적은 올바르지만, 객체가 찌그러짐·늘어짐 같은 구조적 변형이 발생한다는 의미입니다.이 문제를 해결하기 위해 VOID는 두 번째 단계인 Pass 2를 선택적으로 적용합니다. VLM이 “동적 변화가 크다” 라고 판단하면 Pass 2를 실행하고, 그렇지 않으면 Pass 1만으로 충분합니다.
먼저 Pass 1의 결과 영상에서 광학 흐름을 계산하여 각 픽셀이 시간에 따라 어떤 방향으로 움직였는지를 파악합니다. 이 움직임 정보를 활용해 가우시안 노이즈를 해당 방향으로 미리 왜곡하여 z_warp를 만들고, 이를 다시 모델에 입력하는 것입니다. 즉, 모델에게 "이 방향으로 이동하면서 생성하라"는 힌트를 미리 주어 움직임에 대한 부담을 덜어주는 것입니다. 결과적으로 Pass 2는 물리적 궤적은 그대로 유지하면서도, 객체가 찌그러지지 않고 동그랗고 단단한 형태를 보존할 수 있게 됩니다. 이 두 번째 단계는 VLM이 제거로 인한 동적 변화가 크다고 판단할 때에만 실행되며, 단순히 정적인 객체만 지우는 경우에는 Pass 1만으로도 충분하여 계산 효율성을 높입니다. Figure 3에서 보듯이 Pass 1의 결과는 궤적은 올바르지만 객체가 변형되어 있고, Pass 2를 거치면 그 움직임은 유지된 채 객체의 강성이 자연스럽게 복원되는 것을 확인할 수 있습니다.
다시 abstract부터 methodology까지 좀 더 상세히 읽습니다. 이번에는 이해가 안되는 부분이나 궁금한점을 함께 메모하며 읽습니다. 방법론까지 이해 되었다면, 실험 &결과 파트로 넘어갑니다.3. Result
Experiment & Result는 비판적으로 읽습니다. 논문은 자신의 연구 결과가 좋다는 것을 강조하기 위해 예쁘게 포장되어 있습니다. 우리는 그 포장을 뜯어서 실체를 보는 연습을 해야 합니다. 저자들의 분석을 읽어보되, 그들의 분석이 타당한지, 문제 해결의 목적에 부합하는 결과가 나왔는지, 저자들이 보여주지 않는 이 방법의 단점이나 한계점은 없는지, 실험 결과로부터 얻을 수 있는 인사이트는 무엇인지 고민하며 읽습니다. 잘 떠오르지 않는다면 끙끙대며 시간 낭비하지 말고 다음 단계로 넘어갑니다.
결론은 다음과 같습니다. 아직 해상도적인 측면이나 한계점이 분명 존재해서 프로젝트에 활용까지는 힘들지 않을까? 라고 생각했는데, 교수님께서 주신 피드백은 길게본다면 컴퓨팅 방식도 계속 빠르게 변경되고있고, 이러한 방법론을 평면적 콘텐츠에만 향유되도록 하지 않고 계속 확산이 되고 있으니, context를 보완해서 dynamic을 자연스럽게 일어나는것이 실시간으로 된다면? VR같은 매체에서도 인터렉션할 수 있지 않을까? 이러한 다양한 방법론을 생각해보며 더 파보는것도 좋을 것 같다고 하셨습니다.
뭔가 처음으로 제대로 공부해본 논문이라 이렇게 소개드리고 싶었는데, 쉽게 설명을 해보려고 했는데.. 다들 간단하게라도 읽어보시고 흥미를 가지시는 글이 되면 좋겠습니다. 그럼 다다음주에 뵙겠습니다 :)