Login  Register

Re: FitCircle circle-fitting class

Posted by Kenneth Sloan on Sep 12, 2009; 3:05am
URL: http://imagej.273.s1.nabble.com/FitCircle-circle-fitting-class-tp3691194p3691199.html

>>
>>
>> On Sep 11, 2009, at 4:17 , Michael Doube wrote:
>>
>>> Hi Johan
>>>
>>> From the practical standpoint rather than than the mathematical  
>>> perspective:
>>>
>>> the Hough transform finds shapes within data; e.g. you supply an  
>>> image and the Hough transform finds the shape (line, circle...) in  
>>> it - there is an ImageJ plugin for this here: http://rsbweb.nih.gov/ij/plugins/hough-circles.html
>>
>> Strictly speaking, THE Hough transform finds lines.  Other "Hough-
>> like" transforms can be built using the basic ideas of:
>>
>> a) a quantized parameter space
>> b) a voting procedure which turns edge-elements into a set of  
>> parameters
>> c) peak finding in the quantized parameter space.
>>
>> Shapes such as circles and ellipses are relatively easy to put into  
>> this framework, usually involving a paramter space of Translation,  
>> Orientation, and Scale.  Circles don't need Orientation.
>>
>> Arbitrary shapes can be handled by the "Generalized Hough  
>> Transform".  Here, you need a discrete model of the shape, which  
>> can be used to build a table that implements the voting rule (for  
>> each edge-element, which parameter settings might have generated  
>> that edge-element).
>>
>> The Hough transform, the Hough-like transforms, and the Generalized  
>> Hough Transform are 3 distinct concepts.
>>
>>
>>>
>>> My FitCircle class finds the single best-fit circle for a set of  
>>> (x, y) points.  So if you have n coordinates in a 2D array (double
>>> [n][2]; I have displacement from a mean axis vs axis distance) you  
>>> can call e.g. FitCircle.hyperStable(coordinates), which returns  
>>> the centre and radius of the best fitting circle.
>>>
>>> Chernov has written a huge, detailed manual on the methods which  
>>> you can read here:http://www.math.uab.edu/~chernov/cl/book.pdf .  
>>> I'm still suspicious that my Taubin fits are buggy as they break  
>>> when supplied with samples from an arc of less than 2*PI radians.  
>>> So far, the Hyper fits are doing well in terms of stability and  
>>> speed.
>>>>>
>>
>> Here, we see the strength of a Hough-like transform - typically it  
>> can do a superior job of identifying an occluded shape.  
>> Recognizing the correct circle from a small arc of that circle is  
>> easy for a Hough-like circle fitter - but problematic for other  
>> approaches.
>>
>
--
Kenneth  
Sloan                                                                [hidden email]
Computer and Information Sciences                        +1-205-934-2213
University of Alabama at Birmingham              FAX +1-205-934-5473
Birmingham, AL 35294-1170                http://www.cis.uab.edu/sloan/