SlideShare a Scribd company logo
www.mangosystem.com
Mango System inc.
이민파 (mapplus@gmail.com)
2017년 01월 12일
www.mangosystem.com
공간정보분석과 시각화
오픈소스GIS와 OGC표준
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
오픈소스 기반 GIS R&D
사례1: 국토환경성평가지도 서비스
사례2: 통합적 역학조사 분석시스템
사례3: Web Processing Service 데모
데모 프로그램 설치
Advanced Web Processing Service
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
www.mangosystem.com
Desktop Server + Web
R
Python
Java
C++
www.mangosystem.com
대상 레이어Text Geocoding
Visualization Processing Processing
Visualization
참조 레이어
Visualization
1
2
3
4
시각화
Map
www.mangosystem.com
Symbolization
LinePoint Polygon
Simple
Graduated
Symbol
Graduated
Color
Equal
Interval
Natural
Breaks
Quantile
Standard
Deviation
Unique
Values
Classification
User
Defined
Color
Brewer
Flow Map
Point
- type
Line
- pattern
Polygon
- pattern
Label
- buffer,
shadow…
Chart
Symbol
Feature
Type
Raster
www.mangosystem.com
Vector Analysis
LinePoint Polygon
Buffer
WindRose
Maps
Multiple
Ring Buffer
Hexagon
Polar Grids
CalculationMinimum
Bounding
Geometry
Circle
XY
Length
Area
Expression
…
Dissolve
Feature
Type
Fishnet
Network
Analysis
Shortest Path
Service Area
…
Ring
Maps
Grids
Envelope
Circle
Convex Hull
…Aggregation
Thiessen
Polygon
Delaunay
Trangulation
www.mangosystem.com
Spatial Statistics Analysis
Autocorrelation
Clustering Distribution
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
www.mangosystem.com
Raster Analysis
LinePoint Polygon
Density DistanceInterpolationHeatMap
IDW
Spline
Kriging
…
Point
Kernel
Line
Raster
Surface
Slope
Aspect
Hillshade
Contour
…
Feature
Type
Hydro
…..
Distance
Direction
Allocation
www.mangosystem.com
Vector Analysis
Point
Line
Point
Point
Point
Polygon
Point
Statistics
Overlay
Line
Polygon
Polygon
Polygon
Spider Map
Line
Statistics
Areal
Interpolation
Dasymetric
Mapping
Count
Sum
Mean
Min
Max
Std. Dev.
Var
…
Sum Length
Union
Intersect
Symmetrical
Difference
Identity
Erase
Clip
…
Distance
Calculation
Attribute
Distance
Feature
Type
www.mangosystem.com
Raster Analysis
Line
Raster
Point
Raster
Polygon
Raster
Value
Extraction
Overlay
Zonal
Statistics
Raster
Raster
Feature
Type
Sum
Mean
Min
Max
Std. Dev.
Var
…
Calculation
Modeling
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
출처: http://www.onspatial.com/2011/04/cartographyflow-map-renderer.html
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
www.mangosystem.com
OGC 표준 기반, GIS사업 발주시 기본 요구사항
www.mangosystem.com
WMS + TMS
WFS
WPS
WCS ???
www.mangosystem.com
www.mangosystem.com
도시내부 건물
노후불량률 분석 예
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
라이브러리
서비스 서버 패키지
툴박스 데스크톱 플러그인
Java + JTS + JAI + Apache + …
Eclipse RCPSpring Framework + Wicket UI
① GeoTools
Spatial Analysis Libraries
② GeoServer
WPS Extension
③ uDig Desktop
Processing Toolbox Plugin
uDig Desktop
www.mangosystem.com
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: JS
World Wind
shapely:
Python
www.mangosystem.com
• Member(17), Commit(350), Fork(23)
• https://github.com/mapplus/spatial_statistics_for_geotools_udig
• 언어지원(3), 번역자(7), 문자열(1,428)
• https://www.transifex.com/mangosystem/ss-rd/dashboard
• https://sourceforge.net/projects/mango-spatialstatistics
• http://www.mangosystem.com:8080/s2toolbox_updates
www.mangosystem.com
StorageStyler
Transformation
I18n Resources
Vector Operation Raster Operation
Spatial Statistics Operation
ProcessFactory & Process
Process Parameter IO
Repository
I18n Resources
Graph & Utilities
Widget & Dialog
Procesing Toolbox



④
Scripting & Modeler
www.mangosystem.com
구분 대분류 중분류 현황 비고
GeoTools
Descriptive Statistics
Descriptive 5
공간통계 분석기법 및 시각화
Distributions 6
Density 1
Spatial Pattern Analysis
Point Pattern Analysis 4
Global Spatial Auto-correlation 9
Local Spatial Auto-correlation 9
Spatial Clustering AMOEBA 1
Spatial Modeling Spatial Multivariate 1
Spatial Interpolation Deterministic 2
Graphic Visualization Graph & Visualization 7
Vector GeoProcessing
Spatial Weight Matrix 1
Spatial Unit Creation 9
벡터 분석 및 처리
Calculation 7
Aggregation 8
Conversion 3
Proximity 5
Overlay 6
Extract 6
Generalization 5
Feature Tools 21
Raster GeoProcessing
Conversion 5
래스터 분석 및 처리 (2017년 중점)
Density 1
Descriptive 2
Distance 1
Classification 2
Extraction 5
Zonal Statistics 1
Overlay & Math 3
Feature Transformation 28 + @ 실시간 분석 및 처리
GeoServer Proces Parameter IO
Custom XML 10 + @
OGC WPS 지원Format 3 + @
uDig
Widget
Parameters 20 + @
데스크톱 기반 위젯 및 그래프 지원
Internal Dialog 5
Tools
Custom Tools 4
Graph Tools 5
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
User Application Server
Apache Tomcat
HTTP
GET/POST Request
Response
HTTP
GET/POST Request
JSON, XML
UI Client
Web Browser
• Internet Explorer 8+
• Chrome 27+
• Firefox 19+
Web Service Client
• REST or SOAP
User Interface
UI
MAP
Service Framework
SpringMVC
Database Access
MyBatis
Database Server
PostgreSQL / PostGIS
GIS Server
OBJECT, XML
Service Type
WMS - Map, Legend
WFS - Vector, Spatial Query
WPS - Analysis Processing
DataStore
JDBC
HTTP
GET/POST Request
Image
XML
GML
GeoJSON
KML
Object-Relational
Mapping (ORM)
JDBC
: 적용기술
: 세부 적용기술
: 서비스 영역
: 데이터 및 처리방향
OBJECT
BASEMAP – V-World
www.mangosystem.com
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
www.mangosystem.com
차량방문정보
차량번호
방문일자
농가번호
방문목적
…
…
축산농가정보
위치(Point)
농가번호
사육두수
….
FMD 발생현황
위치(Point)
농가번호
발생일
…
월별 차량
방문정보
view
시도, 시군구,
읍면동 행정경계
www.mangosystem.com
User Application Server
Apache Tomcat
HTTP
GET/POST Request
Response
HTTP
GET/POST Request
JSON, XML
UI Client
Web Browser
• Internet Explorer 8+
• Chrome 27+
• Firefox 19+
Web Service Client
• REST or SOAP
User Interface
UI
MAP
Service Framework
SpringMVC
Database Access
MyBatis
Database Server
PostgreSQL / PostGIS
GIS Server
OBJECT, XML
Service Type
WMS - Map, Legend
WFS - Vector, Spatial Query
WPS - Analysis Processing
DataStore
JDBC
HTTP
GET/POST Request
Image
XML
GML
GeoJSON
KML
Object-Relational
Mapping (ORM)
JDBC
: 적용기술
: 세부 적용기술
: 서비스 영역
: 데이터 및 처리방향
OBJECT
BASEMAP – V-World
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
User Application Server
Apache Tomcat
HTTP
GET/POST Request
Response
HTTP
GET/POST Request
JSON, XML
UI Client
Web Browser
• Internet Explorer 8+
• Chrome 27+
• Firefox 19+
Web Service Client
• REST or SOAP
User Interface
UI
MAP
Database Server
PostgreSQL / PostGIS
GIS Server
Service Type
WMS - Map, Legend
WFS - Vector, Spatial Query
WPS - Analysis Processing
DataStore
JDBC
HTTP
GET/POST Request
Image
XML
GML
GeoJSON
KML
: 적용기술
: 세부 적용기술
: 서비스 영역
: 데이터 및 처리방향
OBJECT
BASEMAP – V-World
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
Reference: JONG-KOOK PARK, 2014, Geospatial Analysis Research for Helicopter Rescue Optimal Planning System, Soongsil University
https://gis.e-education.psu.edu/sites/default/files/capstone/Miller_Geog596A_20120926.pptx
www.mangosystem.com
Data
Variables
Service
Process
SlopeLandCoverSoilType
WCSWFSWFS
Raster
Conditional
RasterToVector
AOI
IntersectIntersect Dissolve
Output
Minimum Area
SelectCalculate AreaTo Singlepart
1
2
3
4 5 6 7 8
Obstructions
Buffer
WFS
Difference
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
Oracle JRE 7 or OpenJDK 7
•GeoServer & Version
•Java 8 - GeoServer 2.9.x and above
•Java 7 - GeoServer 2.6.x to 2.8.x
•Java 6 - GeoServer 2.3.x to 2.5.x
•Java 5 - GeoServer 2.2.x and earlier
Apache Tomcat 7 ~ 8
GeoServer 2.8.x Web Archive
GeoServer WPS Extension
OpenGDA Analysis
Service Configuration
PostgreSQL + PostGIS(2.x)
www.mangosystem.com
User Application Server
Apache Tomcat
HTTP
GET/POST Request
Response
HTTP
GET/POST Request
JSON, XML
UI Client
Web Browser
• Internet Explorer 8+
• Chrome 27+
• Firefox 19+
Web Service Client
• REST or SOAP
User Interface
UI
MAP
Database Server
PostgreSQL / PostGIS
GIS Server
Service Type
WMS - Map, Legend
WFS - Vector, Spatial Query
WPS - Analysis Processing
DataStore
JDBC
HTTP
GET/POST Request
Image
XML
GML
GeoJSON
KML
: 적용기술
: 세부 적용기술
: 서비스 영역
: 데이터 및 처리방향
OBJECT
BASEMAP – V-World
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
- 일러두기 -
• 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
www.mangosystem.com
WPS Parameter
Data Inputs Process Outputs
ComplexData ComplexOutput
LiteralData
BoundingBoxData
LiteralOutput
BoundingBoxOutput
www.mangosystem.com
1. Literal
2. BoundingBox
3. Complex Custom XML
GridCoverage
XML
Binary
Feature GML
Zip-binary
Native Type: byte, short, int, long, float, double, String….
Extent
SLD
Filter Encoding
CData
GeoJSON
WKT …
www.mangosystem.com
Category Data source Format Mime type
Geometry
&
Feature
Collection
Custom
Features
WFS
Shapefile
Cad Dataset
GML2.1
GML3.1
GML3.2
GeoJSON
KML2.1
KML2.2
GeoRSS2.0 Simple
GeoRSS2.0 GML
Zip-shapefile
Wkt
Wkb
text/xml; subtype=gml/2.1.2
text/xml; subtype=gml/3.1.1
text/xml; subtype=gml/3.2.1
application/json
text/xml; subtype=kml/2.1 (vnd.google-earth.kml+xml)
text/xml; subtype=kml/2.2
text/xml; subtype=rss_simple/2.0 (rss+xml)
text/xml; subtype=rss_gml/2.0
application/zip
application/wkt(geometry)
application/wkb(geometry)
Grid
Coverage
WCS GeoTiff image/tiff, image/geotiff
SLD User XML
text/xml; subtype=sld/1.0.0
text/xml; subtype=sld/1.1.0
Filter User XML text/xml; subtype=filter/1.1
XML User XML text/xml
Literal User - -
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" ……………………………………..>
<ows:Identifier>statistics:KernelDensity</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://wps_server/wfs" method="POST">
<wps:Body>
<wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1">
<wfs:Query typeName=“cite:stations" srsName="EPSG:5181">
<ogc:Filter>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>sgg_cd</ogc:PropertyName>
<ogc:Literal>27110</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
</wps:Body>
</wps:Reference>
</wps:Input>
<wps:Input>
<ows:Identifier>searchRadius</ows:Identifier>
<wps:Data>
<wps:LiteralData>2500</wps:LiteralData>
</wps:Data>
</wps:Input>
…………………………..
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument storeExecuteResponse="false">
<wps:Output mimeType="image/tiff" asReference="true">
<ows:Identifier>result</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>
<wps:ResponseForm>
<wps:RawDataOutput mimeType=“application/json">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml; subtype=kml/2.2">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml; subtype=gml/3.2.1">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
Custom Type
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs"
xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1"
xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
<ows:Identifier>geo:centroid</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>geom</ows:Identifier>
<wps:Data>
<wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
<gml:LineString srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
<gml:posList>-290.0 60.0 -240.0 150.0 20.0 130.0 100.0 90.0 180.0 60.0 260.0 -70.0</gml:posList>
</gml:LineString>
</wps:ComplexData>
</wps:Data>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
</wps:Execute>
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" .. xmlns:wfs="http://www.opengis.net/wfs" >
<ows:Identifier>statistics:BufferFeatures</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://geoserver/wfs" method="POST">
<wps:Body>
<wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1">
<wfs:Query typeName=“cite:subway" srsName="EPSG:5181" />
</wfs:GetFeature>
</wps:Body>
</wps:Reference>
</wps:Input>
<wps:Input>
<ows:Identifier>distance</ows:Identifier>
<wps:Data>
<wps:LiteralData>100</wps:LiteralData>
</wps:Data>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
</wps:Execute>
ex) wfs, wcs, gml, filter, sld … complex type
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs"
xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1"
xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
<ows:Identifier>statistics:BufferFeatures</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml; subtype=gml/3.1.1"
xlink:href="http://server/temp/api_data/areaFeatures.xml" method="GET" />
</wps:Input>
<wps:Input>
<ows:Identifier>distance</ows:Identifier>
<wps:Data>
<wps:LiteralData>100</wps:LiteralData>
</wps:Data>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
</wps:Execute>
ex) wps process result(asReference=true), external resource(dxf…)..
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" ...>
<ows:Identifier>ras:contour</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>data</ows:Identifier>
<wps:Reference mimeType="image/tiff" xlink:href="http://geoserver/wcs" method="POST">
<wps:Body><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<GetCoverage version="1.1.1" service="WCS" xmlns="http://www.opengis.net/wcs/1.1.1" ...>
<ows:Identifier>cite:dem</ows:Identifier>
<DomainSubset>
<ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096">
<ows:LowerCorner>249126.90643187007 366434.5230430386</ows:LowerCorner>
<ows:UpperCorner>260621.90643187007 377144.5230430386</ows:UpperCorner>
</ows:BoundingBox>
</DomainSubset>
<Output store="true" format="image/geotiff">
<GridCRS>
<GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS>
<GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType>
<GridOffsets>5.0 -5.0</GridOffsets>
<GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS>
</GridCRS>
</Output>
</GetCoverage>]]></wps:Body>
</wps:Reference>
</wps:Input>
www.mangosystem.com
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST">
<wps:Body>
<wfs:GetFeature service="WFS" version="1.1.0" outputFormat="GML3" xmlns:foss="http://www.opengeospatial.net/foss">
<wfs:Query typeName="foss:sgg">
<wfs:PropertyName>gid</wfs:PropertyName>
<wfs:PropertyName>geom</wfs:PropertyName>
<wfs:PropertyName>pop_den</wfs:PropertyName>
<ogc:Filter>
<ogc:BBOX>
<ogc:PropertyName>geom</ogc:PropertyName>
<gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#3857">
<gml:lowerCorner>14147434 4509613</gml:lowerCorner>
<gml:upperCorner>14148345 4524017</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
</wps:Body>
</wps:Reference>
</wps:Input>
www.mangosystem.com
<?xml version="1.0" encoding="UTF-8"?>
<GetCoverage version="1.1.1" service="WCS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wcs/1.1.1" xmlns:ows="http://www.opengis.net/ows/1.1"
xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://schemas.opengis.net/wcs/1.1.1/wcsAll.xsd">
<ows:Identifier>foss:seoul_dem30</ows:Identifier>
<DomainSubset>
<ows:BoundingBox crs="urn:ogc:def:crs:EPSG::5181">
<ows:LowerCorner>179171.39881047895 436569.3290600816</ows:LowerCorner>
<ows:UpperCorner>216221.0981287582 466869.08315843146</ows:UpperCorner>
</ows:BoundingBox>
</DomainSubset>
<Output store=“false" format="image/tiff">
<GridCRS>
<GridBaseCRS>urn:ogc:def:crs:EPSG::3857</GridBaseCRS>
<GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType>
<GridOffsets>50.0 -50.0</GridOffsets>
<GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS>
</GridCRS>
</Output>
</GetCoverage>
www.mangosystem.com
1. RawDataOutput
2. ResponseDocument
Document + Result URL
Status & ID
asReference
storeExecute
Response
Document + RawData
GML, GeoJSON, GridCovearge… as raw data
www.mangosystem.com
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS"
……………………
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="text/xml">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
</wps:Execute>
<?xml version="1.0" encoding="utf-8"?>
<NearestNeighborIndex>
<TypeName>apartment</TypeName>
<Observed_Point_Count>4052</Observed_Point_Count>
<Study_Area>1.047557075141607E9</Study_Area>
<Observed_Mean_Distance>200.00446</Observed_Mean_Distance>
<Expected_Mean_Distance>254.22844</Expected_Mean_Distance>
<Nearest_Neighbor_Ratio>0.786712</Nearest_Neighbor_Ratio>
<Z_Score>-25.973484</Z_Score>
<P_Value>0.0</P_Value>
<Standard_Error>2.087667</Standard_Error>
</NearestNeighborIndex>
Literal, BoundingBox, Complex(Custom
XML 등) 등 요청 후 클라이언트에서
직접 사용하는 경우
www.mangosystem.com
<?xml version="1.0" encoding="UTF-8"?>
<wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs"
xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1"
xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
<ows:Identifier>statistics:FeatureToPoint</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST">
<wps:Body>
<wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2"
xmlns:foss="http://www.opengeospatial.net/foss">
<wfs:Query typeName="foss:randomsgg"/>
</wfs:GetFeature>
</wps:Body>
</wps:Reference>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mimeType="application/json">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>
</wps:Execute>
www.mangosystem.com
<wps:Execute version="1.0.0" service="WPS"
............
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument storeExecuteResponse="false">
<wps:Output mimeType="image/tiff" asReference="true">
<ows:Identifier>result</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>
<wps:ExecuteResponse service="WPS" version="1.0.0" ……….>
………
<wps:ProcessOutputs>
<wps:Output>
<ows:Identifier>result</ows:Identifier>
<wps:Reference href="http://server/temp/gridcoverage/result_230_2123fds.tif" mimeType="image/tiff" />
</wps:Output>
</wps:ProcessOutputs>
</wps:ExecuteResponse>
 asReference=true
 한번 요청 후 클라이언트에서 재사용
 Tiff와 같이 클라이언트에서 처리하기
어려운 포맷인 경우 서버에서 처리
 대용량의 데이터인 경우
www.mangosystem.com
<?xml version="1.0" encoding="UTF-8"?>
<wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0"
xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
<ows:Identifier>statistics:WindRoseMap</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>inputFeatures</ows:Identifier>
<wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST">
<wps:Body>
<wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2" xmlns:foss="http://www.opengeospatial.net/foss">
<wfs:Query typeName="foss:apartment"/>
</wfs:GetFeature>
</wps:Body>
</wps:Reference>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument storeExecuteResponse="false">
<wps:Output asReference="true" mimeType="application/json">
<ows:Identifier>anchor</ows:Identifier>
</wps:Output>
<wps:Output asReference="true" mimeType="application/json">
<ows:Identifier>windRose</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>
Output이 여러 개인 경우
www.mangosystem.com
<wps:Execute version="1.0.0" service="WPS"
............
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument storeExecuteResponse=“true">
<wps:Output mimeType="image/tiff" asReference="true">
<ows:Identifier>result</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>
<?xml version="1.0" encoding="utf-8"?>
<wps:ExecuteResponse xml:lang="en" service="WPS" serviceInstance="http://localhost:8090/geoserver/ows?"
statusLocation="http://localhost:8090/geoserver/ows?service=WPS&amp;version=1.0.0&amp;request=GetExecutionSta
tus&amp;executionId=142e4b6c-44e1-4aba-b8a2-6da8f0793198" version="1.0.0" ……..>
<wps:Process wps:processVersion="1.0.0">
<ows:Identifier>statistics:KernelDensity</ows:Identifier>
………..
</wps:Process>
<wps:Status creationTime="2016-01-08T05:41:45.198Z">
<wps:ProcessAccepted>Process accepted.</wps:ProcessAccepted>
</wps:Status>
</wps:ExecuteResponse>
http://server/ows?service=WPS&version=1.0.0&request=GetExecutionResult&executionId=142e4b6c-44e1-4aba-b8a2-
6da8f0793198&outputId=result.tiff&mimetype=image%2Ftiff
storeExecuteResponse=true
www.mangosystem.com

More Related Content

PDF
PostGIS 시작하기
PPTX
GeoServer 기초
PDF
GeoServer 2.4.x 한국어 사용자 지침서
PPTX
Open Source GIS 기초교육 4일차 - GeoServer 기초 2014년 7월판
PDF
[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028
PDF
QGIS 공식 Training Manual 한국어판
PPTX
공간정보연구원 PostGIS 강의교재
PDF
오픈소스 GIS의 이해 - OSgeo Projects 중심
PostGIS 시작하기
GeoServer 기초
GeoServer 2.4.x 한국어 사용자 지침서
Open Source GIS 기초교육 4일차 - GeoServer 기초 2014년 7월판
[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028
QGIS 공식 Training Manual 한국어판
공간정보연구원 PostGIS 강의교재
오픈소스 GIS의 이해 - OSgeo Projects 중심

What's hot (20)

PDF
State of OpenGXT: 오픈소스 공간분석엔진
PPTX
공간정보 거점대학 - OpenLayers의 고급 기능 이해 및 실습
PPTX
공간정보거점대학 1.geo server_고급과정
PPTX
공간SQL을 이용한 공간자료분석 기초실습
PPT
GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현
PPTX
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
PPTX
QGIS 활용
PDF
지리정보체계(GIS) - [1] GIS 데이터 유형, 구조 알기
PDF
OpenStreetMap 기반의 Mapbox 오픈소스 매핑 서비스
PPTX
오픈소스 GIS 교육 - PostGIS
PDF
게임엔진과 공간정보 3D 콘텐츠 융합 : Cesium for Unreal
PDF
오픈소스 GIS의 이해와 활용(육군사관학교 특강)
PDF
FOSS4G Firenze 2022 참가기
PDF
지리정보체계(GIS) - [2] 좌표계 이해하기
PDF
OpenStreetMap 기반의 위치데이터서비스 플랫폼 - Mapbox
PDF
라이브드론맵 (Live Drone Map) - 실시간 드론 매핑 솔루션
PDF
QGIS 실습 (총 7차시)
PPTX
공간정보아카데미 QGIS 기초 (2017.5)
PPTX
[공간정보연구원] 1일차 - 오픈소스GIS 개요
PPTX
공간정보 스터디 1주차
State of OpenGXT: 오픈소스 공간분석엔진
공간정보 거점대학 - OpenLayers의 고급 기능 이해 및 실습
공간정보거점대학 1.geo server_고급과정
공간SQL을 이용한 공간자료분석 기초실습
GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
QGIS 활용
지리정보체계(GIS) - [1] GIS 데이터 유형, 구조 알기
OpenStreetMap 기반의 Mapbox 오픈소스 매핑 서비스
오픈소스 GIS 교육 - PostGIS
게임엔진과 공간정보 3D 콘텐츠 융합 : Cesium for Unreal
오픈소스 GIS의 이해와 활용(육군사관학교 특강)
FOSS4G Firenze 2022 참가기
지리정보체계(GIS) - [2] 좌표계 이해하기
OpenStreetMap 기반의 위치데이터서비스 플랫폼 - Mapbox
라이브드론맵 (Live Drone Map) - 실시간 드론 매핑 솔루션
QGIS 실습 (총 7차시)
공간정보아카데미 QGIS 기초 (2017.5)
[공간정보연구원] 1일차 - 오픈소스GIS 개요
공간정보 스터디 1주차
Ad

Viewers also liked (13)

PPTX
[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기
PPTX
[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발
PPTX
[FOSS4G Korea 2014] Making Base Maps with Open Data
PDF
스마트폰 기반의 TS 측량 지원시스템 개발
PPTX
QGIS 소개 및 ArcMap과의 비교
PPTX
오픈소스 공간통계분석 패키지 개발
PPTX
mago3D 기술 워크샵 자료(한국어)
PPTX
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
PDF
오픈소스 GIS와 OSGeo
PPTX
Customizing Gis Programs
PDF
Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발
PPTX
GeoNode - Open Source Geospatial Content Management System
PPTX
공간정보거점대학 - PyQGIS 및 플러그인 개발
[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기
[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발
[FOSS4G Korea 2014] Making Base Maps with Open Data
스마트폰 기반의 TS 측량 지원시스템 개발
QGIS 소개 및 ArcMap과의 비교
오픈소스 공간통계분석 패키지 개발
mago3D 기술 워크샵 자료(한국어)
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
오픈소스 GIS와 OSGeo
Customizing Gis Programs
Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발
GeoNode - Open Source Geospatial Content Management System
공간정보거점대학 - PyQGIS 및 플러그인 개발
Ad

Similar to 오픈소스GIS를 활용한 서버기반 공간분석과 시각화 (16)

PDF
최근의 공간정보 동향과 시사점 - 한국역학회 특강
PDF
Moving Objects and Spatial Data Computing
PPTX
LX 공간정보아카데미 PostGIS 강의자료
PDF
[FOSS4G KOREA 2014]Hadoop 상에서 MapReduce를 이용한 Spatial Big Data 집계와 시스템 구축
PPTX
Kopss Open API 단위테스트 이슈사항
PPTX
도시건축설계와 오픈소스 기반 GIS
PPTX
도시 설계와 GIS 기술의 관계
PPTX
Disaster Recovery in GIS: FME Cloud Server Saves the Day
PDF
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial World
PDF
SBF(Scan-BIM-Field) 기반 스마트 시설물 관리 기술 개발
PPT
Stockage, manipulation et analyse de données matricielles avec PostGIS Raster
PDF
Integrating PostGIS in Web Applications
PDF
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
PPTX
design_doc
PDF
Script for the geomeetup presentation
PDF
Building A Spatial Database In Postgresql (Ppt).pdf
최근의 공간정보 동향과 시사점 - 한국역학회 특강
Moving Objects and Spatial Data Computing
LX 공간정보아카데미 PostGIS 강의자료
[FOSS4G KOREA 2014]Hadoop 상에서 MapReduce를 이용한 Spatial Big Data 집계와 시스템 구축
Kopss Open API 단위테스트 이슈사항
도시건축설계와 오픈소스 기반 GIS
도시 설계와 GIS 기술의 관계
Disaster Recovery in GIS: FME Cloud Server Saves the Day
2017 RM-URISA Track: Spatial SQL - The Best Kept Secret in the Geospatial World
SBF(Scan-BIM-Field) 기반 스마트 시설물 관리 기술 개발
Stockage, manipulation et analyse de données matricielles avec PostGIS Raster
Integrating PostGIS in Web Applications
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
design_doc
Script for the geomeetup presentation
Building A Spatial Database In Postgresql (Ppt).pdf

More from MinPa Lee (11)

PDF
[EEENAR] OpenGXT 소개와 활용
PDF
PyQGIS와 PyQt를 이용한 QGIS 기능 확장
PDF
[QGIS] 수치지도를 이용한 DEM 생성과 지형분석
PDF
[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발
PPTX
Transifex - 오픈소스 GIS 한글화 플랫폼
PPTX
[FOSS4G] uDig Desktop GIS
PPTX
[FOSS4G Seoul 2015] New Geoprocessing Toolbox in uDig Desktop GIS
PPTX
공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반
PPTX
Using QGIS and ISCGM Global Map
PDF
OGC 표준 서비스를 이용한 Web KOPSS 구현사례
PPTX
PostGIS - National Education Center for GIS: Open Source GIS
[EEENAR] OpenGXT 소개와 활용
PyQGIS와 PyQt를 이용한 QGIS 기능 확장
[QGIS] 수치지도를 이용한 DEM 생성과 지형분석
[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발
Transifex - 오픈소스 GIS 한글화 플랫폼
[FOSS4G] uDig Desktop GIS
[FOSS4G Seoul 2015] New Geoprocessing Toolbox in uDig Desktop GIS
공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반
Using QGIS and ISCGM Global Map
OGC 표준 서비스를 이용한 Web KOPSS 구현사례
PostGIS - National Education Center for GIS: Open Source GIS

Recently uploaded (20)

PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Unlock new opportunities with location data.pdf
PDF
Architecture types and enterprise applications.pdf
PPT
Geologic Time for studying geology for geologist
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
A review of recent deep learning applications in wood surface defect identifi...
PPT
What is a Computer? Input Devices /output devices
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPTX
The various Industrial Revolutions .pptx
PPTX
observCloud-Native Containerability and monitoring.pptx
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Hybrid model detection and classification of lung cancer
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Assigned Numbers - 2025 - Bluetooth® Document
Unlock new opportunities with location data.pdf
Architecture types and enterprise applications.pdf
Geologic Time for studying geology for geologist
1 - Historical Antecedents, Social Consideration.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Enhancing emotion recognition model for a student engagement use case through...
A review of recent deep learning applications in wood surface defect identifi...
What is a Computer? Input Devices /output devices
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Univ-Connecticut-ChatGPT-Presentaion.pdf
Final SEM Unit 1 for mit wpu at pune .pptx
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
The various Industrial Revolutions .pptx
observCloud-Native Containerability and monitoring.pptx
Module 1.ppt Iot fundamentals and Architecture
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Hybrid model detection and classification of lung cancer
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...

오픈소스GIS를 활용한 서버기반 공간분석과 시각화

  • 2. www.mangosystem.com 공간정보분석과 시각화 오픈소스GIS와 OGC표준 - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다. 오픈소스 기반 GIS R&D 사례1: 국토환경성평가지도 서비스 사례2: 통합적 역학조사 분석시스템 사례3: Web Processing Service 데모 데모 프로그램 설치 Advanced Web Processing Service
  • 3. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 5. www.mangosystem.com Desktop Server + Web R Python Java C++
  • 6. www.mangosystem.com 대상 레이어Text Geocoding Visualization Processing Processing Visualization 참조 레이어 Visualization 1 2 3 4 시각화 Map
  • 8. www.mangosystem.com Vector Analysis LinePoint Polygon Buffer WindRose Maps Multiple Ring Buffer Hexagon Polar Grids CalculationMinimum Bounding Geometry Circle XY Length Area Expression … Dissolve Feature Type Fishnet Network Analysis Shortest Path Service Area … Ring Maps Grids Envelope Circle Convex Hull …Aggregation Thiessen Polygon Delaunay Trangulation
  • 9. www.mangosystem.com Spatial Statistics Analysis Autocorrelation Clustering Distribution 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
  • 10. www.mangosystem.com Raster Analysis LinePoint Polygon Density DistanceInterpolationHeatMap IDW Spline Kriging … Point Kernel Line Raster Surface Slope Aspect Hillshade Contour … Feature Type Hydro ….. Distance Direction Allocation
  • 17. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 19. www.mangosystem.com OGC 표준 기반, GIS사업 발주시 기본 요구사항
  • 23. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 24. www.mangosystem.com 라이브러리 서비스 서버 패키지 툴박스 데스크톱 플러그인 Java + JTS + JAI + Apache + … Eclipse RCPSpring Framework + Wicket UI ① GeoTools Spatial Analysis Libraries ② GeoServer WPS Extension ③ uDig Desktop Processing Toolbox Plugin uDig Desktop
  • 25. www.mangosystem.com 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: JS World Wind shapely: Python
  • 26. www.mangosystem.com • Member(17), Commit(350), Fork(23) • https://github.com/mapplus/spatial_statistics_for_geotools_udig • 언어지원(3), 번역자(7), 문자열(1,428) • https://www.transifex.com/mangosystem/ss-rd/dashboard • https://sourceforge.net/projects/mango-spatialstatistics • http://www.mangosystem.com:8080/s2toolbox_updates
  • 27. www.mangosystem.com StorageStyler Transformation I18n Resources Vector Operation Raster Operation Spatial Statistics Operation ProcessFactory & Process Process Parameter IO Repository I18n Resources Graph & Utilities Widget & Dialog Procesing Toolbox    ④ Scripting & Modeler
  • 28. www.mangosystem.com 구분 대분류 중분류 현황 비고 GeoTools Descriptive Statistics Descriptive 5 공간통계 분석기법 및 시각화 Distributions 6 Density 1 Spatial Pattern Analysis Point Pattern Analysis 4 Global Spatial Auto-correlation 9 Local Spatial Auto-correlation 9 Spatial Clustering AMOEBA 1 Spatial Modeling Spatial Multivariate 1 Spatial Interpolation Deterministic 2 Graphic Visualization Graph & Visualization 7 Vector GeoProcessing Spatial Weight Matrix 1 Spatial Unit Creation 9 벡터 분석 및 처리 Calculation 7 Aggregation 8 Conversion 3 Proximity 5 Overlay 6 Extract 6 Generalization 5 Feature Tools 21 Raster GeoProcessing Conversion 5 래스터 분석 및 처리 (2017년 중점) Density 1 Descriptive 2 Distance 1 Classification 2 Extraction 5 Zonal Statistics 1 Overlay & Math 3 Feature Transformation 28 + @ 실시간 분석 및 처리 GeoServer Proces Parameter IO Custom XML 10 + @ OGC WPS 지원Format 3 + @ uDig Widget Parameters 20 + @ 데스크톱 기반 위젯 및 그래프 지원 Internal Dialog 5 Tools Custom Tools 4 Graph Tools 5
  • 29. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 30. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Service Framework SpringMVC Database Access MyBatis Database Server PostgreSQL / PostGIS GIS Server OBJECT, XML Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML Object-Relational Mapping (ORM) JDBC : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  • 32. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 35. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Service Framework SpringMVC Database Access MyBatis Database Server PostgreSQL / PostGIS GIS Server OBJECT, XML Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML Object-Relational Mapping (ORM) JDBC : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  • 43. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 44. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Database Server PostgreSQL / PostGIS GIS Server Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  • 61. www.mangosystem.com Reference: JONG-KOOK PARK, 2014, Geospatial Analysis Research for Helicopter Rescue Optimal Planning System, Soongsil University https://gis.e-education.psu.edu/sites/default/files/capstone/Miller_Geog596A_20120926.pptx
  • 66. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 67. www.mangosystem.com Oracle JRE 7 or OpenJDK 7 •GeoServer & Version •Java 8 - GeoServer 2.9.x and above •Java 7 - GeoServer 2.6.x to 2.8.x •Java 6 - GeoServer 2.3.x to 2.5.x •Java 5 - GeoServer 2.2.x and earlier Apache Tomcat 7 ~ 8 GeoServer 2.8.x Web Archive GeoServer WPS Extension OpenGDA Analysis Service Configuration PostgreSQL + PostGIS(2.x)
  • 68. www.mangosystem.com User Application Server Apache Tomcat HTTP GET/POST Request Response HTTP GET/POST Request JSON, XML UI Client Web Browser • Internet Explorer 8+ • Chrome 27+ • Firefox 19+ Web Service Client • REST or SOAP User Interface UI MAP Database Server PostgreSQL / PostGIS GIS Server Service Type WMS - Map, Legend WFS - Vector, Spatial Query WPS - Analysis Processing DataStore JDBC HTTP GET/POST Request Image XML GML GeoJSON KML : 적용기술 : 세부 적용기술 : 서비스 영역 : 데이터 및 처리방향 OBJECT BASEMAP – V-World
  • 72. www.mangosystem.com - 일러두기 - • 본 자료는 모두 Creative Commons License CC-BY-NC을 따릅니다.
  • 76. www.mangosystem.com WPS Parameter Data Inputs Process Outputs ComplexData ComplexOutput LiteralData BoundingBoxData LiteralOutput BoundingBoxOutput
  • 77. www.mangosystem.com 1. Literal 2. BoundingBox 3. Complex Custom XML GridCoverage XML Binary Feature GML Zip-binary Native Type: byte, short, int, long, float, double, String…. Extent SLD Filter Encoding CData GeoJSON WKT …
  • 78. www.mangosystem.com Category Data source Format Mime type Geometry & Feature Collection Custom Features WFS Shapefile Cad Dataset GML2.1 GML3.1 GML3.2 GeoJSON KML2.1 KML2.2 GeoRSS2.0 Simple GeoRSS2.0 GML Zip-shapefile Wkt Wkb text/xml; subtype=gml/2.1.2 text/xml; subtype=gml/3.1.1 text/xml; subtype=gml/3.2.1 application/json text/xml; subtype=kml/2.1 (vnd.google-earth.kml+xml) text/xml; subtype=kml/2.2 text/xml; subtype=rss_simple/2.0 (rss+xml) text/xml; subtype=rss_gml/2.0 application/zip application/wkt(geometry) application/wkb(geometry) Grid Coverage WCS GeoTiff image/tiff, image/geotiff SLD User XML text/xml; subtype=sld/1.0.0 text/xml; subtype=sld/1.1.0 Filter User XML text/xml; subtype=filter/1.1 XML User XML text/xml Literal User - -
  • 79. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ……………………………………..> <ows:Identifier>statistics:KernelDensity</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://wps_server/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName=“cite:stations" srsName="EPSG:5181"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>sgg_cd</ogc:PropertyName> <ogc:Literal>27110</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </wfs:Query> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> <wps:Input> <ows:Identifier>searchRadius</ows:Identifier> <wps:Data> <wps:LiteralData>2500</wps:LiteralData> </wps:Data> </wps:Input> ………………………….. </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <wps:ResponseForm> <wps:RawDataOutput mimeType=“application/json"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=kml/2.2"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.2.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> Custom Type
  • 80. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>geo:centroid</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>geom</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:LineString srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:posList>-290.0 60.0 -240.0 150.0 20.0 130.0 100.0 90.0 180.0 60.0 260.0 -70.0</gml:posList> </gml:LineString> </wps:ComplexData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute>
  • 81. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" .. xmlns:wfs="http://www.opengis.net/wfs" > <ows:Identifier>statistics:BufferFeatures</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName=“cite:subway" srsName="EPSG:5181" /> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> ex) wfs, wcs, gml, filter, sld … complex type
  • 82. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:BufferFeatures</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://server/temp/api_data/areaFeatures.xml" method="GET" /> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> ex) wps process result(asReference=true), external resource(dxf…)..
  • 83. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ...> <ows:Identifier>ras:contour</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>data</ows:Identifier> <wps:Reference mimeType="image/tiff" xlink:href="http://geoserver/wcs" method="POST"> <wps:Body><![CDATA[<?xml version="1.0" encoding="UTF-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns="http://www.opengis.net/wcs/1.1.1" ...> <ows:Identifier>cite:dem</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096"> <ows:LowerCorner>249126.90643187007 366434.5230430386</ows:LowerCorner> <ows:UpperCorner>260621.90643187007 377144.5230430386</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store="true" format="image/geotiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>5.0 -5.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage>]]></wps:Body> </wps:Reference> </wps:Input>
  • 84. www.mangosystem.com <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="GML3" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:sgg"> <wfs:PropertyName>gid</wfs:PropertyName> <wfs:PropertyName>geom</wfs:PropertyName> <wfs:PropertyName>pop_den</wfs:PropertyName> <ogc:Filter> <ogc:BBOX> <ogc:PropertyName>geom</ogc:PropertyName> <gml:Envelope srsName="http://www.opengis.net/gml/srs/epsg.xml#3857"> <gml:lowerCorner>14147434 4509613</gml:lowerCorner> <gml:upperCorner>14148345 4524017</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:Filter> </wfs:Query> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input>
  • 85. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wcs/1.1.1" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://schemas.opengis.net/wcs/1.1.1/wcsAll.xsd"> <ows:Identifier>foss:seoul_dem30</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::5181"> <ows:LowerCorner>179171.39881047895 436569.3290600816</ows:LowerCorner> <ows:UpperCorner>216221.0981287582 466869.08315843146</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store=“false" format="image/tiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::3857</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>50.0 -50.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage>
  • 86. www.mangosystem.com 1. RawDataOutput 2. ResponseDocument Document + Result URL Status & ID asReference storeExecute Response Document + RawData GML, GeoJSON, GridCovearge… as raw data
  • 87. www.mangosystem.com <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" …………………… </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <NearestNeighborIndex> <TypeName>apartment</TypeName> <Observed_Point_Count>4052</Observed_Point_Count> <Study_Area>1.047557075141607E9</Study_Area> <Observed_Mean_Distance>200.00446</Observed_Mean_Distance> <Expected_Mean_Distance>254.22844</Expected_Mean_Distance> <Nearest_Neighbor_Ratio>0.786712</Nearest_Neighbor_Ratio> <Z_Score>-25.973484</Z_Score> <P_Value>0.0</P_Value> <Standard_Error>2.087667</Standard_Error> </NearestNeighborIndex> Literal, BoundingBox, Complex(Custom XML 등) 등 요청 후 클라이언트에서 직접 사용하는 경우
  • 88. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:FeatureToPoint</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:randomsgg"/> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="application/json"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute>
  • 89. www.mangosystem.com <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <wps:ExecuteResponse service="WPS" version="1.0.0" ……….> ……… <wps:ProcessOutputs> <wps:Output> <ows:Identifier>result</ows:Identifier> <wps:Reference href="http://server/temp/gridcoverage/result_230_2123fds.tif" mimeType="image/tiff" /> </wps:Output> </wps:ProcessOutputs> </wps:ExecuteResponse>  asReference=true  한번 요청 후 클라이언트에서 재사용  Tiff와 같이 클라이언트에서 처리하기 어려운 포맷인 경우 서버에서 처리  대용량의 데이터인 경우
  • 90. www.mangosystem.com <?xml version="1.0" encoding="UTF-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>statistics:WindRoseMap</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml" xlink:href="http://geoserver/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.0.0" outputFormat="GML2" xmlns:foss="http://www.opengeospatial.net/foss"> <wfs:Query typeName="foss:apartment"/> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output asReference="true" mimeType="application/json"> <ows:Identifier>anchor</ows:Identifier> </wps:Output> <wps:Output asReference="true" mimeType="application/json"> <ows:Identifier>windRose</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> Output이 여러 개인 경우
  • 91. www.mangosystem.com <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse=“true"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <wps:ExecuteResponse xml:lang="en" service="WPS" serviceInstance="http://localhost:8090/geoserver/ows?" statusLocation="http://localhost:8090/geoserver/ows?service=WPS&amp;version=1.0.0&amp;request=GetExecutionSta tus&amp;executionId=142e4b6c-44e1-4aba-b8a2-6da8f0793198" version="1.0.0" ……..> <wps:Process wps:processVersion="1.0.0"> <ows:Identifier>statistics:KernelDensity</ows:Identifier> ……….. </wps:Process> <wps:Status creationTime="2016-01-08T05:41:45.198Z"> <wps:ProcessAccepted>Process accepted.</wps:ProcessAccepted> </wps:Status> </wps:ExecuteResponse> http://server/ows?service=WPS&version=1.0.0&request=GetExecutionResult&executionId=142e4b6c-44e1-4aba-b8a2- 6da8f0793198&outputId=result.tiff&mimetype=image%2Ftiff storeExecuteResponse=true