Max Inscribed Circles
|Max Inscribed Circles (Fiji)|
|Author||Olivier Burri, Romain Guiet|
|Initial release||August 2015|
|Latest version||August 2015|
|Website||BIOP Staff Page|
This is an implementation of the Largest Inscribed Circle algorithm using an euclidean distance map. The algorithm is looped until a circle diameter smaller than the defined minimum diameter is found. The code for this plugin was inspired by this Matlab Central function
This plugin is available from the BIOP Update Site This places it in a "BIOP" Folder in the plugins directory of Fiji/ImageJ
Call up the plugin using Plugins->BIOP->Max Inscribed Circles... and select the stacks that you wish to use.
It will add all the found circles to the ROI Manager.
Setting the Minimum Disk Diameter to 0 will return a single ROI with the largest inscribed circle.
Making use of the GenericDialog class, the plugin is macro-recordable.
run("Max Inscribed Circles...", "minimum=20");
Running from a Plugin
What you need to run this in a plugin is
And then call the static method
//imp must be an 8-bit binary image ArrayList<Roi> circles = MaxInscribedCircles.findCircles(ImagePlus imp, double minD);
The plugin does not work with selections, only masks.
The accuracy is not perfect as we are using the distance map which has finite values. But for most practical purposes (Circles larger than 2 pixels in diameter), it should be sufficient.