Дано 2 матрицы A , B с тем же размером,
M(x, y) = |A(x, y).*A(x, y) A(x, y).*B(x, y)| |A(x, y).*B(x, y) B(x, y).*B(x, y)|
Как получить M в Matlab?
обновлен
Надеюсь, мы можем получить M с размером (m, n, 2, 2).
Ну, это простой способ сделать это:
M = [ A.*A A.*B ; A.*B B.*B ]
Или вы имели в виду что-то более оптимизированное?
[Редактировать] Если я правильно понимаю, вы хотите 4D результат. Вот мое уродливое решение:
M = reshape([A(:).*A(:) ; A(:).*B(:) ; A(:).*B(:) ; B(:).*B(:)], [size(A) 2 2])