我正在使用MATLAB构建函数。作为其中的一部分,我必须计算两个矩阵中元素之间的差异并总结它们。
让我解释两个矩阵的解释,
1 2 3 4 5 6
13 14 15 16 17 18
和
7 8 9 10 11 12
19 20 21 22 23 24
第一行中的计算 - 两个矩阵中只有四个元素被同时考虑(零表示填充):
(1-8)+(2-9)+(3-10)+(4-11): This replaces 1 in initial matrix.
(2-9)+(3-10)+(4-11)+(5-12): This replaces 2 in initial matrix.
(3-10)+(4-11)+(5-12)+(6-0): This replaces 3 in initial matrix.
(4-11)+(5-12)+(6-0)+(0-0): This replaces 4 in initial matrix. And so on
我无法决定如何在MATLAB中编写代码。我该怎么做?
我使用以下等式。
此处i
的范围从1
到n(h)
,n(h)
,远距离对的数量。这取决于所选的滞后距离。因此,如果我选择1
的滞后距离,则n(h)
将为the number of elements - 1
。
当我使用7 X 7窗口时,考虑到中心值,n(h)= 4 - 1 = 3就是这种情况。
答案 0 :(得分:1)
您可能需要查看circshfit()函数:
a = [1 2 3 4; 9 10 11 12];
b = [5 6 7 8; 12 14 15 16];
for k = 1:3
b = circshift(b, [0 -1]);
b(:, end) = 0;
diff = sum(a - b, 2)
end