最近處理圖像經常用到以下部分操作:
import torchvision.transforms as transforms
transform.ToTensor()
transform.Normalize((0.5,0.5,0.5),(0.5,0.5,0.5))
一般採用OpenCV讀取到的圖片像素點單個通道的值域範圍爲[0,255]。
ToTensor()能夠把範圍從[0,255]變換到[0,1]之間。
Normalize()則把值域範圍從[0,1]變換到[-1,1]。具體而言,對每個通道Normalize執行以下操作:
value_n=(value-mean)/std
其中均值mean和標準差std分別由(0.5,0.5,0.5)和(0.5,0.5,0.5)指定。原來的最小值0變成(0-0.5)/0.5=-1,最大值1變成(1-0.5)/0.5=1,最終從[0,1]變換到[-1,1]。
參考資料:
PyTorch官方文檔