2017-12-08 3 views
1

Matlab을 사용하여 작업했으며 행렬은 400x400x3x3 모양입니다. 나는 그것을 1200x1200으로 재 형성해야합니다. 어떻게해야합니까?Matlab을 사용하여 변형 된 행렬

나는 명령이 reshape 인 것을 알고 있고 그것을 사용하려고 시도했지만, 나는 그것을보고 있지 않다는 것을 놓치고있다.

+3

어떻게 당신은 그것을 바꿀 하시겠습니까? (400x3) x (400x3)에는 두 가지 옵션이 있습니다 – bla

답변

-1

누락 된 항목이 확실하지 않습니다. 자세한 정보를 제공해주십시오. 지금까지 말한에서

, 그냥

reshapedA=reshape(A, [1200,1200]); 
0
x = randn(400,400,3,3); 
xr = reshape(x,1200,1200); 

공식 참조, nomen omen 들어 있습니다. 이것은 가장 직접적인 대답이지만, 실제로 데이터 구조화 방법에 따라 다른 접근법이 있습니다.

2

차원 1과 3을 새로운 첫 번째 차원으로 축소하고 차원 2와 4를 새로운 두 번째 차원으로 축소해야한다고 생각합니다. 이 경우

, 당신은 너무 크기가 붕괴되는 것을 reshape 전에 permute 함께 나타납니다 필요

x = rand(400, 400, 3, 3); % random data 
y = reshape(permute(x, [1 3 2 4]), size(x,1)*size(x,3), size(x,2)*size(x,4)); 
관련 문제