2014-01-22 394 views
1

我有一個尺寸爲65536 × 1的2D矩陣,如果我想在MATLAB中將它轉換爲3D,首先我應該將其轉換爲256 × 256,然後將256 × 256轉換爲3D。將2D矩陣轉換爲3D矩陣?

任何人都可以幫助我嗎?

+1

它是如何應該工作? 6656 * 3 = 19968個元素,而256 * 256 = 65536個元素!?要更改尺寸,請使用'reshape' – tim

+0

sry,我犯了一個錯誤,輸入矩陣是65536 * 1 – user3223551

+0

...以及您希望3D矩陣有多大? –

回答

1

要將灰度圖像(即不知何故已矢量)轉換成RGB圖像,只是灰度強度複製到RGB層:

%// first, reshape 
img = reshape(img, 256, 256); 

%// then, copy 
img = repmat(img, [1 1 3]); 
+0

謝謝,A是圖像的3D輸出矩陣? – user3223551

+0

'img'是...爲什麼不簡單地嘗試一下呢? – tim

+0

@ user3223551:我已經更新了我的答案以滿足您的要求。爲了將來的參考,這是一個[XY問題]的典型例子(http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem);請詢問您的*原創*問題,而不是您嘗試解決原始問題時遇到的問題。包括您嘗試的解決方案,以及爲什麼失敗。 –