구글어스로 파노라마사진 만들기

사진/360 파노라마 2009.02.01 19:13 Posted by 푸른하늘 푸른하늘이

얼마전, 제가 360*180도 파노라마 사진을 몇장 찍어 블로그에 삽입했다는 글을 올렸었는데, 오늘은 구글어스를 이용해서 360*180도 파노라마 사진을 제작하는 방법을 말씀드리겠습니다.

무슨 뜬금없는 소리냐고 하실텐데, 먼저 어떤 건지 보여드리고 시작해야겠네요.

아래가 제가 만든 구글어스 360*180도 파노라마사진입니다. 남산 타워 바로 남쪽 지점으로부터 1 km 상공에서 바라본 모습입니다.

Panoramic View of Seoul City of Google Earth

이런 VR 사진을 만드는 원리를 간단히 말씀드리자면, 어떤 한 지점에서 카메라를 이리저리 돌려가면서 360도를 모두 촬영한 뒤, 파노라마 전용 소프트웨어를 사용하여 한장의 사진으로 합성하는 것입니다. 자세한 내용은 나중에 따로 설명드리기로 하고, 일단 제작하는 방법부터 설명드리겠습니다.

구글어스를 캡처하기

먼저 http://www.geocaching.co.kr/panokml.php를 실행시키면 다음과 같은 화면이 뜹니다. 파노라마 사진을 촬영하는 카메라의 위치를 입력하는 화면입니다. 구글어스를 실행시킨 상태에서, 원하는 촬영지점에 마우스를 가져가면 화면 좌하단에 좌표가 나타나는데, 그대로 입력하시면 됩니다. 미리 입력되어 있는 좌표는 남산타워 500미터 상공입니다.

사용자 삽입 이미지


좌표를 입력한 뒤 [질의 보내기]를 누르면 pano.kml이라는 파일이 작성됩니다. 이 파일을 실행시키면 구글어스가 실행되고, 아래 그림처럼 구글어스 좌측의 위치-> 임시장소에 pano라는 폴더가 생깁니다. 이 kml에는 circle 0, circle 0.3125 등의 폴더 속에 여러개의 위치표지(placemarks)가 들어 있습니다. 이 각각의 위치표지에 카메라의 위치와 촬영방향이 저장되어 있죠.

사용자 삽입 이미지


이제 맨 위에 있는 위치표지를 더블클릭한 후, 잠시 기다리면 지정된 위치로 이동되는데, 이때, 파일->저장->이미지저장(Cntl+Alt+S)를 누르면 현재의 화면이 그대로 저장됩니다. (우측 위에 있는 콘트롤이나 다른 지저분한 것까지 저장되지만 이대로 저장하셔야 합니다.) 아래는 http://www.geocaching.co.kr/panokml.php를 그대로 실행했을 때, 맨 위에 있는 위치표지를 눌렀을 때 나타나는 화면입니다.

사용자 삽입 이미지


이렇게 총 41개의 화면을 저장해야 하는데, image01, image02,..., image41 등으로 일련번호로 저장해 두시면 됩니다. 아래는 이렇게 촬영?된 사진들의 배치를 보여주는 것입니다. Image08은 Image02 바로 윗방향을 촬영하며, Image17까지 총 10개의 사진이 바깥쪽 바퀴를 구성하게 될 것입니다.

사용자 삽입 이미지


이 사진들은 제가 실제로 작업했을 때 사용한 영상들이라서 실제로 서로 약간씩 겹쳐 있는 것을 확인하실 수 있을 겁니다.

파노라마사진으로 합성하기

그 다음으로는 이렇게 저장된 영상을 합성하여 한장의 사진으로 만들어야 합니다. 이를 위해서는 파노라마 제작 전용 소프트웨어가 필요한데, 예전에 파노라마 사진의 원리와 촬영방법이라는 글에서 설명드린 Panorama Factory 같은 프로그램을 사용하여도 되지만, 제가 지금 사용중인 PTGui라는 프로그램으로 설명드리겠습니다. PTGui는 360*180도 파노라마사진 제작 동호회인 VRClub에서 가장 많이 사용되는 프로그램이라고 합니다. (저도 며칠 전 가입했습니다.)

PTGui를 실행시키면 아래와 같은 화면이 뜹니다. 여기에서 Load images...를 누르고, 캡처한 이미지를 모두 읽어들입니다.

사용자 삽입 이미지


그러면 "Camera /lens data"를 입력하는 창이 뜨는데, Cancel을 누르시고, File->Apply Template->Choose Template를 선택한 뒤, 아래의 파일을 읽어들입니다. (꼭 읽어들일 필요는 없습니다)

GoogleEarthTemplate.pts


이렇게 하면 아래와 같은 화면이 됩니다. 여기에서 꼭 신경을 쓰셔야 하는 게 Focal length입니다. 다른 작업을 하면 약간씩 값이 바뀌는데, 항상 30mm로 유지시켜주어야 합니다.

사용자 삽입 이미지


이 화면서에 2. Align images... 를 누르면 한참동안 이미지를 서로 연결시켜주는 작업을 하고, 마지막으로 아래 그림과 같은 창이 뜹니다.

원래 매칭작업이 잘되면, 수평선이 보여야 하는데, 아래처럼 찌그러져 있다면 매칭기준점(Control Point)가 잘못되었다는 뜻이죠. 이런 경우에는 수정이 필요합니다.

사용자 삽입 이미지


2. Align images... 아래에 있는 "control point assistant..."를 누르면, 아래와 같이 기준점 목록이 나타납니다. Distance 부분에 4747.88 등으로 써있는게 오차입니다. 보통 커야 1-2정도 되어야 하는데, 이렇게 큰 오차가 나타났다는 건 뭔가 문제가 있는 것이겠죠.

사용자 삽입 이미지


오차가 큰 것들을 누르면 아래와 같은 화면이 나타납니다. 그림에서 보는 것처럼, 지형에서 매칭된 게 아니라, 구글 로고 및 콘트롤에서 매칭이 발생했습니다. 바로 이것때문에 찌그러진 영상이 되는 것입니다. 오른쪽 아래에서 전체를 선택해서 삭제시켜야 합니다.

사용자 삽입 이미지


이런식으로... 몇번 확인해 보면, 로고가 아닌 지형에서 매칭되었는데도 큰 값이 나타날 겁니다. 그러면 작업을 중단하고, Optimize... 단추를 누릅니다. 중간쯤에 초록색으로 "very good"이라고 떠야 합니다. very good 이라고 뜨지 않는다면 이 과정을 반복해야 합니다.

이렇게 기준점(control point)를 하나씩 눌러보는 것보다, 위에 있는 화면에서 직접 확인하시는 게 빠를 수도 있습니다. 좌측에서 0번 영상을 누르고, 오른쪽에서 매칭된 영상을 하나씩 클릭해 보고, 그다음엔 좌측에서 1번 영상을 누르고 오른쪽에선 그보다 번호가 높은 영상만 체크하는 식으로 하나씩 체크하다보면 약간 시간은 걸려도 확실한 결과를 얻을 수 있습니다.

이렇게 모두 체크가 끝난 뒤, Align Panorama 버튼을 눌러보면 아래와 같은 화면이 나타납니다. 수평선이 찌그러져 있다면 동그라미 쳐둔 부분을 눌러주면 수평으로 됩니다.

사용자 삽입 이미지


이제 파노라마 사진 제작을 위한 작업은 끝난 겁니다. 이 상태에서 Create Panorama를 누르고, 파일의 크기, 파일포맷, 파일명 등을 누르고 "Create Panorama" 버튼을 눌러주면 파노라마 영상이 생성됩니다. Tiff로 저장하는 것이 가장 좋지만, 활용도를 생각했을 때는 jpeg 파일로 만들어주는 게 좋습니다. 참고로 360cities.net에는 jpg 파일만 올릴 수 있습니다.

아래는 이 과정을 통해서 제작된 파노라마 영상을 축소해서 올린 것입니다.

사용자 삽입 이미지


하늘 이미지 합성하기

그런데... 하늘이 허전하죠? 구글어스 4.3부터는 시간도 지정할 수 있고, 실시간 구름도 볼 수 있지만, 그다지 이쁘지는 않아서, 이쁜, 그리고 360*180도 파노라마 사진에 맞는 하늘 사진이 필요합니다. 이런 사진은 turbosquid.com 에서 구할 수 있습니다. 단, 한장당 $5씩하는 유료사진입니다. 저는 VRClub의 최창규님이 가지고 계신 그림을 사용했습니다. 아래는 그 사진(9000*4500)을 축소해서 올린 겁니다.

사용자 삽입 이미지


머... 그러니까... 아래에 있는 하늘 사진을 위에 있는 구글어스 사진 윗부분에 합쳐주기만 하면 됩니다. Photoshop 같은 프로그램을 이용하면 되니까 따로 설명드리지는 않겠습니다.

아래는 최종적으로 만들어진 구글어스 360*180 파노라마 사진을 축소해 올린 것입니다.

사용자 삽입 이미지


파노라마 사진 감상하기

이제 완성되었지만, 사각형 그림은 감상하기가 그렇죠? 360*180도 파노라마 사진을 만드는 과정이 남았습니다. 아래는 맨 위에 넣은 사진인데, 이처럼 360cities.net에 올릴 경우에는 그냥 업로드만 하면 이렇게 볼 수 있으니까 별도의 작업이 필요없습니다.

Panoramic View of Seoul City of Google Earth 

만약 오프라인에서 보려면 아주 여러가지 방법이 있지만, 가장 널리 사용되는 것은 Apple사의 QuickTime 무비로 만드는 것입니다. PTGui에서 Utility 메뉴속에 이렇게 변환하는 옵션이 있구요, 여기를 눌러보시면 직접 보실 수 있습니다. QuickTime이 설치되지 않았을 경우엔 여기를 눌러보시면 됩니다.

이상으로 마칩니다. 쓰다보니 아주 길게 되었지만, 사실 해보면 그다지 까다롭지 않습니다.

마지막으로... 이 글은 Digital Urban의 글과 VRClub 운영자이신 최창규님의 강좌를 참고로 작성한 글입니다.

추가 : 이 영상을 360cities.net에 올렸다가 며칠동안 삭제가 되었습니다. 저작권표시를 넣지 않았고, 제가 직접 제작한 영상이 아니라는 이유였습니다. 이메일을 주고 받은 끝에 저작권 표시를 새로 넣고 다시 올렸습니다.

민, 푸른하늘


댓글을 달아 주세요

  1. Favicon of http://www.vrclub.co.kr BlogIcon 최창규  수정/삭제  댓글쓰기

    처음부터 강좌를 꼼꼼히 읽어보았습니다... 잘 만드셨네요.
    확실히 일기 쉽도록 자세히 설명을 하셨네요.
    진작에 이런 강좌가 있었다면 제가 좀 더 쉽게 배울 수 있었을텐데
    제가 모르던 부분도 있어서 몇번 반복해서 읽었습니다. ^^

    2009.02.01 20:27
  2. 디기리  수정/삭제  댓글쓰기

    대단하시네요
    이런걸 시도할 아이디어를 낸다는것 자체부터가 대단한것 같습니다

    2009.02.02 00:27
  3. Favicon of https://www.internetmap.kr BlogIcon 푸른하늘 푸른하늘이  수정/삭제  댓글쓰기

    아... 360cities에서 연락이 왔습니다. 이 이미지의 저작권 관계로 삭제처리하며, 구글에 문의해서 문제가 없으면 다시 복귀시킨다고 하네요... ㅠㅠ

    2009.02.02 22:41 신고
  4. 바다곰치  수정/삭제  댓글쓰기

    예전부터 배우고 시포는데 이제사 여길 방문합니다.
    넘 마음에들고 이제부터라도 배울래요.
    확 ~마음이 땡김니다....^^*

    유용한 자료에 감사드립니다.

    2009.07.11 01:44
  5. 남연  수정/삭제  댓글쓰기

    멋집니다. 일반 사진으로 따라 한번 해 봤는데요.
    Crop은 어떻게 하나요? ...
    위의 수평아이콘을 누르니 메뉴얼로
    조정하라고 메세지가 나타 납니다.
    보통 다른 툴은 crop 기능이 지원되니 모양이 예쁜데
    이 툴로는 매끈하게 만드는 방법을 모르겠습니다.

    2009.08.27 23:07
    • Favicon of https://www.internetmap.kr BlogIcon 푸른하늘 푸른하늘이  수정/삭제

      Crop은... 사용할 일이 없을 것 같은데... 무슨 말씀인지 잘 모르겠습니다.
      수평 조정이 힘드시다면, Edit-Numerical Transform이라는 항목에 들어가셔서 작은 숫자를 넣어보면서 테스트해보시면 됩니다.

      그런데...일반사진으로 따라 해보셨다니 제가 이해가안되네요~~

      2009.08.28 11:29 신고

BLOG main image
공간정보와 인터넷지도
제 관심사는 계속 바뀝니다. 이 블로그를 유지하는 동안에도 벌써 여러번 주제가 빠뀐 것 같습니다. 돌고 돌아 이제 고향으로 돌아왔습니다. 공간정보입니다. 세계를 측정하고, 그 기준을 세우고, 데이터를 효율적으로 공유하는 것이 공간정보에서 다루는 내용입니다. 4차산업혁명이 데이터 기반이라고들 합니다. 데이터는 그냥 모아둔다고 정보가 되지 않습니다. 표준에 따른 공통 스키마를 기반으로 만들어져야 합니다. 누구나 언제든지, 쉽고 투명하게 데이터를 가져다 쓸
by 푸른하늘이
Profile for bluesky61

달력

«   2019/11   »
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

카테고리

전체보기 (1590)
구글어스 (829)
공간정보 (240)
사진 (103)
드론/쿼드콥터 (239)
지오캐싱 (47)
기타 (131)
  • 4,672,796
  • 44419
TNM Media textcube get rss

공간정보와 인터넷지도

푸른하늘이's Blog is powered by Tistory. / Supported by TNM Media.
Copyright by 푸른하늘이 [ http://www.ringblog.com ]. All rights reserved.

Textcube TNM Media
푸른하늘이's Blog is powered by Tistory. Designed by Qwer999. Supported by TNM Media.