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.

9 views (last 30 days)

Accepted Answer

yanqi liu
yanqi liu on 26 Sep 2021
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 Comments
Image Analyst
Image Analyst on 26 Sep 2021
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.
Syamsundar Menon Murali Mohan
I'm basically trying to figure out how to find the Surface Area of Particles Attached to the Bubble vs Surface Area of Bubble just by itself.
This can help me figure out how to find the surface loading of particles on the bubble.
But as you had mentioned, I probably need a 3-D image for that.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 26 Sep 2021
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.
  1 Comment
Syamsundar Menon Murali Mohan
Hi,
Thank you for that. I will have a look at the stdfilt() command and work my way through it.
Would it be possible if I could receive a demo for that? As I am still a beginner in MATLAB and trying to figure things out with the coding.

Sign in to comment.

Categories

Find more on Images in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!