查看单个帖子
旧 2019-11-30, 11:20   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
默认 如何以向量化方式对矩阵中的第n个元素求平均?

在Matlab中,我有一个64x64x256x256的矩阵A。我想对最后2个维度的每第4个元素求平均值,以获得64 ^ 4的矩阵。以前,我使用2 for循环完成此操作,但是速度非常慢,我想加快速度。

for n2 = 1:pts tmp_Matrix(:,:,:,n2) = sum(Matrix_A(:,:,:,(1+numAvg*(n2-1):n2*numAvg)),4)/numAvg; end for n1 = 1:pts Final_Matrix(:,:,n1,:) = sum(tmp_Matrix(:,:,(1+numAvg*(n1-1):n1*numAvg),:),3)/numAvg; end 还有其他一些类似的问题,但是它们处理的是二维矩阵,因此无法扩展到更高的维度。任何建议将不胜感激!



更多&回答...
poster 当前离线   回复时引用此帖