[MapServer-users] How to handle NoData in WCS Request? Continuation of [Speed of WMS vs Speed of WCS; How to speed up WCS service?]

Marcin Niemyjski mniemyjski at cloudferro.com
Thu Aug 17 01:41:09 PDT 2023


Hello,


Regarding the topic discussed in https://marc.info/?l=mapserver-users&m=169049275409489&w=2, I have implemented Jukka's suggestions. I created two new attributes, "start" and "stop." Here's the improved mapfile:

https://pastecode.io/s/myjemd1r
As you can see, there are 4 layers served from two tile indexes. The first layer consists of preprocessed OCGs with burned NoData, while the remaining three are served through VRT targeting different spatial resolutions depending on the requested zoom level, with the alpha channel set as a cloud mask. Here's an example of such a VRT (the others are similar):
https://pastecode.io/s/af2tiwsj


What is the problem?

  1.  When I try to create a cloudless mosaic using this request for data stored in COGs for a single day and there is data available for the requested area, the raster is returned. However, instead of transparent NoData, a value of 0 is burned in the place of transparent NoData, and I need NoData transparency (it's a must-have).

http://localhost/cgi-bin/mapserv?map=/var/www/mapbender/piramida_cloudless2.map&service=WCS&version=1.0.0&request=GetCoverage&coverage=test3&BBOX=3180020.455126192886,5542878.218003957532,3184499.682433307637,5548362.511879335158&CRS=EPSG:3857&WIDTH=771&HEIGHT=944&FORMAT=GTiff&start=2023-07-01&stop=2023-07-01

  2.  When I try to create a cloudless mosaic using this request for data stored in COGs for multiple days(!), a black tile filled with values of 0 is returned. This happens because there were no S2 revisions over that area for those days, except for 2023-07-01, but data from that day were covered with NoData from other days - this is an undesired effect :(

http://localhost/cgi-bin/mapserv?map=/var/www/mapbender/piramida_cloudless2.map&service=WCS&version=1.0.0&request=GetCoverage&coverage=test3&BBOX=3180020.455126192886,5542878.218003957532,3184499.682433307637,5548362.511879335158&CRS=EPSG:3857&WIDTH=771&HEIGHT=944&FORMAT=GTiff&start=2023-07-01&stop=2023-07-0<http://localhost/cgi-bin/mapserv?map=/var/www/mapbender/piramida_cloudless2.map&service=WCS&version=1.0.0&request=GetCoverage&coverage=test3&BBOX=3180020.455126192886,5542878.218003957532,3184499.682433307637,5548362.511879335158&CRS=EPSG:3857&WIDTH=771&HEIGHT=944&FORMAT=GTiff&start=2023-07-01&stop=2023-07-01>5

  3.  When I try to request data stored in VRT for a single day using this request, data is returned, but the alpha channel is not taken into account, so once again, transparency information is omitted.

http://localhost/cgi-bin/mapserv?map=/var/www/mapbender/piramida_cloudless2.map&service=WCS&version=1.0.0&request=GetCoverage&coverage=test&BBOX=3180020.455126192886,5542878.218003957532,3184499.682433307637,5548362.511879335158&CRS=EPSG:3857&WIDTH=771&HEIGHT=944&FORMAT=GTiff&start=2023-07-01&stop=2023-07-01

also, WCS seems to ignore MAXSCALEDENOM and MINSCALEDENOM 🙂


Last time, I received a lot of good advice that greatly pushed and improved my service. This time, I hope my message will initiate an interesting discussion.


Best,

Marcin









-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20230817/96643687/attachment.htm>


More information about the MapServer-users mailing list