Superimposing matrices in a specific location

1 次查看(过去 30 天)
I have two matrices, one 1024x1024 and one 101x101. 95% of the matrices consists of zeros, besides the central circular parts which have values ranging between 0 and 1. When displayed, the matrices show a circle.
I want to superimpose the smaller matrix onto the larger matrix in a specific location from the origin of the larger matrix. How can I extract the values from the smaller matrix and superimpose them onto the larger matrix?
Thanks

采纳的回答

Matt J
Matt J 2019-10-18
编辑:Matt J 2019-10-18
Something like this, perhaps:
[i0,j0]=deal(700,850); %target location
[I,J,S]=find(smallMatrix);
result = largeMatrix + accumarray([I-51+i0,J-51+j0], S ,[1024,1024]);
  2 个评论
Matt J
Matt J 2019-10-18
编辑:Matt J 2019-10-18
Glad to hear it, but please Accept-click the answer to indicate this!

请先登录,再进行评论。

更多回答(0 个)

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by