Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Stroke Width Transform (SWT) implementation (Python)

Can anyone describe how can i implement SWT in python using opencv or simplecv ?

like image 307
pylover Avatar asked Jun 20 '12 09:06

pylover


1 Answers

Ok so here goes:

The link that has details on the implementation with the code download link at the bottom: SWT

For the sake of completeness, also mentioning that SWT or Stroke Width Transform was devised by Epshtein and others in 2010 and has turned out to be one of the most successful text detection methods til date. It does not use machine learning or elaborate tests. Basically after Canny edge detection on the input image, it calculates the thickness of each stroke that makes up objects in the image. As text has uniformly thick strokes, this can be a robust identifying feature.

The implementation given in the link is using C++, OpenCV and the Boost library they use for the connected graph traversals etc. after the SWT step is computed. Personally I've tested it on Ubuntu and it works quite well (and efficiently), though the accuracy is not exact.

like image 106
AruniRC Avatar answered Oct 04 '22 10:10

AruniRC