ArcGIS API for JavaScript를 활용한 Voxel Layer 시각화 하기

ArcGIS 2.9가 새롭게 발표되면서 Voxel Layer를 ArcGIS Online과 Enterprise Portal 10.9.1을 활용하여 웹에서 공유할 수 있게 되었습니다. Voxel Layer는 대기질, 지하 지질 모델, 수온 등을 시각화하여 주변 공간 정보와 비교하기에 적합합니다.

Voxel 레이어를 웹에 발행하면 Voxel scene layer package(SLPKs) 가 생성되고 JavaScript 응용 프로그램용 커스텀 ArcGIS API를 활용하여 시각화된 3D 데이터를 공유할 수 있습니다. 아직까지는 베타 버전이기 때문에 웹에서는 시각화만 가능합니다.

기존에 ArcGIS Pro에서 드론으로 측정한 대기질 정보를 Voxel Layer로 나타낸 방법에 대해서는 아래의 한국지비에스 블로그 포스팅을 통해 확인할 수 있습니다.

이 글에서는 Voxel Layer를 웹에 발행하여 활용하는 방법을 자세히 알아보도록 하겠습니다.

ArcGIS Pro에서 생성한 미세먼지 측정 보간 Voxel Layer를 웹에서 공유하기 위해 AGOL에 발행하면 다음과 같은 API 가 생성됩니다.

AGOL에 발행된 Voxel Layer API

이 피처레이어를 ArcGIS API for JavaScript로 시각화하기 위해서 VoxelLayer 모듈을 스크립트에 로드(load)하고 url을 받아주는 변수를 생성합니다.

‘VoxelLayer’ 모듈 Script에 load

공간정보를 시각화 할 때는 좌표계(spatial reference)가 매우 중요한 요소로 Web Scene에 Voxel Layer를 발행할 때 이 샘플은 WKID 4326으로 발행되었습니다. 정확한 좌표계로 레이어를 발행한 후 property도 스크립트에 지정해주어야 Web Scene에 나타납니다.

Voxel Layer 변수를 WebScene의 layers에 추가
Voxel Layer는 Sceneview의 viewingMode property를 “local”로 지정해 주어야 한다.

지금까지 ArcGIS API for JavaScript를 통해 ArcGIS의 새로운 공간정보 표출 방식을 웹상으로 공유하고 시각화하여 효과적으로 공간 정보를 나타낼 수 있는 방법을 알아보았습니다.

아래 지도를 클릭하면 드론으로 측정된 대기질 정보를 ArcGIS Pro에서 보간법으로 분석한 상층부의 대기질을 3D로 확인할 수 있습니다. Esri에서는 지속적으로 Voxel Layer에서 상세 정보를 팝업을 통해 확인하는 등의 기능을 추가할 예정에 있습니다. 해당 기술을 통해 공간정보를 3D로 분석하여 해수면 상승, 지구 온난화 등에 효과적으로 대비할 수 있기를 기대합니다.

위 이미지를 클릭하면 해당 지도로 이동합니다.

 

ArcGIS Notebooks를 활용한 데이터 업데이트 자동화

정보와 데이터는 점점 더 디지털화되고 있습니다. 이 과정에서 중요한 기능은 업무의 과정을 자동화하여 반복되는 업무에 수행되는 시간을 절약하는 것입니다.

지난 3월 진행된 Esri Developer Summit 2020에서는 GIS 사용자들이 업무를 자동화 할 수 있도록 하는 다양한 툴을 새롭게 선보였습니다. 이 중 사용자들이 가진 자원과 시간을 잘 활용할 수 있도록 자동화 기능을 소개합니다.

ArcGIS 엔터프라이즈 10.8에 ArcGIS Notebook Server Administrator Directory가 새롭게 추가되면서 사용자들은 ArcGIS Notebook에 접근하지 않고도 코드를 실행시킬 수 있게 되었습니다. 노트북 에디터에서 반복적으로 실행하고자 하는 코드를 노트북으로 작성하여 스케줄을 설정하면 원하는 기간 동안 원하는 간격으로 데이터를 업데이트 할 수 있습니다.

이는 Esri에서 소개하고 있는 다음의 3단계 자동화 과정을 포함합니다.

  • 단순 자동화(Simple Automation ) : 수동으로 수행되었던 업무의 과정을 자동화
  • 고급 자동화(Advanced Automation) : 작업의 규모나 복잡성을 줄일 수 있도록 여러 업무의 워크플로우를 결합
  • 지능형 자동화(Intelligent Automation) : 업무 과정의 의사결정에 영향을 미치는 딥러닝 모델 등을 활용

예를 들어 매일 0시에 업데이트되는 질병관리본부의 코로나 19(COVID-19)의 발생 동향 정보를 피처 레이어(Feature layer)로 생성하는 코드를 노트북으로 작성한 후 하루 한 번 노트북이 실행되도록 설정할 수 있습니다. 이를 통해 매일 정보가 업데이트되는 코로나 19(COVID-19) 대시보드를 만들어 공유할 수 있습니다. 또는 정부에서 제공되는 공적 마스크 판매소의 API를 활용하여 실시간 업데이트가 자동화된 지도를 생성하거나 시시각각 변하는 날씨, 교통 정보 등의 데이터를 수집할 수 있습니다.

한국지비에스에서는 ArcGIS Online의 노트북을 활용하여 매일 업데이트 되는 코로나 19(COVID-19)의 정보를 피처 레이어로 생성하여 시각화 하는 대시보드를 만들어 공유하고 있으며 그 일부를 간략히 소개하면 다음과 같습니다.

Step 1. ArcGIS Notebook에서 Python으로 유럽질병관리본부(ECDC)의 API의 국내 확진자 동향 피처 레이어 생성

Notebook 예시

Step 2. 생성된 피처 레이어를 맵에 나타내고 업데이트 된 데이터 확인

웹맵에 피처레이어 추가

3. 대시보드로 시각화

대시보드

현재는 베타(Beta)버전으로 일반 사용자에게 공개되진 않았지만 정식으로 업데이트되면 더 많은 데이터를 효과적으로 수집하고 분석하여 디지털화되는 정보를 활용할 수 있을 것으로 기대됩니다.

 

서울시 선별진료소, 안심병원 및 마스크재고 현황

한국지비에스에서는 서울시의 선별진료소와 국민안심병원, 차량선별진료소를 확인 할 수 있도록 함과 동시에 정부에서 제공하는 데이터 업데이트를 자동화하여 대시보드를 구성하였습니다. 지도의 확대, 축소를 통해 내 주변 선별진료소 및 안심병원을 빠르고 간단하게 찾아볼 수 있으며 아이콘을 클릭하면 나타나는 팝업을 통해 병원의 상세정보를 확인할 수 있습니다.

전 세계적으로 COVID-19(코로나 19)의 확진 환자 수는 지속적인 증가 추세에 있으며, 국내 확진 환자의 수도 10,613명(2020.4.16)에 달하고 있습니다. 국내 대부분의 병원은 COVID-19에 대응하기 위해 총력을 다하고 있으며 국가적으로도 검사를 받을 수 있는 병원 및 안심 병원에 대한 리스트를 제공하고 있습니다.

COVID-19는 호흡기 질환으로 감염성이 높아서 검사를 진행할 수 있는 선별 진료소를 별도로 운영하고 있으며, 국내 처음으로 도입된 차량선별진료소는 검사자와 의료진 간의 거리를 유지하고, 불필요한 접촉을 방지하여 효율적인 검사 방법으로 세계적으로 주목을 받고 있습니다. 보건복지부에서는 비호흡기 환자들이 안심하고 방문할 수 있는 국민안심병원도 지정하여 정보를 제공하고 있습니다.

한국지비에스에서 만든 대시보드는 한국질병관리본부(KCDC)와 유럽질병관리본부(ECDC)에서 실시간으로 제공하고 있는 API를 활용하여 일별 확진자 수, 접촉경로가 자동으로 업데이트 될 수 있도록 하고 지자체 웹 페이지에서 제공하는 데이터를 활용하여 대시보드를 구성하였습니다. 이와 같이 대시보드는 많은 데이터를 실시간으로 시각화하고 사용자가 직관적으로 확인할 수 있는 효과적인 도구 입니다.

서울시 선별진료소, 안심병원 마스크재고 대시보드

※ 대시보드를 참고 하여 병원의 정보를 확인하시고 보다 명확한 안내가 필요하거나 의심 증상이 있을 경우 관할 보건소 및 콜센터(지역번호+120 또는 1339)로 문의 하시기 바랍니다.

 

인천 부평구 창업편리지도 구축 완료

한국지비에스는 지난 3월 인천 부평구 토지정보과와 함께 공간정보를 활용한 ‘창업편리지도’를 전국 최초로 구축하였습니다. 이는 부평구 소상공인 창업자들이 필요한 정보를 지도 형태로 서비스하고 예비창업자가 이를 활용할 수 있도록 구성되었습니다.

영세 사업자들의 창업수요는 늘어나는 추세인 반면 정보를 얻기 쉽지 않다는 점을 개선하기 위하여 접근하기 쉽고 직관적으로 볼 수 있는 대시보드를 활용하였습니다.

대시보드는 지도상에서 사용자가 원하는 지역으로 이동하였을 때 주변의 분포 현황을 즉각적으로 반영하여 보여줄 수 있습니다. 지도상에 편의점 창업 제한 거리와 담배권 영역을 표시하여 편의점 창업을 희망하는 시민들이 간단하게 창업을 원하는 지역을 검토할 수 있도록 나타내고, 각 편의점 브랜드별 분포 현황도 확인할 수 있습니다.

대시보드에 Survey123 기능을 추가하여 제공되는 서비스에 대한 사용자들의 피드백을 지자체에서 실시간으로 확인하여 추가 콘텐츠 제작에 활용할 수 있도록 하였습니다.

편의점 창업편리지도 대시보드

지역별로 국내 상위 100개 프랜차이즈 업종의 분포 현황을 검토해 볼 수 있는 대시보드도 함께 구성하였습니다. 프랜차이즈 대시보드는 사용자가 원하는 지역으로 확대, 축소를 통해 창업을 희망하는 지역의 주요 분포 업종을 검토하고 창업하고자 하는 업종 및 프랜차이즈를 선택하는 데 참고 할 수 있습니다.

프랜차이즈 창업편리지도 대시보드

또한, ArcGIS Enterprise 에서 제공하고 있는 Sites 기능을 활용하여 각 대시보드와 함께 행정 절차 등 창업 정보를 함께 제공하는 홈페이지를 구성하였습니다. 사이츠(Sites)는 복잡한 HTML코딩없이 홈페이지를 구성할 수 있어 유지관리와 콘텐츠 추가에도 편리합니다. 부평구 창업편리지도 사이트는 부평구청 홈페이지 분야별정보의 ‘경제’ 탭에서 확인하시거나 아래 버튼을 눌러 이동하실 수 있습니다.

ArcGIS Enterprise는 위와 같이 확장성, 신뢰성, 유지관리의 용이성을 기반으로 GIS서버와 작업을 구성할 수 있으며 이를 통해 직관적으로 시각화되는 지도는 여러 분야에서 정보를 제공하는데 활용될 수 있을 것으로 기대됩니다.

 

공적 마스크 판매소 현황

최근 코로나바이러스로 인하여 마스크의 수요가 급격히 늘어남에 따라 온/오프라인 판매처에서 마스크 구매가 어려워졌습니다. 정부에서는 이와같이 급증하는 수요를 감당하기 위하여 마스크 5부제를 시행하고 있습니다.

한국지비에스는 마스크 재고 수량부족으로 인한 구민들의 불편함을 해소하는데 도움이 되고자 부평구 내의 공적 마스크 판매처 위치 및 재고 수량을 실시간으로 확인 할 수 있는 지도 앱을 구현하였습니다.

정부에서 제공하는 공적마스크판매처 API와 Python 스크립트를 이용하여 마스크 재고 현황데이터를 받아와, 클라우드 기반 ArcGIS Online의 Operation DashBoard 앱을 통하여 실시간으로 부평구 내 마스크 판매처의 정보와 재고 수량을 한눈에 알아 볼수 있도록 구현하였습니다.

<부평구 내 마스크 판매처 위치 및 재고 수량을 나타내는 대시보드>

=> 대시보드로 이동
 

코로나 바이러스 확진 현황 대시보드

중국 우한에서 시작된 코로나 바이러스가 전세계로 퍼짐에 따라 많은 사람들이 두려움을 느끼고 있습니다. 각국 정부와 의료단체, 언론 등은 즉각적이고 투명하게 현재 상황을 공유하기 위해 많은 노력을 하고 있습니다.

현재 대한민국 정부는 질병관리본부 홈페이지를 통해 신속하게 확산 정보를 제공하고 있습니다.

해외 사례로 존스홉킨스 대학의 시스템 사이언스 엔지니어링 센터(CSSE)는 WHO, CDC 등의 기관으로부터 데이터를 수집하여 확진자 현황 대시보드를 제공하였습니다.

ArcGIS 대시보드

존홉킨스대학 CSSE에서 제공하는 바이러스 감염 현황 지도 데이터는 API 형태로 공유되고 있어 데이터를 재사용하기 용이하기에 한글화한 대시보드를 구성해 보았습니다. 하나의 대시보드에 대한민국 정부의 질병관리본부 홈페이지도 임베드하여 여러 경로의 데이터를 종합하여 볼 수 있도록 하였습니다.

ArcGIS 대시보드

정보의 신속한 생성과 업데이트, 공유를 통해 시민의 경각심을 일깨우고 개개인이 건강수칙을 준수하여 더 큰 피해가 없도록하여야 하겠습니다.

 

김천시청 산림스마트 GIS업무서비스 포털 구축 용역 완료 보고회

안녕하세요, 한국지비에스 신민정입니다. 오랜만에 글을 올리네요.

한국지비에스는 지난 두달간 김천시청의 산림녹지과에 웹GIS 기반 업무서비스를 구현하는 프로젝트를 진행하였고 지난 6월 27일 성공적으로 최종 보고회를 가졌습니다.

김천시청은 ArcGIS를 이번에 처음 도입하는 것으로, 아직 사용자 수가 많지 않아 ArcGIS Enterprise(아크GIS 엔터프라이즈)의 Workgroup(워크그룹) 라이선스를 구매하셨습니다. 워크그룹은 데이터 양이나 동시 접속 사용자수가 많지 않은 경우 비용효율성을 제공하는ArcGIS 엔터프라이즈 패키지입니다.

김천시청 산림녹지과에서 담당하고 계신 많은 업무 중 시유림 현황, 호두농장 공동작업장, 소나무재선충 방재, 산불, 산사태 현황지도 등 GIS를 활용했을 실시간 현황 파악이나 데이터 관리에 가장 큰 효과를 볼 수 있는 업무들을 중심으로, 기존에 엑셀에 저장되어 있던 데이터를 공간정보 데이터베이스로 이관하고 각종 웹맵과 웹앱을 구성설정하여 바로 업무에 활용하실 수 있도록 하였습니다.

최종보고회에 많은 분들이 참석해주셨고 활용방안에 대해 많은 논의를 하였습니다.

웹GIS 도입으로, 데이터의 직관적인 이해와 검색, 실시간 업데이트, 모바일 접근 등 긍정적인 부분에 대해 공유와 이해가 있었습니다. 그리고 시스템의 구축은 시작일 뿐이고 데이터가 잘 관리되어야 의미가 있다는 말씀과 현재 운영중인 다른 시스템과 데이터를 어떻게 하면 쉽게 연계할 수 있을지에 대한 논의를 하였습니다.

ArcGIS 엔터프라이즈는 데이터를 다른 여러형태로 내보내기하거나, API형태로 연계를 쉽게 제공하고 있으니 이런 부분을 활용해 점차적으로 자동화해 나가야 할 것 같습니다.

프로젝트를 수행한 한국지비에스 김용남 매니저
손쉽게 업무 시스템을 구현할수 있는 웹앱빌더와 스토리맵
왼쪽부터 한국지비에스 신민정 대표, 김천시청 산림녹지과 도기원 주무관, 한국지비에스 김용남 매니저

바쁘신 와중에 프로젝트 수행을 적극 도와주신 도기원 주무관님께 감사드립니다.

 

지자체 오픈데이터를 이용한 Insights for ArcGIS 구성

ArcGIS Insights는 ArcGIS 웹 서비스, Excel, 데이터베이스에 저장된 데이터에 대해 쉽고 빠르게 데이터 분석을 수행할 수 있는 앱입니다.  지도, 차트, 테이블, 미디어 등을 통하여 다양하게 시각화를 할 수 있으며 이를 통하여, 빠른 의사결정을 할 수 있도록 지원합니다.

다음은 지자체 오픈 데이터를 활용하여, 발행된 ArcGIS 웹 서비스 데이터와 CSV 데이터를 매쉬업 하여 지도 및 테이블 등으로 시각화하는 Insights for ArcGIS를 만들어 보았습니다.

구현 방법은 크게 다음과 같습니다.

  1. 새로운 워크북 생성
  2. ArcGIS 웹서비스를 불러와 새 페이지 생성 및 카드 생성
  3. 베이스 맵 변경
  4. 오픈 데이터(CSV)를 추가
  5. 데이터의 위도 경도 필드를 통하여 위치활성화
  6. 위치 활성화된 데이터를 맵에 추가
  7. 심볼 변경
  8. 다양한 차트로 데이터 표출
  9. 포인트 데이터를 히트맵으로 표현
  10. 읍면동 데이터를 이용하여 포인트 데이터의 공간집약 표현
  11. 생성한 페이지 공유
 

담배소매인 허가반경 확인앱

시.군.구 지자체의 업무 중의 하나는 담배소매인지정신청 민원을 처리하는 일입니다. 담배사업법 시행규칙에 따르면 소매인 영업소 간 거리를 50미터 이상으로 하여 일정하게 유지할 것이라는 조항이 있습니다. 민원처리인은 신청서의 주소를 기반으로 다른 소매영업소의 거리를 확인하여야 하는데 이는 GIS를 활용할 수 있는 좋은 예의 하나입니다. 오늘은 행정안전부에서 공개한 담배소매업소 정보를 이용해서 허가 반경을 확인하는 앱을 웹GIS를 이용해 만들어 보겠습니다.

우선 행정안전부 산하 한국지역정보개발원에서 운영하는 공공데이터 사이트를 방문하여 소매업소 데이터를 다운로드 받습니다.

 데이터 엑셀 다운로드

다행히 이 데이터는 x,y 정보를 포함하고 있어 지도에 쉽게 올려볼 수 있었습니다.

대구지역에서 영업중인 소매업체 지도

이제 지도를 이용해서 반경을 확인하는 앱을 웹앱빌더로 만들어 보겠습니다. 웹앱빌더에서 제공하는 인시던트 위젯을 활용하면 지정된 지점으로부터 반경을 손쉽게 확인 할 수 있습니다.

인시던트위젯 활용하기

인시던트 위젯 외에 버퍼 분석 위젯, 거리재기 위젯 등을 활용하여 다양한 방법으로 거리를 재는 예시입니다. 그리고 소매업소 정보관리를 위해 수정하기 위젯도 추가하였습니다.

다른 위젯 활용하기 및 새로운 신청민원 처리하기

웹GIS에 대해 궁금하신 점은 한국지비에스로 문의주세요.

 

CCTV 뷰어 대시보드로 구현하기

유엔에서 2015년에서 2030년까지 범국가적 공동 목표로 지정한 지속가능한 개발 목표(SDGs, Sustainable Development Goals) 중 11번 목표는 도시 거주민 전체를 위한 안전과 회복성, 그리고 지속가능성에 관한 것입니다. 많은 국가와 도시들이 이 공동목표를 달성하기 위해 스마트시티 정책과 프로젝트를 진행하고 있습니다.

전세계가 인정하는 IT인프라와 기술력을 가진 우리나라는 최신기술의 테스트베드라 할 정도로 많은 신기술이 도입되어 검증의 과정을 거치고 있습니다. 최근 맥킨지 글로벌 연구소에서 실시한 각 도시별 스마트시티 평가결과에 대한 기사를 보니 역시 대한민국이 상위에 랭크되어 있습니다.

스마트시티의 기능 중 가장 중요한 기능이 시민의 안전을 보장하는 기능일 것입니다. 국토교통부의 스마트시티 통합플랫폼 내에 시민안전망 5대 서비스를 구축하여 지자체에서 운영관리하는 CCTV를 용의자 파악 및 범인체포에 활용하고 있습니다.(사례)  시민의 안전을 위해 앞으로 더 많은 CCTV가 설치될 것으로 예상됩니다. 

오늘은 여러 CCTV 피드를 지도기반으로 제공하고 ArcGIS 플랫폼에서 제공하는 대시보드 기능을 이용해 만들어 보겠습니다.

CCTV 맵을 만들기 위해 우선 엑셀 데이터 시트를 이용해 카메라 위경도 위치, 이름, 영상 피드 정보 등을 다음 CSV 파일에 수집하였습니다. IP 카메라 또는 CCTV 카메라는 영상 송출시 H.264, MJPG 등 다양한 압축 포맷을 지원합니다. FeedURL 칼럼에 피드 URL 정보를 담고 있습니다. 참고: 데모를 위해 인터넷에 공유되어 있는 IP camera의 피드를 활용하였으며 지도상 위치와 연관이 없습니다.

다음이 이 CSV를 웹맵에 끌어넣기 하여 추가합니다. 

CSV  파일에 위경도가 포함되어 있으므로 바로 마커 생성됨

팝업 창에 영상이 바로 나올 수 있도록 구성설정을 변경합니다.

팝업창에 영상 미디어 추가하기

대시보드를 이용해서 여러 카메라를 동시에 볼 수 있게 합니다.

대시보드에 영상 추가하기

참고: CSV 끌어넣기로 추가된 레이어는 바로 대시보드와 같은다른 앱으로 공유가 되지 않으므로 대시보드를 만들기 전에 먼저 발행하기를 하여야 합니다.