ArcGIS® for Server와 함께 ENVI 잘 활용하기

얼마 전 글을 통해 ExelisVIS社와 Airbus社와의 협업에 대한 말씀을 드렸었는데요, 이번에는 ESRI社와의 협업에 대해 이야기 해볼까 합니다. 물론 Airbus때와 같은 무료 영상 제공은 아닙니다. 모두 S/W를 제작하는 회사이기 때문이죠.
원격탐사 S/W는 종류가 많고, 특정 제품이 극단적인 점유율을 보이지 않습니다. 원격탐사 전공자라고 모두 ENVI를 알고 있지는 않으니까요. S/W 선택에서 가장 큰 비중을 차지하는 것은 아마도 지도교수님이 어떤 S/W를 사용하셨는지, 혹은 학부과정에서 어떤 S/W로 수업을 들었는지가 될 것 같습니다. 기타 이유로는 사용하면서 자신이 원하는 기능이 잘 구비되어 있는, 혹은 만족할만한 속도와 결과물을 내놓는 S/W를 선택하게 될 것이고요.
(개인적인 생각이지만), GIS 분야는 ArcGIS가 매우 높은 점유율을 보이고 있다고 생각합니다. GIS 전공자라면 ArcGIS 쯤은 다뤄야지- 가 일반화된 생각이 아닐까 합니다.
그리고 (개인적인 생각은 아닐 것 같은데요) RS와 GIS는 매우 밀접한 관계를 가지고 있습니다. 이런 맥락에서 RS S/W를 제작하는 업체는 ESRI社와 많은 협업을 해왔습니다. ENVI를 제작하는 ExelisVIS社도 크게 다르지 않습니다. 그리고 그 결과는 ENVI 기본기능 중 connecting to ArcGIS Server, 그리고 추가 모듈 중 ENVI for ArcGIS – Service Edition 로 확인할 수 있습니다. ENVI와 ArcGIS를 모두 사용하는(사용할 예정인) 유저와 그룹 입장에서 RS 혹은 GIS 분야에서 처리할 수 있는 데이터를 어떻게 효율적으로 관리하고 빠르게 처리할 수 있느냐- 에 대한 내용이라고 할 수 있습니다.

본 글의 많은 부분은 ExelisVIS社의 개발자 James Slater의 글을 참고하였습니다. 원문에서 사용된 이미지는 DigitalGlobe社의 허가에 의해 사용되었으나, 저는 사용 요청을 하지 않은 관계로 사용하지 않겠습니다. 원문은 아래 링크를 통해 확인하실 수 있습니다.
Three ways ENVI Plays Well with ArcGIS for Server

가장 먼저 소개하는 방법은 accessing ArcGIS for Server from ENVI, 즉 ENVI에서 ArcGIS Server에 접속하는 방법입니다. 이 방법은 ENVI에서 ArcGIS Server에 접속하여 데이터를 획득 후 ENVI 기능을 이용하여 결과물을 처리 및 가공하여 이를 다시 ArcGIS Server에 저장하는 과정으로 설명할 수 있습니다. ENVI 최신 버전인 5.2에서는 file → Remote Connection Manager를 구동하여 아래와 같이 ArcGIS Image Service Server에 접속할 수 있습니다. 이를 위해서는 ENVI와 ArcGIS for Server 라이선스 모두를 보유해야하지만, 별도의 추가 라이선스는 필요하지 않습니다. 그러므로 이미 이 2개의 라이선스를 보유한 유저라면 이 방법을 권장합니다.
sn1

두 번째 방법은 Running ENVI Geoprocessing Services Through ArcGIS for Server입니다. ArcGIS에서 ENVI 기능을 쓰는 방식입니다. ArcGIS 10.2.2와 ENVI 5.1이 설치된 제 컴퓨터에서 ArcGIS 실행 시 아래와 같이 Toolbox에서 ENVI 기능을 확인할 수 있습니다.
ENVI for ArcGIS

다만, 이 방법은 ENVI 라이선스가 아닌 ENVI for ArcGIS – Services Edition 라이선스가 필요합니다. 이 라이선스는 ENVI 단독 라이선스보다는 고가이나, ENVI와 IDL, 그리고 ENVI 모듈 중 Feature Extraction과 NITF 라이선스를 모두 포함합니다(또한 하나의 라이선스로 4명의 유저 사용을 지원합니다). Feature Extraction은 영상 분류 방법 중의 하나입니다. 전통적인 방식의 영상 분류는 분광정보만을 이용하지만, Feature Extraction 모듈은 질감과 형태 분석이 추가 수행되며, 이를 통해 원하는 지역 혹은 물체를 추출할 수 있습니다. 또한 결과 저장 시 vector로의 저장(.shp)이 지원되기 때문에 해당 결과물을 이용하여 ArcGIS에서 추가 분석 및 작업을 수행할 수 있습니다. 물론 이미 ENVI 라이선스를 보유한 유저에게 추가적으로 ENVI for ArcGIS 라이선스를 구매를 권장하지는 않습니다. ArcGIS for Server 유저 중, ENVI를, 추가적으로 Feature Extraction을 활용할 계획이 있을 경우 권장할 뿐입니다.
마지막 방법은 Running ENVI Functionality on an ArcGIS Image Service from a Thin Client입니다. 웹브라우저에서 ArcGIS server의 데이터를 ENVI 기능을 이용하여 처리하는 방식입니다. 물론 데이터는 ArcGIS server에 위치하고 있고, 영상 처리는 ENVI에서 하게 되지만, 유저 입장에서는 데이터 장소와 처리 장소가 분리된 것으로 느끼지는 않습니다. 웹브라우저에서 원하는 처리를 요청만 하면 처리는 알아서 되기 때문입니다. 다만, 이를 위해서는 ENVI API나 ArcGIS Javascript API를 이용하여 웹브라우저의 디자인이나 원하는 ENVI 기능을 작성해놓을 필요가 있고, 이를 실행하기 위해서는 ENVI Service Engine(이하 ESE)라이선스가 필요합니다. 앞서 설명한 ENVI for ArcGIS – Service Edition과 같이 ENVI뿐만 아니라 IDL, Feature Extraction, NITF 모듈이 포함되어 있습니다. ENVI API는 사실 IDL로 이루어져 있기 때문에 IDL 프로그래밍은 필수입니다. 또한 웹브라우저 디자인을 위한 Javascript 사용도 필수이고요. 아무래도 단독이 아닌 팀 단위에서 수행해야 원활한 사용이 가능하지 않을까 생각하는데요, 혹시 단독으로 멋진 프로그램을 작성할 수 있다- 하시는 분들은 에스이랩으로 연락주시면 환영해드립니다.