calculating centroids of multiple ROIs at a time

9 visualizaciones (últimos 30 días)
Sunetra Banerjee
Sunetra Banerjee el 15 de Jun. de 2021
Comentada: Sunetra Banerjee el 16 de Jun. de 2021
Hi,
I have segmented my ROIs, which are circles/ellipses. I need to calculate the centroids of all ROIs at a time and save those values in Excel file for further processing. I am not able to figure out how to do that.
I am attaching my segmented image with multiple ROIs.
Thanks in advance.

Respuesta aceptada

DGM
DGM el 15 de Jun. de 2021
Editada: DGM el 15 de Jun. de 2021
If you have the binarized image, just use regionprops.
inpict = imread('blobs.png'); % standard test image
S = regionprops(inpict,'centroid')
S = 28×1 struct array with fields:
Centroid
vertcat(S.Centroid)
ans = 28×2
7.2857 7.2857 5.0102 130.9389 28.0000 19.5263 48.2878 111.2950 38.0556 44.5556 42.5345 246.2414 51.7201 180.0177 52.6038 31.5094 35.5000 69.5000 36.5000 65.5000
Note that I'm not using your image in this example. I don't want to deal with cropping all the padding off, and the size (and thus the coordinates) are probably altered now anyway. Don't save images by saving the displayed figure. There's rarely a good reason to degrade images by doing that. Just use imwrite().
  5 comentarios
Sunetra Banerjee
Sunetra Banerjee el 16 de Jun. de 2021
Hi,
For my work I need the centroids in ascending order of Y axis. If you have any advice, I would really appreciate it.
Thanks

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by