Skip to content

ricky40403/BlurPool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

BlurPool

Caffe implementation of Adobe paper: "Making Convolutional Networks Shift-Invariant Again"


The Origin Paper : https://arxiv.org/abs/1904.11486
Project page : https://richzhang.github.io/antialiased-cnns
Ptorch Version : https://github.com/adobe/antialiased-cnns


To be convenient, this repository efficiently adds the blur kernel effect on the base_conv_layer by modifying the LayerSetup.
By directly rewrite the base_conv_layer, it will not change the layer type(convolution).
It only needs to add the convolutional param: blur_kernel
But the drawback is that Caffe uses zero paddings instead of other types.

**Note that this is same as the origin paper which using depthwise**
**Here will also check the bias_term (suppose to be false) and the lr_rate, decay_rate should be 0**

caffe.proto

message ConvolutionParameter {
  optional uint32 num_output = 1; // The number of outputs for the layer
  optional bool bias_term = 2 [default = true]; // whether to have bias terms
  
  ......
  
  optional bool blur_kernel = 18 [default = false];
}

Caffe protoxt

layer {
  name: "Conv_BlurPool"
  type: "Convolution"
  bottom: "Conv1"
  top: "Conv_BlurPool"
  param {
    lr_mult: 0.0
    decay_mult: 0.0
  }
  convolution_param {
    num_output: 64
    bias_term: false
    pad: 1
    kernel_size: 3
    group: 64
    stride: 2
    blur_kernel: true
  }
}

About

Caffe implementation of Adobe paper: "Making Convolutional Networks Shift-Invariant Again"

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages