Конвертировать изображение в правильный размер PyTorch - PullRequest
0 голосов
/ 02 июня 2018

У меня есть входное изображение в виде массива фигуры [H, W, C], где H - высота, W - ширина и C - каналы.
Я хочу преобразовать его в [B, C, H,W] где B - размер партии, который должен быть равен 1 каждый раз, и смена места для C.

_image = np.array(_image)
h, w, c = _image.shape
image = torch.from_numpy(_image).unsqueeze_(0).view(1, c, h, w)

Итак, это сохранит изображение должным образом, т.е. без смещения исходного изображениязначения пикселей?

1 Ответ

0 голосов
/ 02 июня 2018

Я бы предпочел следующее, которое оставляет исходное изображение без изменений и просто добавляет новую ось по желанию:

_image = np.array(_image)
image = torch.from_numpy(_image)
image = image[np.newaxis, :] 
# _unsqueeze works fine here too

Затем, чтобы изменить оси по желанию:

image = image.permute(0, 3, 1, 2)
# permutation applies the following mapping
# axis0 -> axis0
# axis1 -> axis3
# axis2 -> axis1
# axis3 -> axis2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...