How to distinguish each fiber and analyze the properties of the fiber?
Mostrar comentarios más antiguos

Hello everyone,
I am currently trying to develop a code to analyze each fiber using the Image Processing Toolbox. The image I am working with is a microscopic image of the cross section of the fiber. I tried thresholding the image, but since the single fibers have shades of light, it is extremely difficult for Matlab to distinctly define the individual fibers. The background(empty space) is also bright so there is no real distinction between parts of the fiber and the background space. When I converted the colorimg to a grayscale then to a binaryimg, the binaryimg was not recognizing the each single fiber. I am just wondering if there is a more efficent approach to analyzing this img?
The other way I believe I can alleviate this problem is if I dye the fibers so there is a better distiction between the fiber and the background light.
Thanks in advance to who helps!
Richard
6 comentarios
Walter Roberson
el 6 de Sept. de 2013
Is that gold image an example of what you are working with? It shows up quite small here. Are the fibres the edge around the circles?
the cyclist
el 9 de Sept. de 2013
Sorry, trying to be excruciatingly clear:
Are the fibers the disks (surrounded by circles), or the circles themselves (the edges of the disks)?
Richard
el 9 de Sept. de 2013
Walter Roberson
el 9 de Sept. de 2013
Wait, so is your original data greyscale, and you have false-colored it to gold?
Richard
el 9 de Sept. de 2013
Respuestas (2)
Image Analyst
el 9 de Sept. de 2013
1 voto
Of course if you can get a background that is not in the black to gold/yellow spectrum you will get more contrast and be able to segment these better. For example, something in the greenish/bluish hue range (a hue diametrically opposite gold). In addition, is it possible to separate the fibers so that they aren't touching? It's always better to start with a good image than to try to fix up a bad one post-acquisition.
4 comentarios
Walter Roberson
el 9 de Sept. de 2013
I'm thinking "active contours"? Or watershed thresholding ?
Image Analyst
el 9 de Sept. de 2013
They have two new active contour methods ( http://www.mathworks.com/help/images/ref/activecontour.html) but I haven't had a chance to try them out yet. The touching can be solved by watershed but you have to get a binary image first and that's the tough part because the object is brighter than the background sometimes, and darker sometimes. This means that at some location it's the same as the background and some of the interior will be the same color as the background. If they were convex, you could solve that by using imconvhull(), but if they're touching that rules that out. So I'm thinking he might have to either try an edge detector, or imfindcircles(), as well as activecontour(). Solving this with images as they are will take a lot of experimentation and cleverness.
Richard
el 10 de Sept. de 2013
Image Analyst
el 10 de Sept. de 2013
Sounds like consultation with a professional microscopist would be helpful. SEM images are often even more difficult to analyze than optical images because of the monochrome, perspective/3D, shadowed nature of them, but maybe if you're looking at just cross sections it mgiht be okay.
Muthu Annamalai
el 10 de Sept. de 2013
0 votos
Have you tried a auto-correlation and counting the peaks? This could easily give you the number of fibers, since they all resemble each other.
Categorías
Más información sobre Video Formats and Interfaces en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
