numpy.pad

np.pad()常用与深度学习中的数据预处理,可以将numpy数组按指定的方法填充成指定的形状。

np.pad()

对一维数组的填充

import numpy as np
arr1D = np.array([1, 1, 2, 2, 3, 4])
‘‘‘不同的填充方法‘‘‘
print ‘constant:  ‘ + str(np.pad(arr1D, (2, 3), ‘constant‘))
print ‘edge:  ‘ + str(np.pad(arr1D, (2, 3), ‘edge‘))
print ‘linear_ramp:  ‘ + str(np.pad(arr1D, (2, 3), ‘linear_ramp‘))
print ‘maximum:  ‘ + str(np.pad(arr1D, (2, 3), ‘maximum‘))
print ‘mean:  ‘ + str(np.pad(arr1D, (2, 3), ‘mean‘))
print ‘median:  ‘ + str(np.pad(arr1D, (2, 3), ‘median‘))
print ‘minimum:  ‘ + str(np.pad(arr1D, (2, 3), ‘minimum‘))
print ‘reflect:  ‘ + str(np.pad(arr1D, (2, 3), ‘reflect‘))
print ‘symmetric:  ‘ + str(np.pad(arr1D, (2, 3), ‘symmetric‘))
print ‘wrap:  ‘ + str(np.pad(arr1D, (2, 3), ‘wrap‘))

解释:
第一个参数是待填充数组
第二个参数是填充的形状,(2,3)表示前面两个,后面三个
第三个参数是填充的方法
填充方法:
constant连续一样的值填充,有关于其填充值的参数。constant_values=(x, y)时前面用x填充,后面用y填充。缺参数是为0000。。。
edge用边缘值填充
linear_ramp边缘递减的填充方式
maximum, mean, median, minimum分别用最大值、均值、中位数和最小值填充
reflect, symmetric都是对称填充。前一个是关于边缘对称,后一个是关于边缘外的空气对称╮(╯▽╰)╭
wrap用原数组后面的值填充前面,前面的值填充后面
也可以有其他自定义的填充方法

对多维数组的填充

import numpy as np
arr3D = np.array([[[1, 1, 2, 2, 3, 4], [1, 1, 2, 2, 3, 4], [1, 1, 2, 2, 3, 4]],
                  [[0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5]],
                  [[1, 1, 2, 2, 3, 4], [1, 1, 2, 2, 3, 4], [1, 1, 2, 2, 3, 4]]])
                  ‘‘‘对于多维数组‘‘‘
print ‘constant:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘constant‘))
print ‘edge:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘edge‘))
print ‘linear_ramp:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘linear_ramp‘))
print ‘maximum:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘maximum‘))
print ‘mean:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘mean‘))
print ‘median:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘median‘))
print ‘minimum:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘minimum‘))
print ‘reflect:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘reflect‘))
print ‘symmetric:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘symmetric‘))
print ‘wrap:  \n‘ + str(np.pad(arr3D, ((0, 0), (1, 1), (2, 2)), ‘wrap‘))

原文地址:https://www.cnblogs.com/zongfa/p/8995739.html

时间: 2024-11-02 03:41:45

numpy.pad的相关文章

用numpy.pad()对图像进行填充及简单的图像处理

三.用numpy.pad()对图像进行填充及简单的图像处理 https://blog.csdn.net/wang454592297/article/details/80854996 一.用numpy.pad()对图像进行填 我们都知道在css的盒子模型中,有padding(内边距)这一属性.同css中的padding类似,在numpy中,numpy.pad()可以跟矩阵添加内边距,这一方法在CNN中的卷积层可以用到,可以影响到卷积后矩阵的维度,其用法如下: numpy.pad(array, pa

【python实现卷积神经网络】卷积层Conv2D实现(带stride、padding)

关于卷积操作是如何进行的就不必多说了,结合代码一步一步来看卷积层是怎么实现的. 代码来源:https://github.com/eriklindernoren/ML-From-Scratch 先看一下其基本的组件函数,首先是determine_padding(filter_shape, output_shape="same"): def determine_padding(filter_shape, output_shape="same"): # No paddin

《Python数据分析常用手册》一、NumPy和Pandas篇

一.常用链接: 1.Python官网:https://www.python.org/ 2.各种库的whl离线安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn 3.数据分析常用库的离线安装包(pip+wheels)(百度云):http://pan.baidu.com/s/1dEMXbfN 密码:bbs2 二.常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和

100 numpy exercises

100 numpy exercises A joint effort of the numpy community The goal is both to offer a quick reference for new and old users and to provide also a set of exercices for those who teach. If you remember having asked or answered a (short) problem, you ca

NumPy和Pandas常用库

NumPy和Pandas常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编写循环). 用于读写磁盘数据的工具以及用于操作内存映射文件的工具. 线性代数.随机数生成以及傅里叶变换功能. 用于集成C.C++.Fortran等语言编写的代码的工具. 首先要导入numpy库:import numpy as np A NumPy函数和属性: 类型

Numpy and Pands

一.常用链接: 1.Python官网:https://www.python.org/2.各种库的whl离线安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn 3.数据分析常用库的离线安装包(pip+wheels)(百度云):http://pan.baidu.com/s/1dEMXbfN 密码:bbs2 二.常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复

总结(5)--- Numpy和Pandas库常用函数

二.常用库 1.NumPy NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编写循环). 用于读写磁盘数据的工具以及用于操作内存映射文件的工具. 线性代数.随机数生成以及傅里叶变换功能. 用于集成C.C++.Fortran等语言编写的代码的工具. 首先要导入numpy库:import numpy as np A NumPy函数和属性: 类型 类型代码 说明 i

4、numpy+pandas速查手册

<Python数据分析常用手册>一.NumPy和Pandas篇 一.常用链接: 1.Python官网:https://www.python.org/2.各种库的whl离线安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn 3.数据分析常用库的离线安装包(pip+wheels)(百度云):http://pan.baidu.com/s/1dEMXbfN 密码:bbs2 二.常用库 1.NumPy NumPy是高性能科学计算和数据分

numpy练习题

1. 导入numpy库并简写为 np import numpy as np 2. 打印numpy的版本和配置说明 print(np.__version__) print(np.show_config()) 3. 创建一个长度为10的空向量 a = np.zeros(10) 4. 如何找到任何一个数组的内存大小? Z = np.zeros((10,10)) print("%d bytes" % (Z.size * Z.itemsize)) 5. 如何从命令行得到numpy中add函数的说