查看: 138|回复: 2|关注: 0

[已解决] matlab多层数据叠加应该怎么写

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
各位大佬,小弟今天在写2DPCA的时候,遇到了一个难题,在求平均人脸的时候,得到的人脸是多维的,现在我需要将多维的数字全部按照z轴的方向加到一起形成1维,然后除以维数,思来想去不知道该怎么写,希望各位大佬帮帮忙。附上部分代码:
clc
clear all
M = 200;
for i=1:40
    for j=1:5
        a=imread(strcat('s',num2str(i),'\',num2str(j),'.bmp'));
        a=double(a);
        allsamples(:,:,(i-1)*5 +j) =a;
        samplemean=mean(allsamples,3);%计算三维数组z方向均值
        [irow,icol] = size(a);
        Gt=zeros(icol, icol);
        Avg(:,:,i)=allsamples(:,:,i)-samplemean;
    end
end


1.png
回复主题 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

7

主题

542

帖子

100

最佳答案
  • 关注者: 20
发表于 2020-5-19 19:04:39 | 显示全部楼层 |此回复为最佳答案
a=ones(4,5,20);
sum(a,3)
这个可以得到20层的
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 2020-5-20 21:03:28 | 显示全部楼层
fengziW 发表于 2020-5-19 19:04
a=ones(4,5,20);
sum(a,3)
这个可以得到20层的

好的,谢谢版主
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表