2010-10-28 983 views
2

我想用reshape()功能的MATLAB通過調用下面的自定義函數:Matlab的重塑功能:元素的數量不能改變

imgRgb = reshape(convertYuvToRgb(reshape(imgYuv, height*width, 3)), height, width, 3); 

這裏:

width=352 
height=288 

而且imgYuv是4D矩陣。

然而,系統給了我以下錯誤信息:

重塑的元素數不能更改。

任何專家都可以給我一些提示嗎?

謝謝!

回答

8

例如,您不能將2x4矩陣重塑爲3x3矩陣。一個有8個元素,另外有9個。matlab發出的警告告訴你這樣的事情已經被嘗試過了。

您可能認爲矩陣的大小與其大小不同,但證明是在數字中。檢查這些矩陣的實際大小。計算元素。 matlab函數numel會告訴你矩陣中有多少個元素,所以你可以直接比較。

+0

感謝您的解釋,木片!現在我可以在修改後得到正確的輸出。 – view 2010-11-01 10:47:41