我的输入图像的大小是 68 x 224 x 3 (HxWxC),第一Conv2d层定义为
conv1 = torch.nn.Conv2d(3, 16, stride=4, kernel_size=(9,9))。
为什么输出特征体的尺寸是16 x 15 x 54?我知道有16个过滤器,所以前面有16,但是如果我用来[(W\xe2\x88\x92K+2P)/S]+1计算维度,维度是不可整除的。
有人可以解释一下吗?
\n我有这些图像,所有图像中都有阴影。我的目标是使用这三个图像制作没有阴影的汽车的单个图像:
最后,如何才能得到如下所示的这种图像:
任何形式的帮助或建议表示赞赏。
编辑
根据评论,我使用np.maximum并轻松实现了我的目标:
import cv2
import numpy as np
img_1 = cv2.imread('1.png', cv2.COLOR_BGR2RGB)
img_2 = cv2.imread('2.png', cv2.COLOR_BGR2RGB)
img = np.maximum(img_1, img_2)
cv2.imshow('img1', img_1)
cv2.imshow('img2', img_2)
cv2.imshow('img', img)
cv2.waitKey(0)
Run Code Online (Sandbox Code Playgroud) 运行我的代码时,我收到此错误消息“ RuntimeError:DataLoader worker (pid(s) 48817, 48818) 意外退出” 我完全不确定从哪里开始解决此问题。任何指导都将不胜感激。下面发布了代码和回溯
batch_size = 128
image_size = (64,64)
stats = (0.5, 0.5, 0.5), (0.5, 0.5, 0.5)
transform_ds = transforms.Compose([transforms.Resize(image_size),
# transforms.RandomCrop(32, padding=2),
# transforms.RandomHorizontalFlip(),
transforms.ToTensor(),
transforms.Normalize(*stats)
])
train_ds = facesDataset(csv_file = 'imagesdataset.csv', root_dir = 'images',
transform = transform_ds)
train_dl = DataLoader(train_ds, batch_size, shuffle=True, num_workers=3, pin_memory=True)
print(len(train_ds))
def denorm(img_tensors):
return img_tensors * stats[1][0] + stats[0][0]
def show_images(img, nmax=64):
fig, ax = plt.subplots(figsize=(8, 8))
ax.set_xticks([]); ax.set_yticks([])
ax.imshow(make_grid(denorm(img.detach()[:nmax]), nrow=8).permute(1, 2, 0))
def show_batch(dl, nmax=64):
for img, …Run Code Online (Sandbox Code Playgroud)