Learning Geospatial Analysis with Python (2nd Edition) - An Effective Guide to Geographic Information System and Remote Sensing Analysis Using Python 3

Geospatial Analysis is used in almost every field you can think of from medicine, to defense, to farming. This book will guide you gently into this exciting and complex field. It walks you through the building blocks of geospatial analysis and how to apply them to influence decision making using the...

Full description

Saved in:
Bibliographic Details
Main Author Lawhead, Joel
Format eBook Book
LanguageEnglish
Published Birmingham Packt Publishing 2015
Packt Publishing, Limited
Edition2
Subjects
Online AccessGet full text
ISBN1783552425
9781783552429

Cover

Table of Contents:
  • Title Page Preface Table of Contents 1. Learning Geospatial Analysis with Python 2. Geospatial Data 3. The Geospatial Technology Landscape 4. Geospatial Python Toolbox 5. Python and Geographic Information Systems 6. Python and Remote Sensing 7. Python and Elevation Data 8. Advanced Geospatial Python Modeling 9. Real-Time Data 10. Putting it All Together Index
  • Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Learning Geospatial Analysis with Python -- Geospatial analysis and our world -- Beyond disasters -- History of geospatial analysis -- Geographic information systems -- Remote sensing -- Elevation data -- Computer-aided drafting -- Geospatial analysis and computer programming -- Object-oriented programming for geospatial analysis -- Importance of geospatial analysis -- Geographic information system concepts -- Thematic maps -- Spatial databases -- Spatial indexing -- Metadata -- Map projections -- Rendering -- Remote sensing concepts -- Images as data -- Remote sensing and color -- Common vector GIS concepts -- Data structures -- Buffer -- Dissolve -- Generalize -- Intersection -- Merge -- Point in polygon -- Union -- Join -- Geospatial rules about polygons -- Common raster data concepts -- Band math -- Change detection -- Histogram -- Feature extraction -- Supervised classification -- Unsupervised classification -- Creating the simplest possible Python GIS -- Getting started with Python -- Building SimpleGIS -- Step by step -- Summary -- Chapter 2: Geospatial Data -- An overview of common data formats -- Data structures -- Common traits -- Geolocation -- Subject information -- Spatial indexing -- Indexing algorithms -- Quadtree index -- R-tree index -- Grids -- Overviews -- Metadata -- File structure -- Vector data -- Shapefiles -- CAD files -- Tag-based and markup-based formats -- GeoJSON -- Raster data -- TIFF files -- JPEG, GIF, BMP, and PNG -- Compressed formats -- ASCII grids -- World files -- Point cloud data -- Web services -- Summary -- Chapter 3: The Geospatial Technology Landscape -- Data access -- GDAL -- OGR -- Computational geometry -- The PROJ.4 projection library -- CGAL -- JTS -- GEOS
  • Extracting features from images -- Change detection -- Summary -- Chapter 7: Python and Elevation Data -- ASCII Grid files -- Reading grids -- Writing grids -- Creating a shaded relief -- Creating elevation contours -- Working with LIDAR -- Creating a grid from LIDAR -- Using PIL to visualize LIDAR -- Creating a triangulated irregular network -- Summary -- Chapter 8: Advanced Geospatial Python Modeling -- Creating a Normalized Difference Vegetative Index -- Setting up the framework -- Loading the data -- Rasterizing the shapefile -- Clipping the bands -- Using the NDVI formula -- Classifying the NDVI -- Additional functions -- Loading the NDVI -- Preparing the NDVI -- Creating classes -- Creating a flood inundation model -- The flood fill function -- Making a flood -- Creating a color hillshade -- Least cost path analysis -- Setting up the test grid -- The simple A* algorithm -- Generating the test path -- Viewing the test output -- The real-world example -- Loading the grid -- Defining the helper functions -- The real-world A* algorithm -- Generating a real-world path -- Routing along streets -- Geolocating photos -- Summary -- Chapter 9: Real-Time Data -- Tracking vehicles -- The NextBus agency list -- The NextBus route list -- NextBus vehicle locations -- Mapping NextBus locations -- Storm chasing -- Reports from the field -- Summary -- Chapter 10: Putting It All Together -- A typical GPS report -- Working with GPX-Reporter.py -- Stepping through the program -- The initial setup -- Working with utility functions -- Parsing the GPX -- Getting the bounding box -- Downloading map and elevation images -- Creating the hillshade -- Creating maps -- Measuring the elevation -- Measuring the distance -- Retrieving weather data -- Summary -- Index
  • PostGIS -- Other spatially-enabled databases -- Oracle spatial and graph -- ArcSDE -- Microsoft SQL Server -- MySQL -- SpatiaLite -- Routing -- Esri Network Analyst and Spatial Analyst -- pgRouting -- Desktop tools (including visualization) -- Quantum GIS -- OpenEV -- GRASS GIS -- uDig -- gvSIG -- OpenJUMP -- Google Earth -- NASA World Wind -- ArcGIS -- Metadata management -- GeoNetwork -- CatMDEdit -- Summary -- Chapter 4: Geospatial Python Toolbox -- Installing third-party Python modules -- Installing GDAL -- Windows -- Linux -- Mac OS X -- Python networking libraries for acquiring data -- The Python urllib module -- FTP -- ZIP and TAR files -- Python markup and tag-based parsers -- The minidom module -- ElementTree -- Building XML -- Well-known text (WKT) -- Python JSON libraries -- The json module -- The geojson module -- OGR -- PyShp -- dbfpy -- Shapely -- Fiona -- GDAL -- NumPy -- PIL -- PNGCanvas -- GeoPandas -- PyMySQL -- PyFPDF -- Spectral Python -- Summary -- Chapter 5: Python and Geographic Information Systems -- Measuring distance -- Pythagorean theorem -- Haversine formula -- Vincenty's formula -- Calculating line direction -- Coordinate conversion -- Reprojection -- Editing shapefiles -- Accessing the shapefile -- Reading shapefile attributes -- Reading shapefile geometry -- Changing a shapefile -- Adding fields -- Merging shapefiles -- Merging shapefiles with dbfpy -- Splitting shapefiles -- Subsetting spatially -- Performing selections -- Point in polygon formula -- Bounding Box Selections -- Attribute selections -- Creating images for visualization -- Dot density calculations -- Choropleth maps -- Using spreadsheets -- Using GPS data -- Geocoding -- Summary -- Chapter 6: Python and Remote Sensing -- Swapping image bands -- Creating histograms -- Performing a histogram stretch -- Clipping images -- Classifying images