Функция изменения формы Matlab: количество элементов не должно изменяться - PullRequest
2 голосов
/ 28 октября 2010

Я хочу использовать функцию reshape() в Matlab, вызывая следующую самоопределяемую функцию:

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

Здесь:

width=352
height=288

И imgYuv - это матрица 4D.

Однако система выдала мне следующее сообщение об ошибке:

Для перепрограммирования количество элементов не должно изменяться.

Может дать любой экспертмне несколько советов?

Спасибо!

1 Ответ

8 голосов
/ 28 октября 2010

Например, вы не можете преобразовать матрицу 2x4 в матрицу 3x3.Один имеет 8 элементов, другой 9. Предупреждение, которое выдает Matlab, говорит о том, что что-то подобное было опробовано.

Вы можете подумать, что матрица имеет другой размер, чем он есть, но доказательствочисло.Проверьте фактические размеры этих матриц.Подсчитайте элементы.Функция Matlab номер скажет вам, сколько элементов в матрице, так что вы можете сравнить непосредственно.

...