Questions tagged «ogr»

OGR简单功能库是C ++开源库(和命令行工具),提供对矢量文件格式的访问。

5
在MacOSX上安装GDAL?
有谁知道在MacOSX上安装GDAL 2.0的最简单方法是什么? 通常的嫌疑人kingchaos二进制分发和自制软件似乎停留在GDAL 1.11上 我需要对似乎包含在2.0中的 TopoJSON功能属性的支持 编辑2017/01/07: kingchaos二进制发行版现在提供了GDAL 2.1发行版

3
使用Python生成GeoJSON
我想以编程方式使用shapefile中的多边形创建GeoJSON文件,但要从我自己的应用程序中添加属性。 对于shapefile来说,这很容易做到: def create_data_dayer(self,varlist, data): """ Creates a new shape to contain data about nodes. varlist is the list of fields names associated with the nodes. data is a list of lists whose first element is the geocode and the remaining elements are values of the fields, in the same …
16 python  geojson  ogr  fiona 


2
如何使用Python将自定义特征属性添加到Shapefile?
我正在寻找采用具有200个国家/地区功能集的现有Shapefile的方法。每个国家/地区要素的属性均为“ NAME”。我的目标是创建一个Python脚本,该脚本添加一个任意(现在)的附加属性,例如“ POPULATION”。 当然,我已经安装了OSGeo和GeoDjango模块。我到: from osgeo import ogr infile = ogr.Open('sample.shp', 1) #'sample.shp' is a pre-existing ESRI shapefile described above inlyr = ogr.GetLayerByIndex(0) 我是否缺少OGR函数,该函数无法将Feature属性字段插入到现有的Shapefile中?
16 shapefile  ogr  osgeo 

3
ogr2ogr无法转换> 200MB的GeoJson文件
作为我之前的问题(将SimpleGeo Places GeoJSON文件转换为shapefile)的后续措施,我现在正在努力解决我认为可能是ogr2ogr“内存”限制的问题,但是我不确定。我已成功将SimpleGeo转储文件转换为正确的geojson文件(已验证,可在QGIS中直接读取)。 现在,我想将此数据转换为SHP或其他格式(SQLite,PostGIS)。我正在较小的文件(其中“ places_fr.gejson”的文件大小为〜118MB)上成功运行以下命令: ogr2ogr -f "ESRI Shapefile" places_fr.shp places_fr.geojson 当我尝试使用340MB的geojson文件运行相同的命令时,ogr2ogr会以以下两种方式之一崩溃: “ lh_table_new:calloc失败”(第一次尝试) Windows抛出“ ogr2ogr.exe已停止工作。请关闭程序。” (后续尝试) 我正在Windows 7环境双核中通过FWTools运行ogr命令,该双核具有8GB的已安装RAM(4GB可用,12GB虚拟内存)。ogr2ogr转换这些数据集是否有内存限制?我也尝试过将结果转换为SQLite,因此我认为这不是SHP转换问题。谢谢。
15 convert  ogr 

3
将Geopackage内容上传到PostgreSQL
作为背景知识,我们正在寻求摆脱使用shapefile的过渡。我们已经开始使用Geopackages进行桌面工作(QGIS / ArcGIS),但是经常需要将数据上传到我们的PostgreSQL数据库。 我知道您可以使用QGIS将Geopackage内容上传到Postgres,但想知道是否有类似于shp2pgsql的命令行实用程序将Geopackage或Geopackages中的表格上传到Postgres?我假设可能是ogr2ogr,但找不到文档。



5
如何建立GPS日志的地理数据库?
在空中野生动物调查中,我们通常会生成数十个GPX文件,并且通常将其中的大多数文件转换为shapefile,以便在GIS应用程序中显示。GPX文件是一种将所有(或几乎所有)GPS数据保存在一个地方的绝佳方法–它们是xml文件,以一种方便的格式存储了轨迹日志,航路点和路线信息。它们存储多个轨道,甚至可以存储Garmin中保存的旧轨道。 我想将所有这些跟踪数据存储在spacespaceite数据库中,并与其他具有来自同一测量的点观测数据的表并行存储。 ogr2ogr将让我将轨道转换为spacespaceite数据库: ogr2ogr -append -f "SQLite" -dsco SPATIALITE=yes # add to table with Spatialite filetype -dsco INIT_WITH_EPSG=yes -t_srs epsg:4326 # using WGS84 SURVEYDATA.sqlite GPXFILE.gpx tracks -nln tracktable; # adding tracks to 'tracktable' 但是,这会将每个已保存的轨道导入为一行-丢失了每个轨道点的时间/位置信息! 有人知道构建跟踪日志数据库以保留该信息的任何巧妙方法吗? 编辑: Tracklog不仅是一条直线,而是连续点的集合,每个连续点都有一个height和time属性。每个点都属于一个轨道段,而该轨道段又属于给定的轨道,并且每个轨道段内的点都是不间断地获取的,可以假定是链接的。例如: <trk><name>ACTIVE LOG</name> <trkseg> <trkpt lat="-13.471403" lon="31.382982"><ele>467.818725585938</ele><time>2009-09-09T03:53:38Z</time></trkpt> <trkpt lat="-13.471403" lon="31.382982"><ele>468.780029296875</ele><time>2009-09-09T03:53:50Z</time></trkpt> <trkpt lat="-13.471403" lon="31.382982"><ele>465.896118164063</ele><time>2009-09-09T03:54:43Z</time></trkpt> </trkseg> …
13 gps  convert  ogr  spatialite  gpx 

1
OGR / GDAL线程导致内核利用率低
我正在尝试使用ogr / gdal处理一些栅格数据,但似乎无法充分利用计算机上的所有内核。当我仅在单个内核上运行该进程时,该内核的利用率为100%。当我尝试拆分为多核时(在下面的示例中,通过对x偏移量进行分块并将它们放入队列中),我的8个内核中的每个内核都得到了可悲的利用。看起来每个内核的利用率仅相加达到100%(例如,每个内核的利用率为12.5%)。 我担心使用相同的数据源是瓶颈,但是后来我为每个核心复制了底层栅格文件...并且核心利用率仍然很低。这使我相信,ogr或gdal某种程度上表现得像瓶颈共享资源,但是我在网上找不到任何东西。任何帮助将非常感激! 这是在每个辅助线程中运行的“帮助器”功能: def find_pixels_intersect_helper(datasource, bounds_wkt, x_min, x_max): bounds = ogr.CreateGeometryFromWkt(bounds_wkt) rows_to_write = [] for x_offset in range(x_min, x_max): for y_offset in range(datasource.RasterYSize): pxl_bounds_wkt = pix_to_wkt(datasource, x_offset, y_offset) pxl_bounds = ogr.CreateGeometryFromWkt(pxl_bounds_wkt) if pxl_bounds.Intersect(bounds): rows_to_write.append(['%s_%s' % (x_offset, y_offset), pxl_bounds.Centroid().ExportToWkt()])

3
如何在Fiona中添加对FileGDB(Esri文件gdb API)驱动程序的支持?
对此有很多问题,但没有一个解决了我的问题。 我有一台机器有: Windows 7 x64 Python 3.4.3 x64 @中安装:gdalinfo --version --> GDAL 1.11.4, released 2016/01/25; gdal是GDAL-1.11.4-cp34-none-win_amd64.whl从这里通过轮子安装的 GDAL已安装到中C:\Python34\Lib\site-packages\osgeo。在那里,我有一堆用于gdal和ogr以及.pyd文件的.exe文件。 安装了fiona:是Fiona-1.6.3-cp34-none-win_amd64.whl从同一网站上的wheel安装的。 我能够运行以下代码,并且可以成功执行: import gdal import ogr from gdalconst import * shp = r"C:\Data\GIS\PTS.shp" driver = ogr.GetDriverByName('ESRI Shapefile') dataset = driver.Open(shp) layer = dataset.GetLayer() layer.GetFeatureCount() schema = layer.schema fields = [field.GetName() for field in …

3
使用Python检查点是否在多多边形内
我已尝试使用诸如shapefile,fiona和ogr之类的库的几个代码示例,以尝试检查点(x,y)是否落在用ArcMap创建的多面体的边界内(从而以shapefile格式)。但是,尽管这些示例对于常规的单个多边形shapefile也能很好地工作,但是它们都不能很好地与multipolygons配合使用。我尝试过的一些代码片段如下: # First example using shapefile and shapely: from shapely.geometry import Polygon, Point, MultiPolygon import shapefile polygon = shapefile.Reader('shapefile.shp') polygon = polygon.shapes() shpfilePoints = [] for shape in polygon: shpfilePoints = shape.points polygon = shpfilePoints poly = Polygon(poly) point = Point(x, y) # point in polygon test if polygon.contains(point): print …

1
有没有办法在Python中适当地使GDAL引发异常?
我正在Python中使用GDAL,并且想让GDAL引发异常,以便我可以对它们做一些有用的事情。例如,如果无法使用gdal.Open()打开文件,我想抛出一个异常,而不是gdal返回None。我只想捕获错误而不是将它们转储到sys.stdout。 目前,我已经尝试使用该gdal.UseExceptions()功能,但是遇到了一个问题。当gdal.UseExceptions()设置似乎隐藏某些错误,他们不会引发异常。例如ERROR 5: Access window out of range in RasterIO() Requested (1,15) of size 25x3 on raster of 26x17消失,没有异常引发。这似乎很危险。 任何想法表示赞赏,谢谢。
12 python  gdal  ogr  osgeo 

7
在Mac OS X上将GEOS,PROJ,GDAL / OGR安装到python virtualenv中
我正在尝试设置一个隔离的python virtualenv来在Mac OS X上的GIS项目上工作。听起来我需要从kyngchaos站点(这里http://www.kyngchaos.com/软件/框架,而不是easy_install将其安装到我的virtualenv中。准确吗? kyngchaos上可用的下载是pkg安装程序,而不仅仅是python模块的egg或bdist。因此,除了将文件复制到/Library/Framework/geos.framework文件夹之外,我不确定安装程序还会对环境做什么。 如何将特定版本的GEOS,PROJ,GDAL / OGR安装到新的python virtualenv中?感谢您在此问题上的帮助/建议。
12 gdal  ogr  osx 

2
如何使用OGR访问Shapefile元数据?
我正在尝试使用ogrinfo获取有关我下载的shapefile的一些详细信息。当前,我知道如何执行此操作的唯一方法是将其加载到QGIS中,然后手动单击以查找有关它的任何信息,例如打开属性表。 我只希望能够看到所有带有功能标记的元数据。如果我做: ogrinfo -al USA_adm0.shp 我可以看到一开始有很多有用的信息,但是随后所有的特征数据就飞逝了。 有人可以帮我吗? 编辑 这就是我使用-ro和-so标志在Mac上获得的内容,似乎并没有太大帮助。 ->ogrinfo -ro -so USA_adm0.shp INFO: Open of `USA_adm0.shp' using driver `ESRI Shapefile' successful. 1: USA_adm0 (Polygon)
12 shapefile  gdal  ogr 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.