GDAL(地理空间数据抽象库)是一个用于读取和编写栅格地理空间数据格式的库。
Python 中带有 shapefile 的 GTiff 掩码以及 gdal、ogr 等
好的,经过一番摆弄,我从第二个注释行中的站点超链接中调整了一个脚本。该脚本的目的是剪辑/屏蔽大型光栅(即无法适合 32 位 P...
如何从 GDAL python 包装器调用 GDALDEMProcessing?
我正在尝试使用 GDAL 在 python 中计算坡向和山体阴影。我已经通过 NuGet 安装了 GDAL 和 GDAL.Native 包,但找不到 GDALDEMProcessing 调用(https://gdal.org/programs/
如何从 GDAL C# 包装器调用 GDALDEMProcessing?
我正在尝试使用 GDAL 在 C# 中计算坡向和山体阴影。我已经通过 NuGet 安装了 GDAL 和 GDAL.Native 包,但找不到 GDALDEMProcessing() 调用(https://gdal.org/programs/
我正在使用一个 GeoJSON 文件,该文件表示美国海拔 0 英尺的区域。然而,当我将其加载到 QGIS 中时,出现了一条奇怪的对角线,横跨地图。这...
我有一个包含纬度、经度和降雨量信息的 CSV 文件。我想插入这些点并创建 .tiff 文件。任何人都可以建议我最简单的方法吗? 我正在努力给你...
我已经在spyder的工作环境中安装了gdal和miniconda。重新启动电脑后,conda列表显示gdal已安装。但是,我无法导入该包。 “&qu...
osgeo 包退出在 python 环境中运行,没有错误/警告
我在 python 环境中运行 gdal/ogr/osr 时遇到问题。该程序刚刚停止运行,直到我使用任何这些包的行。它不会给出任何错误或警告消息。 ...
使用 CMake for ios 目标制作 C/C++ 项目静态库
我正在使用 make 工具进行构建,对于 gdal 库,我可以使用以下命令进行配置。 cmake .. -G Xcode \ -DCMAKE_TOOLCHAIN_F...
GeoTiff 栅格数据转换为 Delta Lake / Parquet 格式?
我们的组织最近一直在使用 Databricks 进行 ETL 和数据集开发。然而,我发现栅格数据集的库/功能非常有限。有几个光栅/Sp...
Geojson 点 我有大量 GeoJSON 格式的点几何数据,并且希望从这些数据生成 MVT。问题是我需要高缩放级别才能清楚地显示数据样本...
使用 PyQGIS 将矢量和栅格图层导出到 GeoPackage (gpkg)
如何将列表中的图层(形状文件和 GTiff)导出到一个 gpkg 文件中? 它分别适用于矢量和栅格图层,但输出中仅保存一种类型的图层。 我意识到了什么
GDAL/ogr2ogr/ogrinfo 每次运行都会产生无效指针错误
按照此处描述的步骤安装 ogr2ogr 后 https://mothergeo-py.readthedocs.io/en/latest/development/how-to/gdal-ubuntu-pkg.html 当我运行 ogr2ogr 或 ogrinfo 时,我得到以下信息...
尝试安装mapbox-tileset时使用GDAL_CONFIG环境变量错误提供gdal-config的路径
运行 pip install mapbox-tilesets 时,在收集 rasterio 过程中,我在 Windows 10 计算机上收到以下错误,特别是在构建轮子的要求时出现错误。
如何更改rasterio的rio.reproject_match函数(python)中的重采样方法?
我想将光栅2的分辨率和原点应用于光栅1。我找到了光栅的 “rio.reproject_match”函数。这正确地进行了转换,但我无法更改
Anaconda 上的 GDAL 安装问题(gdalinfo.exe 入口点未找到错误)
我正在努力让 GDAL 在 Windows 上的 Anaconda 环境中工作。尽管多次尝试,gdalinfo --version 始终返回入口点错误,从而阻止 GDAL 运行。 ...
我想容器化一个SpringBoot应用程序并使用gdal。 为此,我在 pom.xml 中使用 org.gdal 格达尔 我想容器化一个 SpringBoot 应用程序并使用 gdal。 为此,我在我的 pom.xml 中使用 <dependency> <groupId>org.gdal</groupId> <artifactId>gdal</artifactId> <version>3.8.0</version> </dependency> 和 FROM osgeo/gdal:ubuntu-full-3.6.3 在Dockerfile中。 但是看起来 org.gdal 引用了一个不存在的常量。我稍后会描述它。但首先是源代码的关键部分: Dockerfile: FROM maven:3.9.5-amazoncorretto-21 as build WORKDIR /app COPY target/converter-service-1.0.0-SNAPSHOT.jar app.jar RUN mkdir -p target/extracted RUN java -Djarmode=layertools -jar app.jar extract --destination target/extracted FROM osgeo/gdal:ubuntu-full-3.6.3 ENV GDAL_DATA="/usr/share/gdal" ENV GDAL_DRIVER_PATH="/usr/lib/x86_64-linux-gnu/gdalplugins" ENV PROJ_LIB="/usr/share/proj" ENV PATH="/usr/share/gdal:${PATH}" WORKDIR app RUN apt update && apt install -y openjdk-21-jre-headless ARG EXTRACTED=/app/target/extracted COPY --from=build ${EXTRACTED}/dependencies/ ./ COPY --from=build ${EXTRACTED}/spring-boot-loader/ ./ COPY --from=build ${EXTRACTED}/snapshot-dependencies/ ./ COPY --from=build ${EXTRACTED}/application/ ./ ENTRYPOINT ["java", "-Djava.library.path=/usr/share/java/", "org.springframework.boot.loader.launch.JarLauncher" ] Java代码 package my; import org.springframework.stereotype.Service; import org.gdal.gdal.gdal; import org.gdal.gdalconst.gdalconstConstants; ... @Service public class Grib2ToGeoTiffService { static { gdal.AllRegister(); } @PostConstruct private void postConstruct() { convert( ResourceUtils.getFile("classpath:file.grib2"), new File("/tmp/output") ); } public boolean convert(File gribFile, File geotiffOutputDir) throws Exception { if (!gribFile.exists()) { log.error("File does not exist: '{}'", gribFile.getAbsolutePath()); return false; } var gribType = getGribType(gribFile.getName()); log.info("Grib type '{}' for '{}'", gribType, gribFile.getName()); Dataset dataset = gdal.Open(gribFile.getAbsolutePath(), gdalconstConstants.GA_ReadOnly); if (dataset == null) { log.warn("Unable to open file: " + gribFile.getAbsolutePath()); return false; } int bandCount = dataset.getRasterCount(); Map<String, Settings> settingsMap = getSettingsMap(gribType); for (int bandId = 1; bandId <= bandCount; bandId++) { if (settingsMap.containsKey(Integer.toString(bandId))) { processBand(dataset, bandId, geotiffOutputDir, gribType, settingsMap); } } dataset.delete(); return true; } } 应用程序在容器中运行后出现以下错误: Caused by: java.lang.UnsatisfiedLinkError: 'int org.gdal.gdalconst.gdalconstJNI.GDT_Int8_get()' at org.gdal.gdalconst.gdalconstJNI.GDT_Int8_get(Native Method) ~[gdal-3.8.0.jar:na] at org.gdal.gdalconst.gdalconstConstants.<clinit>(gdalconstConstants.java:14) ~[gdal-3.8.0.jar:na] at my.service.Grib2ToGeoTiffService.convert(Grib2ToGeoTiffService.java:121) ~[classes/:1.0.0-SNAPSHOT] ... 代码中对应的行是: Dataset dataset = gdal.Open(gribFile.getAbsolutePath(), gdalconstConstants.GA_ReadOnly); 我从正在运行的容器中导出了gdal.h,但找不到常量。 以下是该文件的摘录,其中定义了常量: ... /*! Pixel data types */ typedef enum { /*! Unknown or unspecified type */ GDT_Unknown = 0, /*! Eight bit unsigned integer */ GDT_Byte = 1, /*! Sixteen bit unsigned integer */ GDT_UInt16 = 2, /*! Sixteen bit signed integer */ GDT_Int16 = 3, /*! Thirty two bit unsigned integer */ GDT_UInt32 = 4, /*! Thirty two bit signed integer */ GDT_Int32 = 5, /*! 64 bit unsigned integer (GDAL >= 3.5)*/ GDT_UInt64 = 12, /*! 64 bit signed integer (GDAL >= 3.5)*/ GDT_Int64 = 13, /*! Thirty two bit floating point */ GDT_Float32 = 6, /*! Sixty four bit floating point */ GDT_Float64 = 7, /*! Complex Int16 */ GDT_CInt16 = 8, /*! Complex Int32 */ GDT_CInt32 = 9, /* TODO?(#6879): GDT_CInt64 */ /*! Complex Float32 */ GDT_CFloat32 = 10, /*! Complex Float64 */ GDT_CFloat64 = 11, GDT_TypeCount = 14 /* maximum type # + 1 */ } GDALDataType; ... 导致错误的原因是什么?也许 <dependency> <groupId>org.gdal</groupId> <artifactId>gdal</artifactId> <version>3.8.0</version> </dependency> 和 FROM osgeo/gdal:ubuntu-full-3.6.3 不兼容还是我做错了什么? 在互联网上进行一些研究后,我发现了讨论: https://openradar.discourse.group/t/attributeerror-module-osgeo-gdalconst-has-no-attribute-gdt-int8/333 该常量似乎出现在3.7版本中 所以我将 JNI 库降级为: <dependency> <groupId>org.gdal</groupId> <artifactId>gdal</artifactId> <version>3.6.0</version> </dependency> 有问题的java代码此后开始工作。
Django / GeoDjango 在 Ubuntu / Dokku 上找不到 GDAL 库
我们收到“django.core.exceptions.ImproperlyConfigured:找不到 GDAL 库”,这是 GeoDjango 的常见安装问题。 开发环境为Win10,GDAL库已解析...
在 python 中使用 gdal 将栅格导出到 tif 时重新加载 tif 时出错
我想通过以下步骤将处理后的栅格图层(即 np 数组)导出为 tif,在使用驱动程序创建 out.tif 栅格后,我无法将创建的 tif 文件加载回 python 中。我
我尝试从 Natural Earth 的世界 shp 文件中提取某些国家/地区。 我目前使用的是Windows 10,所以我安装了Python 3.7、gdal来使用ogr2ogr。 我在通讯中输入了以下代码...
GDALWARP如何输出ISEA(二十面体斯奈德等积)投影栅格?
使用 gdalwarp 生成 ISEA“二十面体斯奈德等面积”GEOTIFF/光栅。 使用 PROJ/GDAL 无法生成二十面体投影吗? 制作 ISEA“二十面体斯奈德等于...