How can I rotate a part of a matrix
5 views (last 30 days)
Show older comments
Hi there,
I have a 4D images (dimensions [156 192 26 42]). I would like to rotate only the last 20 volumes of my 4D matrix and keep the first as it is.
I tried the following:
rotated_matrix=original_matrix;
rotated_matrix = rot90(original_matrix(:,:,:,23:42));
The rotated_matrix has been rotated but it has dimensions [192 156 26 20]. Basically it contains the volumes that have been rotated.
How can I rotate only the volume in the last 20 places and keep the first 22 as they are?
0 Comments
Answers (1)
Ameer Hamza
on 24 Sep 2020
Try something like this
rotated_matrix = original_matrix(:,:,:,[1:20 42:-1:21]);
6 Comments
Ameer Hamza
on 24 Sep 2020
Ok. I get it know. Following will work for this case
original_matrix(:,:,:,end-19:end) = rotated_matrix
See Also
Categories
Find more on Geometric Transformation and Image Registration 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!