Download - A Web Service to personalise Map Colouring
17.11.09 A Web Service to personalise Map ColouringJoerg Steinruecken
A Web Service to personalise Map Colouring
Joerg SteinrueckenDepartment of Geoinformation
Institute of Geodesy and GeoinformationUniversity of Bonn
17.11.09A Web Service to personalise Map Colouring
2
Joerg Steinruecken
Motivation
• World Wide Web offers geospatial data from many different sources
• „Mapping on Demand“: Creating maps– in real time– by combining data from different sources– for individual purposes– independent of time and place
• Problems:– Portrayal of data from different sources conflict
17.11.09A Web Service to personalise Map Colouring
3
Joerg Steinruecken
Personalisierung BefragungTour 1
Tour 2
Tour 4
Tour 5
Tour 6
Tour 7
Tour 3
Legend
17.11.09A Web Service to personalise Map Colouring
4
Joerg Steinruecken
Motivation
• World Wide Web offers geospatial data from many different sources
• „Mapping on Demand“: Creating maps– in real time– by combining data from different sources– for individual purposes– independent of time and place
• Problems:– Portrayal of data from different sources conflict– Perceptibility is influenced by
• Users‘ visual system (colour vision impairment)• Outer effects
– Device specific colour reproduction– Environment (e.g. dark room or sunlight)
17.11.09A Web Service to personalise Map Colouring
5
Joerg Steinruecken
Stating the problem
• Given– Background: Topographical Map which has a fixed
graphical representation
– Overlay: Objects O1 … On which can be portrayed by users
• Searching portrayal options of objects O1 … On
• Postulations– Conciseness: Visual distinguishability
• of objects O1 … On among each other
• of objects O1 … On from the topographic map
• for all users and on all devices
– Solution „on demand“– Access without technical barriers
17.11.09A Web Service to personalise Map Colouring
6
Joerg Steinruecken
Outer Frame
• Service-oriented architecture• Geospatial data provided by standardised services
– Open Geospatial Consortium (OGC) Web Map Service (WMS) Specification
– OGC Symbology Encoding (SE) / Styled Layer Descriptor (SLD) Specification
17.11.09A Web Service to personalise Map Colouring
7
Joerg Steinruecken
Statement
• Portrayal– Options: Visual variables– Most important variable: Colour– Problem of distinguishability is reduced to the
identification of well distinguishable colours– Colours are adjusted to a specific user and his
device
• Colours provided by a Web Service
17.11.09A Web Service to personalise Map Colouring
8
Joerg Steinruecken
Stating the problem with colours
• Given– Background: Topographical Map which contains
m colours
– Overlay: Objects O1 … On which can be portrayed by users
• Searching n colours for objects O1 … On
• Postulations– Conciseness: Visual distinguishability
• of colours of objects O1 … On among each other
• of colours of objects O1 … On from the colours of the topographic map
• for all users and on all devices
– Solution „on demand“– Access without technical barriers
17.11.09A Web Service to personalise Map Colouring
9
Joerg Steinruecken
Domain
Architecture
ServerClient
Browser Webserver
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
17.11.09A Web Service to personalise Map Colouring
10
Joerg Steinruecken
Domain
Architecture - Personalisation
ServerClient
Browser Webserver
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
17.11.09A Web Service to personalise Map Colouring
11
Joerg Steinruecken
Personalisation
• Creation of user profiles (user name, password,…)• Getting personal data
– Colour vision impairment• specified by users• Users have to evaluate test images
– Display‘s colour reproduction and ambient light• Display calibrated?• Visual calibration by gamma adjustment• Users have to evaluate test images
17.11.09A Web Service to personalise Map Colouring
12
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
17.11.09A Web Service to personalise Map Colouring
13
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
17.11.09A Web Service to personalise Map Colouring
14
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
ProxyWMS-URL
WMS-URL
17.11.09A Web Service to personalise Map Colouring
15
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
GetCapabilties
17.11.09A Web Service to personalise Map Colouring
16
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
SE
17.11.09A Web Service to personalise Map Colouring
17
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
SE-URL
SE-URL
SE
17.11.09A Web Service to personalise Map Colouring
18
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
GetMap
SE
17.11.09A Web Service to personalise Map Colouring
19
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
GetMap
SLD=SE-URL
SE
17.11.09A Web Service to personalise Map Colouring
20
Joerg Steinruecken
Domain
Architecture – Map request
ServerClient
Browser Webserver
Web Map Client
Web Map Client
Server
(SLD-)WMS
Geodata
Server
User DataPersonali-
sation
Webserver
(Service)
Colouring
Proxy
17.11.09A Web Service to personalise Map Colouring
21
Joerg Steinruecken
Approach of colouring
Visual Distinguishability
Colour space, providing an appropriate metric(visual equidistance)
Formulation of an optimisation problem:Maximise the minimal distance between colours
Solution on demand
Modelling the colour space: 3D-Polyhedron
17.11.09A Web Service to personalise Map Colouring
22
Joerg Steinruecken
Process of colouring
sRGB
Standard-RGB
17.11.09A Web Service to personalise Map Colouring
23
Joerg Steinruecken
Process of colouring
sRGB XYZ
CIE-XYZ colour space
17.11.09A Web Service to personalise Map Colouring
24
Joerg Steinruecken
Process of colouring
sRGB XYZ CIELUV
CIE L* u* v* colour space
17.11.09A Web Service to personalise Map Colouring
25
Joerg Steinruecken
Process of colouring
sRGB XYZ CIELUV MAXMIN
17.11.09A Web Service to personalise Map Colouring
26
Joerg Steinruecken
Process of colouring
sRGB XYZ CIELUV MAXMIN
17.11.09A Web Service to personalise Map Colouring
27
Joerg Steinruecken
Optimisation problem
d
nlk ,...,1;9,...,1 0 llTk bXn
ijnmjni ;,...,1,,...,1
2, ji YX
),( XFY
F Set of m given colours
X Set of n colours which have to be determined
lTk bn , Parameters of hyperplanes which form
the polyhedron
maximise
subject to dYX ji 2
,
Euclidean Distance
objective
constraints
17.11.09A Web Service to personalise Map Colouring
28
Joerg Steinruecken
Problem characteristics
• Nonlinear problem– Large number of local optimal solutions– Efficient algorithms find a locally optimal solution,
but usually not the globally optimal solution
Global Optimum
Local Optima
Rastrigins function (source: Matlab)
17.11.09A Web Service to personalise Map Colouring
29
Joerg Steinruecken
Behaviour of efficient algorithms
)(xf
x
Local OptimumGlobal Optimum
Fundamental importance of starting points‘ location
17.11.09A Web Service to personalise Map Colouring
30
Joerg Steinruecken
Algorithm
Finding appropriate starting points
Method of local optimisation
Detect suboptimal solutions
Nearly global optimal solution
S1
S2
S3
17.11.09A Web Service to personalise Map Colouring
31
Joerg Steinruecken
• Observation: To use the colour space in the best possible way, the majority of points have to lie on the polyhedron‘s boundary.
• Conclusion: Points which are placed on the boundary are well suited as starting points
S1: Appropriate starting points
17.11.09A Web Service to personalise Map Colouring
32
Joerg Steinruecken
S3: Detect suboptimal solutions
Given points
Voronoi vertices
intersection ofVoronoi edgesand polygon
Vertices ofthe polygon
• Find an improvement• Candidats are given by the Voronoi-Diagram• Example in 2D:
17.11.09A Web Service to personalise Map Colouring
33
Joerg Steinruecken
Personal information
• Incorporation of users‘ personal information as constraints – Color vision impairment: Finding colours in a
plane– Colour reproduction & ambient light: Clipping
the colour space
17.11.09A Web Service to personalise Map Colouring
34
Joerg Steinruecken
Personalisierung BefragungTour 1
Tour 2
Tour 4
Tour 5
Tour 6
Tour 7
Tour 3
Legend
17.11.09A Web Service to personalise Map Colouring
35
Joerg Steinruecken
Conclusions
• Concise maps by selection of well distinguishable colours
• Formulation of an optimisation problem– distinguishability = Euclidean distance
• Efficient identification of a nearly optimal solution
• Algorithm: Find appropriate starting points, local optimisation method, geometric evaluation
• Adaptation to users‘ individual requirements• Usable as Web Service• Prototype will shortly be available on
http://colour.ikg.uni-bonn.de