【笔记】《Python地理空间分析指南(第2版)》
转载地址:https://blog.csdn.net/jianbinzheng/article/details/80215228
- 概述部分
- 地理空间数据
- 地理空间技术概览
- Python地理空间分析工具
- Python与地理信息系统
- Python与遥感
- Python与高程数据
- Python地理空间高级建模
- 实时数据
概述部分
- 埃博拉病毒与Ushahidi灾害系统
- 法国西南部的拉斯科山洞,星空图壁画⇒
- 融合时间线、线宽、颜色、文字等方式表达
- 第一个GIS系统——加拿大国家地理信息系统CGIS
- 遥感——远距离探测,如Landsat等
- DEM——数字高程模型,如SRTM(90m)、GDEM(30m)、WorldDEM(4m、要钱)等
- CAD——计算机辅助制图,与GIS制图的区别在于坐标(GIS地理坐标)
- OSM——OpenStreetMap,开源的GIS众源数据
- GIS基本概念:专题地图、空间数据库、空间索引、元数据、地图投影、渲染、影像数据、遥感颜色
- GIS矢量基本概念:数据结构、缓冲区、融合、简化、叠置、合并、包含、联合、连接、拓扑
- GIS栅格基本概念:波段运算、变化监测、柱状图、特征提取、监督分类、非监督分类
- 用turtle模块做了个小例子,基于Tkinter库的图形引擎
地理空间数据
- 互联网地图用web墨卡托投影,谷歌造的,原编号EPSG:900913,正式编号EPSG:3857
- 空间索引方法:四叉树、R树
- 地图瓦片:网格与概要化,分级图片
- 开源矢量库OGR支持86+种矢量格式、商业的FME支持188+种
- Shapefile格式——Esri的并开放了标准,包括.shp/.shx/.dbf|.sbn/.sbx/.prj等
- AutoCAD文件格式——DXF、DWG,在地理空间分析中使用有限
- 标签和标记格式——XML/KML/OSM/GML/GeoJSON/SVG/WKT(常用于prj)
- GeoJSON:JSON格式的一种,与Javascript无缝集成,WebGIS开发常用
- 影像数据——ASCII文本文件、TIFF、常规图片(JPEG/GIF/BMP/PNG,需要地理参考文本辅助)、复杂类型(NetCDF、GRIB、HDF5,用于海洋、气象等)、压缩格式等
- 点云数据——激光、雷达等产生,用于三维
地理空间技术概览
- 地理空间软件包实现的4个核心功能:数据访问、几何计算、可视化、元数据工具
- GDAL、OGR、GEOS、PROJ.4是地理空间分析产业商业、开源软件的核心与灵魂,都是C/C++编写的。另外Java写的GeoTools了解一下
- GDAL:地理空间数据抽象库,主要面对栅格数据访问处理
- OGR:简单特征库,面向矢量数据访问处理
- PROJ.4:用于地图投影
- CGAL:计算几何算法库,如多边形直骨架线
- JTS:Java拓扑套件,Java实现的地理空间计算几何库
- GEOS:开源几何引擎,是JTS库的C++版实现,现存包括Python的脚本语言都自动绑定GEOS库
- PostGIS:开源关系型数据库PostgreSQL的模块,大多由GEOS提供,实现了SQL查询空间数据
- 其他支持空间分析的数据库:Oracle Spatial、ArcSDE、Microsoft SQL Server、MySQL、SpatialLite
- 路径分析——Esri网络分析、PostGIS的开源pgRouting引擎
- 桌面工具——QGIS、OpenEV、GRASS GIS、uDig、gvSIG、OpenJUMP、Google Earth、NASA World Wind、ArcGIS;(国内:Supermap、MapGIS、GeoStar等)
- 元数据管理——GeoNetwork、CatMDEdit
Python地理空间分析工具
- GDAL的安装——源码编译、大型软件的一部分、安装二进制发行包
Python的网络库
import urllib import ftplib import zipfile import tarfile
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
WKT文本。注意:shapely为GEOS提供一套Pythonic接口
#使用shapelyimport shapely.wkt#也可以用OGR库from osgeo import ogr ...
Python处理json
#使用json模块(自带)import json#使用geojson模块import geojson
PyShp,用于读写Shapefile文件,不支持任何几何操作,只调用Python标准库
import shapefile
dbfpy3,Python实现,专门处理dbf文件
from dbfpy3 import dbf
Shapely,通用几何库,是高级的、提供Python风格的GEOS库几何操作的库,避免访问文件,只聚焦几何操作
import shapely
Finoa,为OGR库的数据访问功能提供简洁的Python API,默认GeoJSON格式
import finoa
GDAL,处理栅格数据;OGR,通用矢量数据库
from osgeo import ogr from osgeo import gdal
- NumPy,用于Python数组的快速处理、科学计算等,C实现的
- PIL,图像编辑用,C实现的
- PNGCanvas,Python 实现的轻量级的图像编辑
- GeoPandas,由Shapely、Fiona、PyProj、matplotlib、Descartes及其他必须库构建的Pandas的地理空间扩展,数据库支持
- PyMySQL,提供一套完整的Python实现的API实现MySQL的空间数据支持
- PyFPDF,Python写的,处理PDF文件
- Spectral Python,SPy,Python光谱功能包,处理遥感应用,尤其是高光谱
Python与地理信息系统
- 距离两侧:平面(勾股)、球面(半正矢公示)、椭球面(Vincenty公式)
- 方位计算
- 坐标转换
- 重投影
- Shapefile文件编辑
- 查询
- 可视化
- 电子表格
- GPS数据
- 地理编码(geocoder-谷歌地图、geopy-OSM)
Python与遥感
略,主要就是GDAL和PIL、PNGCanvas;例子包括图像波段变换、图像直方图创建、图像分类、图像特征提取、变化监测应用
Python与高程数据
- ASCII网格高程文件:gdal、numpy
- 地貌晕渲图:linecache、numpy
- 创建等高线:gdal
- LIDAE数据网格化:laspy、PIL;voronoi创建Delaunay三角网
Python地理空间高级建模
这一章是几个例子,给出了问题解决流程
示例:一张农作物健康地图、一个洪水淹没模型、一张彩色晕渲地图、一张地形路径地图、一张街道路径地图、一张包含照片地理位置连接的shapefile文件
实时数据
- 一张地图在被制造出来的那一刻,就已经过时了
- 实时路况的API
- 气象追踪,爱荷华州立大学的Mesonet平台提供免费、实时的天气数据应用服务
- NOAA提供了一套访问OSM的WMS接口
- SRTM.py提供DEM下载
【笔记】《Python地理空间分析指南(第2版)》相关推荐
- 《信贷的逻辑与常识》笔记
序 银行信贷风险管理的反思 现状与趋势 银行贷款的质量变化与经济周期.宏观调控政策等存在很高的相关性 现在银行不良贷款的增加主要是前几年经济快速增长时企业过度投资.银行过度放贷所带来的结果. 从历史情 ...
- AI公开课:19.02.27周逵(投资人)《AI时代的投资逻辑》课堂笔记以及个人感悟
AI公开课:19.02.27周逵(投资人)<AI时代的投资逻辑>课堂笔记以及个人感悟 目录 课堂PPT图片 精彩语录 个人感悟 课堂PPT图片 精彩语录 更新中-- 文件图片已经丢失-- ...
- 人工智能入门算法逻辑回归学习笔记
逻辑回归是一个非常经典的算法,其中也包含了非常多的细节,曾看到一句话:如果面试官问你熟悉哪个机器学习模型,可以说 SVM,但千万别说 LR,因为细节真的太多了. 秉持着精益求精的工匠精神不断对笔记进行 ...
- 【逻辑回归学习笔记】
算法描述 1.逻辑回归要做的事就是寻找分界面实现二分类. 2.问题假设:对一堆三角形和正方形分类. 3.数据输入:已知正方形和三角形的坐标和标签. 4.算法过程: 知识储备 1.分类和回归 ①分类的目 ...
- 逻辑回归函数学习笔记
继续逻辑回归学习,今日笔记记录. 1.逻辑回归和线性回归的关系:对逻辑回归的概率比取自然对数,则得到的是一个线性函数,推导过程如下. 首先,看逻辑回归的定义 其次,计算两个极端y/(1-y),其值为( ...
- 2.2 逻辑回归-机器学习笔记-斯坦福吴恩达教授
逻辑回归 上一节我们知道,使用线性回归来处理 0/1 分类问题总是困难重重的,因此,人们定义了逻辑回归来完成 0/1 分类问题,逻辑一词也代表了是(1) 和 非(0). Sigmoid预测函数 在逻辑 ...
- LVM逻辑卷分区笔记
磁盘的静态分区有其缺点:分区大小难评估,估计不准确,当分区空间不够用的时候,系统管理员可能需要先备份整个系统,清除磁盘空间,然后重新对磁盘进行分区,然后恢复磁盘数据到新分区,且需要停机一段时间进行恢复 ...
- 适合理工直男的钟平老师逻辑英语学习笔记
一切的一切都只是套路! --鲁迅 核心公式: En: (状语1) 主(定语1) 谓(状语2) (宾)(定语2) (状语1) Ch: (状语1) (定语1)主 (状语2)谓 (定 ...
- 【数字逻辑】学习笔记 第四章 Part2 常用组合逻辑电路与竞争、险象
文章目录 一.常用组合逻辑电路 1. 译码器 (1) 二进制译码器 74LS138(3/8译码器) a. 一般符号和图形符号 b. 74LS138功能表 c. 两片 `74LS138` 构成 `4-1 ...
- 线性回归、逻辑回归学习笔记
学习源代码 import numpy as np import matplotlib.pyplot as plt def true_fun(X): # 这是我们设定的真实函数,即ground trut ...
最新文章
- linux什么命令只显示ip,linux ip命令
- Visual Studio 20年
- 转载:Java 内存区域和GC机制
- ASP.NET小技巧——回传后保持页面的滚动位置
- Java LinkedList公共布尔boolean offerFirst(Object o)方法(带示例)
- Real-Time Rendering 3 彩图
- 强大的图片浏览器---------增强、降低透明度、切换下一张
- 电磁感应理论之父,法拉第传奇
- 【纪中集训2019.3.23】Deadline
- C语言图书管理系统(链表、文件功能齐全)
- 坑爹的工行Chrome网银插件
- OV5640摄像头驱动开发讲解
- SATA学习笔记 14 ---SATA PM
- 线粒体靶向的纳米递送PCN-224 纳米粒子-瑞禧
- QQ空间说说刷赞网页版开放公测
- 恒峰祥可信讲述拼多多电商店铺推广和商品推广有什么不同
- python文本文件对比_Python-文件差异对比
- ALWAYS ON 搭建
- iPhone无法连接电脑原因分析及解决
- 请问怎么设置默认浏览器
热门文章
- 阿里云趣味视觉AI训练营 实践 人脸动漫化搭建
- 从“测试方子”到“斜杠方子”
- centos 8 安装 kvm
- idea编辑器激活码
- JAVA使用poi解析execl解决数值被转为科学计数法(如:手机号、身份证号、电话、等)解决方法
- linux一切皆是文件_Linux中一切皆文件
- 模电基础学习(二)__二极管
- Java 获取主机硬盘和内存的使用情况
- educoder_python:4-1-逻辑控制(if)灯光开关,解一元二次方程,输入分数输出等级
- flowable理论(三)工作流框架的主要功能探讨