How to create a 2D reverse matrix
조회 수: 7 (최근 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!