Как вы хотите интерполировать?
Не существует «лучшего», «правильного» или «нормального» способа интерполировать данные ... Все зависит от вашей проблемы.
Существует большое количество разных способов сделать то, что вы хотите.
Начальной точкой будет scipy.ndimage.zoom
, которая может использовать интерполяцию сплайном, линейным или ближайшим соседом и выполнять именно то, что вам нужно.
Указание order=0
даст интерполяцию ближайшего соседа, order=1
даст линейную интерполяцию, а все, что больше 1, даст указанный порядок сплайн-интерполяции. (По умолчанию используется order=3
, то есть интерполяция с кубическим сплайном.)
В вашем случае это будет:
new = zoom(data, (55/64.0, 100/64.0, 60/64.0), order=typeofinterpolationyouwant)
Вам также необходимо подумать, как бы вы хотели, чтобы границы обрабатывались. По умолчанию любые значения вне исходного массива обрабатываются как 0. С помощью сплайн-интерполяции это обычно приводит к сильным артефактам вблизи краев массива.