反卷积输出
o = (i-1)*stride+ kernel_size-2pad
但是caffe官方文档建议参数比如下:
layer {
name: "upsample", type: "Deconvolution"
bottom: "{{bottom_name}}" top: "{{top_name}}"
convolution_param {
kernel_size: {{2 * factor - factor % 2}} stride: {{factor}}
num_output: {{C}} group: {{C}}
pad: {{ceil((factor - 1) / 2.)}}
weight_filler: { type: "bilinear" } bias_term: false
}
param { lr_mult: 0 decay_mult: 0 }
}
之前项目需求sptialtransform必须改为deconv,7upsample至56,选取参数 stride = 9, kernel_size = 4,pad = 1
(7-1)*9+4-2 = 56 …但是训练结果相比于sptialtransform还是惨,原因是stride = 9,kernel_size会损失大量信息。。23333333
还是老实按照官方文档:stide = 8,kernel_size = 16,pad = 4
如果对kernel_size有要求,必须为4,upsample8倍,建议串联3个upsample2的deconv!
参考:https://blog.csdn.net/xiaojiajia007/article/details/75041651