欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【笔记】《Python地理空间分析指南(第2版)》

程序员文章站 2024-03-24 22:32:16
...

转载地址:https://blog.csdn.net/jianbinzheng/article/details/80215228

【笔记】《Python地理空间分析指南(第2版)》

概述部分

  1. 埃博拉病毒与Ushahidi灾害系统
  2. 法国西南部的拉斯科山洞,星空图壁画
对事物的抽象1832年的欧洲霍乱疫情中,病情和水井的制图两者分布关系1869年法国工程师绘制的1812年拿破仑东征俄罗斯战败的时序图
  1. 融合时间线、线宽、颜色、文字等方式表达
  2. 第一个GIS系统——加拿大国家地理信息系统CGIS
  3. 遥感——远距离探测,如Landsat等
  4. DEM——数字高程模型,如SRTM(90m)、GDEM(30m)、WorldDEM(4m、要钱)等
  5. CAD——计算机辅助制图,与GIS制图的区别在于坐标(GIS地理坐标)
  6. OSM——OpenStreetMap,开源的GIS众源数据
  7. GIS基本概念:专题地图、空间数据库、空间索引、元数据、地图投影、渲染、影像数据、遥感颜色
  8. GIS矢量基本概念:数据结构、缓冲区、融合、简化、叠置、合并、包含、联合、连接、拓扑
  9. GIS栅格基本概念:波段运算、变化监测、柱状图、特征提取、监督分类、非监督分类
  10. 用turtle模块做了个小例子,基于Tkinter库的图形引擎

地理空间数据

  1. 互联网地图用web墨卡托投影,谷歌造的,原编号EPSG:900913,正式编号EPSG:3857
  2. 空间索引方法:四叉树、R树
  3. 地图瓦片:网格与概要化,分级图片
  4. 开源矢量库OGR支持86+种矢量格式、商业的FME支持188+种
  5. Shapefile格式——Esri的并开放了标准,包括.shp/.shx/.dbf|.sbn/.sbx/.prj等
  6. AutoCAD文件格式——DXF、DWG,在地理空间分析中使用有限
  7. 标签和标记格式——XML/KML/OSM/GML/GeoJSON/SVG/WKT(常用于prj)
  8. GeoJSON:JSON格式的一种,与Javascript无缝集成,WebGIS开发常用
  9. 影像数据——ASCII文本文件、TIFF、常规图片(JPEG/GIF/BMP/PNG,需要地理参考文本辅助)、复杂类型(NetCDF、GRIB、HDF5,用于海洋、气象等)、压缩格式等
  10. 点云数据——激光、雷达等产生,用于三维

地理空间技术概览

  1. 地理空间软件包实现的4个核心功能:数据访问、几何计算、可视化、元数据工具
  2. GDAL、OGR、GEOS、PROJ.4是地理空间分析产业商业、开源软件的核心与灵魂,都是C/C++编写的。另外Java写的GeoTools了解一下
    【笔记】《Python地理空间分析指南(第2版)》
  3. GDAL:地理空间数据抽象库,主要面对栅格数据访问处理
  4. OGR:简单特征库,面向矢量数据访问处理
  5. PROJ.4:用于地图投影
  6. CGAL:计算几何算法库,如多边形直骨架线
  7. JTS:Java拓扑套件,Java实现的地理空间计算几何库
  8. GEOS:开源几何引擎,是JTS库的C++版实现,现存包括Python的脚本语言都自动绑定GEOS库
  9. PostGIS:开源关系型数据库PostgreSQL的模块,大多由GEOS提供,实现了SQL查询空间数据
  10. 其他支持空间分析的数据库:Oracle Spatial、ArcSDE、Microsoft SQL Server、MySQL、SpatialLite
  11. 路径分析——Esri网络分析、PostGIS的开源pgRouting引擎
  12. 桌面工具——QGIS、OpenEV、GRASS GIS、uDig、gvSIG、OpenJUMP、Google Earth、NASA World Wind、ArcGIS;(国内:Supermap、MapGIS、GeoStar等)
  13. 元数据管理——GeoNetwork、CatMDEdit

Python地理空间分析工具

  1. GDAL的安装——源码编译、大型软件的一部分、安装二进制发行包
  2. Python的网络库

    import urllib
    import ftplib
    import zipfile
    import tarfile
  3. Python的标签解析器

    
    #历史悠久(自带)
    
    from xml.dom import minidom
    
    #元素树(自带)
    
    try:
        import xml.etree.cElementTree as ET
    except ImportError:
        import xml.etree.ElementTree as ET
    
    #专业解析HTML(等格式混乱的XML文件)
    
    from bs4 import BeautifulSoup
  4. WKT文本。注意:shapely为GEOS提供一套Pythonic接口

    
    #使用shapely
    
    import shapely.wkt
    
    #也可以用OGR库
    
    from osgeo import ogr
    ...
  5. Python处理json

    
    #使用json模块(自带)
    
    import json
    
    #使用geojson模块
    
    import geojson
  6. PyShp,用于读写Shapefile文件,不支持任何几何操作,只调用Python标准库

    import shapefile
  7. dbfpy3,Python实现,专门处理dbf文件

    from dbfpy3 import dbf
  8. Shapely,通用几何库,是高级的、提供Python风格的GEOS库几何操作的库,避免访问文件,只聚焦几何操作

    import shapely
  9. Finoa,为OGR库的数据访问功能提供简洁的Python API,默认GeoJSON格式

    import finoa
  10. GDAL,处理栅格数据;OGR,通用矢量数据库

    from osgeo import ogr
    from osgeo import gdal
  11. NumPy,用于Python数组的快速处理、科学计算等,C实现的
  12. PIL,图像编辑用,C实现的
  13. PNGCanvas,Python 实现的轻量级的图像编辑
  14. GeoPandas,由Shapely、Fiona、PyProj、matplotlib、Descartes及其他必须库构建的Pandas的地理空间扩展,数据库支持
  15. PyMySQL,提供一套完整的Python实现的API实现MySQL的空间数据支持
  16. PyFPDF,Python写的,处理PDF文件
  17. Spectral Python,SPy,Python光谱功能包,处理遥感应用,尤其是高光谱

Python与地理信息系统

  1. 距离两侧:平面(勾股)、球面(半正矢公示)、椭球面(Vincenty公式)
  2. 方位计算
  3. 坐标转换
  4. 重投影
  5. Shapefile文件编辑
  6. 查询
  7. 可视化
  8. 电子表格
  9. GPS数据
  10. 地理编码(geocoder-谷歌地图、geopy-OSM)

Python与遥感

略,主要就是GDAL和PIL、PNGCanvas;例子包括图像波段变换、图像直方图创建、图像分类、图像特征提取、变化监测应用

Python与高程数据

  1. ASCII网格高程文件:gdal、numpy
  2. 地貌晕渲图:linecache、numpy
  3. 创建等高线:gdal
  4. LIDAE数据网格化:laspy、PIL;voronoi创建Delaunay三角网

Python地理空间高级建模

这一章是几个例子,给出了问题解决流程
示例:一张农作物健康地图、一个洪水淹没模型、一张彩色晕渲地图、一张地形路径地图、一张街道路径地图、一张包含照片地理位置连接的shapefile文件

实时数据

  1. 一张地图在被制造出来的那一刻,就已经过时了
  2. 实时路况的API
  3. 气象追踪,爱荷华州立大学的Mesonet平台提供免费、实时的天气数据应用服务
  4. NOAA提供了一套访问OSM的WMS接口
  5. SRTM.py提供DEM下载

相关标签: 地理空间