구면 파노라마를 제작할 때, 가장 까다로운 부분 중의 하나가 바닥을 처리하는 것입니다.
360*180 VR 파노라마 촬영방법에서 설명한 것처럼, 삼각대와 로테이터만 있으면 모든 방향을 빠짐 없이, 정확하게 촬영할 수 있습니다.
하지만, 바닥은 삼각대를 치우고 손으로 촬영하여야 하기 때문에 카메라의 가상 렌즈초점(노달 포인트)를 맞출 수 없습니다. 따라서 합성(스티칭)을 하면 뒤틀어지거나 촬영자가 남게 되는데, 이를 편집하기가 까다롭기 때문입니다.
지금까지 제가 바닥을 처리하는 방법에 관해 아래와 같이 4개의 글을 썼지만, 아직도 만족스럽지는 않아 또 다른 방법을 테스트해봤습니다.
오늘 소개시켜드릴 방법은 Panotools라는 포토샵 플러그인을 사용하여 처리하는 방법입니다. 예전에도 이 Panotools을 사용하는 방법이 정리된 글(예 :
cubicpan.co.kr의 매뉴얼)들이 있으나, 구 버전을 기준으로 하여 약간은 번거러운 작업이 필요했는데, 아주 간단히 사용할 수 있습니다.
PanoTools Plugin 설치방법
먼저 Panotools 최신버전(2007년 4월 버전)은
여기에서 다운로드 받을 수 있습니다. (예전 버전을 사용해도 사용법은 동일하지만, 안정성이 약간 떨어지는 듯 합니다. 최신버전이 속도도 향상되었고, 메모리 관리 방식도 바껴서 큰 영상도 처리할 수 있게 되었습니다.)
이 프로그램은 설치프로그램이 제공되므로, 다운로드를 받은 후 압축을 풀고, setup.exe를 실행시키기만 하면 됩니다. 이 프로그램을 실행시키면 Windows/system32 에 pano12.dll이라는 파일이 복사되고, 포토샵 프로그램에도 아래와 같은 디렉토리이 자동 생성됩니다. (기타 여러가지 도구도 설치됩니다.)
C:\Program Files\Adobe\Adobe Photoshop CS2\Plug-Ins\Panorama Tools
참고로, 구버전 사용법을 보면
PanCntrl.zip 이라는 파일을 별도로 받아 위에서 생성된 디렉토리에 복사해서 넣어주라고 되어 있지만, 전혀 그럴 필요가 없습니다.
이런 준비를 마친 후, 포토샵을 실행시키면 Filters 메뉴 제일 하단에 아래와 같이 "Panorama Tools"라는 메뉴가 추가됩니다.
PanoTools Plugin 사용방법
PanoTools에 들어 있는 4가지 필터중, 바닥처리에 사용되는 필터는 PTAdjust입니다. 이 필터를 실행시키면 아래와 같은 다이얼로그 박스가 뜨는데, 먼저 Prefs 단추를 눌러줍니다.
이 버튼을 누르고 들어가면 아래와 같은 화면이 뜨는데, 결과 파일을 처리하는 방식을 설정할 수 있습니다. 대략 아래 화면에서 보이는대로 설정하면 문제없이 사용하실 수 있습니다. 특히, 기존 나와있는 방식에서는 (a)를 체크하라고 되어 있지만, 그럴 필요가 없습니다. (a)를 체크하면 원본 영상이 변환된 영상으로 대체되는데 이 영상은 필요가 없기 때문입니다. (a)를 클릭하지 않으면 원본 영상이 계속 남아 있게 됩니다.
자세한 내용을 보시려면 아래 more...를 눌러보세요.
more..
(a) 포토샵 플러그인 인터페이스는 이미지 윈도의 크기 변경을 허용하지 않는다. 이 옵션을 설정하면 원본 영상이 없어지고 작업 결과가 표시된다. 영상의 크기가 변경되지 않거나, 윈도 경계 바깥 영역이 필요하지 않을 경우 이 옵션을 사용하는 것이 좋다.(The Photoshop plugin interface does not provide resizing of an image window. If you choose this option, the result of an operation is displayed in the same
window as (and replacing) the source image. This option is recommended if the image size does not change or if the area outside the window bounds is not needed.)
(b) 영상의 크기가 변경될 경우 이 옵션을 선택하는 것이 좋다. 여기에서 설정한 파일명은 동일한 파일명이 있을 경우 새로운 번호가 추가되어 새롭게 설정되므로, 여러번 작업한다고 해서 새로운 이름을 지정할 필요는 없다. 파일 포맷은 PSD 이다. (If the image will get resized this option is recommended. The file name
you provide here is extended by a number in case there will be more
than one file - no need to specify different names if you want to save
multiple results. Files will be in PSD format)
(c) 저장된 결과 파일을 이 옵션에서 지정한 어플로 열도록 지정하는 옵션으로서, (b)를 체크했을 때만 의미가 있다. 일반적으로 Photoshop 등의 이미지 에디터를 지정한다. (This only makes sense if you choose (b) too. The saved result will be
opend by the application you specify here (with full path). This will
normally be your image editor (Photoshop or whatever).)
(d) 마스크(mask)를 사용할 수 없는 photoshop LE 버전을 위한 특별 옵션이다. 마스크를 지원하지 않는 다른 어플을 사용할 경우에도 유용하다. (This is a special option for old photoshop LE, which was not able to
deal with masks. It might be useful for other applications that don't
use masks, too.)
More: Preference 다이얼로그 박스 오른쪽 위에 'More'라는 작은 단추가 있다. 이 단추를 누르면
내삽 연산자(interpolator) 와
감마(gamma) 값을 설정할 수 있다. 상세한 설정방법은 Helmut Dersch 박사가 작성한
내삽 연산자의 품질 테스트 및
내삽 연산자와 감마 보정 등의 논문이나, 포토샵 플러그인에 관한 Readme 파일중
내삽 연산자 선택방법 혹은
감마 보정을 읽어 보기 바란다.
(In the upper right corner of the Preferences filter there is another
small button named 'More'. If you press it, you get a dialog where you
can choose
interpolator and
gamma. See
Testing Interpolator Quality and
Interpolation and Gamma Correction articles by Helmut Dersch for details or read in the Panotools plugins Readme about
Selecting the Interpolator or
Gamma Correction)
이렇게 설정한 후 OK 단추를 누르고, 다시 "Set" 단추를 누르면 다음과 같은 화면이 나옵니다. 왼쪽 밑에 있는 Width, Height 는 원본 파노라마의 크기를 입력하시면 되고, 그 바로 위에 있는 Width, Height는 대략 1/4로 설정하면 됩니다.
이렇게 설정을 한 뒤 OK 버튼, 또다시 OK 버튼을 누르면 다음과 같은 화면이 나오면서 처리가 진행됩니다.
아래는 제가 선유도에 있는 디자인서울갤러리에서 촬영한 영상입니다.
아래는 이렇게 실행한 (PTAdjust 플러그인에서 extract를 선택하고 실행한 상태) 결과입니다. 보시는 것처럼, 삼각대와 로테이터를 수직으로 내려보는 상태로 변환되었습니다.
그 다음은 바닥면을 촬영한 사진을 불러들일 차례입니다. 아래는 제가 촬영한 바닥사진입니다. 그런데, 이 사진을 그냥 사용하기는 힘듧니다. 10.5mm 어안렌즈를 사용하여 촬영했기 때문에 아래에서 보시는 것처럼 바닥선이 직선으로 보이지 않기 때문이죠.
어안렌즈로 촬영한 사진을 일반 사진처럼 변환해 주는 Capture NX (니콘용)을 사용하면 이러한 왜곡을 없앨 수 있습니다. 아래는 Capture NX로 위의 사진을 불러들인 모습입니다.
아래와 같이 렌즈조정을 눌러주시면 왜곡이 사라집니다. 이런 과정이 불편하시면 바닥사진만 일반렌즈로 갈아끼우고 촬영할 수도 있습니다만, 아무래도 번거럽겠죠.
이 파일을 포토샵에서 불러 온 후, 아래처럼 바닥에 해당되는 부분만 잘라냅니다.
이렇게 잘라낸 파일을 바닥사진에 붙여넣기를 하고, 투명도를 50%정도로 설정하면 아래와 같게 됩니다.
방향도 크기도 맞지않죠? 당연한겁니다. 레이어에 있는 아이콘을 Control+클릭 하시고, Edit->Free Transform을 눌러주면 아래와 같이 보입니다.
이 상태에서 먼저 대충 회전을 한 후, 동일한 점을 찾고, 가운데에 보이는 동그란 마크(회전 중심점)을 그 점에 가져다 놓고 정확히 회전을 시키고 좌우측 핸들을 조정하여 같은 위치, 같은 크기로 맞춰줍니다.
그러나, 아무리 잘 맞춰도 모든 부분을 정확히 맞출수는 없습니다. 워낙 촬영방향이 다르기 때문입니다. 따라서 일부분씩 정확히 맞추고 작업을 한 후, 다른 부분은 약간 옮겨서 새로 작업하는 방식으로 처리하는 게 좋습니다.
아래는 작업을 완료한 후 레이어의 상태입니다. 대략적으로... 일부분만 먼저 편집을 하고, 편집이 안된 부분을 복사->붙여넣기를 하고 그 부분을 처리하는 방식으로 여러번 나누어 편집을 했습니다. 아울러 레이어 아래에 있는 "Add Vector Mask"를 눌러 전체를 안보이게 만든 후, 마스크(Mask) 부분에 흰색을 덮어 씌워서 일부분만 보이게 만들었습니다. (이렇게 편집하는 방법은
구면 파노라마의 고스트현상을 없애는 방법에서 설명한 것과 동일합니다.)
물론 이런 방식 말고도 편집할 수 있는 방법은 아주 많을 겁니다. 편한 방법을 사용하시면 됩니다.
아래는 편집이 완료된 바닥의 모습입니다. 완전 감쪽같죠? ㅎㅎㅎ 작업이 끝난 뒤에는 Layer->Flatten Image를 눌러줘서 합쳐줘야 합니다.
마지막으로 이 바닥을 원본에 덧씌위야 합니다. PTAdjust Plugin을 이용해서 이 작업을 할 수 있습니다. 다만, 이때는 아래와 같이 extract가 아닌 insert를 선택한 뒤 OK를 눌러주시면 됩니다.
아래는 이 작업이 완전히 완료된 후, 포토샵의 상태입니다. 맨아래 창은 바닥 처리전, 그 위에 있는 창(ptool_result3.1.psd)는 바닥처리가 완료된 것입니다.
아래는 이렇게 완성된 구면 파노라마(Spherical Panorama)를 360cites.net에 올린 것입니다. 좌측 위체 있는 Full Screen을 누르고 보시면 좋습니다.
Design Seoul Gallery, Seonyu island in Seoul====
이렇만 사용하면 대충 Pano Tools를 이용하여 어렵지 않게 구면 파노라마의 바닥을 처리하실 수 있을 겁니다. 한 두번만 연습해 보시면 그리 까다롭지 않다는 걸 아실 겁니다.
그런데, PanoTools는 바닥만 처리하는 목적이 아닙니다. 아래는
큐빅판(www.cubicpan.com)의 주인장분이 올리신
부산해수욕장 구면 파노라마인데요, 아래 사진에서 갈매기들은 모두 합성한 것이라고 합니다. 이렇게 다른 이미지를 합성을 할 때, 위치에 따라 크기나 방향이 모두 달라지게 되므로, 원본 파노라마 사진을 편집하는 것은 거의 불가능에 가깝습니다. 이럴 때 PanoTools로 원하는 지점을 중심으로 위에서 설명한 방법을 적용하면 자연스러운 합성영상을 얻을 수 있습니다.
처음엔 사용방법이 까다롭지 않을까 싶었는데, 아는 분들 도움도 받고 실제로 해보니 그다지 까다롭지 않네요. 앞으로는 모든 바닥처리를 이런 방식으로 할 것 같습니다.
민, 푸른하늘