python gdal 矢量转栅格】的更多相关文章

前言:挺久没有更新博客了,前段时间课程实验中需要用代码将矢量数据转成栅格,常见的点栅格化方法通过计算将点坐标(X,Y)转换到格网坐标(I,J),线栅格化方法主要有DDA算法.Bresenham算法等,根据实现效果也可分为八方向和全路径栅格化方法等,面栅格化方法主要有种子点填充.扫面线算法.边界代数法等.详细算法实现可参考GIS中将矢量数据转换栅格数据算法 和 GIS算法基础(五)矢量数据向栅格数据的转换(点,线算法实现)这两篇博客.GDAL为用户提供了矢栅转换的方法,但网络上相关资料比较少,官方…
data = gdal.Open(templateTifFileName, gdalconst.GA_ReadOnly)geo_transform = data.GetGeoTransform()x_min = geo_transform[0]y_min = geo_transform[3]x_res = data.RasterXSizey_res = data.RasterYSizemb_v = ogr.Open(shpFileName)mb_l = mb_v.GetLayer()pixel_…
本节将介绍如何在Python中用GDAL实现根据矢量边界裁剪栅格数据. from osgeo import gdal, gdal_array import shapefile import numpy as np import os #批量shp裁剪tiff影像 try: import Image import ImageDraw except: from PIL import Image, ImageDraw def read_tiff(inpath): ds=gdal.Open(inpath…
本文整体思路:在Python中使用Geopandas库,依次读取shp文件的每一个面状要素,获取其空间边界信息并裁剪对应的栅格影像,计算所裁剪影像Value值的众数,将其设置为对应面状要素的NewTYPE值,所有要素属性值都改好之后保存为新的shp文件. 使用Python处理空间数据确实用的不多,所以一个星期以来一直深受这个程序的折磨,官方文档.博客.谷歌.百度.论文,能用的方法都给用了,但是进度还是很慢,特别是当看到这篇博客的时候...好气啊.. 不过幸亏头比较铁,虽败不馁,慢慢一步一步调试找…
原文链接:python gdal安装与简单使用 gdal安装方式一:在网址 https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal 下载对应python版本的whl文件,在命令行中pip install whl文件完整路径安装(windows方式). 方式二:命令行conda/pip search gdal查看版本,选择合适的版本(我的2.2.4),如果没有,使用方式一.命令行conda/pip install gdal=版本号,注意加上版本号,否则可能…
目标:解决北京河流矢量polygon 转栅格的问题 设置栅格大小和影像一致30*30----结果发现,因为cell过大,原本连续的是矢量面变得不连续了,特别细的河流会出现间断(如下图所示): 1号 网上搜索矢量转栅格出现空白的问题大多是由于矢量拓扑关系有问题导致,所以需要拓扑检查等,但我这个是因为河流太细,算法可能缺少种子点了. 检验这个想法的方式:将cell设置成10*10,然后看有无间断----结果如下图果然很完美 2号 改进方法1:将cell大小为10的栅格数据--进行重采样为30大小的-…
对栅格的裁切,我们通常使用裁切(数据管理-栅格-栅格处理)或按掩膜提取(空间分析-提取分析)来裁切,裁切的矢量要素通常是一个要素图层或Shape文件.如果要进行批量处理,可以使用ToolBox中的批量处理工具.但是,有时我们选择的裁切矢量要素不是一个要素图层,而是要素图层中的一个要素,如按标准图幅裁切栅格影像,以前的做法是将要素一个一个的导出来,再进行批量处理.快速导出方法:ArcGIS按字段属性分割文件. 现在,可以使用Python脚本来批量裁切,在网上找了位大神的原始代码学习一下: #-*-…
1.gdal包简介 gdal是空间数据处理的开源包,其支持超过100种栅格数据类型,涵盖所有主流GIS与RS数据格式,包括Arc/Info ASCII Grid(asc),GeoTiff (tiff),Erdas Imagine Images(img),ASCII DEM(dem) 等格式. 2.安装gdal包 (1)通过此链接查找并下载gdal包:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame(根据自己的系统及python版本选择对应的gd…
1.gdal数据类型 (1)GDT_Byte(int8)  (2)GDT_UInt16 (3)GDT_Int16  (4)GDT_UInt32  (5)GDT_Int32  (6)GDT_Float32  (7)GDT_Float64 2.写GeoTiff文件 from osgeo import  gdal #读取某一类型的数据,需要先载入数据驱动,初始化一个对象 driver = gdal.GetDriverByName("GTiff") #创建空文件,并确定开辟多大内存:每个像素都…
gdal包用于处理栅格数据,ogr用于处理矢量数据. 1 #!C:\Program Files\pythonxy\python\python.exe 2 #-*- coding:gb2312 -*- 3 4 from osgeo import ogr,osr,gdal 5 import os 6 7 """ 8 Understanding OGR Data Type: 9 Geometry - wkbPoint,wkbLineString,wkbPolygon,wkbMult…