How to create a 2D reverse matrix
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Anthony Koning
il 17 Ott 2022
Modificato: John D'Errico
il 17 Ott 2022
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 Commenti
Risposta accettata
John D'Errico
il 17 Ott 2022
Modificato: John D'Errico
il 17 Ott 2022
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 Commenti
Più risposte (1)
Vedere anche
Categorie
Scopri di più su Matrices and Arrays in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!