点PY
If you cannot risk, you cannot grow. If you cannot grow, you cannot become you best. If you cannot become you best, you cannot be happy. If you cannot be happy, what else matters?
展开
-
基于地理面矢量的虚拟围栏
虚拟围栏(Geofencing)技术在多个领域有广泛应用,包括无人机飞行限制、车辆监控与管理、人员安全监控、儿童和宠物定位、营销与广告、智能家居与安防、自然保护区与动物监控、健康与健身应用、物流与仓储管理及交通管理,通过设定虚拟边界,当设备或人员进入或离开指定区域时自动触发相应的操作,提高了自动化、智能化和安全性。原创 2024-07-30 16:12:23 · 133 阅读 · 0 评论 -
基于gdal的点和面矢量的创建
【代码】基于gdal的点和面矢量的创建。原创 2020-12-04 11:11:06 · 1294 阅读 · 1 评论 -
基于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 · 956 阅读 · 1 评论 -
克里金插值(python)
克里金插值原创 2022-07-07 10:50:06 · 2432 阅读 · 0 评论 -
基于ogr的点矢量批量生成方法(python)
根据地理栅格图像和多个像素位置生成点矢量的过程涉及几个关键步骤:读取和解析栅格数据、将像素位置转换为地理坐标、并将这些坐标存储为点矢量数据格式。原创 2022-05-11 20:48:58 · 277 阅读 · 2 评论 -
为什么需要使用 Geopackage 文件而不是 shapefile 或 GeoJSON
文章目录当前矢量数据标准格式Shapefile 的问题GeoJSON 的问题什么是Geopackage好处当前矢量数据标准格式如果你一直在使用矢量数据并进行空间分析,你就会知道 shapefile 和 geojson。Ť ħ ESE是两种最常用的矢量数据格式来存储数据和执行任何空间分析。特别是 GeoJSON,在向 Web 应用程序提供数据时一直是首选格式。但是,当您希望扩展工作并为大规模部署构建集成和自动化的工作流时,这两种格式都有很多缺点。Geopackage 格式在这方面提供了多种功能。这就是为.原创 2021-09-03 11:46:18 · 2109 阅读 · 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 · 708 阅读 · 17 评论 -
利用建筑矢量进行简单的三维建模
文章目录1. 软件准备2. 数据准备3. 数据处理4. 数据展示1. 软件准备下载cesiumlab2. 数据准备建筑矢量关于高度的字段设置(如下图所示)3. 数据处理相关参数设置如下图所示,直接输出结果。4. 数据展示...原创 2021-07-16 10:59:19 · 588 阅读 · 1 评论 -
使用osgeo.ogr.Geometry对象计算多边形的周长
简单地找到几何的边界然后找到边界的长度来解决问题。perimeter = feat.GetGeometryRef().Boundary().Length()原创 2021-07-13 12:13:16 · 679 阅读 · 0 评论 -
面矢量转点矢量(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 · 632 阅读 · 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 · 1340 阅读 · 0 评论 -
基于arcgis的最小外接矩形获取方法
ArcToolbox => Data Management Tools => Features => Minimum Bounding Geometry原创 2021-07-06 10:09:52 · 7066 阅读 · 4 评论 -
基于arcgis的专题图制作教程
1. 准备好图层2. 切换视图3. 插入标题4. 插入指北针5. 插入图例6. 插入比例尺切换成km7. 插入经纬度格网初步效果两侧纬度竖直表示去掉图内的格网最终结果原创 2021-06-02 11:22:44 · 1723 阅读 · 4 评论 -
地理空间大数据,还能这样“玩”
文章目录前言01、大数据和GIS02、应用1. 人道主义援助2. 市场营销3. 商业智能03、未来预测前言「“互联网+”时代,数据呈现多元化趋势,进行地理空间智能的研究受到广泛关注,其商业价值和社会价值有着无限可能性,并蕴含在大数据分析中。那么地理空间数据如何助力智能化进阶呢?」大数据分析影响着我们日常生活的各个领域,也同时改变着地理空间数据的使用方式,而且这种影响是双向的。正如分析海量数据的能力使地理空间数据比以往任何时候都更强大、更有价值,物联网带来的地理空间智能也赋予了大数据分析巨大的动力。今原创 2021-04-24 09:54:26 · 925 阅读 · 0 评论 -
基于shapefile的道格拉斯普克算法(python)
文章目录前言算法的基本思路代码前言Douglas-Peukcer算法由D.Douglas和T.Peueker于1973年提出,是线状要素抽稀的经典算法。用它处理大量冗余的几何数据点,既可以达到数据量精简的目的,有可以在很大程度上保留几何形状的骨架。算法的基本思路将待处理曲线的首末点虚连一条直线,求所有中间点与直线的距离,并找出最大距离值dmax ,用dmax与抽稀阈值threshold相比较:若dmax < threshold,这条曲线上的中间点全部舍去;若dmax ≥ threshold原创 2021-04-07 11:57:45 · 1115 阅读 · 12 评论 -
基于shapefile的线转面(python)
数据展示线矢量面矢量代码import geopandas as gpdfrom shapely.geometry import Polygon, mappingdef linestring_to_polygon(fili_shps): gdf = gpd.read_file(fili_shps) #LINESTRING gdf['geometry'] = [Polygon(mapping(x)['coordinates']) for x in gdf.geometry]原创 2021-04-06 17:05:41 · 1495 阅读 · 2 评论 -
Arcgis之矢量合并
ArcToolbox ==> Data Management Tools ==> General ==> Merge原创 2021-03-15 13:33:23 · 2304 阅读 · 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 · 2001 阅读 · 3 评论 -
基于python脚本的遥感影像样例模板批量生产以及样本绘制
# -*- coding: utf-8 -*-from osgeo import ogrimport os, sysimport numpy as npimport cv2import numpyimport gdalimport timeimport globfrom osgeo import osrdef del_file(path): for i in os.listdir(path): path_file = os.path.join(path, i)原创 2020-12-14 22:24:44 · 652 阅读 · 0 评论 -
基于gdal的栅格转面矢量(python)
数据预览转换前转换后代码import gdalconst, gdal, ogr, osrimport osdef raster2poly(raster, outshp): inraster = gdal.Open(raster) # 读取路径中的栅格数据 inband = inraster.GetRasterBand(1) # 这个波段就是最后想要转为矢量的波段,如果是单波段数据的话那就都是1 prj = osr.SpatialReference() p原创 2021-01-05 15:00:41 · 1680 阅读 · 0 评论 -
基于ogr的面矢量转线矢量(python)
数据预览转换前转换后代码import osimport gdal, gdalconst, ogrdef pol2line(polyfn, linefn): """ This function is used to make polygon convert to line :param polyfn: the path of input, the shapefile of polygon :param linefn: the path of outpu原创 2021-01-05 14:55:59 · 1017 阅读 · 1 评论 -
面矢量栅格化(python)
文章目录前言数据准备矢量栅格化代码结果展示前言在准备深度学习样例库的时候,经常会碰到多类的情况。本篇博文将简单介绍下如何根据字段值来栅格化面矢量。数据准备在arcgis中绘制好面矢量。并根据类别给字段“id”赋不同的值。矢量栅格化代码import gdalimport ogrimport gdalconstdef shp2Raster(shp,templatePic,output,field,nodata): """ shp:字符串,一个矢量,从0开始计数,整数原创 2020-11-02 14:37:26 · 1850 阅读 · 1 评论 -
给矢量设置坐标系/投影(python)
def intersection(shp1, shp2, outshp): """ :param shp1: 缓冲区矢量路径 :param shp2: 目标矢量路径 :param outshp: 输出矢量路径 :return: """ driver = ogr.GetDriverByName("ESRI Shapefile") dataSource1 = driver.Open(shp1, 1) layer1 = dataSo原创 2021-01-04 17:37:54 · 2075 阅读 · 2 评论 -
基于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 · 1316 阅读 · 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 · 2617 阅读 · 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 · 2342 阅读 · 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 · 653 阅读 · 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 · 3593 阅读 · 9 评论 -
基于gdal的面矢量面积和中心点计算(python)
【代码】基于gdal的面矢量面积和中心点计算(python)原创 2020-12-17 15:32:51 · 2017 阅读 · 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 · 3181 阅读 · 6 评论 -
geojson转shapefile
mapshaper :http://mapshaper.org/原创 2019-11-06 16:11:08 · 341 阅读 · 0 评论