310 likes | 327 Views
This research focuses on developing an algorithm for constructing a region graph from vectorial graphics, aiming to improve document indexing and retrieval systems. The algorithm exploits vectorial information between graphical primitives to find elementary cycles and determine regions.
E N D
An Algorithm for building Region Graph from vectorial graphics Master training by Zouba Karim Tutor: Eric Trupin Date : 2005-09-06
Context • Last Name: Zouba • First Name: Karim • Post: Master student SATI-GI • Place: PSI Laboratory in Rouen University • In collaboration with: IPI group(Nottingham) • Training period: April-september 2005 • Tutor: Eric Trupin
Plan I) General introduction II) Regions Graph Construction III) Experimentation IV) Conclusion and future works
Plan I) General introduction II) Regions Graph Construction III) Experimentation IV) Conclusion and future works
General introductionProblematics • Problematics: a large abundance of documents on the Web • Definition of Document Indexing :it consists in classifying in a Tree structure documents according to their descriptors, and links on these documents. • Currently documents retrieval & Indexing (I&R) systems =only textual Indexing Graphical Documents
General introductionGraphical Documents Definition of Vector Graphic Documents: a document which consists of graphical objects (Lines, points, polygons, curves) with shape, color and position attributes. A wide variety of formats: svg, ClipArt, DXF Several area of application: SIG,Internet, Enterprise,… Properties: Not very voluminous Possibility to enlarge and reduce the size unless loss of quality
General introductionDocuments representation Document Representation Unit Three approaches • Syntactic approach [Sciasco-04] Line[t1] Line[t2] Line[t3] Line[t4] Line[t5] polygon[0,01,1.71][t5] • Structural approach [Fonseca-03] • Statistical approach [Dosch-04], [Fonseca-Grec05] Vectorial signatures
General introduction Conclusion Vectorial graphical document=complexity, a lot of regions Structural Approach : Regions Graph
Plan I) General introduction II) Regions Graph Construction III) Experimentation IV) Conclusion and future works
Regions Graph ConstructionPrinciple • Principle: K Lines LineGraph Building Decomposition Finding cycles + relations • Regions Construction • Relations determination
Regions Graph ConstructionRegions Construction • Main problem of our study • Based: Polygon detection (Elementary Cycles) • Two approaches [Fonseca-03] - our approach Any a priori information about graphical primitives [Fonseca-03] Exploiting vectorial information between primitives [our approach-05]
Regions Graph ConstructionFonseca Approach • region detection= Finding elementary cycles • Algorithm • Input: a set of Lines • Step 1: features extraction + LineGraph Building • Step 2: Finding minimum cycles: all elementary cycles + filtering (greedy algorithm) from LineGraph
Regions Graph ConstructionOur Approach • region detection= Finding elementary cycles in exploiting vectorial information between graphical primitives. • Which Vectorial information ? • Finding Elementary Cycles ?
Based on Weindorf’s work Using Vectorial information: Direct Angle. Regions Graph ConstructionOur Approach: Definition of the vectorial information Definition: Direct direction anticlockwise Example
Algorithm Regions Graph ConstructionOur Approach: Minimum Direct Angle • Three cases • Colinear • Perpendicular or acute getRangle
Exploiting the minimum Direct Angle between 2 Lines to build a new Line Graph Principle: Regions Graph ConstructionOur Approach: Finding elementary cycles α(2-1) e4,b1 L1 b L1 e b2,e1 L1 b e1,b2 e b1,e4 α(1-2) e b e e b e e L5 L4 L5 L2 L4 L5 L2 L4 L2 b b e b e b L3 L3 L3 Line Graph Vector Graphic document Specialized Line Graph b: beginning of a Line α:Direct angle between 2 Lines e: end of a Line
Exploiting the minimum Direct Angle between 2 Lines to build a new Line Graph Principle: Regions Graph ConstructionOur Approach: Finding elementary cycles α(2-1) L1 b L1 e L1 b e α(1-2) e b e e b e e L5 L4 L5 L2 L4 L5 L2 L4 L2 b b e b e b L3 L3 L3 Line Graph Vector Graphic document Specialized Line Graph b: beginning of a Line α:Direct angle between 2 Lines e: end of a Line
Regions Graph ConstructionOur Approach: Finding elementary cycles Elementary cycle for region detection: begin by the extremity of the root Node and end by the other extremity of the root Node. α(2-1) α(1-4) L1 L1 α(1-2) α(4-1) L5 L2 L4 L4 L5 L2 L3 L3 Specialized Line Graph Vector Graphic document
Regions Graph ConstructionOur Approach: Finding elementary cycles Some rules: If nbr of outgoing edges =1 then add the extremity Vector If nbr of outgoing edges >1 then choose the edge which has the Minimum Direct Angle α(2-1) α(1-4) L1 L1 α(1-2) α(4-1) L5 L2 L4 L4 L5 L2 L3 L3 Specialized Line Graph Vector Graphic document
Regions Graph ConstructionTemporal complexity determination • Depends on 2 variables N: number of Nodes M: number of edges • [Fonseca-03] • Our approach • Expectations: • Same evolution for few vectors • The more there’re vectors the more there’s a big gap in terms of runtime
Regions Graph Construction Spatial Relations determination [Clementini-93] a b a b a a b b adjacency overlap strict and tangential inclusion
Regions Graph Construction Spatial Relations determination [Clementini-93] a b a b a a b b adjacency overlap strictand tangential inclusion Adjacency relation determination
Regions Graph Construction Spatial Relations determination [Clementini-93] a b a b a a b b adjacency overlap strictand tangential inclusion inclusion relation determination Necessary and sufficient condition: [Xmin<Xmin&Xmax>Xmax] & [Ymin <Ymin&Ymax>Ymax] Ymax R2 Ymax R1 Ymin Ymin Xmin Xmin Xmax Xmax
Plan I) General introduction II) Regions Graph Construction III) Experimentation IV) Conclusion and future works
ExperimentationIntroduction • Type of Documents: SVG • 2 corpus wisely used on the WEB Limited access via Search engine and described by metadata Shapes: Lines, rectangles and polygons Randomly generated Hand-sketched
ExperimentationHand-sketched documents Documents vary from 5 to 78 vectors Comparison with a classic algorithm Results:
ExperimentationHand-sketched documents Example of Region Graph obtained from a LineGraph (78,255)
ExperimentationRandomly generated documents Documents vary from 462 to 2708 vectors • Comparison with results found by Fonseca/Ferreira: • C++ • Not the same documents Fonseca’s approach our approach
Conclusion and future works • Vectorial approach is better than classic polygon detection • Adapted to complex documents (Technical documents, industrial drawings,…) • Future Work Indexing (Graph Mining) Neighbourhood relation (Voronoi)