Я ищу, как выполнить повторную выборку массива numpy, представляющего данные изображения, с новым размером, предпочтительно с выбором метода интерполяции (ближайшего, билинейного и т.д.). Я знаю, что есть
scipy.misc.imresize
который выполняет именно это, обертывая функцию изменения размера PIL. Единственная проблема заключается в том, что поскольку он использует PIL, массив numpy должен соответствовать форматам изображений, предоставляя мне максимум 4 "цветных" канала.
Я хочу, чтобы иметь возможность изменять размеры произвольных изображений с любым количеством "цветных" каналов. Мне было интересно, есть ли простой способ сделать это в scipy/numpy, или если мне нужно катиться самостоятельно.
У меня есть две идеи о том, как самостоятельно придумать:
- функция, которая запускает
scipy.misc.imresize
по каждому каналу отдельно - создайте собственное приложение
scipy.ndimage.interpolation.affine_transform
Первый, вероятно, будет медленным для больших данных, а второй, похоже, не предлагает другого метода интерполяции, кроме сплайнов.