Geographic Information System
지리 정보 시스템(Geographic information system; GIS)은 지리공간적으로 참조가능한 모든 형태의 정보를 효과적으로 수집, 저장, 갱신, 조정, 분석, 표현할 수 있도록 설계된 컴퓨터의 하드웨어와 소프트웨어 및 지리적 자료, 인적자원의 통합체이다.
Categories
Math
Math 항목 참조. 주로 다음과 같은 주제를 사용한다:
- 점1(x1, y1)과 점2(x2, y2)을 알 때, 그 사이 거리 w 만큼 떨어진 점3(x3, y3)을 계산하는 방법
- 내비게이션 (Navigation) 의 맵 매칭 (Map matching) 에서 사용한다.
Consortium
- Open Geospatial Consortium (OGC)
- The Open Geospatial Consortium (OGC), an international voluntary consensus standards organization, originated in 1994. In the OGC, more than 400 commercial, governmental, nonprofit and research organizations worldwide collaborate in a consensus process encouraging development and implementation of open standards for geospatial content and services, GIS data processing and data sharing.
- OpenStreetMap
- 오픈스트리트맵은 2005년 설립된 영국의 비영리기구 오픈스트리트맵 재단이 운영하는 오픈 소스 방식의 참여형 무료 지도 서비스이다.
Data files
- Shapefile
- 대표적인 지리정보 벡터 데이터 포맷.
E.T.C
- 공간통계를 위한 데이터 사이언스 - GADM 지도 데이터, 행정동 전체코드 등 (통계청 사이트에 들어가면 된다)
Software
- Mapnik
- Mapnik은 C ++로 작성된 데스크탑 및 서버 기반 맵 렌더링을위한 오픈 소스 매핑 툴킷입니다.
- MapServer
- MapServer is an Open Source platform for publishing spatial data and interactive mapping applications to the web.
- wradlib
- An Open Source Library for Weather Radar Data Processing
- gpxpy
- gpx-py is a python GPX parser.
- LeuvenMapMatching
- Leuven.MapMatching toolbox for aligning GPS measurements to locations on a map.
- OSMnx
- Python for street networks.
- pyproj
- Python interface to PROJ (cartographic projections and coordinate transformations library)
- Leaflet.PolylineMeasure
- Leaflet Plugin to measure distances of simple lines as well as of complex polylines (javascript)
- geopy
- Geocoding library for Python.
- SciPy
- Python-based ecosystem of open-source software for mathematics, science, and engineering.
- SymPy
- SymPy is a Python library for symbolic mathematics.
LiDAR/Point Cloud
- LASTools - LiDAR processing
- PgPointCloud - PostgreSQL extension for storing Point Clouds
- PDAL - Point Cloud Data Abstraction Library like GDAL
CityGML
- 3D City Database - The CityGML 3D City DB
JS Libraries
- CesiumJS - JavaScript library for world-class 3D globes and maps
- Cesium 3D Tiles - 3D tiles spec for CesiumJS
- ThreeJS - 3D javascript library. QGIS has a plugin.
Projects
- iTowns - JS/WEBGL FRAMEWORK FOR 3D GEOSPATIAL DATA VISUALIZATION
- Horao - PostGIS 3D
- Apache Baremaps - 온라인 지도를 생성, 게시 및 운영하기 위한 도구 모음
Python libraries
Routing engine
라우팅 서비스는 사람들이 어떤 한 장소에서 다른 장소로 찾아가는 길을 자동으로 생성한다. 해당 항목 참조.
Frameworks
Deep learning
- Where Deep Learning Meets GIS
- Machine Learning in ArcGIS
- Arxiv - Deep Learning Techniques for Geospatial Data Analysis - 지리 공간 데이터 분석을위한 딥 러닝 기술 적용 현황에 대한 설문 조사를 제공합니다.
용어정리
- IMU (Inertial Measurement Unit; 관성측정장치).
- 가속도 및 회전운동을 측정하는 전자기기로 항공기의 속도, 방향, 중력을 측정하고 기록한다.
- INS (Inertial Navigation System; 관성항법).
- 항행 차량의 이동에 따르는 가속도를 적분하여 이동 거리를 구하는 일종의 자동 항법.
- POI (Point of Interest).
- 지도상에 표기되어 있으며 검색 가능한 지형지물을 의미한다.
- 도곽 (Mesh; 매쉬).
- 도곽이란 기록하는 지도 정보의 범위를 뜻하며, 메쉬(Mesh)라고도 한다.
- Azimuth
- 방위각
Geospatial 웹서비스 만들기
다음의 프로젝트 참조:
- 프론트: Leaflet, Openlayers, GeoExt, Turf.js
- 백엔드: GeoDjango, GeoServer
- DB: PostGIS
- 데이터: QGIS, Mapshaper
- 데이터소스: OpenStreetMap, Diva-GIS
OpenStreetMap 전환 가이드
구글맵같은 유료 지도API를 사용하지 않고, 직접 지도를 호스팅하기 위해 OSM으로 교체할 때 필요한 것들을 정리. 지도 타일 서버를 세팅하고 사용하기 위한 Leaflet 과 OpenLayers 설명, 그리고 지오코딩/라우팅/벡터맵 라이브러리들 관련 도구들 설명 포함.