I'm trying to calculate the surface area of the particles that are attached to the bubble in the image. But I'm not too sure how. Edge Detection doesn't work accurately.
1 次查看(过去 30 天)
显示 更早的评论
采纳的回答
yanqi liu
2021-9-26
sir, may be use the image seg to locate the target.
clc;
clear all;
close all;
im = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/743714/image.jpeg');
bw = imbinarize(im,'adaptive','ForegroundPolarity','dark','Sensitivity',0.2);
bw = ~bw;
bw = imfill(bw, 'holes');
bw = imclearborder(bw);
bw = bwareafilt(bw, 1);
be = imdilate(bwperim(bw), strel('disk', 3));
im2 = im;
im2(be) = 255;
figure; imshow(im2);
2 个评论
Image Analyst
2021-9-26
Yes, that can identify the bubble plus the particles attached to it, but it does not give the surface area of the particles. I think it's basically impossible - you'd need a 3-D image. I think @Syamsundar Menon Murali Mohan should work on a different metric that might correlate with something else. For example, maybe the perimeter or standard deviation of the blob correlates with temperature or pH or viscosity or whatever of the solution he's looking at.
更多回答(1 个)
Image Analyst
2021-9-26
What I'd do it to find the blob (bubble plus particles) like @yanqi liu did. But now you need to determine what is bubble and what are particles. So I'd use stdfilt() to find high standard devation areas. The idea is that the bubble itself will be rather smooth. You could even synthesis a bubble. Just assume some radial intensity profile using the equivalent circular diameter and subtract it from your blub with particles on it, leaving just the particles themselves.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Segmentation and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!