How to create a 2D reverse matrix
3 次查看(过去 30 天)
显示 更早的评论
Hi, I'm wondering how to create a reversed numerical matrix. For example, if I have a convolution h[j,k] = [1 2 3; 4 5 6; 7 8 9] then reverse h[j,k] = h[-j-k] = [9, 8 7; 6 5 4; 3 2 1]. I'm aware that you can use rot90(h, 2) and a combination of fliplr and flipud to get the results of reverse h, but are there any more direct ways to get the reverse matrix? Thanks.
0 个评论
采纳的回答
John D'Errico
2022-10-17
编辑:John D'Errico
2022-10-17
Since you are willing to use tools like fliplr (as opposed to flip. Anyway, fliplr and flipud are more descriptive, so I kind of like them.) But then what is wrong with the simple:
H = [1 2 3; 4 5 6; 7 8 9]
Hflip = fliplr(flipud(H))
which requires only 2 calls. Or, if you like a matrix multiply, you could do it as:
trans = flip(eye(3));
trans*H*trans
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!