MATLAB Answers

Through script its possible to identify the particle size????

9 views (last 30 days)
vinothkannan K
vinothkannan K on 5 Aug 2014
Commented: vinothkannan K on 8 Aug 2014
Am gonna start a new project, From SEM(Scanning Electron Microscopy) Image.... Through matlab script it's possible to identify the particle size????

Accepted Answer

Amir
Amir on 5 Aug 2014
Edited: Amir on 5 Aug 2014
Hi vinothkannan, Please try this code. If your image is .tiff convert it to .jpg before running the code.
clc
clear all
close all
[filename, pathname] = uigetfile('*','File Selector');
I = imread(strcat(pathname,'\',filename)); % for example FileName='MyImage.jpg'
I=im2bw(I);
BW = edge(I,'canny',0.1);
[bw, loc2]= imfill(BW,'holes');
% http://www.mathworks.co.uk/help/images/ref/regionprops.html
rp = regionprops(bw,'All'); % you can specify the parameters which you need
ObjArea=zeros(size(rp,1),1);
CenterX=zeros(size(rp,1),1);
CenterY=zeros(size(rp,1),1);
for i=1:size(rp,1)
ObjArea(i)=rp(i).Area;
CenterX (i)= rp(i).Centroid(1);
CenterY (i)= rp(i).Centroid(2);
end
ObjRadius=(ObjArea./pi).^0.5; % average Radius
Final=[ObjRadius CenterX CenterY];
imshow(I);
hold on
for i=1:size(Final,1)
text(Final(i,2),Final(i,3),num2str(Final(i,1)),...
'HorizontalAlignment' , 'center',...
'VerticalAlignment' , 'middle');
end
title('Average Radius of Particles');

More Answers (0)

Community Treasure Hunt

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

Start Hunting!