Segmenting layers/plies in a carbon-fiber composite micrograph (?)
1 view (last 30 days)
Show older comments
I would like to select the dark grey resin interlayers in the attached carbon-fibre composite micrograph. I am new to image processing in Matlab and am only aware of basic functions and techniques.
I have been playing with for several evenings and cannot seem to find a way to differentiate between intra and inter-ply resin areas. Ultimately, I would like reduce the more prominent resin inter-layers to medial-axis lines similarly to using bwmorph(I,'skel') to isolate cracks in a previously thresholded, binary image.
I would greatly appreciate any advice for tackling this problem. I am hoping to avoid more involved approaches such as machine learning.
Cheers!
0 Comments
Answers (2)
Stephen Jue
on 21 Jun 2017
If this does not make you lose too much information, one approach could be to apply a horizontal motion blur filter to the image, then binarize it, like so:
I = imread('compImg.jpg');
h = fspecial('motion', 300, 0); % Apply motion blur
I = imfilter(I, h);
imshow(I);
BW = imbinarize(I, 0.60); % Apply threshold
mask = true(size(BW));
mask(:, 200:end-200) = false;
BW(mask) = 1;
imshow(BW)
This would need some tweaking, but once you can successfully isolate the resin interlayers, you can use a method such as the Hough Transform to detect these lines.
0 Comments
Image Analyst
on 21 Jun 2017
I'd probably get initial ending points by averaging the last 10 or 20 columns together and look for major dips (dark places). Then I'd use dynamic programming to wind my way back to the other side of the image.
Any of these methods will allow it to follow the wiggles between the layers better than something like lines which you'd get from Hough.
0 Comments
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!