Counting Number of Voxels between 2 points without drawing lines

1 visualización (últimos 30 días)
Hege
Hege el 19 de Abr. de 2021
Comentada: Hege el 4 de Mayo de 2021
Hi All,
I have curve volumes and I know the coordinates of each and every voxels including the endpoints. I have many curve volumes like this and, I would like to know the straight distance of endpoints(A-B) by VOXELS. I calculated the distance using Pythagoras therom using the X,Y, Z coordinates.But I would like to know the straight distance by voxels WITHOUT drawing a line between those two points. I have lots of volumes like this and I cannot draw lines between those openning points hence it takes high computational power. Appreciate your comments.

Respuesta aceptada

Matt J
Matt J el 20 de Abr. de 2021
Editada: Matt J el 20 de Abr. de 2021
Assuming you have a binarized image and the curve is the only object in that image,
[I,J]=find( bwmorph(yourImage,'endpoints'));
distance=norm([I(1), J(1)] - [I(2),J(2)]),
  15 comentarios
Matt J
Matt J el 30 de Abr. de 2021
Editada: Matt J el 30 de Abr. de 2021
The shortest voxelized line which can take diagonal steps is of length,
distance = norm(Pt1-Pt2, inf) - 1
assuming as before that you exclude the end-voxels.
Hege
Hege el 4 de Mayo de 2021
Hi Matt,
Thank you so much and this is a great solution for my work. I applied it many different ways and it works. Thank you again!!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Image Segmentation and Analysis en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by