Методы заполнения матрицы в MATLAB: примеры и код

В MATLAB термин «матрица заполнения» обычно относится к процессу добавления дополнительных строк и столбцов с нулями (или другими указанными значениями) вокруг исходной матрицы для увеличения ее размера. Эта операция обычно используется в различных задачах обработки изображений и сигналов.

Вот несколько методов заполнения матрицы в MATLAB, а также примеры кода:

Метод 1: использование функции padarray

A = [1 2; 3 4];  % Original matrix
padded_A = padarray(A, [1 1], 0);  % Pad with one row and one column of zeros

Метод 2. Заполнение вручную с использованием матричной индексации

A = [1 2; 3 4];  % Original matrix
[m, n] = size(A);
padded_A = zeros(m+2, n+2);  % Create a larger matrix of zeros
padded_A(2:end-1, 2:end-1) = A;  % Copy the original matrix into the center

Метод 3: использование функции padarrayс определенным значением заполнения

A = [1 2; 3 4];  % Original matrix
padding_value = 5;  % Value to use for padding
padded_A = padarray(A, [1 1], padding_value, 'both');  % Pad with one row and one column of the specified value on both sides

Метод 4: использование конкатенации и функции нулей

A = [1 2; 3 4];  % Original matrix
[m, n] = size(A);
padded_A = [zeros(m+2, 1) [zeros(1, n); A; zeros(1, n)] zeros(m+2, 1)];  % Pad with zeros around the original matrix

Метод 5: использование функции padarrayс настраиваемой функцией заполнения

A = [1 2; 3 4];  % Original matrix
padding_func = @(x) -x;  % Custom padding function that negates the original values
padded_A = padarray(A, [1 1], padding_func);  % Pad with one row and one column using the custom function