Counting Number of Voxels between 2 points without drawing lines

조회 수: 2 (최근 30일)
Hege
Hege 2021년 4월 19일
댓글: Hege 2021년 5월 4일
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.

채택된 답변

Matt J
Matt J 2021년 4월 20일
편집: Matt J 2021년 4월 20일
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
Matt J
Matt J 2021년 4월 30일
편집: Matt J 2021년 4월 30일
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 2021년 5월 4일
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!!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Image Segmentation and Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by