
To promote & support the use of geospatial technologies in research and teaching at Stanford
(whatever that means at any given time)

Instruction
- Earthsys144 - Fundamentals of GISci
- Introductory GIS Workshops
- Intro Open Source GIS Workshops
- Guest Lecturing
- Course Support
Infrastructure
- Software provision, licensing & support
- ArcGIS
- ArcGIS.com
- QGIS
- CARTO.com
- MapBox.com
- Google Earth Engine
- R
- Python
- locator.stanford.edu
- SGC Computer Lab
Data Collections/Services
- Planet.com
- SPIRE (AIS)
- locator.stanford.edu
- Topographic Index Maps
- Earthworks.stanford.edu
and...
- Event Planning
- License Review
- Software Development
- Hardware Maintenance
- Space Design
- HR
- Advisory Committees
- etc...
Research Collaboration


https://tasks.hotosm.org/




http://foundation.digitalglobe.com/

#Import modules
import glob, os, gdal, fnmatch
#Set base directory to location of script
base_directory = os.path.abspath('')
#Make a list of Multispectral directories with 'MUL' in the path
multi_directory_list = glob.glob(os.path.join(base_directory, '*MUL'))
#Make Panchromatic directory [pan_directory] path by replacing 'MUL' with 'PAN'
for multi_directory in multi_directory_list:
pan_directory = multi_directory.replace('MUL','PAN')
print(multi_directory)
print(pan_directory)
#Make a list of TIF files in the multi_directory
multi_tiffs_list = fnmatch.filter((os.listdir(multi_directory)), '*.TIF')
for multi_tiff_name in multi_tiffs_list:
print(multi_tiff_name)
#Get the matching panchromatic image for the current multispectral by searching for the RowCol
multi_rowcol_wildcard = '*'+multi_tiff_name[19:24]+'*'
#print(multi_rowcol)
pan_tiffs_list = fnmatch.filter((os.listdir(pan_directory)), '*.TIF')
pan_tiff_name = fnmatch.filter(pan_tiffs_list, multi_rowcol_wildcard)
#print(pan_tiff_name[0])
#Pan-sharpen the multispectral using it's corresponding panchromatic image using JPEG compression and internal tiles
print('pansharpen')
os.system('python gdal_pansharpen.py -co NBITS=12 -co COMPRESS=JPEG -co JPEG_QUALITY=50 -co PHOTOMETRIC=YCBCR -co TILED=YES ' + os.path.join(pan_directory,pan_tiff_name[0]) + ' ' + os.path.join(multi_directory,multi_tiff_name) + ',band=7 ' + os.path.join(multi_directory,multi_tiff_name) + ',band=5 ' + os.path.join(multi_directory,multi_tiff_name) + ',band=3 ' + base_directory + '/sharp_' + multi_tiff_name)
#Add overviews for resulting tiffs
os.system('gdaladdo --config COMPRESS_OVERVIEW JPEG --config PHOTOMETRIC_OVERVIEW YCBCR --config INTERLEAVE_OVERVIEW PIXEL -r average ' + base_directory + '/sharp_' + multi_tiff_name + ' 2 4 8 16')
#Create a Virtual Raster Mosaic of VRT type from all resulting sharpened TIFF images
print('create VRT mosaic from SHARP images')
os.system('gdalbuildvrt sharpmosaic.vrt *.TIF')
#Haven't finished figuring out how to get a decently stretched image out of this part. More to do!
print('MBtiles out')
print('gdal_translate sharpmosaic.vrt sharpmosaic.mbtiles -of MBTILES')
print('gdaladdo -r average sharpmosaic.mbtiles 2 4 8 16')
https://github.com/mapninja/DGF_parser





HIVE
13440 x 5400 x .53m pixels
=
20 sq km
Typical Monitor
1440 x 900 x .53m pixels
=
.7 sq km





Outcomes
- 5,000+ sq km
- 225 settlements
- only 2 abandoned by arrival

-
We surveyed Nyangatom 347 women of reproductive age
-
Recorded physical measurements and illness histories for 824 of their children 15 years of age and younger, 572 of whom were under five.

Be a...
- Tinkerer
- Conduit
- Connection
- Geospatial Swiss Army Knife

Libraries are the heart of
The University
SGC Lightning Overview
By Stace Maples
SGC Lightning Overview
SGC Service Highlights in 5
- 177