How to compare two 3D matrices element-wise?
8 views (last 30 days)
Show older comments
Hadi Ghahremannezhad
on 10 Feb 2021
Commented: Hadi Ghahremannezhad
on 10 Feb 2021
I have two RGB images (3D matrix: x, y, z) of the same size, and I wanted to compare the corresponding values.
Suppose there are two matrices A and B, both have size (4,5,3).
I want a 2D mask (logical image) that represents the (x,y) points where matrix A is less than matrix B in all 3 values of the third (z) dimension.
So for example the mask(4,4) = 1 if:
- A(4,4,1) < B(4,4,1)
- A(4,4,2) < B(4,4,2)
- A(4,4,3) < B(4,4,3)
I tried this but it doesn't work, because the resulting matrix (ALessThanB) is 3D logical:
ALessThanB = A < B;
How can I make this comparison only along the third dimension?
0 Comments
Accepted Answer
Steven Lord
on 10 Feb 2021
Use the all function. You'll want to specify the optional dim input argument as well as the required A input argument (the data.)
More Answers (0)
See Also
Categories
Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!