Hi YIBO, If you change the radius range in the data to start from 16 rather than 15 (so you have "radii = 16:1:40;") then it finds all the coins again.
The demo must have worked with the original radius range when I submitted it. I do not know what has changed to produce the new behaviour. At some point I will update the demo. This does illustrate that the process is verysensitive to the values of the parameters, but this is a property of the algorithm rather than of my particular implementation.
I tried using the image at http://imgur.com/ls65Kwi and my circle detection code works perfectly, detecting all 14 circles without any changes to the parameters in the demo, except of course for the number of circles to find. Is the problem just that you need to increase the number of circles to find from 10 to 14?
Hi David! I have tried your program with the coin.png but one of the coin(the one on the down-right) couldn't be detected. And I also tried other images like the one suggested by farhat on 21 Jul 2013(http://imgur.com/ls65Kwi). Still some coins cannot be detected. Is that also happening to you or I did something wrong?
hi,David,it seems that it has an error in line98 of your houghpeaks.what does two isempty(the same) conbined by '&&',or is isempty(param.nhoodr)&&isempty(param.nhoodxy) instead?I can't understand.please tell me why.