Tensorflow 如何编写自定义keras层以对三维体积重新采样?

Tensorflow 如何编写自定义keras层以对三维体积重新采样?,tensorflow,keras,image-resizing,volume,Tensorflow,Keras,Image Resizing,Volume,我在网络中有一个张量(批量大小、高度、宽度、深度、通道)(表示三维体积),需要重新采样。我正在考虑写一个自定义的keras层来实现这一点 input=input() x=网络(输入)#另一个网络 x=自定义重采样3d(…)(x) x=。。。 net的输出是(批大小,64,64,1)。我想使用插值将张量调整为(批量大小,256,256,32,1) 因此,我最初的想法是使用scipy.ndimage.interpolation.zoom定制keras层 类MyLayer(层): 定义初始值(自身、

我在网络中有一个张量
(批量大小、高度、宽度、深度、通道)
(表示三维体积),需要重新采样。我正在考虑写一个自定义的keras层来实现这一点

input=input()
x=网络(输入)#另一个网络
x=自定义重采样3d(…)(x)
x=。。。
net
的输出是
(批大小,64,64,1)
。我想使用插值将张量调整为
(批量大小,256,256,32,1)

因此,我最初的想法是使用
scipy.ndimage.interpolation.zoom
定制keras层

类MyLayer(层):
定义初始值(自身、输出尺寸,**kwargs):
self.output\u dim=output\u dim
超级(MyLayer,self)。\uuuuu初始化(**kwargs)
def构建(自我,输入_形状):
super(MyLayer,self)。build(input#u shape)#最后一定要调用它
def呼叫(自我,x):
返回scipy.ndimage.interpolation.zoom(x,…)
def计算输出形状(自身、输入形状):
返回。。。
有没有更好的办法?或者我需要将
keras张量
转换为numpy数组,然后将其转换回张量吗