pytorch中的ReflectionPad2d


torch.nnReflectionPad2d

一、原理

增加邊界的類型有以下4個類型:以一行圖像數據為例,abcdefgh是原圖數據,|是圖像邊界,為原圖加邊

1 aaaaaa|abcdefgh|hhhhhhh 重復
2 fedcba|abcdefgh|hgfedcb 反射
3 gfedcb|abcdefgh|gfedcba 反射101,相當於上一行的左右互換
4 cdefgh|abcdefgh|abcdefg 外包裝
5 iiiiii|abcdefgh|iiiiiii with some specified 'i' 常量

torch.nn.ReflectionPad2d(padding) 使用輸入邊界的反射填充輸入張量。填充長度為 padding。當以元組的方式傳入參數的時候,四元組代表left ,right,top,bottom四個位置的填充長度。

二、實例說明

import torch
input = torch.arange(16, dtype=torch.float).reshape(4, 4)
print(input)
input = input.unsqueeze(0)
input = input.unsqueeze(0)
pad2 = torch.nn.ReflectionPad2d(3)
res2 = pad2(input)
print(res2[0][0][:])

以紅色框中數據為起點,按照先左右后上下的順序完成數據的填充。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM