题主花了很多时间去理解 tensorflow 中 transpose_conv 的计算方法,终于找到了一篇写得比较基础的博文link,文中用 python 实现了 tensorflow 中 transpose_conv 的功能,但是存在一点点不足,code仅仅适合 stride=2,kernel=3的场合,现修改其代码,使其适应于 stride = 2,但kernel 可以为任意值的场合。
#根据输入map([h,w])和卷积核([k,k]),计算卷积后的feature map
import numpy as np
def compute_conv(fm,kernel):
[h,w]=fm.shape
[k,_]=kernel.shape
#定义边界填充0后的map
padding_fm=np.zeros([h+k-1,w+k-1],np.float32)
#保存计算结果