Looking to identify a football from an image

8 visualizaciones (últimos 30 días)
Michael Sposato
Michael Sposato el 29 de Sept. de 2022
Comentada: Michael Sposato el 5 de Oct. de 2022
I currently have a still image of a football about to be kicked. I would like to identify the ball and it's center.

Respuestas (1)

Kevin Holly
Kevin Holly el 30 de Sept. de 2022
RGB = imread('YourImage.png');
% Convert RGB image to lab space
I = rgb2lab(RGB);
% Apply thresholds
BW = (I(:,:,1) >= 14.5 ) & (I(:,:,1) <= 89.77) & ...
(I(:,:,2) >= 0.12) & (I(:,:,2) <= 12.5) & ...
(I(:,:,3) >= 3.8) & (I(:,:,3) <= 33.0);
% Open mask
se = strel('disk', 13,0);
BW = imopen(BW, se);
% Filter out smaller objects
BW=bwareafilt(BW,[50000 Inf]);
% Find Centroid and Area of object
rp = regionprops(BW,"Centroid","Area")
rp = struct with fields:
Area: 58864 Centroid: [644.7752 215.7900]
% Display masked image for verfication purposes
maskedRGBImage = RGB;
maskedRGBImage(repmat(~BW,[1 1 3])) = 0;
imshow(maskedRGBImage)
% Add marker on centroid
hold on
scatter(rp.Centroid(1),rp.Centroid(2),'b','filled')
  1 comentario
Michael Sposato
Michael Sposato el 5 de Oct. de 2022
I also need this to work for other images as well. What is there to change to do this? I attached another sample image as well.
Also how is the centroid calculated? Is it by the extremes or by matlab calculating the area of the ellipse?

Iniciar sesión para comentar.

Categorías

Más información sobre Convert Image Type en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by