Removing one length from a matrix

1 次查看(过去 30 天)
I have a matrix which size is ,
A= 256x256x31;
And another Matrix (4D) ;
B=2031616x64 [ 4D format is : ( 256x256x31)x64]
I need to multiply matrix A with Matrix B . For the above scenario it will be not possible as dimension is not matching.
Can any one help so that the size of B becomes the size of A so that I can multiply them .
I tried with the squeeze but nothinh is happening there. So, little but confused.

采纳的回答

Walter Roberson
Walter Roberson 2021-9-16
C = A .* reshape(B, size(A,1), size(A,2), size(A,3), []);
This assumes element-by-element multiplication, not matrix multiplication.
  4 个评论
Walter Roberson
Walter Roberson 2021-9-16
Your post said
B=2031616x64 [ 4D format is : ( 256x256x31)x64]
but your code says
B= ones(256, 256, 31, 'single');
which is only 2031616 elements not 2031616x64 elements.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by