100 likes | 286 Views
GIS Actors in Kepler - Java-based, GDAL-JNI, and C++(Grass) Routines. Dan Higgins - UC Santa Barbara (NCEAS) Chad Berkley – UC Santa Barbara (NCEAS) Jianting Zhang - University of New Mexico(LTER) Prepared for the 6 th Biennial Ptolemy Miniconference May 12, 2005 at UC Berkeley.
E N D
GIS Actors in Kepler - Java-based, GDAL-JNI, and C++(Grass) Routines Dan Higgins - UC Santa Barbara (NCEAS)Chad Berkley – UC Santa Barbara (NCEAS) Jianting Zhang - University of New Mexico(LTER) Prepared for the 6th Biennial Ptolemy Miniconference May 12, 2005 at UC Berkeley http://seek.ecoinformatics.org http://www.kepler-project.org This material is based upon work supported by the National Science Foundation under award 0225676.
Goal : Predict Species Locations Based on Known Locations and Climate/Geographic Spatial Data • Goal is to correlate spatial data with known locations to predict other locations where a species might exist (Environmental Niche Modeling) • Requires manipulation of geographically referenced point data and GIS raster data from variety of sources
GDAL - Geospatial Data Abstraction Library http://www.remotesensing.org/gdal/ GDAL translator library connected to Kepler actors via JNI GDAL can input ~40 different raster formats Conversion between different projections possible File format conversions also possible
Java Actors for Handling ASC Grid Files Java-based actors created to read and manipulate ASCII grid files ImageJ image processing package from NIH added as an actor to display and manipulate images ImageJ has macro capabilities & numerous plug-ins ImageJ - http://rsb.info.nih.gov/ij/
Java Routines for Convex Hull Calculation and Rasterization Convex Hull algorithm relatively easy to implement in Java Java routines for the Convex Hull convert the polygon to a shape which can be ‘scaled’ in size Scale Factor = 2 Scale Factor = 1
Java Actors for Rescaling and Merging Java actors can rescale ASCII grid files, changing resolution and extent Both nearest-neighbor and Inverse-Distance-Weighted algorithms implemented Disk-based code allows very large grids to be manipulated (i.e not limited by RAM) Grid rasters can be ‘merged’ with various operations on data in overlapping pixels Rescale and Clip Merge Start Finish
GRASS - Geographic Resources Analysis Support System (http://grass.itc.it/) • Functionality • Polygon Rasterization • Raster Buffering • Method • Extracting C source codes of the modules and related routines • Using JNI to interface with Kepler/Ptolemy
GRASS –Cont. Based on Version 5.7 (Most Recent 6.0) • Advantages • Avoids including the whole GRASS distribution (~100M) – Light-weighted • Allows defining common error coding between C/Java codes – More robust
SUMMARY Several methods have been used to create actors which implement GIS operations Types of operations limited to those needed for specific species distribution workflow Emphasis has been on raster operations; some vector operations will be implemented in future Other efforts are implementing GIS operations using Web Services