I've got lots of images of diatoms. I need to get a list of their equivalent radii.
It's not crucial to get them all, as long as those missed don't mess with the radius distribution (as would happen if it always missed the biggest ones or the smallest ones).
I am having trouble mainly because sometimes two little beings end up overlapping, in which case I would need to either separate them or at least discard them. Also, even though some may look like hollow, or even split in two, they are actually one. So
images = Import /@ {"http://i.stack.imgur.com/y7vag.jpg",
"http://i.stack.imgur.com/XQJlW.jpg",
"http://i.stack.imgur.com/gGTro.jpg"};
preproc[im_] :=
ColorConvert[im, "GrayScale"] // Binarize // ColorNegate //
FillingTransform // MorphologicalComponents // Colorize
FlipView[{#, preproc @ #}] & /@ images // TabView
An example of an image with the beings approximately rounded manually can be seen here:
I would appreciate any ideas. Thanks!
Note: a semi-automatic solution can still save a lot of time
Comments
Post a Comment