Восстановите упорядоченное расположение символов путем заполнения матрицы столбцами и опустошения ее строками
deintrlvd = matdeintrlv(data,Nrows,Ncols)
deintrlvd = matdeintrlv(data,Nrows,Ncols)
переставляет элементы в data
путем заполнения временной матрицы с элементами столбца за столбцом и последующей отправки содержимого матрицы, строка за строкой, в выход. Nrows
и Ncols
являются размерностями временной матрицы. Если data
является вектором, он должен иметь Nrows*Ncols
элементы. Если data
- матрица с несколькими строками и столбцами, data
должно иметь Nrows*Ncols
строки и функция обрабатывают столбцы независимо.
Чтобы использовать эту функцию как обратную matintrlv
function, использовать то же Nrows
и Ncols
входы в обеих функциях. В этом случае две функции являются обратными в том смысле, что применение matintrlv
далее следуют matdeintrlv
оставляет данные без изменений.
Приведенный ниже код иллюстрирует обратное соотношение между matintrlv
и matdeintrlv
.
Nrows = 2; Ncols = 3; data = [1 2 3 4 5 6; 2 4 6 8 10 12]'; a = matintrlv(data,Nrows,Ncols); % Interleave. b = matdeintrlv(a,Nrows,Ncols) % Deinterleave.
Приведенная ниже выход показывает, что b
то же, что и data
.
b = 1 2 2 4 3 6 4 8 5 10 6 12