Home > Blockchain >  How to find circle faster than by Hough Transform in python opencv
How to find circle faster than by Hough Transform in python opencv

Time:11-19

I’m trying to make Hough Transform find a circle faster or find another function that can do it faster.
(i do not need to stick to open cv, but it needs to be opensource)
I need to get centerpoint and radius.

My use case:
I have a square picture in grayscale, 4 aruco markers in the corners(detected earlier),
and a black circle approximately in the middle.
Rest of the picture is quite uniformly white-isch/gray.
Picture size is 1600x1600.
I know the approximate center position and radius of the circle

I use:

cv2.HoughCircles(image, cv2.HOUGH_GRADIENT, 1, 100, 100, 30, 200,250)

This takes about 35-40ms. I would love to get it down to about 15ms

I tried reducing resolution by half, but id does not give me very big benefit and makes result a bit "jittery".

Image i try to recognize: enter image description here

Output

Centroid: cX=432, cY=394 do not forget 400 offset of ROI
cX=432.5, cY=395.0

It takes 127 microseconds on my Mac if you exclude loading the input image and saving the output image.

  • Related