Effacer les filtres
Effacer les filtres

Counting Number of Voxels between 2 points without drawing lines

1 vue (au cours des 30 derniers jours)
Hege
Hege le 19 Avr 2021
Commenté : Hege le 4 Mai 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.

Réponse acceptée

Matt J
Matt J le 20 Avr 2021
Modifié(e) : Matt J le 20 Avr 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 commentaires
Matt J
Matt J le 30 Avr 2021
Modifié(e) : Matt J le 30 Avr 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 le 4 Mai 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!!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by