MATLAB Answers

Finding maximum axial slice location from 3D binary label

2 views (last 30 days)
banikr
banikr on 17 Apr 2020
Commented: darova on 17 Apr 2020
Hello,
I want to find the maximum axial slice location/number/position of a 3D binary mask.
which means the slice location where the binary mask ends.
  2 Comments
banikr
banikr on 17 Apr 2020
could you describe or specify how to use min max in this case?
The data size is 172, 220, 156.
I can write a for loop and including sum() option. But I wonder if there are simple matlab code for that.

Sign in to comment.

Answers (1)

darova
darova on 17 Apr 2020
  • Use find to find all values
  • Use ind2sub to convert indices to i,j,k (x,y,z)
ix = find(V(:)); % find nonzero values
[i1,i2,i3] = ind2sub(size(V),ix); % convert to i,j,k
[~,imax1] = max(i1); % max i
[~,imax2] = max(i2); % max j
[~,imax3] = max(i3); % max k
plot3(i1(imax1),i2(imax1),i3(imax1),'.r')
  2 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by