
Codigo:
%% Adquirir imagenes
I_original=imread('frutas.jpg');
%% Cambiar la imagen a escala de grises
I=rgb2gray(I_original);
%% Obtener el fondo de la imagen
background=imclose(I,strel('disk',58));
%% Identificacion de objetos
I2=imsubtract(background,I);
%% Binarizar imagen
lavel=graythresh(I2);
intensidad=lavel*255
BW=im2bw(I2,lavel);
%% Relleno de objetos (filtro de la media)
fill=imfill(BW,'holes');
%% Identificar objetos
[niveles, numObjects]=bwlabel(BW,4);
numObjects
stats=regionprops(niveles,'Eccentricity','Area','BoundingBox');
areas=[stats.Area];
excentricidad=[stats.Eccentricity]
%% Delimitar manzana
cantidad=0;
manzana=find(areas>80 & areas < style=""> statsmanzana=stats(manzana)
axes(handles.axes1)
imshow(I_original)
hold on;
cantidad =length(statsmanzana)*1+ cantidad ;
for idx = 1:length(statsmanzana);
h = rectangle ('Position',statsmanzana(idx).BoundingBox,...
'Curvature',[1,0.8],'LineWidth',5,'LineStyle','-.');
set (h,'EdgeColor',[0 0 1]);
hold on
end
hold off
disp([cantidad,'manzana'])
set(handles.valor,'string',cantidad)