我正在用 pytorch 实现一篇关于图像分割的论文。我需要做一些预处理步骤,但因为我是第一次尝试,所以我无法将它们合并到传统的管道中。以下是预处理步骤-
1) N(w, h) = I(w, h) − G(w, h), (1) 其中N为归一化图像,I为原始图像,G为核大小为65的高斯模糊图像*65 和 0 均值和标准差 10。
2)归一化平均图像并将每个像素除以平均标准差。
以下是我上述步骤的代码片段-
def gaussian_blur(img):
image = cv2.GaussianBlur(image,(65,65),10)
new_image = img - image
return image
def normalise(img):
img_normalised = np.empty(img.shape)
img_std = np.std(img)
img_mean = np.mean(img)
img_normalized = (img-img_mean)/imgs_std
for i in range(img.shape[1]):
img_normalized[i] = (img_normalized -
np.mean(img_normalized))/np.std(img_normalized)
return img_normalized
我真的不确定如何在传统的 pytorch 数据加载器管道中添加上述功能,例如首先我应该使用ImageFolder
然后应用加载数据集或先应用然后使用ImageFolder
方法。