Università degli Studi di Padova Dipartimento di Ingegneria dell’Informazione Scuola di Dottorato...
-
Upload
louisa-alexander -
Category
Documents
-
view
216 -
download
1
Transcript of Università degli Studi di Padova Dipartimento di Ingegneria dell’Informazione Scuola di Dottorato...
Università degli Studi di PadovaUniversità degli Studi di PadovaDipartimento di Ingegneria dell’InformazioneDipartimento di Ingegneria dell’Informazione
Scuola di Dottorato in Scienze e Tecnologie dell’InformazioneScuola di Dottorato in Scienze e Tecnologie dell’Informazione
Sandro Savino
Who i am
What i did in Italy
What i can do in Holland
Delft, 10 June 2009
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 2
Who i am• Name: Sandro
• Surname: Savino
• Second name: we rarely use them
• Born: 6th of July, 1981
• Where: Milan
• Resident in: Padova
• Working at: University of Padova
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 3
Padova• City: Padova• Position: 30 km west of Venice• Population: around 250.000• Very old settlement (long before the Roman
age), after the Roman age due to its vicinity its story was always bound to Venice’s
• Famous for: – A church with no name– A field with no grass– A cafè with no doors– Its University
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 4
University of Padova• Estabilished: 1222 (second eldest university of Italy after
Bologna)• Population: 63000 students, 2350 teachers (2007)• Fields of study: almost all of them, but some as
architecture and oriental languages (that are in Venice)• Famous personalities: Galileo Galilei, Copernico…• Structure: there is not a campus, the departments are
scattered around the city. The defense of Master Degree thesis are still held in the ancient building of “Bò”
• Some traditions:– Drinking spritz– The “papiro” (papyrus) and the celebrations for those who
graduate
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 5
What i did in ItalyAfter the high school i enrolled at the Department of
Information Engineering. Topics of study: Math, Physics, Signals & Systems, Computer Architecture, OS, Networks, DB, Programming and data structure, ….
• 2004: Bechelor Degree• 2005: 6 months at the Aberdeen University (Erasmus)• 2007: Master Degree: my thesis was developed inside
the CARtographic GENeralization (CARGEN) project• 2007: obtained a one-year scholarship to work on the
CARGEN project• 2008: enrolled in the PhD School of Sciences and
Technologies of Information• 2009: 6 months at TU-Delft !!
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 6
The CARGEN Project• CARtographic GENeralization
• Aims: automatic generalization of the Istituto Geografico Militare 1:25000 geodatabase (IGM DB25) from the 1:5000 geodatabase of the Regione Veneto (GeoDBR)
• The process is a db > db generalization, it is not intended for paper map production
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 7
Figures involved• Regione Veneto: those with the money.
– With a law of 1997 they are allowed to self-produce small scale maps. The idea is to use their ‘frequently’ updated 1:5000 cartography to produce 1:25000 and 1:50000 maps
– Most of their maps are in shapefiles (2.5D spaghetti coded) but they are slowly replacing them with a geodatabase
– At the present day there is a struggle in Italy to set up a unique standard national data model (now each region has its own)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 8
Figures involved• Istituto Geografico Militare: those with the know
how. – Historical (and only) Italian NMA (est. 1870, soon
after the unification of Italy). IGM has some serious problems to keep all its small scale (1.25000 to 1.000.000) cartography up to date (actually it doesn’t: their 1:50000 maps date back to 1969!) They are slowly accepting the idea to derive their maps more than creating them from scratch.
– Their base map, the DB25, is a geodatabase 1:25000 scale.
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 9
Figures Involved• University of Padova: those who should make
things work– Team:
• 2 professors• 1 phd, 1 full-time employed• Many students doing their Msc or Bsc thesis
– Tools:• Language: Java and SQL• GIS: Intergraph Geomedia• DBMS: Oracle Spatial 10g• Hope, luck, patience and will
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 10
Starting point• Data model of 1:5000 GeoDBR
• Data model of 1:25000 IGM DB25
• Sample source data: Parco delle Dolomiti Bellunesi (132.000 ha)
• IGM specifications for:– DB25 acquisition from surveys– DB25 derivation (draft)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 11
Data models: GeoDBR• Features classified in Layers - Themes – Classes• The model complies with italian Intesa GIS • Simple geometries, no topology (but topology checks)• Geometries: points, polylines (some), polygons with
holes (eg: woodland, cropland, buildings, roads, railroads, rivers, lakes)
• Networks (road, railways, rivers) are represented with– A graph in which each arc is a polyline– Areas, each of them has the same id of the corresponding arc
(not all the arcs have an area: ie minor rivers)– Attributes are stored on the arcs of the graph– There is NO INFORMATION that tells if two connected arcs are
part of a whole road or of a whole river
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 12
GeoDBR
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 13
Data Models: IGM DB25• Features classified in classes – subobjects• The classes are an extension of DIGEST
classification: each class name is a FACC code, preceded by a character (A,L,P) to identify its geometric type
• The model is very rich (around 250 objects, some quite ‘odd’ eg: BH175 Trough)
• Simple geometries, mostly points and polylines (polygons mainly for buildings, woodlands, croplands, lakes and bigger rivers). Points can be used to represent big objects (eg a soccer field) by the means of a later application of a symbol
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 14
DB25
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 15
Semantic generalization• The first step of the job was to analyze the
compatibility between the two data models and then to match each DB25 feature in one or more GeoDBR feature
• This work was done all by hand, reading carefully the definitions in the data models
• Some modifications have been proposed (and accepted) both to DB25 and GeoDBR to increase the compatibility (and thus the number of object that could be derived)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 16
Semantic generalization• The second step was then to formalize the
relationships among the GeoDBR and DB25 features: this relations where structured into (pseudo)SQL queries
• Some of the pseudo queries could be directly translated into SQL queries
• Other needed some kind of computation and thus was necessary to develop some algorithms
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 17
Example• The object LCA010 – L901A “Contour
line on glacier” has not a match in the GeoDBR
• It’s possible to derive it by calculating the intersection between countor lines and glaciers
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 18
Example• In the IGM DB25 rivers classification is based
also on their width, but this attribute is not present in the GeoDBR model
• Our solution was to calculate the average width for each arc of the hydrography graph
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 19
Cartographic Generalization• When we approached the problem of cartographic
generalization, the first step was to write down a list of all the transformations that had to be applied to the original geometries in order to make their rappresentation compatible with the 1:25000 target scale
• This list of transformation was written ‘inspired’ by:– The DB25 data model– The IGM acquisition limits for each object in the DB25– An IGM draft on how to derive the DB25– Talking to –and trying to think as- cartographers– Comparing a rare (almost unique) example of DB25 map with
the source data
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 20
Example
Collapsing area to pointCollapsing area to line
Elimination of all road segments shorter than 250 m
Elimination of rivers shorter than 250 m
Collapsing dual carriageways to one line
Semplifying road junctionsSemplifying buildings
Rivers selection…
Due to data model
Due to data acquisition limits
Due to Generalization advices
Cartographic-wise inspiration
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 21
Cartographic Generalization• The whole list of required transformations
was then transformed in a ‘shopping list’ of algorithms– Some algorithms are rather simple or already
developed (eg. collapsing area to points, vertex simplification, … )
– Other required to be developed, (and in many cases from scratch since there isn’t a big lecterature on big scale generalization)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 22
Example• A not easy algorithm: a complete and
robust solution to collapse areas to line (and infact we don’t have it yet!)
ok
??
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 23
Cartographic Generalization• For most of the DB25 objects the
requirements could be met using simple algorithms
• Most of the efforts in the cartographic generalization were due to a limited number of classes of the DB25:– Rivers– Roads– Buildings
157
82
Feature with requirementsFeature without requirements
34
149
44
32
Other
Generalization
Acquisition
Reconstruction
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 24
Generalization of Rivers• Main topics:
– Harmonization of the results of the width-based classification
– River selection:• Elimination of rivers shorter than 250m• Elimination of rivers too close to each other
– Typification of drainage networks
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 25
Rivers harmonization• according to the DB25 model, only rivers wider than 20
m are represented as areas: the others are lines• this classification can lead to some esthetically
unacceptable results that need to be solved (usually ‘upgrading’ that river segment or filling the empty space)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 26
Rivers harmonizationSpace left empty after a river has been collapsed
to line due to its width
Empty space now filled
Harmonization the end of a river with areal
geometry
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 27
River SelectionProblems• According to the DB25 specs, all the river segments
shorter than 250 m should be eliminated, but we can’t do it with a query or we’ll shorten ALL the rivers by 250 m (and also disconnect part of the graph): we must select only those segments that are not the ‘head’ of a major river (or worse is in the middle of it)
• The 1:5000 source data has a really dense hydorgraphic network: in some areas it would be good to select the less important rivers and delete them. Unfortunately the GeoDBR taxonomy for rivers is poor (there are just 3 classes of rivers): we need a way to find which arc are part of the least important rivers
Solution: data enrichment
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 28
Rivers: data enrichment1. Build a river hierarchy: on the base of the
Z coordinate find for each river the ‘fathers’ and the ‘sons’
2. With a top to bottom procedure store in each arc new informations to enrich the data model:
• Strahler ordering• Number of branches uphill• Length to the furthest source uphill• (area of its watershed)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 29
Rivers: going up the flowUsing the enriched data, with a bottom-up
procedure we can build the rivers: starting from the arc with the highest Strahler order we calculate a ranking among all its ‘fathers’ and we choose that with the highest score; we go up the flow this way until we find a source: the whole river has been built.
At the end of the procedure, all the arcs are part of one river
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 30
River SelectionThe requirements now can be met:• with a simple query we delete all the arcs that
are part of rivers shorter than 250 m• to select the rivers by density
– we build a buffer around each of them and calculating how much of their areas collides with (=are covered by) other buffers
– then recursively, starting from the rivers with more collisions, we delete one river at time and update the statistics about collisions. We stop when no buffer is covered by more than a certain threshold. Only minor rivers can be deleted: a ranking algorithm prevents that important rivers are deleted.
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 31
River Selection
Results
River kept
River selectedand eliminated
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 32
Drainage network typification
Problem: how to typify a drainage network?
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 33
Drainage network typificationSolution:1. cluster the drains on the base of their
direction2. for each cluster, find its envelope (the
convex hull can be too big and touch other features)
3. inside the envelope delete all the original drains and draw new drains, with the same direction and equally spaced (but at a greater distance one from the other)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 34
Cluster
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 35
Boundary
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 36
Drawing new drains
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 37
Final result
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 38
Generalization of Roads• Main topics:
– Road selection:• Elimination of road segments shorter than 250m
– Road junction simplification– Double carriageways (Highways)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 39
Road Selection
Problem:
• Similar to what we saw for the rivers: we can’t delete any arc shorter than 250 m. More than that, we can’t delete a dangling arc if it represents the only road that leads to a building.
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 40
Road Selection
Solution:A road shorter than 250 m is deleted only if:
• It is dangling• It is not the only access to a building• It is not on the map limit
40 m
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 41
Road Junction SimplificationAt 1:5000 scale the representation of some road
junctions is too complex and involves too many arcs
Will be presented
at UDMS 2009
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 42
Road Junction Simplification
Problem:
1. How can we find this ‘complex’ road junctions?
2. How can we solve them?
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 43
Road Junction Simplification
Solution:
1. Junctions that need to be simplified have too many redundant arcs. If they are redundant, they create a cycle in the graph! We find all the (small) cycles in the road graph
2. We classify the different type of junctions and apply a specific algorithm on each of them
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 47
Road Junction classificationEach junction, found searching cycles in the road graph, can be characterized by the number and shape of its:
– Incoming roads– Crossing roads– Distinctive nodes– Inner roads
Inner roads
Incoming road
Crossing road
Cluster of cycles
Distinctive nodes
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 48
Road Junction classification
ROUNDABOUTS
DELTA-T Junctions•One crossing road•One incoming road
CROSSROADS
•Two crossing roads
Other junctions
PAIRED DELTA-T Junctions•One crossing road•Two incoming roads
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 49
Road Junction generalization
Solution:
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 50
Highway Generalization
Problems:
• Double carriageways have to been collapsed to a centerline (when they are close enough)
• Highways can have intersections with:– Other highways– Normal road graph
• The arcs inside the area of a refueling station must be deleted
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 51
Gate / Toll
Double Carriageways
Refueling station
Highway junctions
What to do here??
How to couple?
Come semplificare?
How to simplify?
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 52
Highway Generalization
Solution:
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 53
Generalization of Buildings• Main topics:
– Building aggregation– Building simplification
• Simplification of the outline• Squaring
– Topology issues
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 54
Building Aggregation
Aggregation: according to the IGM DB25 specs building closer than 3 m have to be merged into one single building.
We need then an algorithm able to bridge the gap among candidate buildings and glue them together
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 55
Building Aggregation
convex hull
buffers
oriented MBR
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 56
Building Simplification• To simplify the buildings outline we
developed a modified version of Monika Sester algorithm
180° 0°
90°
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 57
Building Simplification• Improvements / Changes:
– The range of the degree is extended of +-15°– Area is spreaded on the face instead than deleted
(case 0°)– The size of the area deleted must be under a certain
threshold (case 180°)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 58
Squaring of BuildingsReduces the number of different angles in a shape in the way that angles can be just multiples of a certain base angle set by the user.
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 59
Squaring of Buildings
Problem: not all the buildings should be squared!
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 60
Squaring of Buildings
Solution: test of squaring-ability (passed)
Gradi
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 61
Squaring of Buildings
Solution: test of squaring-ability (failed)
Gradi
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 62
Generalization of BuildingsResults
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 63
Generalization of BuildingsResults
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 64
Topology IssuesProblem• To obtain a good result, the building
simplification algorithms should be applied to blocks of buildings, ie cluster of buildings that touch themselves.
• Unfortunately we can’t merge together all the buildings that touch, since doing so we’ll lose a lot of information; moreover in some cases this operation is strictly forbidden (eg. you can’t merge a church with the surrounding buildings)
• Applying the algorithms on each building leads to topology errors (overlaps among touching buildings)
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 65
Topology Issues
Solution:
• A solution would be an algorithm able to operate on the outline of a cluster of buildings keeping trace of the inner partitions of the cluster and dividing the cluster in the singular buildings once the simplification has been done
• This algorithm at the moment doesn’t exist.
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 66
To do / Open issues• Railway station generalization
• Displacement
• Intelligent partitioning
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 67
What i can do in Delft• Topics:
– Area to line collapsing algorithm?– Generalization of a cluster of buildings manteining the
inner partition?– Learn about topology and tGap?– Formalization of a possible data model for 1:50000
database?– 1:5000 > 1:25000 > 1:50000 MRDB ?– Trying to generalize Dutch Topo10 maps?– …ending this presentation that probably took too long!
Sandro Savino, Delft 2009Sandro Savino, Delft 2009 68
Fine
Thank you for
your attention and patience!