After processing an image by converting it to grey scale and then blurring it, I'm trying to apply a Hough Circle Transformation with these parameters:
Here is one of the many images I've tried: http://i.stack.imgur.com/JGRiM.jpg
But the algorithm fails to recognise the ball even with relaxed parameters.
(When I try it with an image of a circle created in GIMP it works fine)
I agree with krzych. I had it working effortlessly with :
cv::Mat img,img2;
std::vector<cv::Vec3f> circles;
img = cv::imread("JGRiM.jpg",1);
cv::bilateralFilter(img, img2, 15, 1000, 1000);
cv::cvtColor(img2, img2,CV_BGR2GRAY);
cv::HoughCircles(img2, circles, CV_HOUGH_GRADIENT, 1,300,50, 10);
cv::circle(img2,cv::Point(circles[0][0],circles[0][1]),circles[0][2],cv::Scalar(126),2);
cv::imshow("test",img2);
cv::waitKey(0);
cv::imwrite("test.jpg",img2);
return 0;
Good luck :)