NCSU
GeoForAll Lab
at the
Center for Geospatial Analytics
North Carolina State University
US-IALE, Baltimore
April 9-13, 2017
Usage: soil properties, concentrations in water bodies, properties of air mass, hyperspectral data, analysis of spatio-temporal data, forest and habitat properties, exploration of simulation scenario space, etc.
Image credit: GRASS Development Team
x = array([[[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8]],
[[ 9, 10, 11],
[12, 13, 14],
[15, 16, 17]],
[[18, 19, 20],
[21, 22, 23],
[24, 25, 26]]])
x.sum(axis=0)
# array([[27, 30, 33],
# [36, 39, 42],
# [45, 48, 51]])
x = array(1:40, dim=c(2,4,5))
# , , 1
#
# [,1] [,2] [,3] [,4]
# [1,] 1 3 5 7
# [2,] 2 4 6 8
#
# , , 2
# ...
x[2,3,3]
# 22
x[2,3,3] = 0
x = reshape(1:8, 2, 2, 2)
a(2,1,1) = 5
b = 3 * a
# b =
#
# ans(:,:,1) =
#
# 3 9
# 15 12
general-purpose geospatial analysis and remote sensing tool
r.neighbors input=a output=b method=average size=5
r.colors map=b color=viridis
r3.neighbors input=a output=b method=average window=5,5,5
r3.colors map=b color=viridis
b = a + 2
Conditional expression
b = if(a > 20, 1, null())
Accessing neighboring cells
b = (a[0,0,-1] + a[0,0,1]) / 2
Image credit: GRASS Development Team
Petrasova A., Hipp, A.J., Mitasova, H., Using space-time cube for visualization and analysis of active transportation patterns derived from public webcams. ICC 2017, Washington DC 2-7th July
3D version of forest fragmentation index by Riitters et al.
Petras et al. 2017 [in print]
Petras et al. 2017 [in print]
# Bash
r3.in.lidar input=points.las n=count base_raster=ground -d class_filter=3,4,5
r3.neighbors input=count output=average method=average window=3,3,3
r3.mapcalc expression="buffer = if(average > 0, 1, 0)"
Petras et al. 2017 [in print]
# Python
import grass.script as gs
gs.run_command("g.extension", extension="r3.forestfrag")
gs.run_command("r3.forestfrag", input="buffer", output="fragmentation")
Petras et al. 2017 [in print]
Petras et al. 2017 [in print]
# Bash
g.extension r3.count.categories
r3.count.categories input=fragmentation output=count
g.list type=raster pattern="count_*"
Petras et al. 2017 [in print]
GRASS GIS
grass.osgeo.org
Python
python.org
R
r-project.org
Octave
octave.org