Logo TIB AV-Portal Logo TIB AV-Portal

MapProxy in practice

Video in TIB AV-Portal: MapProxy in practice

Formal Metadata

MapProxy in practice
Title of Series
Part Number
Number of Parts
CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date

Content Metadata

Subject Area
MapProxy is much more that just simple cache for WMS and tile services. The presentation shows how the more powerful features of MapProxy are used in practice. The talk explains new and less known features of MapProxy and how they can be combined. All examples are from actual requests form the community or requirements from customer projects. Covered topics are: Mobile applications: Retina/HQ-tiles Use of existing tile services: Transformation, combining Image processing: Optimizations, watermarks, etc. Security: Limiting layers or geographical areas Efficient seeding: Updating changes and removing stale tiles etc.
goods XML share
presentation Mobile App scale mapping Development mobile Imaging Open Source Content XML part category words Security share
laptop tablets image pixel screens high resolution images Display Smartphones sort Display pixel
image high resolution case Tiled high resolution time images projects Smartphones pixel
point Slides server script services factor code lines high resolution time images sources Abklingzeit sets clients font regular declarative configuration different Display share overlay sources MaƟstab default scale mapping width high resolution Tiled server Java argument clients lines open subsets similar category real vector double case normal Smartphones metrics
sources files time images formating effects image caches caches configuration different configuration bandwidth provide normal Smartphones Cats
integrators time oriented sources formating Privacy web Location odd service different configuration Google Maps box area sources services mapping load Hot terms category quads oriented configuration disk metrics reading point services files directories limitations Axonometrie rules caches terms Cantor level share form Tiled projects UTM directories applications fileserver case service life box
Actions pixel files high resolution images sources Zoom's data replication Axonometrie Coloured product web image service caches different configuration cubic level input share overlay sources mapping high resolution projects graded storage caches case functions Results
functionality response Virus mapping information response code load Imaging images code clients font watermarking attributes image message-based configuration configuration processes objects share libraries libraries
sources font response images Imaging sources The list clients Mass Coloured message-based caches different case single band Display Conversation selection band extent share
sources factor Ionic images Coloured events image photos caches single interpretations band factor band
sources image scale caches Tiled images formating storage band factor Security variations
services functionality mapping information code images Authentication point code limitations similar image geometric service buffer box Authorization Security share Security geometric Buffer
services caches information time information level fields tasks
multiple Actions share information high resolution high resolution time Zoom's combination limitations total caches Formula level configuration box configuration level metrics share tasks
bottom share high resolution states time approximate total configuration box configuration level box share form
filters polygons sources share high resolution load sources Databases limitations approximate total energy case configuration level boundaries box share
point share high resolution formating time polygons sources approximate total geometric mathematics case buffer disk box configuration level box share geometric
Slides Mobile App Actions Slides mobile Imaging projects sets effects image Location configuration Right band Security Security
satellite presentation control Open Source files time maximal clients Mass part Twitter image operations level share Security area Slides cellular projects plan applications real vector website PDF
image server goods mapping time projects encoding part share
and then continues knowledge written as something about men proxy in
practice yeah hello and good morning and thanks for showing up to this talk so today in the next 20 minutes I'm going to talk about my proxy and how proxies used in practice and it's the 1st a few
words about myself from I'm on the telephone I'm not working for on the scale Mom also the cofounder of on the scale of the only from Germany from the northwestern part of how we do a lot of of resource development client-side server-side we do OpenStreetMap posting and we also developed the proxy and support and yeah that's what I mean talking about today and this is a road map for my presentation so I will not talk about the basic stuff of my properties so I won't tell something about typecasting accelerating WMS etc. so let's start on mobile application
and back in the old days of like 6 years ago and was sort image pixel was displayed on on a on a screen as 1 pixels and but this changed our we know
have fun smartphones and tablets and even notebooks was was yeah higher resolution from Apple calls at Regina displays some other colleges call that HQ high quality of high DPI displays and if you display an image 1 pixel 1 image pixel as 1 pixel the images will be really small or they will be up a scaled up and then there will be blurry so you can do
something about that here can deliver also entitled with so if a high quality image and you do this by delivering titled twice the size of wholesome resolution so that the of the same title but in this case however Cotterell of projection the same time is just larger when you display that on a smartphone comes are you you will get a much nicer in which
still what do you need if you want to serve as these tiles with an approximate you need the 1st 2nd great high-quality grid a cold that wet HQ and you see we have half the resolution but twice the size he also needs to
the scale of the labels because otherwise you you don't or just want to zoom in so you also need to find the half wider lines and bigger font size and what you can do this so that was was met make sources for example with the scale factor vector options but this is a new this included not properties and so 1 point 8 was that server you have the map resolution Paramita you can use to scale all of font sizes and line with automatically and this value needs to be the tries as a deaf resolution and depth resolution by default is 72 so all we use of 144 and this case other servers are you need to read the documentation and some other services have similar options at least you can always are create a separate styles for the high quality tiles he
also need a 2nd cash this uses of the HQ source and or HQ grid and then you need a layer in this case are we using the title sources option which is nuisance or 1 . 8 2 indoor I'm in this case for double UMTS services are met proxy will offer this layer with side to time metrics sets and then on the client side use 1 small code snippets we we set of very fall time metrics name and so you can detect high-quality displays was the device declaration and then is just switch to is to the other time metrics and that this works for all fully that overlays two fold layers really you out you also need the set the topics of acceleration to 2 in this case and by the way the slides are online on the URL is on my last slide so the and the in the end you get of this is a mobile screenshot from a smartphone and I hope you can see the difference between normal regular tiles and high quality time OK you
might ask large images
so I need more bandwidth but because you have 2 caches you can set different from different the image options for the 2nd cat and you actually believe can use JPEG images was a really low quality because the images are modest played by another and small size on smartphone you actually don't see the j provide effect and you can uh go really low on the quality and then it's so visually you don't see the difference in time and the file sizes between the HQ catching the normal cash eyes it's not that extend anymore OK working with
existing tolerance you can add existing tiles services with the EU L in proxy allows you to right custom you else it's yeah it's like a templated can inserted in the x y that bounding boxes odd years passed into this you were so it's really easy to basically at any tiles service but of course you need to check the terms of service Google and Bing do not allow that I was and has a strict time policies are not allowed to seed the styles of but it's possible if you have your own file server to integrate that into map proxy and are build the W map the WMS but for example or you can also use existing titles files safely you have files on your disk by using the cash phylum than just on the point that to the directory on my property also supports different our directory layout for the titles RGS form at for example you can also define an empty sources for this scarce and in this case are this is the 1 becomes a read only cash you can also integrate and the titles so you can create in the child is a little Google to tiles metallic tunnel etc. and you just need to notes that you need to use a global map hot or not the web metKod agreed on the differences in the axis of orientation and does this was just all American this week integration GeoPackage others coming was metrics 1 . 10 the you can then use the catch up titles and re projects and you just need to enable the other of projection in the WMS configurations and entry delay I was you're was futile source that was it I can't you also need to but tell me proxy life use different projections in which area of this of this title source is valid if you we projected you can do this either by I'm adding coverage to the source all you can define the bounding boxes globally for this WMS service was seen binding rules as a as an option and then you can make w Masri dressed in this case are in UTM projection and died
loads the data from from the from the level data protection you can
also create you can also catch the re-projected titles In this case we created a custom group in the UTM projection and also then we define 2 caches 1 cash when incoming catch on policy on in this case it was an source was belong in the replicator production and then we have a 2nd cash In our UTM projection and we are using this cash as a source and if we then access the the UTM cash map proxy ornamental will fetch CTR when a caterer the title and project this file into the other of the projection and on then you have yet to caches and the genome of cash as well for the incoming cash you can say disable stores true so that way you will only catch the UTM projection and not the web OK if using Synote and re projection you always will have an the quality lost especially from the zoom levels of your grades are have different resolutions especially if you're projecting to war from the W G S 8 4 and you will note differences especially for labels you can get all of the better results than other using the resampling method would be cubic and but the best results you always get if you have a service that supports your actual of projection you what he's of OK image
processing next and sometimes you have maps without transparency but you want to overlay that map on aerial image for example endowment Proteaceae option for all 4 source to define what transparent color it also comes with a tolerance value and all pixels in this cholera or newly this color so what will become transparent was this option so this is not really handy if you have a service that does not support transparency
and map proxy can add watermarks there to catch trials can also add an attribution to Europe WMS response small copyright blind but it's limited in the configuration you can't add image etc. but I don't L there's the decorate image API 2 x watermarks and logos and you can process with the API you can process any image response from a proxy you can write your own Python code and you have access to the Pine image library so you you really flexible in which you what you can do so 1 example of this is how a decorate image function you writing can look like you're getting the image is a map proxy image you can get that as a hiding as an image from the the former of the pine image lottery and you can create a draw object and load a font this just display some of the message so this is really easy
and you from from this function you have access to to a lot of information on like the
recrystallized this if this is the w mass you get the spatial extent the repressive etc. and it's really the due to just in this example change the message if the always and later was we crested and then just the display another message we great feature the proxy on the new
feature of band merging all of this is new always some that 1 . 9 instead of having a list but sources for each cash you can have the list of sources for each hour color band In this case the RGB red-green-blue on and you can define for each column and the different sources and select single single-band color band of this source and you can use that to to swept colors so this is not really interested in interesting that looks funny but not really useful but you can use to
create false color images on the left side is not a grayscale image this is our near-infrared and this is the color of the image and you can use that to create a false color by selecting the infrared band for that and a lot of the colossal color events for the for the green and blue and then you get an a false color image and this is a really useful for a yeah photo interpretation you can also create
grayscale image that by despite by utilizing all I'm all color balance you can know even use a factor of 4 for the single color bands and you can't
grayscale images with that
and he also you can disable storage end up then you have the grayscale for this example of a gray scale variation of your of your tiles without actually catching the security
approaches the security I API this is similar to the decorating image API you can write your own code to detect user scoreless education and you cannot and will determine the permission of the user always within your own code and map proxy enforces these permissions also this how the really simple authorized function looks like it just say a return OK also rise and others that it larger example you check if the specific layer was interested and if it's a service was a W and S and then you say OK this is not allowed and you can detect the if you called detector decreases as the user box and he's only allowed to see partial information you can return buffers like this you can also return
complex geometries and the proxy will with eclipses and yeah it's it's fine code you you right so the possibilities are nearly endless and it also works for
4 times services and if you can find more information the documentation so the last topic
efficiency gains this is a simple feeding task we just have a seat on the field the cash to level 11 in done
there is a tool or metrics you util combines multiple tools on 1 of them is a great tool and you can give groups to Willamette proxy configuration and will show you some information about the configured configured child on and what you see here is really all the zoom levels the resolution of the zoom level and also how many titles are in this zoom level you see OK so level 11 the children sitting country undergo to level
level we see we have a formula time 0 we can limit that for example was a bounding box just define coverage of the bounding box and that that coverage to seeing task and then we
can again called proxy usual grids and was seating configuration and the name of the coverage it calculates the the the overlap of the bounding box and the title grid and then you can see here at the end that we went from form . 2 million times to to around 2 . 3 million tons is about not enough
normally not seeding Colorado than bottom of the problem probably fine but for most of the countries and states etc. Europe actually
wanna use something more precisely with that proxy you can no load coverages from a G adjacent or any other OGR data source on shapefile post yes database etc. You can also well yeah and filters
and you can also again called the pursuit of grids energy In this case I used
polygon of Germany at the coverage we see that we are now down to 1 million trials and this is really a the coverage is is a really useful feature to speed up the seating times to reduce some of the disk usage and John the Mavericks usual grids tool will gives you this insight how many and how much you can save up the change
styled will if it is said you can add any other node ja data source so you also can have post post years data and Don yeah can create prairies varied as yet rechecked for the last changes and if you have a point data you can create a buffer to get to get a bounding boxes of polygon geometries format proxy in this case and I'm the at the German Jews optimize from a proxies so you can even use a really complex polygons for of preceding and it's all still really fast OK
summary I told you something about mobile applications high-quality titles and why should you what you can do with existing trials on I showed you image processing the degrade image API and the new band merge feature and the security API and at the end of the fission seedings coverages and to yeah I hope you will learn something new and on a set of slides are online at this URL so if you want to look something up and so that's the end of my talk thank you Christians 1st of
all thank you very much for this great project we use it for a couple of years now and once to get a configuration right it really works very well so thank you for that I have a question concerning the effect of trials of it because I red also in the in the news group decided to that issue came up to come of
times you try to do something this vector times if you any plans for supporting that on an exam documentation on it and you right now a proxy only supports working with image files of because on a few parts so basically it which is hot more or less hard coded so that if if if you would have a vector tied it would be image so there's pdf and died in the area is probably that we will be working on that soon so that we will fix that in the project OK some more questions I take the opportunity with your presentation goes you spend some time talking about security what you think is being in 1 main motivation to offer access control tools at the application level is because people want to personalize the users say this application is only for a group or do you think there is an increasing trend towards ICT IT security in open source on and I think this feature is mainly used to arm to restrict the access to to data that's not pop that's the public so why are for example on the an operator of satellite images using a proxy to to cell Satellite images but just only the region the customer paid for so that the OK more questions you know I have a question given outlook for or is it present of but the performance of W W MDS is usually better than the performance of WMS and do you know if there are any you some common hints for clients to use to receive the same performance on WMS I think it's a matter of the the grid used by WMS isn't on
w mass will always be a slower on the site
from on the server side because each week dressed is unique and map proxy and others project suffered project as well need to and combined these ties back together to an image and what's the most expensive is the image encoding and so can be even more of a map server Madden when they render and WS image on the fly and they still need to include this image as a PNG and that most of the time this is this is the slowest part and time you you can't really do something
about that W. will always always be faster but OK and then let us questions outlook for us for the next steps in the proxy I'm a good Christian and stuff what we need don't have large plants of 2 new features are most features some are implemented on customer demand so if if someone comes up to us and say OK we we need this feature some and then there was we implemented OK thank you picture trust having no
decisions over their London not thank you on