今天总结一下,pytorch框架下的几种边界填充方法:
1、torch.nn.ReflectionPad2d(padding)
功能:使用输入边界的反射填充输入张量。
1.1、若 padding是int类型,则在所有边界填充使用相同的
举例:
padding=1
(左、右、上、下 4个方向分别填充长度为1的映射)
padding=2
(左、右、上、下 4个方向分别填充长度为2的映射)
1.1、若 padding是tuple类型,根据tuple里的数值进行映射
左边填充长度为1的映射,右边填充长度为1的映射,上方填充长度为2的映射,下方填充长度为0的映射。
2、torch.nn.ZeroPad2d(padding)
padding是int类型,表示填充长度。
功能:用零填充输入张量边界。
3、torch.nn.ConstantPad2d(padding, value)
padding是int类型,表示填充长度,value表示要填充的常数值。
功能:用一个常数值填充输入张量边界。
4、torch.nn.ReplicationPad2d(padding)
功能:使用输入边界的复制填充输入张量。
padding = int or tuple:填充的大小。
4.1、 如果是int, 则在所有边界使用相同的填充;
4.2、 如果是4个元组, 则使用(paddingLeft, paddingRight, paddingTop, paddingBottom)
文章首发于:https://blog.csdn.net/AugustMe/article/details/116453250
参考
https://blog.csdn.net/weixin_38258767/article/details/109444299