До сих пор я понимал, что для трехмерного массива с размерами N x A x B x C (Здесь N - размер партии, поэтому я проигнорирую его).Conv2d
функция torch.nn
, примет A в качестве in_channel.
Однако у меня другая ситуация.У меня есть трехмерные изображения nifti, и я загружаю их, используя функцию nibabel.load
, а затем преобразую их в массив numpy, а затем, наконец, преобразовал их в тензор, используя torch.from_numpy
.
Так что в моем случае изображения имеют размерность, 512 x 512 x 50
.Здесь высота = ширина = 512, а глубина = 50. Но если я использую функцию nn.conv2d
, то предполагается, что значение in_channels равно 512, потому что это первое измерение, но это не так.Итак, как я могу использовать функцию conv2d и сказать ей, что значение in_channel является третьим измерением?