I'm using opencv and java to find circles on an image, I have the image below so far. I'm using Hough to find the circles with the code like this:
Imgproc.medianBlur(result, result, 3);
Imgproc.medianBlur(result, result, 3);
Imgproc.medianBlur(result, result, 3);
Mat circles = new Mat();
Imgproc.HoughCircles(result, circles, Imgproc.CV_HOUGH_GRADIENT, 1, 1, 200, 100, 30, 40);
System.out.println(circles.dump());
But I get an empty Mat for result with and without the blur. How should I fix this code?

EDIT : Hi guys!
Thanks to you I have this picture now. I'm using these parameters:
Imgproc.HoughCircles(result, circles, Imgproc.CV_HOUGH_GRADIENT, 1, 20, 50, 10, 10, 40);
I'm still using the medianBlur before the detection.
The only question left is why does it detect these small circles? I've attached the result of the canny detection, I think the circles are pretty seeable .


