Diagonal direction - difference between adjacent elements

2 vues (au cours des 30 derniers jours)
Chethan S
Chethan S le 6 Mai 2011
I have a matrix,
I = 5 4 3
9 8 6
6 3 4
How can I calculate differences between adjacent elements in a diagonal directions. I want these outputs(for first and last rows and columns I don't mind padding):
5 4 3
5 5 6
2 -3 4
and
5 4 3
9 3 2
6 -6 -4

Réponse acceptée

Teja Muppirala
Teja Muppirala le 6 Mai 2011
Use 2-D convolution:
I = [ 5 4 3;
9 8 6;
6 3 4;]
I_1 = I;
I_2 = I;
I_1(2:end,1:end-1) = conv2(I,[0 1; -1 0],'valid')
I_2(2:end,2:end) = conv2(I,[1 0; 0 -1],'valid')

Plus de réponses (0)

Catégories

En savoir plus sur Operating on Diagonal Matrices dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by