Professional Documents
Culture Documents
Ocula
Ocula
Intro(개요)
3D영화는 처음 시도부터 인상적인 안경과 함께 연출적인 표현과 두통을 유발하는 영상으로 색다른 맛을
가지고 오랫동안 연구되어 왔다. 더 넓게 나가자면, 이 분야에서 처음부터 등장했던 문제점들을 없애기
위해서 촬영과 영사 기술의 발전이 폭넓게 이루어져 왔다. 그러나 합성 과정동안 많은 부분을 신경써야 하며
이 작업이 제대로 이루어지지 않았을 경우는 청중이 보기 힘든 영상이 나올 수 있다. 이 문서에서는
입체영상을 제작하는 과정에서 대체적으로 맞부딪히게 되는 문제점들을 설명하고 어떻게 Nuke와의 조합으로
3D 입체영상을 만들어내는 Ocula plug-in이 어떻게 이 문제들을 해결하는 지에 대해서 설명해 보고자 한다.
어떻게 3D입체영상을 제작하는 지에 대한 개요로 시작하여 3D 입체 영상의 제작 간 문제점에 대한 설명 및
Nuke와 Ocula가 어떻게 도움이 되는 지 알아보자.
영화 화면 안에서의 의미는 우리가 평면 영화 화면에서 양눈에 의해서 차이가 생기는 그림을 보여주는데
있어서 깊이를 감지하는 시각정보가 틀어 질 수 있다는 사실이다. 마치 3D 영화의 전성기처럼 보이는 요
근래에는 다르게 양극화 된 빛을 사용하여 양쪽 눈에 보여줌으로써 이룰 수 있는 사실이다. 청중은 변환된
이미지를 필터링 하는 동안 정확한 이미지를 양쪽 눈에 보여줄 수 있는 입체 안경을 써야만 한다. 가장
편안히 시청하는 방법은 우리가 현실세계에서 보는 것과 가능한 한 가장 유사하게 차이를 줄이는 방법을
제공하여 시각기관에 과도한 무리를 줄이는 방법이다. 하지만 극장에 가서 시청을 하게 되는 주요한 이유중
하나인 극장용 화면의 크기와 위치와 같은 물리적 제한뿐만 아니라 이야기를 전달하는데 쓰이는 여러 가지
기법 때문에라도 현실세계에서 보는 것과 같이 나타내는 방식은 불가능하다. 예를 들자면 영화의 한 씬중
가장 현실감 나는 표현을 묘사하는데 있어서 평균 성인의 눈과 눈 사이의 거리와 같은 거리로 같은 카메라 두
개로 촬영을 하여 접근할 수 있다. 그리하여 이 유사성을 최대한 보장한 상태로 보여준다. 하지만 이렇게
제작된 입체영상은 지루하기 그지없다. 예를 들어서 저 멀리 광활한 대지에 산들이 늘어서 있는 경관을
상상해 보자. 거리 때문에 평균 성인의 눈과 눈 사이의 거리와 같은 거리로 같은 카메라 두 개로 촬영을 하여
비슷하게 두 개의 이미지를 만들어낸다고 치자. 그 결과는 산들이 완벽하게 평면으로 보이는 이미지가 생성될
것이다. 분명히 현실성이 있는 모습이지만 화려한 영화를 보러온 관객들에게 실망을 안겨줄 것이다.
산 경관의 장관을 최대화 하기 위해서 촬영을 할 때에 카메라 사이의 측간(interaxial)을 늘려줄 필요가 있다.
양 눈 사이의 거리에 비례하여 보통 사람의 시야로 보는 산이 아닌 아닌 청중의 입장에서 생각한다면 똑같은
씬을 보는데 있어서 효과적으로 3차원 영상으로 볼수 있게 된다.
수직 미조정(Vertical Misalignments)
한 씬에서 우리 양쪽 눈에 보이는 같은 점의 위치 차이는 “입체 차이”라고 한다. 우리 눈의 구조상
수평적으로 왼쪽과 오른쪽의 눈이 분리되어 있기 때문에 우리의 눈에는 이런 차이가 완벽하게 수평으로
일어나게 된다. 다른 경우인 수직 차이는 실제 세계에서는 잘 일어나지 않는 경우이며 우리 눈으로 인지하기
힘들 정도이다.
하지만 3D 입체영상을 만드는 과정사이에서 일어나는 수평적인 이미지 차이는 자주 일어나게 된다.
한 프로젝터가 두 개의 이미지를 동시에 보여주는 디지털 영상 조사(Digital projection)의 출현 전에는
수직적으로 완벽하게 일치하지 않는 두 개의 프로젝터를 이용하여 보여주는 방식으로 두 가지의 이미지에서
수직 차이가 일어나 청중이 불편함을 느끼게 된다. 그러나 디지털 영상 조사 방식으로
조사조절두통(projection alignment headache-생리적인 불편함)이 사라진 지금도 촬영 중간중간에 가끔
등장하게 된다. 왼쪽과 오른쪽 카메라는 물리적으로 정확히 수직선상에서 일치할 수 없을 뿐 아니라 다른 한
쪽으로 기울 수도 있다. 이런 문제는 약간은 카메라 설정의 조절이 만들어 내기도 한다. 3D 촬영은 우리의
시각기관이 한 점을 바라보는 방법을 흉내낸 것으로 두 대의 카메라가 각각 정면을 촬영하여 각각의 시점을
한 점으로 집중시킨다. 이 두 대의 카메라가 한 각각의 정면으로 각을 만들었을 때, 두 개의 이미지가 설정
되있는 물리적 평면이 각각의 각도를 잡고 보여준다. 정면과 약간 다른 각에서 보는 것은 원래의 이미지와는
조금 틀린, 시각적 왜곡 현상을 발생시킨다.(Picture 1) 이런 방식의 왜곡을 "Keystoning"이라고 하며 각각의
이미지들에 대해서 약간의 수직 차이를 야기한다. 이 차이는 아주 약간이나 큰 화면으로 전환 했을때에
문제점이 발생 할수 있는 요소가 된다.
Picture 1: Keystoning
이것이 바로 Ocula plug-ins for Nuke가 탄생하게 된 배경이다. Ocula는 입체 Footage에서 발생하는 가장
일반적인 문제점을 수정하는데에 적합한 툴집합이며 이와 관련한 툴로는 VerticalAligner가 있다. 처음에는
각각의 이미지에 매칭포인트에 대한 감지를 실시한다. 그리고 이 매칭포인트들을 가장 수평적으로 일치가
되도록 계산하여 적용한다. 이 결과가 수직 차이를 제거하고 영화 감상중에 일어나는 생리적인 불편함을 없앤
한 쌍의 이미지이다. 가끔, 수직선 정렬이 입체제작 pipeline상에서 가장 첫 번째 이 되기도 하지만
Ocula의 VerticalAligner는 이런 작업상에서 몇 번의 마우스 클릭만으로 힘들게 작업해오던 내용과 마찬가지의
효과를 얻을 수 있다.
입체의 합성간 두가지 시점 사이의 대응을 교정하여 유지하는 것이야 말로 핵심이다. 어떠한 차이라도 또는
이 과정에서의 교정유지 실패가 post production 단계에서 발생하면 시청자가 3D 입체 장면 관람시에 뇌에서
인지하는 두가지 이미지의 결합간에 큰 어려움을 겪게 된다.
Nuke의 입체영상 워크플로우는 가능한 간단하게 각 시점들 사이의 대응을 유지하도록 고안되어 있다. 왼쪽과
오른쪽 시점은 하나의 이미지 스트림으로 불러올 수 있으며 또한 필요할 시에는 이 합쳐진 이미지 스트림을
각각의 이미지 스트림으로 불러와 작업 할 수 있다. 이 말은 한 방에 블러 또는 컬러 그레이드와 같은 전역
효과를 양쪽 시점 모두 동시에 적용할 수 있으며 이 효과들은 각 이미지에 동일하게 적용된다. 반대로 실사
footage에 CG캐릭터를 추가하는 등의 위치 기반의 조작을 하는데 있어 각각의 이미지 사이에 존재하는
positioning right를 구별하여 보호하는 방법의 중요성이 입증된다. 이에 따라 Nuke의 “Split and Join”
Node가 입체 스트림을 각 시점별로 분리시키며 이 두 시점을 각각 따로 작업하여 다시 한 이미지 스트림으로
결합시킬 수 있다. 그 말은 언제든지 한 개의 스트림으로 작업 또는 다시 스트림을 나누어 작업하고 재결합
할 수 있다는 말이 된다.
The Ocula plug-ins도 마찬가지로 3D 입체 씬에서 정확히 표시 되어야 하는 새로운 요소들의 시점기반
포지셔닝 같은 정밀 작업에 유용한 plug-in이다. Ocula의 중요 구성 요소는 각 왼쪽과 오른쪽 시점에 대한
픽셀 투 픽셀 대응의 맵을 제작해주는 DisparityGenerator이다. 왼쪽에서 오른쪽으로의 차이는 정확한 시점 및
오른쪽에서 왼쪽으로의 차이와 비슷하게 만들기 위해서 얼마나 많이 픽셀들이 왼쪽 시점에서 움직여야 하는지
알려주는 역할을 한다. 이 두 개의 맵은 간단히 각각을 역전시킨 것이 아닌 이유가 왼쪽 이미지에서의 어떤
부분은 가끔 오른쪽 이미지에서 가려지기도 하는데 이는 그 반대도 마찬가지이다. 시점영역(Field of View)의
모서리는 단 한 쪽의 이미지에서만 볼 수 있는 영역이다.
Nuke는 한쪽에 그려진 Roto 또는 paint stroke와 같이 사용자 지정 추가요소를 disparity map을 사용하여
다른 시점의 이미지에 맞는 적절한 위치에 자동적으로 복사해 넣는다. 이로써 두 번을 작업해야 하는 시간을
절약하며 정확한 위치에 사용자 지정 요소가 복제된 사실을 알 수있다. 시각에 따른 차이를 보기 때문에 이
요소들은 두 번째 시점에서 정확한 모양을 잡기 위하여 주기적으로 변형이 필요하다. Nuke는 이 요소들을
두가지 방법으로 변형이 가능한데 처음으로 가장 간단하게 하나의 시점에서 다른 시점으로 차이
벡터(disparity vector)를 따라가는 방식이다. 변형적으로 가려진 에어리어를 예로 들자면 차이 벡터는
전체적인 윤곽을 잡아주는 역할을 하지 못한다. 그때에 “Correlate using Ocula” 옵션은 요소의 대략적인
연관성 있는 위치를 찾기 전에 차이 벡터를 따라가게 된다. 그리고 두 번째 시점의 가장 최적의 장소를
계산하여 결정한다.
카메라가 3차원 장면으로 촬영되었다면 picture 4처럼 각각의 오브젝트들은 한 시점에서는 보이나 다른
시점에서 그렇지 못한 부분이 생길 수 있다. 가장 중요한 부분은 보이나 그렇지 않은 부분은 보이지 않는데
이때에 왼쪽 시점에서 오른쪽 시점으로의 카메라가 이동한다고 가정한다면 문제가 되는 것은 이 가려진
부분이다. 한쪽면에서는 보이나 다른쪽 면에서는 보이지 않는, 또는 그 반대의 경우도, 카메라 촬영간 가장
중요하게 접근해야 하는 문제이며 사물이 멀리에 있는 것처럼 보일 수 있는 문제도 가지고 있다.
그리하여 만약 감독이 post 단계에서 씬의 깊이감을 조절할 필요를 느끼게 되면, 모든 보이는 영역을 각각
다른 수치로 조절해야 하는데 양쪽의 이미지 사이의 차이를 계산하여 할수 있으며 이 모든 행동이 우리가
생각하는데로 조절 가능하다. 하지만 실제적인 문제는 숨겨져 있던 부분이 조절 후 보이게 되는 잃어버린
정보의 영역이며 이 잃어버린 정보는 우리가 알수 없는, 새로운 위치에서의 정보이기 때문에 유추
불가능하다. 그러나 다른 카메라로는 이 잃어버린 정보에 대해서 또한 어떻게 영역을 둘러 싸고 있는지를
다른쪽 시점을 통해 알수 있다. 또한 우리는 사실 이미지가 어떻게 될 것인지 적절한 이유로 볼 수 있으며
이것이 바로 Ocula's InteraxialShifter가 하는 일이다. InteraxialShifter는 확연한 깊이감을 줄여주는데 도움을
주며 만약 각 카메라가 원래 있어야 하는 위치보다 더 가까이에서 촬영을 하게 되었을 경우의 문제점도
바로바로 수정이 가능하다. 이 가려지는 문제 - 측정된 차이는 100%의 정확하다고 할수 없는 사실을
포함해서 - 이 새로운 2개의 시점은 완벽하지 않으나 빠르고 쉽게 만들 수 있으며 약간의 수동작업만 하면
된다.
그러나 post에서의 측간 분리의 감소 기술은 볼만한 3d 영화의 제작에서 불필요한 부분이 아니다. 깊이감의
조절이 있었다면, 사람들의 눈이 가상 환경의 새로운 범위를 조절하는 데에 시간이 필요하다. 이 이유 때문에
각기 다른 깊이감을 가진 씬 사이에서의 빠른 컷 전환은 피해야 할 것이다. 인접한 씬의 깊이감 조절을
겸해서 촬영 전 전체 영화에 대한 깊이 타임라인을 기획하지만 각 촬영장면의 순서는 편집간 변화가 일어 날
수 있는것이 현실이다. 이 경우 깊이를 움직여 줄 필요가 있으며 그리하여 인접한 씬의 깊이 범위가 서서히
라인으로 들어 갈 수 있다. 만약 이 작업이 충분히 완료가 되었으면 시청자는 인지 할수 없으나 갑작스럽게
불편함을 느낄 수 있을 것이다.
Convergence(집중선)
이 맥락에서의 집중을 말하자면, zero 입체 차이(zero stereo disparity) 또는 zero 시차(zero parallax)를
의미한다. 많은 3D영화들이 집중되는 카메라보다는 장면의 시점이 나란히 되는 평행으로 설치된 카메라로
촬영을 한다. 이 상황에서 “convergence"또는 zero 시차의 포인트는 양쪽 시점에서 장면의 초점이 같은
위치로 이동 할때 까지 이미지들을 이동시키기 위해서 post에서 설정한다. 그리하여 입체 차이가 0으로
변환되는 것이다. 이 부분이 영화관에서 상영된다면 이 부분은 화면 깊이로 나타나게 된다. 다른곳에서 왼쪽
시점에서의 씬의 어떠한 부분이라도 오른쪽 시점에서 위치의 오른쪽이 면 앞에서 나타나게 된다.(negative
parallax) 왼쪽 시점에서의 어떠한 포인트도 오른쪽 시점에서는 왼쪽스크린 뒤에서 나타나게 된다. (Positive
Divergence(발산)
Divergence는 장면을 확실히 보기 위해서 시청자의 눈이 각각의 시점을 돌릴 필요가 있는 양시각(positive
parallax)의 양이 각 시점 사이에서 너무 크게 존재 할 때에 발생한다. 사실적으로 이는 보통의 시야에서는
발생하지 않는 문제이며 우리 시각 기관의 구성은 이런 식의 문제점을 만들지 않도록 설계되어 있다. 그러나
완벽하게 이 문제를 제거하는 것보다는 나은 것이 일반적으로 1도 미만의 각도의 작은 양의 발산은 오히려
많은 사람들에게 있어 3D영화를 보는데에 더 나을 수 있다는 것이다.
영상이 출력되는 스크린의 크기 또한 3D 입체 장면의 또렷한 깊이에 영향을 준다, 더 정밀하게는 시청자와
화면까지의 거리와 화면의 비율이 시청자가 보는 깊이감을 정하게 된다. 이 비율은 영화관에서 사람이
극장에서 보는 비율과 아티스트들이 작업하는 컴퓨터 스크린의 비율과는 같지 않기 때문에 단순히 컴퓨터의
스크린에서 더 큰 극장의 스크린으로 입체 영상을 옮기는 것은 단순한 비율 계산에 따라 이루어 지는 것은
아니다. 사실 데스크탑에서 보여지는 평평하고 밋밋한 화면이 영화 스크린으로 옮겨지게 되었을 때에 더
실감나는 영상을 제공 하나 이 말은 또 다른 의미로 아티스트들이 작업을 하는 컴퓨터의 모니터 화면으로 볼
때 이상이 없었다 하더라도 극장에서 발산을 야기 할 수 있는 의미로 해석 될 수 있다는 의미다. 그리하여
언제나 스크린 사이즈를 염두에 두고 작업을 해야 한다.
Ocula의 ColourMatcher는 이 두가지 상황들에 대한 해답을 제시해 준다. 처음으로 전역 색상 매치는 두가지
시점의 색상 분배를 맞추게 되며 첫 번째 문제에 대한 해답으로 약간 어긋난 전역 컬러 스펙트라(global
colour spectra)에 대해서 효과를 발휘한다. 두 번째로 colourMatcher는 또한 지역에 대해서 색상차가 양극화
된 부분을 더욱 자세하게 교정하는데에 효과적이다. 이 모드에서는 ColourMatcher가 차이맵(disparity Map)을
사용하여 두 이미지에 해당하는 픽셀들을 조절해 준다. 그리고 사각형 패치들로 장면을 나누고 한 이미지의
각 패치들의 색상 분배 다른 장면의 패치에 해당하는 색 분배를 맞추는 작업을 하게 된다. 이 패치의 크기는
사용자가 원하는 데로 최적의 결과를 얻기 위해서 조절이 가능하다. 이 지역 메소드는 뛰어난 성능을
자랑하며 한쪽에 하이라이트가 들어가있고 다른쪽에 안들어가 있는 이미지의 빛에 대한 노출 같은 경우도
잡아 낼 수 있다.
Weta의 몇몇도 Ocula의 광대한 사용범위에 대해서 말한다. “아바타 작업간 사용한 Ocula plug-ins for
Nuke가 강한 인상을 심어주었으며 대단히 유용했습니다.” 합성 슈퍼바이져 Erik Winquist의 말이다. “Ocula
플러그인 없이 다른 입체 영상 작업으로 뛰어들고 싶지 않군요.”
CafeFX도 Nuke와 Ocula를 The Final Detination의 작업간 사용했다. VFX의 슈퍼바이져인 Tom Williamson은
Williamson
은 Ocula의 사용 간 VerticalAligner 와 Nuke에서 제공하는
Correlate facility를 인상깊게 봤다. “Vertical Alignment는
Ocula에서 너무나 뛰어난 기능입니다.” “제대로 조정되지
않은 양쪽 시점을 복구 또는 Keystoning 효과를 주거나 할때
footage의 사용을 Ocula에서 했습니다. tremendous도 연관
성이 있는 플러그인인데 이것은 많은 부분에서 페인트 작업
또는 로토스코핑 작업간 수동으로 해야만 했던 일들에 대해서
많은 도움을 주었습니다. 페인트, 로토, 또는 폴리곤 모양등의
이미지 변환을 자동적으로 다른 쪽 채널에 옮겨주었습니다.
단지 극적으로 제작능력을 향상 시킨 것 뿐만 아니라
결과물도 좋았다고 말했다. ”Ocula 이전에는 이런 작업들을
분할해서 각각의 양쪽 시점에 해주었습니다.“ Williamson은
언급했다. ”사람의 시각은 차이를 찾아내는데 탁월합니다.
하지만 Ocula는 초인적으로 sub-pixel 단위까지 내려가 작업
할수 있습니다.“
Summary(요약)
3D 입체 영상의 합성은 경험이 풍부한 아티스트들에게도 많은 새로운 도전을 펼쳐 놓고 있다. 이 합성작업을
위해 Nuke 및 Ocula와 같은 확실한 툴의 사용이 이런 문제점 및 최고의 결과를 이끌어 내는데에 도움을
주는 것은 당연한 일이다. Nuke의 입체 워크플로우는 하나가 아닌 두 개의 이미지 스트림으로 작업하는 데
있어서 연관되는 문제점들을 제거하는데 도움을 주며 Ocula 툴의 VerticalAligner와 ColourMater와 같은 툴은
그 전에 수동적으로 작업했었어애 했던 부분을 자동화 해준다. 추가적으로 Ocula의 stereo disparity
generation기술은 양쪽 시점사이의 정밀한 상호성을 보호해 주는데 도움을 주어 시청자에게 있어 입체 영상에
의해서 고통을 받던 부분을 없애고 탄성을 지르게 할 것이다.