Pytorch Unfold and Fold: как мне снова собрать этот тензор изображения?Python

Программы на Python
Anonymous
Pytorch Unfold and Fold: как мне снова собрать этот тензор изображения?

Сообщение Anonymous »

Я пытаюсь отфильтровать одноканальное 2D-изображение размером 256x256, используя развертку, чтобы создать блоки 16x16 с перекрытием 8. Это показано ниже:

Код: Выделить всё

# I = [256, 256] image
kernel_size = 16
stride = bx/2
patches = I.unfold(1, kernel_size,
int(stride)).unfold(0, kernel_size, int(stride)) # size = [31, 31, 16, 16]

Я начал пытаться соединить изображение с помощью сгиба, но пока не до конца. Я пытался использовать view, чтобы изображение «подошло» так, как должно, но не понимаю, как это сохранит исходное изображение. Возможно, я слишком много об этом думаю.

Код: Выделить всё

# patches.shape = [31, 31, 16, 16]
patches = = filt_data_block.contiguous().view(-1, kernel_size*kernel_size) # [961, 256]
patches = patches.permute(1, 0) # size = [951, 256]
Будем благодарны за любую помощь. Спасибо большое.

Подробнее здесь: https://stackoverflow.com/questions/640 ... ther-again

Вернуться в «Python»