python - Pytorch Data Loader 将图像连接到输入图像
问题描述
在 PyTorch 数据加载器中,我如何将图像(比如 x.jpg)以带内方式连接到每个输入图像。即,实际上我将有 4 波段输入(3 波段输入 jpg 和 1 波段 x.jpg。如何实现它。
请在下面找到我当前数据加载器的示例,以加载图像。为此,我想将 x.jpg 添加到“图像”(即输入图像,而不是掩码)
from PIL import Image
class lakeDataSet(Dataset):
def __init__(self, root, transform):
super().__init__()
self.root = root
self.img_dir = os.path.join(root,'image-c3/c3-crop') #9UAV
self.mask_dir = os.path.join(root,'label-c3/c3-crop')
# self.mask_dir = os.path.join(root,'test')
self.files = [fname for fname in os.listdir(self.img_dir) if fname.endswith('.jpg')]
self.transform = transform
def __len__(self):
return len(self.files)
def __getitem__(self,I):
fname = self.files[i]
img_path = os.path.join(self.img_dir, fname)
mask_path = os.path.join(self.mask_dir, fname)
img = self.transform(Image.open(img_path))
mask = self.transform(Image.open(mask_path))
return img, mask
解决方案
我想self.transform
已经有了ToTensor
。否则,您也应该指定它。
然后你可以连接第一个维度。像
x_jpg = self.transform(Image.open('x.jpg'))
img = torch.cat((img, x_jpg), 0)
必须只有 1 个通道,如果它是 RGB ,x.jpg
那么显然它将变成 6 个通道而不是 4 个。
推荐阅读
- asp.net - 为需要 web.config 和单个 HttpHandler 的极简 IIS Web 应用程序选择什么模板
- css - 相同的 css 在 localhost 和在线主机上给出不同的样式
- c++ - Vulkan 加载“vkCreateDebugUtilsMessengerEXT”函数地址有问题
- python - Keras 中的自定义指标,用于计算回归任务中的二元分类准确度
- python - 将dict导入数据框得到索引错误或列不正确
- python - 在线性回归中使用 gre 预测录取率
- html - CSS - 使用网格制作响应式方形网格
- php - SQL 表显示为空
- google-apps-script - 按下拉列表中的命名范围排序
- php - Corcel:如何在 Laravel 中的 WordPress 表之间形成多对多关系?