Does cv2.HoughCircles() perform a Gaussian blur?

Issue

This is an extension to another user’s question asking whether it is necessary to perform a Gaussian blur before using cv2.Canny(). I know from the documentation that cv2.HoughCircles() calls a Canny edge detector (presumably cv2.Canny()). Based on the user’s question, I need to use a Gaussian blur with the default Sobel kernel size. Does cv2.HoughCircles call cv2.Canny() with a default Sobel kernel size? If it does, does cv2.HoughCircles() method implicitly use a Gaussian blur already?

Thanks in advance!

Solution

It does not perform Gaussian Blur.

It is recommended to apply Gaussian Blur
before feeding your image to HoughCircles.

It also helps to smooth image a bit unless it’s already soft. For example, GaussianBlur() with 7×7 kernel and 1.5×1.5 sigma or similar blurring may help.

In the current implementation
of OpenCV there’s no Gaussian Blur call.

Answered By – Soof Golan

Answer Checked By – Mildred Charles (AngularFixing Admin)

Leave a Reply

Your email address will not be published.