2023.6.16 torchのconc2d次元確認【torch】
code:python
import torch
import torch.nn as nn
monoimg = 2,3,4],5,6,7,8,9,10,[11,12,13 monoimg2d = torch.tensor(monoimg, dtype=torch.float) # 2次元注意
monoimg = torch.tensor(monoimg, dtype=torch.float) # 3次元注意 colorimg = torch.tensor(colorimg, dtype=torch.float)
batchimg = torch.tensor(batchimg, dtype=torch.float)
print(monoimg.size())
print(colorimg.size())
print(batchimg.size())
layer1 = nn.Conv2d(1, 2, kernel_size=(3,3), padding=1)
# result1 = layer1(monoimg2d) # 2次元なモノはconv2dには入らない
result1 = layer1(monoimg) # 3次元にすると入る
print('# layer1\n', result1)
# 各次元は1,タテ、ヨコと解釈される
layer2 = nn.Conv2d(3, 2, kernel_size=2, padding=2)
result2 = layer2(colorimg) # 3次元配列はチャネルと解釈される
print('# layer2\n', result2)
# 各次元はチャネル、タテ、ヨコと解釈される
layer3 = nn.Conv2d(3, 2, kernel_size=2, padding=0)
result3 = layer3(batchimg)
print('# layer3\n', result3)
# 各次元はバッチ、チャネル、タテ、ヨコと解釈される