system approach to a raster-to-vector conversion · raster-to-vector conversion algorithms”....
TRANSCRIPT
System approach to a raster-to-vector conversion
How to design a good commercialconversion system
Eugene [email protected]
Plan of the presentation
• The main goal of vectorization system
• Automatic vectorization
• Problems of automatic vectorization
• Efficiency of data capturing
• Semi-automatic vectorization
• Rational division of labor between operator and machine
• Simplification of operator labor
• Conclusion
Data capturing
Vector post-processing
Raster pre-processing
Vectorization
Paper line drawings
DatabasePointsLines
Polygons
Digitaldata
Raster images
For head up digitizing
2. Build a centerline for each linear object
a) linear objects (elongated parts)
1. Base topology solution orclassification of pixels into 3 classes:
b) junctions
c) solids
3. Build an outline for each solid4. Resolve junctions
What is vectorization?
The main goal of a vectorization system
To produce the highest quality vectors in
the shortest amount of time
acceptable
operator time
Manual vectorization
b. Head-up digitizing
Flexible, but Labor consuming
a. Digitizing
Time consumingNot always acceptable precision
Automatic vectorization
Automatic vectorization - articles
5. L.Baotto, V.Consorti, M.Del Buono, S. Di Zenzo, V.Eramo, A.Esposito, F.Melcarne, M.Meucci, A.Morelli, M. Mosciatti, S.Scarci, M.Tucci, “An Interpretation System for Land Register Maps”, IEEE Computer, V.25, #7, 1992, pp.25-33.
7. Dori Dov, Wenyin Liu. “Sparse Pixel Vectorization: An Algorithm and Its Performance Evaluation”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 21, No.3, pp.202-215, 1999.
9. Dave Elliman. “A Really Useful Vectorization Algorithm”, Lecture Notes in Computer Science, 1941, pp.19-27, 1999.
6. Ogniewicz R.L., Kubler O, “Hierarchic Voronoi Skeletons”, Pattern Recognition, Vol. 28, No. 3,pp. 343-359, 1995.
7. Desseilligny M.P., Stamon G., Suen Ch.Y., “Veinerization: A New Shape Description for Flexoble Sceletonization”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 20, No. 5, pp. 505-521, 1998.
• Rosenfeld Azriel., Pfaltz John L., “Sequential Operations in Digital Picture Processing”, J. Assn. Comput. Machiery, Vol. 13, No.4, pp.471-494, 1966.
3. Theo Pavlidis. “A Vectorizer and Feature Extractor for Document Recognition”, Computer Vision,Graphics, and Image Processing, 35, pp. 111-127, 1986.
10. Song-Chung Zhu. “Stochastic Jump-Diffusion Process for Computing Medial Axis in Markov Random Fields”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 21, No.11, pp. 1158-1169, 1999.
4. Michihiko Minoh, Toshiyuki Sakai. “Mesh-Oriented Line Drawings Theory (MOLD Theory)”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, No. 2, pp.210-221, 1986.
• Blum H. “A transformation for extracting new descriptors of shape”, Models for the Perception of Speechand Visual Form, (W.Watjen-Dann, ed.), MIT Press, Cambrige, Mass., pp.362-380, 1967.
Automatic vectorization - methods
• Thinning
2. Distance transformation
3. Hough transformation
4. Open disks
5. Voronoi tessellation
6. RLE-vectorization
10. Pruning
7. Energy minimization
8. Bisector skeletonization
9. Veinerization
11. Annealing
• Medial axis2. Skeleton3. Continuous skeleton4. Dense skeleton5. Path of writing instrument6. Spine with generator7. Ribbon
9. Centerline
8. Hierarchic Voronoi skeleton
Application independent
solution
Application dependent
solution
Automatic vectorization - what we are looking for
Automatic vectorization - what we are looking for
Figure 2 from: Plamondon R., Bourdeau M., Chouinard C., Suen Ch.Y., “Validation of
preprocessing algorithms: A methodology and its application to the design of a thinning
algorithm for handwritten characters”, Proc. 2nd ICDAR, Tsukuba, Japan, October 1993,
pp.262-269.
Figures 19 and 20 from Deseilligny M. P., Stamon G., Suen Ching Y., “Veinerization:
A New Shape Description for Flexible Skeletonization”, IEEE Transactions on Pattern
Analysis and Machine Intelligence, Vol.20, No. 5, pp. 505-521, 1998.
Automatic vectorization - what we are looking forBefore pruning
After pruning
Figure 15 from: Zhu Song-Chun, “Stochastic Jump-Diffusion Process for Computing
Medial Axes in Markov Random Fields”, IEEE Transactions on Pattern Analysis and
Machine Intelligence, Vol. 21, No. 11, November 1999, pp. 1158-1169. (Annealing)
Automatic vectorization - what we are looking for
Figure 13 from: Ogniewicz R.L., Kubler O., “Hierarchic Voronoi Skeletons”,
Pattern Recognition, Vol. 28, No. 3, pp. 343-359, 1995.
Automatic vectorization - what we are looking for
ArcScan for ArcGIS (ESRI)
Automatic vectorization - what we are looking for
Centerlines, RLE - vectorization
ArcScan for ArcGIS (ESRI)Raster image 10451 x 14832 pixels
5050 polylines, 1350 polygons
Vectorization time < 1 min
Automatic vectorization
Automatic vectorization - problems
Results of vectorizing a fragment of a contour map.
ArcScan for ArcGIS (ESRI)
- noise
Automatic vectorization - problems
ArcScan for ArcGIS (ESRI)
Results of vectorizing a fragment of a road map.
- symbols
Automatic vectorization - problems - many thematic layers
How to divide it into separate layers?
Automatic vectorization - problems - linear object vs. solid
Automatic vectorization - problems - selective vectorization
ArcScan for ArcGIS (ESRI)
Data capturing – interactive process
Paper line drawing B/W raster image
DatabasePointsLines
Polygons
Vectorization
Raster pre-processing
Vector post-processing
AdditionalInformation
Paper line drawing B/W raster image
DatabasePointsLines
Polygons
Vectorization
Raster pre-processing
Vector post-processing
AdditionalInformation
B/W raster image
Select the mode
Raster cleaning
Verification of the result
Correction of errors
Select thresholds and parameters
Vector post-processing
Attributing
Responsibility of the operator
Jaisimha M.Y., Dori D., Haralick R. “A methodology for the characterization of the performance
of thinning algorithms”, Proc. of Int. Conf on Document Analysis and Recognition, CDAR’93,
Tsukuba, Japan, 1993, pp. 282-286.
Hori Osamu, Doermann David S. “Quantitative Measurement of the Performance of
Raster-to-Vector Conversion Algorithms”. Lecture Notes in Computer Science, GREC,
1072, pp.57 – 68, 1995.
Phillips Ihsan, Liang Jisheng, Chhabra Atul K., Haralic Robert. “A Performance Evaluation
Protocol for Graphics Recognition Systems”. Lecture Notes in Computer Science, 1389,
pp.372-389, 1998
Dori Dov, Wenyin Liu. “Sparse Pixel Vectorization: An Algorithm and Its Performance
Evaluation”. IEEE Transactions on Pattern Analysis and Machine Intelligence. 21, No.3,
pp.202-215, 1999.
Efficiency of raw vectorization: number of errors , types of errors
Efficiency of data capturing: the operator time needed to process maps
, types of errors, and the capabilities of the
raster and vector editors
Number of errors
Efficiency of data capturing: the capabilities of the raster and vector editors
What to do it if there is no a good smoothing algorithm?How long it will be and how will it influence the contour capturing?
ArcScan for ArcGIS (ESRI)
Efficiency of vectorization is
the operator time needed to process maps
How to define priorities for research ?________________________________________________
No. Operation Duration Degree of possible
automation ofoperations
________________________________________________
• Operation_1 duration_1 D_1
• Operation_2 duration_2 D_2
… …………. ………… ….
K Operation_k duration_k D_k
… …………. ………… ….
Order durations
of operations
duration_k -- maximum
Operation_k is very important
5min
30min
= 5min
= 5hrs
= 99%
= 10%
The manual and head up digitizing are still being widely used.
Why?
The time spent on editing after automatic vectorization is
commensurate with the time spent on digitizing
The large number of vectorization errors result not from
the low quality of automatic vectorization
but from the complexity of the converted documents
and excess noise
Is it because of the bad quality of automatic vectorization?
No.
Semi-automatic vectorization methods can spare the operator
from performing monotonous routine work
and would use the operator only when
human judgment is necessary.
Semi-automatic vectorization methods
Raster Snapping(one click localization)
Compare with automatic vectorization
ArcScan for ArcGIS (ESRI)
Semi-automatic vectorization methods
Tracing
29 verticesOne click --
ArcScan for ArcGIS (ESRI)
Semi-automatic vectorization methods
Where is a research dedicated to interactive vectorization
methods like tracing or raster snapping?
2. Elimination of edge effects
3. On-line recognition of linear objects
4. Resolution of intersections
5. Smoothing and compression of simultaneously changing lines
1. During tracing it is not important how long it takes vectorization of the full document,
but the tracing of each linear object has to be done in real time.
Are there some specific and specific problems?
Rational division of labor between operator and machine
Humans are peculiarly adept at recognition
that is difficult for a computer program to do automatically.
text
digits
symbols
one line
Rational division of labor between operator and machine
Humans are peculiarly adept at recognition
Identification of various thematic layers.
Rational division of labor between operator and machine
Humans are peculiarly adept at recognition
Isolation and recognizing texts and symbols Try to recognize 407 with OCR or to
develop a program that will do it automatically
Rational division of labor between operator and machine
Humans are peculiarly adept at recognition
Recognition of critical points
Rational division of labor between operator and machine
Humans are peculiarly adept at recognition
Continuation of broken lines and circle recognition
circles
Rational division of labor between operator and machine Humans are peculiarly adept at recognition
Recognition of areas filled with symbols
Rational division of labor between operator and machine
Computers can do a lot of things
that are difficult for humans
Time ~20 sec
Image 11050 x 10486 pixels
Polylines 1656
Polygons 25
ArcScan for ArcGIS (ESRI)
Rational division of labor between operator and machine Computers can do a lot of things
that are difficult for humans
ArcScan for ArcGIS (ESRI)
Noise (“salt”)
Image 20000 x18000Polylines 9845Cleaning ~20 secVectorization < 2 min
Result
Helping the operator with new interactive semi-automatic procedures
One click measuring of local line width
ArcScan for ArcGIS (ESRI)
Helping the operator with new interactive semi-automatic procedures
Automatic verification
Bodansky Eugene, Pilouk Morakot, “Using Local Deviations of Vectorization to Enhancethe Performance of Raster-to-Vector Conversion Systems”, International Journalon Document Analysis and Recognition”, No. 3, 2000, pp. 67-72.
Helping the operator with new interactive semi-automatic procedures
Correction of intersections with templates
IntersectionTemplates
Helping the operator with new interactive semi-automatic procedures
Text emphasizing
Arvind Ganesan, “Integration of Surveying and Cadastral GIS: From Field-to-Fabric & Land Records-to-Fabric”, ESRI, 2002 User Conference Proceedings, (http://gis.esri.com/library/userconf/proc02/abstracts/a0868.html)
One click vectorization of buildings
Click on the building VS. draw it
Helping the operator with new interactive semi-automatic procedures
Helping the operator with new interactive semi-automatic procedures
Recognition with learning
Critical pointsArcs
Straight lineRight angles
Point to critical points, arcs, lines,
right angles VS. selection thresholds
but do not be afraid to use the operator.
Give him tasks that are simple for him.
If you can automate some operations and to obtain good
and stable result automatically DO IT,
Help him with new interactive semi-automatic procedures.
Conclusion