[QGIS-Developer] Slow WCS processing and Clipping WCS by extent not working
Raymond Nijssen
r.nijssen at terglobo.nl
Thu Aug 13 23:29:40 PDT 2026
Created an issue too:
https://github.com/qgis/QGIS/issues/67061
On 8/14/26 07:02, Raymond Nijssen via QGIS-Developer wrote:
> Dear developers,
>
> Currently I'm working on a process that uses a WCS service containing
> elevation data. I need 800x800m pieces from the elevation raster.
>
> My graphical model uses a Raster Calculator algorithm, with one of the
> (2) layers being the WCS layer from my project. This works but is very
> slow. It takes about 1 minute to process the 800x800m calculation.
>
> If I download the raster using gdal_translate, it only takes 2 seconds
> or so. I cannot find out what the Raster Calculator is doing differently.
>
> On top of that, I need to do calculations for the same area 3x, so every
> location takes up over 3 minutes, and my entire process with many
> locations over 6 hours.
>
> So I had some ideas to speed this up, but so far they all have downsides
> and I'm not sure what is the best way to proceed:
>
> 1. Using the Raster Calculator with only one layer and storing the
> output for the next 3 calculations. Will still take 1 minute extra, but
> is more effective (and a bit lame).
>
> 2. Using the Clip Raster by Extent algorithm, which seems perfect for
> this. But it does not work for WCS, cause it parses the QGIS layer
> source string directly into gdal_translate but GDAL needs another string
> and throws an error. Looking at the Python source code, this has
> probably never worked for WCS.
>
> 2a. Fixing the Clip Raster by Extent algorithm. Cause it is in
> Python, I can give it a try. But I already found out that the Clip
> Raster by Mask algorithm has the same issue. And maybe more raster
> algorithms do. So that should be solved in less redundant way, right?
>
> 2b. Asking a core developer to rewrite this properly in c++. Maybe in
> a way that uses the QGIS network manager so the http-calls get shown in
> the debugging panel? No idea what this would cost but I think I can get
> this funded somehow.
>
> 3. Making my own Python WCS downloader algorithm in Python (I think I
> will need to do this anyway to deliver my project on time, but I prefer
> more long term solutions for all QGIS users.)
>
> Any suggestions?
>
> Kind regards,
> Raymond
>
>
>
>
> Some data
>
>
> This is the GDAL command QGIS generates to clip the extent (2) and the
> error:
>
> GDAL command:
> gdal_translate -projwin 148100.0 412300.0 148900.0 411500.0 -of GTiff
> "cache=AlwaysNetwork&crs=EPSG:28992&format=GEOTIFF&identifier=dsm_05m&url=https://service.pdok.nl/rws/actueel-hoogtebestand-nederland/wcs/v1_0" /tmp/processing_NXPMbm/6597707893384cf9b74c2603ab45909d/OUTPUT.tif
> GDAL command output:
> ERROR 4:
> cache=AlwaysNetwork&crs=EPSG:28992&format=GEOTIFF&identifier=dsm_05m&url=https://service.pdok.nl/rws/actueel-hoogtebestand-nederland/wcs/v1_0: No such file or directory
> Process returned error code 1
>
>
>
>
> This is the working WCS, url generated by QGIS and copied from the
> debugging panel:
>
> https://service.pdok.nl/rws/actueel-hoogtebestand-nederland/wcs/v1_0?
> SERVICE=WCS&VERSION=1.0.0&REQUEST=GetCoverage&FORMAT=GEOTIFF&COVERAGE=dsm_05m&BBOX=142327.30414899752940983,408519.58202700602123514,156029.62145483330823481,415020.39733971789246425&CRS=EPSG:28992&RESPONSE_CRS=EPSG:28992&WIDTH=704&HEIGHT=334
>
> _______________________________________________
> QGIS-Developer mailing list
> QGIS-Developer at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
More information about the QGIS-Developer
mailing list