padMatrix function

Matrix padMatrix(
  1. Matrix input,
  2. int padding
)

Implementation

Matrix padMatrix(Matrix input, int padding) {
  int inputHeight = input.length;
  int inputWidth = input[0].length;
  int newHeight = inputHeight + 2 * padding;
  int newWidth  = inputWidth + 2 * padding;

  Matrix padded = [];
  for (int i = 0; i < newHeight; i = i + 1) {
    Vector row = [];
    for (int j = 0; j < newWidth; j = j + 1) {
      row.add(0.0);
    }
    padded.add(row);
  }

  for (int i = 0; i < inputHeight; i = i + 1) {
    for (int j = 0; j < inputWidth; j = j + 1) {
      padded[i + padding][j + padding] = input[i][j];
    }
  }
  return padded;
}