📜  如何通过在Python中使用 NumPy 重复元素来对矩阵进行上采样?

📅  最后修改于: 2022-05-13 01:54:45.658000             🧑  作者: Mango

如何通过在Python中使用 NumPy 重复元素来对矩阵进行上采样?

先决条件:Numpy

对矩阵进行上采样仅意味着对其进行扩展,显然可以通过向原始矩阵添加更多元素来完成上采样。它可以通过各种方式完成,例如添加新元素和扩展原始矩阵,也可以通过原始矩阵本身的矩阵元素来完成。下面将讨论后一种方法以及执行相同操作的 2 种方法。

方法一:使用repeat()

我们使用 numpy.repeat() 方法通过重复矩阵的数字来对矩阵进行上采样。我们在 repeat() 方法中传递矩阵和轴以对矩阵进行上采样。此方法用于重复数组的元素。

方法

  • 导入模块
  • 创建数组
  • 将其传递给重复方法
  • 打印矩阵

例子:

Python3
# importing required module
import numpy as np
  
# declaring an array
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
  
# use the repeat function to upsample the array
print(np.repeat(a, 5, axis=1).repeat(3, axis=0))


Python3
# import required libraries
import numpy as np
  
# creating an array using numpy
a = np.array([[9, 8, 5], [11, 12, 14], [20, 21, 22]])
  
# using kron function upsampling the array
upsampled_array = np.kron(a, np.ones((2, 2)))
  
# printing the desired result
print(upsampled_array)


输出:

方法二:

在这种方法中,我们将看到如何使用np.kron对矩阵进行上采样。我们将矩阵与一个矩阵一起传递,该矩阵将使用 kron() 方法相互相乘,结果将是一个上采样矩阵。

句法:

np.kron(a ,b)

其中 a 和 b 是两个数组。

  • 它返回两个数组的 Kronecker 乘积。
  • 它的参数是两个要计算乘积的数组

例子:

蟒蛇3

# import required libraries
import numpy as np
  
# creating an array using numpy
a = np.array([[9, 8, 5], [11, 12, 14], [20, 21, 22]])
  
# using kron function upsampling the array
upsampled_array = np.kron(a, np.ones((2, 2)))
  
# printing the desired result
print(upsampled_array)

输出 :