map5nl / map5issues

map5.nl info and issue tracking
https://map5.nl
Other
1 stars 0 forks source link

JPEG encoding ipv PNG voor tiles #10

Closed justb4 closed 9 years ago

justb4 commented 9 years ago

OpenTopo, Reliëfkaarten (zie issue #7) en OpenLufo (zie issue #9) lijken meest gebaat bij een JPEG encoding. PNG8 (nu formaat voor OpenTopo) is welliswaar compact maar laat teveel artefacten zien op detail niveau, met name in vlakken. PNG24 geeft goede resultaten maar heeft relatief grote filesizes. JPEG lijkt steeds meer de beste keuze: zelfde kwaliteit als PNG24 maar een filesize meestal 3.5 keer zo klein als PNG24 en zelfs kleiner dan PNG8. Dat er geen transparantie is, lijkt geen bezwaar, want de client bijv. Leaflet of Heron (OpenLayers) kan lokaal transparantie/opacity reguleren.

Hieronder een aantal vergelijkingen voor verschillende lagen en zoomlevels. De plaatjes zijn gemaakt met tiles uit MapProxy met verschillende PNG of JPEG instellingen per cache. De backend MapServer levert PNG24 (PNG caches) of JPEG (JPEG caches). Alle JPEG compressies zijn faktor 90. Voor JPEG wordt bovendien een 256x256 plaatje (geen meta-tiling+randbuffer) uit MapServer gevraagd. Dit laatste gaf significant scherpere plaatjes. Plaatjes kunnen dan direct naar cache. Snelheid zonder meta-tiling leek nauwelijks uit te maken. Aangezien de bron al raster is, is meta-tiling niet strict nodig.

opentopo-png-vs-jpeg

Voor OpenTopo vooral zichtbaar wanneer ondergrond weinig variatie/vlak is. PNG8 heeft duidelijke artefacten.

relief_struct-png-vs-jpeg

Voor relief_struct laag ook duidelijk lijkt mij.

openlufo-png-vs-jpeg

Tenslotte ook voor OpenLufo evident. NLTopo App en andere preview apps moet ook aangepast voor OpenTopo laag van PNG8 naar JPEG.!

justb4 commented 9 years ago

Gedaan in release 15.5.