3. 개요
3
공간통계분석 프로그램 기능 및 활용 수요조사
공간통계 분석기법 설계 및 개발
활용체계
Server GIS(Map Data Server) Desktop GIS
uDig Desktop
기초 공간통계
분석기법 설계
및 개발
신규 공간통계 분석
방법론 연구 및 개발
(일/다변량 포함 5종 이상)
사례발굴 등
적용연구 수행
및 상용화
GitHub & Transifex & SourceForge
① GeoTools Processing Libraries
② OGC WPS Extension ③ uDig Processing Plugin
Committer
pinogio
4. 목표
4
공간통계분석 라이브러리, 서버기반 WPS Extension, 데스크톱 기반 Processing
플러그인 개발 및 제공
Eclipse RCPSpring Framework
① GeoTools
Spatial Statistics Libraries
② GeoServer
WPS Extension
③ uDig Desktop
Processing Plugin
uDig Desktop
Java + JTS + JAI + Apache
Spatial Statistics Programs
5. 기반 오픈소스 GIS 프로젝트
5
JTS, GeoTools, OGC Standards + GeoServer + uDig
LibrariesServer GIS
Desktop GIS
GeoTools
OpenMap
GeoServer JTS Topology Suite
(Geometry Engine)
JUMP and …
uDig
deegree
gvSIG GeoAPI
OGC
Standards
GEOS: C
NTS: .NET
JSTS:
JavaScript
World Wind
shapely:
Python
6. JTS Topology Suite(JTS)
6
A Library for Geometry Processing
JTS Topology Suite
공식 사이트 : https://sourceforge.net/projects/jts-topo-suite/
License : GNU Library or Lesser General Public License version 2.0 (LGPLv2)
특징 및 기능:
Full implementation of OpenGIS Consortium Simple Features for SQL specification
JUMP, GeoTools (uDig, GeoServer), eXist, (as GEOS) PostGIS, FME, OGR, MapServer, MapGuide Open
Source, (as NTS) monoGIS, SharpMap
GeoTools
GeoServer
JTS Topology Suite
(Geometry Engine)
JUMPuDig
GEOS: C
NTS: .NET
JSTS: JS
shapely:
python
7. GeoTools
7
Open Geospatial Consortium (OGC) 표준을 기반으로 지리공간 데이터를
조작하기 위한 표준 방법을 제공하는 오픈 소스 (LGPL) Java 코드 라이브러리
공식 사이트 : http://geotools.org/
License : GNU Lesser General Public License (LGPL)
특징 및 기능:
Open Geospatial Consortium (OGC) 표준을 기반으로 지리공간 데이터를 조작하기 위한 표준 방법을 제공하는
오픈 소스 (LGPL) Java 코드 라이브러리
망고시스템에서 2013년 정보통신산업진흥원의 공개 SW 개발지원사업 수행으로 국내 공간 DBMS(Altibase,
Tibero, Kairos) 및 국토지리정보원 NGI 포맷 드라이버 지원
8. GeoTools
8
Open Geospatial Consortium (OGC) 표준을 기반으로 지리공간 데이터를
조작하기 위한 표준 방법을 제공하는 오픈 소스 (LGPL) Java 코드 라이브러리
주요 기능
GeoServer의 기반 엔진
플러그인 구조로 된 다양한 파일 포맷 및 공간 데이터베이스 지원
다양한 지도 투영 지원
공간과 비공간 속성을 이용한 필터 및 조회 지원
복잡한 스타일을 가진 지도의 생성 및 디스플레이
그래프 및 네트워크의 생성 및 분석
Open Geospatial Consortium (OGC) 표준을 기반으로 하며 확장하기
쉬운 구조
Simple Feature 지원을 포함하는 OGC General Feature Model including
OGC Grid Coverage representation of raster information
OGC Style Layer Descriptor / Symbology Encoding 데이터 구조 및 렌더링 엔진
OGC Filter 및 Common Constraint Language (CQL)
GeoAPI
Web Feature Service, Web Map Service 및 Web Process Service 클라이언트
ISO 19107 Geometry
9. GeoServer
9
지리공간 데이터를 OGC 표준을 통해 공유하고 편집할 수 있는 Java로 개발된
오픈 소스 GIS 소프트웨어 서버
공식 사이트 : http://geoserver.org/
License : GNU GENERAL PUBLIC LICENSE(GPL) Version 2.0
특징 및 기능:
국내 및 전 세계에서 가장 많이 활용되고 있는 오픈 소스 GIS 서버
프로그램 한글화(2013/01) 및 한글 매뉴얼 완료(2014/01)
국내 공간 DBMS(Altibase, Tibero, Kairos) 및 국토지리정보원 NGI 포맷 드라이버 지원
10. uDig GIS
10
User-friendly Desktop Internet GIS
공식 사이트 : http://udig.refractions.net/
License : Eclipse Public License(EPL) & Refractions BSD License
특징 및 기능:
LocationTech Incubation Project
Eclipse RCP 기반의 데스크톱 GIS 프로그램, 망고시스템 KOPSS 관리도구 활용
1.5/2.0 출시 후 100% 한글화 지원 예정
12. 공간통계 분석기능 수요분석
12
오픈 소스 기반 공간통계 분석 S/W의 개발 전략과 단계별 개발 계획 수립을 위한 수요자의 요구를 파악하기 위함
실제로 업무에 널리 활용되기 위해서는 어떤 형태의 도구로 개발되어야 하는지를 파악하는데 초점을 둠
13. 개발 내용
13
Spatial Aggregation & Distributions
Category Functions
R&D
ArcGIS GeoDa SAGA
Crime
StatGeoTools uDig GeoServer
Spatial
Aggregation
&
Distributions
Descriptive
Spatial Aggregation o o o o
Basic Statistics o o o o o
Pearson Correlation Coefficient o o o o
Distributions
Mean Center o o o o o
Median Center o o o o o 2015
Central Feature o o o o
Standard Distance o o o o o
Standard Deviational Ellipse o o o o
Linear Directional Mean o o o o
Density Kernel Density Estimation o o o o o o
2015
14. 개발 내용(계속)
14
Spatial Pattern & Clustering Analysis
Category Functions
R&D
ArcGIS GeoDa SAGA
Crime
StatGeoTools uDig GeoServer
Spatial
Pattern
Analysis
Global
Point Pattern
Analysis
(k) Nearest Neighbor Statistic o o o o o
Quadrat Method
G-function
F-function
Cuzick-Edwards Test (Case-Control)
(Network) K-function o o
Local
Point Pattern
Analysis
NearestNeighbor Hierarchical Clustering o
ZonalNearestNeighborHierarchicalClustering o
Spatial and Temporal Analysis of Crime o
K-Means Clustering (Kmeans) o o o o
Global
Spatial
Auto-
correlation
Univariate
Join Count Statistic o o o
Moran’s I Statistic o o o o o o o
Oden’s I Statistic
Geary’s C Statistic o o o o
Getis-Ord’s G Statistic o o o o o
Tango’s C Statistic o o o
Rogerson’s R Statistic o o o
Bivariate Bivariate Moran’s I Statistic o o o o
Local
Spatial
Auto-
correlation
Univariate
Local Moran’s I Statistic o o o o o o
Local G Statistic o o o o o
Local Tango’s C Statistic o o o
Local Rogerson’s R Statistic o o o
Bivariate Local Bivariate Moran’s I Statistic o o o o
Local
Spatial Clustering
Openshaw’s GAM
AMOEBA o o o
Kulldorff’s Spatial Scan Statistic
New(2015
~)
Algorithms
15. 개발 내용(계속)
15
Spatial Regression, Interpolation, Graph, Visualization
Category Functions
R&D
ArcGIS GeoDa SAGA
Crime
StatGeoTools uDig GeoServer
(Spatial)
Regression
Standardized Standardized regression o o
Global
Spatial Lag Model (SLM) o o
Spatial Error Model (SEM) o o
Local
Geographically WeightedRegression(GWR) o o
Expansion Method
Spatial
Interpolation
Deterministic
IDW (Inverse Distance Weighted) o o o o o
Spline o o
Geostatistical (Co) Kriging o o
Visualization
Analysis Tools
Graph
Moran Scatter Plot o o
Histogram o o o
Box Plot(Box and Whisker) o o o
Scatter Plot o o o
Bubble Chart o o o
3D Scatter Plot o
Conditional Map o
Conditional Scatter Plot o
Conditional Histogram o
Parallel Coordinate o
Covariance Cloud o
Semivariogram o o
Correlagram o
Visualization
Standard Graphic Tools o o
Thematic Map o o o o
Graph
16. 개발 내용(계속)
16
Utilities – Spatial Weight Matrix, Units, Join, Conversion
Category Functions
R&D
ArcGIS GeoDa SAGA
Crime
StatGeoTools uDig GeoServer
Utilities
Spatial Weight
Matrix
Creating(Network) Spatial Weight Matrix o o
Create Spatial Weight Matrix o o o o o 2015
Cross-Validation o
Pattern Creation
Spatial
Units
Area
Create Fishnet Grids o o o o
Create Hesagonal Grids o o o o
Create Thiessen Polygons o o o o o
Point
Random Points o o o o
Random Points per Features o o o
Calculation
Calculate Count o o o o
Calculate Areas o o o o o
Calculate Field o o o o o
Aggregation
Aggregate(Union) Polygons o o o o
Collect Events o o o o
Spatial Join o o o o
Point Statistics o o o o o
Buffer Statistics o o o o
Sum Line Lengths o o o
Conversion
Text File to Point Features o o o o o
Export Layer to Other Format o o o o o o
User
friendly
17. License
17
Free software and licensed under the LGPL(Library),
GPL(Server), EPL/BSD(Desktop)
Product Original Project R&D
GeoTools
GNU LGPL v2.1
- gt-main (BSD License)
- gt-xsd-core (Apache License)
- gt-brewer (Apache License)
- gt-referencing3d (일부 NASA)
Spatial Statistics Libraries
GNU LGPL v2.1
GeoServer GNU GPL v2.0
GeoServer WPS Extensions
GNU GPL v2.0
uDig EPL v2.0/BSD v1.0
uDig Processing Toolbox Plugin
EPL v2.0/BSD v1.0
18. GitHub: Web-based Git repository service
18
https://github.com/MapPlus/spatial_statistics_for_geotools_udig
21. uDig Plugin Update Site
21
- http://www.mangosystem.com:8080/s2toolbox_updates
22. 향후 계획
년차 주요 분석 기법 비고
2014
▪ 공간통계분석기법 기반구축(Conversion, …)
▪ 기본 공간통계분석기법 개발(Moran’I, G Statistics, Graph, …)
WPS-20
Toolbox-40
2015
▪ 포인트 분포 분석기법 개발
▪ 일변량 공간 연관성 측도 개발
▪ Lee's S, Si, 공간적 카이-스퀘어 통계량, 일변량 조인
▪ 카운트 통계량 개발
▪ 분석기능의 전자정부프레임워크 연동
2016
▪ 이변량 조인-카운트 통계량 중심 개발
▪ Pearson's r, 국지적 Pearson's r, Lee's L, Li, 이변량 Geary 등
▪ 공간적 주성분분석 개발
2017
▪ 주성분점수의 시각화 기법 개발
▪ 래스터 데이터를 위한 공간 연관성 분석기법 개발
2018
▪ 래스터 데이터를 위한 공간 연관성 분석기법 개발
▪ 패키징
▪ 테스트베드/제품화를 통한 시범 사이트 적용 완성
22
기존 SW 기능 + 신규 공간통계분석기능 + 시범적용
23. GeoTools Spatial Statistics library
23
How to use GeoTools Spatial Statistics library
GeoTools Quick Start
http://docs.geotools.org/latest/userguide/tutorial/quickstart/eclipse.html
Add this file to Java Build Path
gt-process-spatialstatistics-11.2.jar
Sample Code
ProgressListener monitor = ...
SimpleFeatureCollection inputFeatures = ...
Map<String, Object> map = new HashMap<String, Object>();
map.put(AreaProcessFactory.inputFeatures.key, inputFeatures);
Process process = new org.geotools.process.spatialstatistics.AreaProcessFactory.create();
Double area = Double.valueOf(0.0);
try {
Map<String, Object> resultMap = process.execute(map, monitor);
area = (Double) resultMap.get(AreaProcessFactory.RESULT.key);
} catch (ProcessException e) {
LOGGER.log(Level.FINER, e.getMessage(), e);
}
system.out.println(area);
24. GeoServer WPS Extension – Process Chaining 시연
24
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
25. GeoServer WPS Extension – Process Chaining 시연
25
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
26. GeoServer WPS Extension – Process Chaining 시연
26
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
27. GeoServer WPS Extension – Process Chaining 시연
27
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
28. GeoServer WPS Extension – Process Chaining 시연
28
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
29. GeoServer WPS Extension – Process Chaining 시연
29
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
30. GeoServer WPS Extension – Process Chaining 시연
30
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
31. GeoServer WPS Extension – Process Chaining 시연
31
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
32. GeoServer WPS Extension – Process Chaining 시연
32
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
33. GeoServer WPS Extension – Process Chaining 시연
33
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
34. GeoServer WPS Extension – Process Chaining 시연
34
1차년도 25개의 Web Processing Service(WPS) Process 제공
원격의 WPS 서버에 연결하여 여러 분석 프로세스들을 조합하여 다양한 공간분석/공간통계분석을 실시간으로 수행
35. uDig Processing Plug-in – 툴박스 시연
35
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
36. uDig Processing Plug-in – 툴박스 시연
36
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
37. uDig Processing Plug-in – 툴박스 시연
37
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
38. uDig Processing Plug-in – 툴박스 시연
38
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
39. uDig Processing Plug-in – 툴박스 시연
39
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
40. uDig Processing Plug-in – 툴박스 시연
40
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
41. uDig Processing Plug-in – 툴박스 시연
41
1차년도 40개의 변환/생성/공간조인/공간통계분석/시각화/그래프 도구 제공
사용자 중심의 위젯 및 툴박스 제공
42. 망고시스템 활용 - PINOGIO
42
자사의 오픈소스 기반 데이터 시각화 및 분석 솔루션과 통합하여 웹 기반의
공간(통계)분석 프로젝트 적용
43. Point Data
43
Point, Point-Point, Point-Polygon 예
Point
Point
Statistics
Symbolization
Boundary
Text GeoCoding
Buffer GridsPolar Grids
Point
Interpolation
Density
HeatMap
Distribution
Spider Maps
Thiessen
Polygon
Clustering
Distance
Clustering
44. Spatial Statistics Analysis
Autocorrelation
Clustering Distribution
Single Layer – Spatial Statistics
44
LinePoint Polygon
Central
Feature
Standard
Deviational
Ellipse
Standard
Distance
Mean
Center
Median
CenterLinear
Directional
Mean
G-Statistics
Moran’s I
Spatial LQ
K-Means
Patterns - Global
G-Statistics Moran’s I
Spatio-Temporal Clustering
Nearest
Neighbor
K-function
Knox
Statistics
Spatial Scan
Statistics
Feature
Type
48. uDig Processing Toolbox
48
How to install Processing Toolbox: http://www.mangosystem.com:8080/gxt/udig_en/
도움말 찾기 및 설치…
Help Find and Install…1. Copy this file to %udig_home%plugins folder
- org.locationtech.udig.processingtoolbox-2.0.0-SNAPSHOT.jar
2. Update 사이트
이름: Spatial Statistics Toolbox
URL : http://www.mangosystem.com:8080/s2toolbox_updates
49. uDig Processing Toolbox
49
How to activate Processing Toolbox
창 뷰 보기 기타(O)…
Window Show View Other(O)…
http://www.mangosystem.com:8080/gxt/udig_en/
50. uDig Processing Toolbox
50
How to change user interface locale
창 환경설정 일반 런타임 환경설정
Window Preferences General Runtime preferences
http://www.onspatial.com/2012/12/udig-
locale-character-set-support-for.html
51. uDig Processing Toolbox
51
How to support shapefile’s character set
창 환경설정 일반 uDig 사용자 인터페이스
Window Preference General uDig User Interface
http://www.onspatial.com/2012/12/udig-
locale-character-set-support-for.html
52. uDig Processing Toolbox
52
Input parameters and User Interface
Parameter Type Widget Related Widget & Popup Constraints
BoundingBoxData BoundingBox Text + Button Extent from map, layers
ComplexData
SimpleFeatureCollection Combo All, Point, Line, Polygon
GridCoverage2D Combo
Geometry Text + Button
Map’s Centroid, Extent
Geometry Picker Dialog
WKT
Filter Text+ Button Query Builder Dialog
LiteralData
CoordinateReferenceSystem Text+ Button
CRS Chooser Dialog
CRS from map, layers
EPSG:3857
Enum Combo Enum Types
Number
Float, Double Text+ Button Layer’s Area…
Short, Integer, Long Spinner
Boolean Combo Yes/No
String
Field Combo Related to vector layers
Other Text+ Button
Expression Builder Dialog
Multiple Fields Selector Dialog
Summary Fields Builder Dialog
53. uDig Processing Toolbox
53
Output parameters
Parameter Type Target Display Type Constraints
BoundingBoxOutput BoundingBox Map Polygon Layer Temporary
ComplexOutput
SimpleFeatureCollection Map Vector Layer
GridCoverage2D Map Raster Layer
Geometry Map Vector Layer Temporary
Custom XML Text
LiteralOutput
String Text
Number Text Number Format(6)