Le jeudi 18 septembre 2014 22:23:06, Peter Hopfgartner a écrit : > Salut Evan, > > thanks for you recipe. Unfortunately, what I am really interested in is to > use this from MapServer. Could you give me a pointer in the source where > the resampling takes place?
In gcore/rasterio.cpp : GDALRasterBand::IRasterIO(). I must warn you : quite tricky code But perhaps you don't need code change. In MapServer did you try to define PROCESSING "RESAMPLE=BILINEAR" ? > > Thanks, > > Peter > > Am 18.09.2014 um 22:11 schrieb Even Rouault <even.roua...@spatialys.com>: > > Le jeudi 18 septembre 2014 17:40:11, Peter Hopfgartner a écrit : > >> Hi, everybody > >> > >> we are using the GDAL WMS driver for getting maps from a public WMTS > >> service, http://www.basemap.at. Anyway, the resulting image does not > >> look smooth. In particular, I would guess that the the image was scaled > >> with something like a nearest neighbor algorithm. > >> So my question is simply, if I can switch the interpolation method in > >> some place. > >> > >> The XML file, taken from > >> http://gisforge.wordpress.com/2012/11/06/basemap-at-wmts-layer-in-qgis/, > >> is: > >> > >> <GDAL_WMS> > >> > >> <Service name="TMS"> > >> > >> <ServerUrl>http://maps.wien.gv.at/basemap/geolandbasemap/normal/google38 > >> 57/ ${z}/${y}/${x}.jpeg</ServerUrl> </Service> > >> > >> <DataWindow> > >> > >> <UpperLeftX>-20037508.34</UpperLeftX> > >> <UpperLeftY>20037508.34</UpperLeftY> > >> <LowerRightX>20037508.34</LowerRightX> > >> <LowerRightY>-20037508.34</LowerRightY> > >> <TileLevel>18</TileLevel> > >> <TileCountX>1</TileCountX> > >> <TileCountY>1</TileCountY> > >> <YOrigin>top</YOrigin> > >> > >> </DataWindow> > >> <Projection>EPSG:3857</Projection> > >> <BlockSizeX>256</BlockSizeX> > >> <BlockSizeY>256</BlockSizeY> > >> <BandsCount>3</BandsCount> > >> <Cache /> > >> > >> </GDAL_WMS> > >> > >> The command is: > >> > >> gdal_translate -srcwin 35500000 23500000 100000 100000 -of JPEG -outsize > >> 250 250 basemap_at.xml basemap_at.jpg > > > > Peter, > > > > Resampling done by gdal_translate is nearest neighbour, so not always > > that great. > > > > What you can do is select an outsize that is compatible with the source > > overviews. In TMS, the ratio between sucessive overviews work with factor > > of 2, so you should select an outsize of 10000 / 2^N. The closest is > > 10000 / 256 = 390.625 -> 391 > > > > So > > > > gdal_translate -srcwin 35500000 23500000 100000 100000 -outsize > > 391 391 basemap_at.xml tmp.tif > > > > and then: > > > > gdalwarp tmp.tif tmp2.tif -r lanczos -ts 250 250 (you can try different > > resampling kernel) > > gdal_translate tmp2.tif basemap_at.jpg -of JPEG > > > > Best regards, > > > > Even -- Spatialys - Geospatial professional services http://www.spatialys.com _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/gdal-dev