
gdal
点PY
付费咨询、有偿辅导+扣扣1224425503
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
遥感影像32位转8位(python)
# -*- coding: utf-8 -*-import os, sys, timeimport numpy as npfrom osgeo import ogrfrom osgeo import gdalfrom osgeo import gdal_array as gadef stretch_n(bands, img_min, img_max, lower_percent=0, higher_percent=100): """ :param bands: 目标数据,nu原创 2020-07-06 11:16:34 · 2472 阅读 · 2 评论 -
地理栅格数据裁剪并生成带地理坐标的切片(gdal)
import globimport osfrom tqdm import tqdmimport argparseimport tqdmfrom osgeo import gdalimport cv2 as cvimport numpy as npfrom PIL import Imagefrom skimage import ioimport gdalToolsdef subImg(img, i, j, targetSize, PaddingSize, height, width).原创 2021-09-02 16:51:11 · 898 阅读 · 0 评论 -
基于gdal的线矢量数据写入(python)
概述本博文将介绍如何将栅格线转化成矢量线的方法。大致流程可分为,栅格线转图结构表示,再由图结构的点关系,写入进线矢量。栅格数据代码image2graph.py# import rdp# Code Copied From Favyenimport scipy.ndimageimport skimage.morphologyimport osfrom PIL import Imageimport cv2import mathimport numpyfrom math import原创 2021-08-06 16:28:40 · 761 阅读 · 17 评论 -
面矢量转点矢量(python)
面矢量点矢量代码from osgeo import ogr, osrdef poly2point(shpPath, outPath): """ :param img_path: 参考遥感影像路径 :param OutShpFile: 输出shp路径 :return: """ driver = ogr.GetDriverByName("ESRI Shapefile") dataSource = driver.Open(shpPath, 1)原创 2021-07-13 10:51:48 · 680 阅读 · 0 评论 -
狭长矢量图斑的消除(python)
原始的shapefile处理后的shapefile比较两张图,可以发现,狭长图斑去除了def remove_ship_like_features(shpPath, outPath): '''计算面积''' driver = ogr.GetDriverByName("ESRI Shapefile") dataSource = driver.Open(shpPath, 1) layer = dataSource.GetLayer() cs = dataSourc原创 2021-07-08 16:05:21 · 1506 阅读 · 0 评论 -
基于gdal的矢量裁剪栅格
数据展示矢量与栅格代码# -*- coding: utf-8 -*-import osfrom osgeo import gdal, gdalnumeric, ogr, osr, gdal_arraygdal.UseExceptions()def world2Pixel(geoMatrix, x, y): """ Uses a gdal geomatrix (gdal.GetGeoTransform()) to calculate the pixel location of原创 2021-06-08 10:56:37 · 1088 阅读 · 1 评论 -
基于shapefile的离群点提取
前言如上图所示,在影像散落着很多目标点,但我们可能对离群点更感兴趣,本篇博文将介绍如何提取离群点。方法概述对每个点新建一定长度的缓冲区;获得上述缓冲区后,获取缓冲区面积最大值;合并缓冲区相交的feature;设置面积阈值,在我的实验中,阈值为max_area * 1.2;移除超出阈值的缓冲区;获取剩余缓冲区内的点,即为离群的点。代码extract.pyfrom pathlib import Pathfrom osgeo import ogr, osr, gdalimport .原创 2021-03-29 09:26:20 · 238 阅读 · 2 评论 -
分区统计(python)
概要本文主要利用了majority这个字段,来区别栅格与矢量ploygon_feature之间的关系。简单来说,当ploygon_feature内对应的栅格区域,栅格的某个值X超过了百分之五十,那么majory这个字段对应的值就为X。代码import timeimport geopandas as pdimport rasteriofrom rasterio.plot import showfrom rasterstats import zonal_statsfrom osgeo impo原创 2021-03-11 09:29:41 · 2308 阅读 · 3 评论 -
基于gdal的面矢量平滑(python)
文章目录代码平滑效果展示代码from pathlib import Pathimport ogrimport tqdmimport osdef smoothing(inShp, fname, bdistance=0.001): """ :param inShp: 输入的矢量路径 :param fname: 输出的矢量路径 :param bdistance: 缓冲区距离 :return: """ ogr.UseExceptions()原创 2020-12-31 17:32:49 · 1422 阅读 · 7 评论 -
开源库OGR的入门知识
1. 前言OGR 是一个读取和处理 GIS 矢量数据的开源代码库。它可以读取和处理多种流行的矢量数据(如 ESRI 的 Shapefile、S-57、SDTS、PostGIS、Oracle Spatial、以及 Mapinfo 的 mid/mif 和 TAB 格式)2. OGR库安装OGR 是 GDAL 的配套库,它是 GDAL 库的一个部分,只要你安装了 GDAL 库,就已经拥有了 OGR 库。关于gdal(python)的安装,可以参考这篇博客。3. OGR库数据模型OGR数据模型是基于Op原创 2020-12-20 14:14:38 · 2804 阅读 · 0 评论 -
基于gdal的矢量交集(python)
代码from pathlib import Pathimport ogrimport gdalimport osimport globimport shutildef get_outside(inShp, outputShp, field, fieldValue): driver = ogr.GetDriverByName("ESRI Shapefile") dataSource = driver.Open(inShp, 1) layer = dataSource.原创 2020-12-18 09:35:42 · 2459 阅读 · 7 评论 -
基于gdal的MultipartToSinglepart(python)
拆分前拆分后代码import osfrom osgeo import ogrfrom osgeo import gdaldef multipoly2poly(inputshp, outputshp): """ :param inputshp: 输入的矢量路径 :param outputshp: 输出的矢量路径 :return: """ gdal.UseExceptions() driver = ogr.GetDriverByName(原创 2020-12-17 15:52:52 · 727 阅读 · 0 评论 -
基于gdal的矢量合并(python)
合并前合并后代码def uni(shpPath, fname): """ :param shpPath: 输入的矢量路径 :param fname: 输出的矢量路径 :return: """ driver = ogr.GetDriverByName("ESRI Shapefile") dataSource = driver.Open(shpPath, 1) layer = dataSource.GetLayer() # 新原创 2020-12-17 15:42:26 · 3724 阅读 · 9 评论 -
基于gdal的面矢量面积和中心点计算(python)
【代码】基于gdal的面矢量面积和中心点计算(python)原创 2020-12-17 15:32:51 · 2161 阅读 · 2 评论 -
基于gdal的空间缓冲区分析(python)
矢量数据可视化输入输出代码from pathlib import Pathimport ogrdef buffer(inShp, fname, bdistance=0.01): """ :param inShp: 输入的矢量路径 :param fname: 输出的矢量路径 :param bdistance: 缓冲区距离 :return: """ ogr.UseExceptions() in_ds = ogr.Open(inSh原创 2020-12-17 10:31:57 · 3353 阅读 · 6 评论 -
基于gdal的点和面矢量的创建
【代码】基于gdal的点和面矢量的创建。原创 2020-12-04 11:11:06 · 1385 阅读 · 1 评论 -
linux下python版本GDAL安装,简单易用
命令行conda/pip search gdal查看版本,选择合适的版本,例如:conda search gdal命令行conda/pip install gdal=版本号,注意加上版本号,否则可能安装上老版本(windows/linux都可用。例如:conda install gdal=3.0.0...原创 2019-06-18 15:08:13 · 5411 阅读 · 5 评论