How to get coordinates of shapes in image?

4 visualizaciones (últimos 30 días)
Fabian Lisowski
Fabian Lisowski el 30 de Nov. de 2020
Respondida: Shubham Rawat el 4 de Dic. de 2020
Hello,
I have an image with three different shapes on it and need to get the coordinates of the middle of each shape. I would be grateful for help in solving the problem.
Thanks a lot!
The Image is in the attachment
  3 comentarios
Image Analyst
Image Analyst el 30 de Nov. de 2020
Each shape has lots of coordinates. Do you want them all? If so, why? Or do you just want the centroids?
Check out the Color Thresholder on the Apps tab of the tool ribbon.
Check out my Image Segmentation Tutorial and color segmentation tutorials in my File Exchange:
Fabian Lisowski
Fabian Lisowski el 30 de Nov. de 2020
I want the coordinates of the center of each shape. The image has a 640x480 resolution. I need the coordinates to control the moves of a 3d crane. The image will be came from a VGA camera on the top of the crane.

Iniciar sesión para comentar.

Respuestas (1)

Shubham Rawat
Shubham Rawat el 4 de Dic. de 2020
Hi Fabian,
You may use regionprops function to calculate the centroid of each shape. Here is the link to the documentation:
For this particular figure i have created a demo code. You may also look into that and take some help:
a = imread('punkty.jpg'); %reading image
I = rgb2gray(a); %change image into grayscale
bw = I < 100; %change image into Black and White
stats = regionprops(bw,'Centroid'); %resulting Centroid of each image
%to show the image with centroids
imshow(bw)
hold on
plot(centers(:,1),centers(:,2),'b*')
hold off
Hope this helps!

Community Treasure Hunt

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

Start Hunting!

Translated by