Matlab重塑功能:元素数量不得更改

vie*_*iew 2 matlab function reshape

我想reshape()通过调用以下自定义函数在matlab中使用函数:

imgRgb = reshape(convertYuvToRgb(reshape(imgYuv, height*width, 3)), height, width, 3);
Run Code Online (Sandbox Code Playgroud)

这里:

width=352
height=288
Run Code Online (Sandbox Code Playgroud)

并且imgYuv是一个4D矩阵.

但是,系统给了我以下错误消息:

要重新安置,元素的数量不得改变.

任何专家都可以给我一些提示吗?

谢谢!

小智 8

例如,您无法将2x4矩阵重新整形为3x3矩阵.一个有8个元素,另外一个9. matlab发出的警告告诉你这样的事情已经尝试过了.

你可能认为矩阵的大小与它不同,但证据就是数字.检查这些矩阵的实际大小.计算元素.matlab函数numel将告诉您矩阵中有多少元素,因此您可以直接进行比较.