2D subtraction from 3D

10 views (last 30 days)
Haa Andrew
Haa Andrew on 21 Sep 2017
Commented: Andrei Bobrov on 21 Sep 2017
I have 3D matrix A=50x60x180 and I want subtract B=50x60 to get same size C=50x50x180? Can anybody use for loop to do this operation?
  2 Comments
John Chilleri
John Chilleri on 21 Sep 2017
C = zeros(50,60,180);
for i = 1:180
C(:,:,i) = A(:,:,i) - B;
end
Is this what you mean?
Andrei Bobrov
Andrei Bobrov on 21 Sep 2017
?
size of the C -> [50x 50 x180]? Maybe - [50x 60 x180]

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 21 Sep 2017
C = A - B;
or
C = bsxfun(@minus,A,B);
  2 Comments
Walter Roberson
Walter Roberson on 21 Sep 2017
The first of those works in R2016b or later but not in earlier versions.
Andrei Bobrov
Andrei Bobrov on 21 Sep 2017
Walter! I am agree with you!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!