Automated Referencing of scanned maps

This application was developed to batch process map scans and reference them.
Problem consists of detecting map borders and map grid cross markers (edge detection) to be able to reference using OCR processed coordinates.

For instance, simplified system at picture left should give referencing visualized as red marker points and green lines shown at picture right.

For real-world map scans many potential problems must be taken into account such as:

  • Image noise,
  • Image rotation,
  • Incomplete borders,
  • Unknown position of other potential map elements such as Legend or Title,
  • Portrait or landscape scan (independent of image height / width ratio)
  • Noise around scan image borders produced during scanning process,
  • Image distortion as the result of bad scanning image
  • Background color, for instance very light gray instead of white
So, this is the part of typical map border and grid cross at pixel zoom level:

Speed of algorithm was crucial because scans are large size images - usually 5000-15000 pixels in width and height (up to 100 million pixels! ). Using phased-based processing with different algorithms average processing is lowered to 10-20 seconds per image for images with high rotation and noise. Algorithm used for processing is the combination of Hough transform and RANSAC algorithm with a lot of mathematics to support them and various image filter algorithms. 
User can fine tune algorithm by varying parameters such as percentage of inliners and threshold, known scale, maximum rotation...
Batch application is working on full input directory with images scale, producing result files and full processing reports.

Some details with visualized detection results are shown at pictures bellow.

For more information please use form at Contact page.


Post a Comment

Note: Only a member of this blog may post a comment.

Cancel Reply