我有一个 XYZ 光栅文件, 1.1GB EPSG:23700(EOV), 50米分辨率。
目的是创建一个 GeoTIFF 文件,通过GeoServer( EPSG:4326 )发布,但我遇到了一些性能问题。
如果我从QGIS(2.14.0,Essen)打开 XYZ文件,请选择栅格»转换»翻译并使用默认选项启动它,它在几分钟,这是可以接受的。
但是,如果我复制生成的 gdal_translate 命令并从CLI运行它,则需要花费一个多小时左右。
我尝试了-co "GDAL_CACHEMAX=500"
,-co "NUM_THREADS=3"
,但没有效果。在流程监视器中,QGIS版本完全使用 1核( 25%CPU ),默认最大内存 10MByte ,但CLI版本只有< 10%和< 10Mbyte 内存。 --degub ON
选项会显示“XYZ:New stepX = 50.000000000000000”并挂起。
我尝试从QGIS目录 \ bin 文件夹和单独下载的 GDAL 实例( C:\ OSGeo4W64 \ bin ),结果相同。
Windows Server 2012,16GB RAM,2,6 GHz 4核氙气CPU。
对此有何想法?
答案 0 :(得分:0)
看起来环境变量存在一些问题。如果我使用QGIS启动批处理文件的修改版本,它将按预期工作。
@echo off
call "%~dp0\o4w_env.bat"
@echo off
path %OSGEO4W_ROOT%\apps\qgis\bin;%PATH%
set QGIS_PREFIX_PATH=%OSGEO4W_ROOT:\=/%/apps/qgis
set GDAL_FILENAME_IS_UTF8=YES
set GDAL_CACHEMAX = 500
rem Set VSI cache to be used as buffer, see #6448
set VSI_CACHE=TRUE
set VSI_CACHE_SIZE=1000000
set QT_PLUGIN_PATH=%OSGEO4W_ROOT%\apps\qgis\qtplugins;%OSGEO4W_ROOT%\apps\qt4\plugins
REM This line changed to run my batch file instead of starting QGIS.
call "d:\gdaltest.bat"