Segmenting layers/plies in a carbon-fiber composite micrograph (?)
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(2 个)
Stephen Jue
2017-6-21
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 个评论
Image Analyst
2017-6-21
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 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!