사진/360 파노라마

구면(360*180) 파노라마 - PTGui에서 브라케팅 영상 처리하기

하늘이푸른오늘 2009. 8. 1. 21:20
이 글은 얼마 전 올린 멋진 구면(360*180) 파노라마를 위하여 - 조명과 촬영에서 나중에 설명하겠다고 한 내용을 정리한 것입니다.

즉, 구면 파노라마를 촬영할 때에는 수동(M)으로 설정하고 촬영하되, 조명 문제를 고려하여 자동 노출 브라케팅(AE Bracketting)을 사용하여 과다노출/정상노출/부족노출 되도록 여러장의 사진을 촬영하는 것이 좋다고 말씀드렸는데, 이렇게 촬영한 결과를 처리하는 방법을 설명하는 글입니다.

먼저 제가 얼마전 관악산 호수공원에서 촬영한 처리 결과부터 보여드리겠습니다. 자동노출 브라케팅을 사용하여 촬영한 사진들을 PTGui를 사용하여 각각 합성한 결과입니다. 세 세트가 확연히 구분되실 겁니다. (부족노출으로 촬영된 사진도 하늘의 질감이 사라졌네요... 처음부터 노출측정을 잘못한 것 같습니다. ㅠㅠ)

사용자 삽입 이미지

어쨌든, 부족노출(가장 어두운) 사진은 그나마 하늘의 질감이나 전면에 있는 건물이 잘 보이고, 과다노출(가장 밝은) 사진은 어두운 나무그늘 밑이 잘 구분됨을 알 수 있습니다. 이처럼 밝은 부분과 어두운 부분이 섞여 있는 장면에서는 자동 노출 브라케팅을 촬영하여야 그나마 부분적으로나마 디테일이 기록됩니다.

문제는 이것을 하나로 합쳐서 모든 부분이 적절히 디테일이 기록되도록 합성하느냐는 것입니다. 일단 제가 사용하는 방법을 적어 보겠습니다. 물론 최적의 방법이라고는 할 수 없습니다. 저도 아직 배우는 중이니까요.

PTGui에서 스티칭을 할 때는 모든 세트를 한꺼번에 불러들입니다. (일부러 바닥부분은 빼고 불러들였습니다.) 그 다음 Align images...를 누르면 아래와 같은 창이 뜨는데 그림과 같이 설정합니다.

사용자 삽입 이미지

윗부분에 있는 세가지 옵션중 첫번째는 삼각대를 사용하여 오토브라케팅했을 때, 두번째는 삼각대 없이 오토브라케팅했을 때에 선택하라고 되어 있습니다.

아래쪽에 있는 HDR 방법은 "Exposure Fusion" 방법을 선택합니다. Exposure Fusion은 원래의 HDR 파일을 만들어주는 대신, 노출값을 판단하여 적정한 노출이 되는 부분을 판단하여 바로 합성된 영상을 만드는 방법입니다. 머... 사이비 HDR이라고 할 수 있는데, 이 PTGui에서느 LDR 이라고 표현합니다. "True HDR"을 선택하면 HDR 전용 파일이 만들어지고, 이 파일을 Tone Mapping 이라는 방법을 통해 조정해야 하는데, 저는 아직까지 자신이 없습니다. 나중에 더 공부할 예정입니다.

어쨌든... 이렇게 설정을 한 뒤 "OK" 버튼을 누르면 자기가 알아서 세트별로 동일한 위치가 되도록 정렬해 줍니다. Align이 완료된 후 오른쪽 위에 있는 "Advanced>>" 버튼을 누르고 "3. Create panorama..." 버튼을 누르면 아래와 같은 화면이 뜹니다.

사용자 삽입 이미지

특히 LDR 옵션에서 각각의 원본 영상을 변환한 것, 세트별로 합성한 파노라마, 세트 전체를 모아 Exposure fusion을 적용한 파노라마 등을 모두 저장합니다. (아래에 있는 옵션인 "Enblend plugin"은 구면 파노라마의 고스트현상을 없애는 방법이라는 글을 참고)

아래는 세트별로 합성한 파노라마와, 전체가 모두 합성된 사진까지 4개의 사진을 모두 보인 것입니다. 붉은 선으로 두른 것이 Exposure fusion이 적용된 결과입니다. 각각의 사진보다는 훨씬 부드럽다는 걸 아실 수 있을 겁니다.

사용자 삽입 이미지

그런데, 모든 사진을 합성한 결과를 확대해 보면 상태가 별로 안좋습니다. 특히 사람처럼 움직이는 물체가 있으면 자동 노출 브라케팅 처리 과정에서 약간씩 다른 위치에서 촬영되므로,  아래처럼 고스트 현상이 발생하게 됩니다. 나무들도 흔들렸는데, 바람때문인지 아니면 릴리즈를 사용하지 않아서 흔들렸는지 잘 모르겠네요.

사용자 삽입 이미지

어쨋든 이런 상태라면 전체를 합성한 사진은 쓸모가 없으니 각 세트별로 촬영된 사진을 합성하여야 합니다. 아래는 이렇게 처리된 파일의 레이어 정보를 본 것입니다. 맨 아래에는 모든 사진이 합성된 결과, 그 위에는 세트별로 합성된 결과, 그 위에는 각각의 원본이 보이실 겁니다.

사용자 삽입 이미지

이 상태에서 그냥 편집하기는 힘들고 각각의 EV 영상별로 편집을 해야 합니다. 예를 들어 그나마 상태가 제일 나은(마음엔 안듭니다만) EV-1.00 파노라마를 편집하려면, 아래와 같이 레이어를 설정해두고 현재 켜져있는(눈 그림이 있는) 레이어만을 대상으로 구면 파노라마의 고스트현상을 없애는 방법을 사용하여 편집을 합니다.

사용자 삽입 이미지

이렇게 처리한 부분중에서 일부는 다른 세트로 촬영된 영상으로 대체할 수 있습니다. 저는 현재 EV -1.00으로 합성한 영상을 사용하니까, 나무 그늘 밑만 EV 0 혹은 EV +1.00으로 덧씌우는 것이죠. 아래는 EV +1.00에서 사용하는 부분(마스크에서 흰색 부분)과 결과를 보인 것입니다. 이때 마스크가 좌우측 경계에 걸려 있을 때는 동일한 높이가 되도록 주의하셔야 합니다.

사용자 삽입 이미지

아래는 이런 과정을 통해 완성된 영상을 얼마전 오픈된 씨드래곤(Seadragon)으로 삽입한 것입니다. 이 영상은 약 10,000 x 5,000 픽셀 그러니까 50메가 픽셀짜리 사진인데, 아주 부드럽게 확인하실 수 있습니다.


이 사진은 아직 바닥을 정리하기 전입니다. 바닥처리는 여러가지 방법이 있고, 저도 여러가지 글을 올렸지만, 나중에 설명드릴 PanoTools를 이용하는 게 제일 확실 한 것 같습니다.

아래는 최종 처리를 완료하고 360cities.net에 올린 것입니다. FullScreen을 누르면 전체화면에서 감상하실 수 있습니다.


Lake park, Kwanak Mountain in Korea

민, 푸른하늘