Another approach might be to perform the Radon / Hough transform first, then detect the points.

e.g. `R = radon(I,0:179)` in MATLAB.

It gives this image:

![enter image description here][1]

The x-axis is angle (0-180 deg) and the y-axis is distance from the centre. Each local minimum represents a line. It shows 6 lines ~75 degrees, 2 around 90 degrees, and 3 around 170 degrees. (This is MATLAB angles which go clockwise from x-axis because the y-coords are upside down)

  [1]: https://i.sstatic.net/rbNow.png

Edit: Forgot Radon and Hough transforms were roughly the same.