Interpolación rápida de datos 3D muestreados regularmente con diferentes intervalos en x, y y z

Tengo algunos datos de imágenes volumétricas que consisten en valores muestreados en una cuadrícula regular en x, y, z, pero con una forma de voxel no cúbico (el espacio entre los puntos adyacentes en z es mayor que en x, y). Finalmente, me gustaría poder interpolar los valores en un plano 2D arbitrario que pasa a través del volumen, como esto:

Soy consciente descipy.ndimage.map_coordinates, pero en mi caso, usarlo es menos sencillo porque asume implícitamente que el espaciado de los elementos en la matriz de entrada es igual en todas las dimensiones. Primero podría volver a muestrear mi matriz de entrada de acuerdo con la dimensión de voxel más pequeña (para que todos mis voxels sean entonces cubos), luego usarmap_coordinates para interpolar sobre mi avión, pero no parece una buena idea interpolar mis datos dos veces.

También soy consciente de quescipy tiene varios interpoladores para datos de ND espaciados irregularmente (LinearNDInterpolator, NearestNDInterpolator etc.), pero estos son muy lentos y requieren mucha memoria para mis propósitos. ¿Cuál es la mejor manera de interpolar mis datos, dado que sé que los valoresson regularmente espaciado dentro de cada dimensión?

Respuestas a la pregunta(3)

Su respuesta a la pregunta