Negative Padding in a Convolution?

41 views
Skip to first unread message

McCaffe

unread,
Nov 27, 2015, 7:49:58 AM11/27/15
to Caffe Users
Hey 

I have a vector which consists of a concatenation the features of a video sequence across 7 frames.
I would like to apply 1D convolution to this vector such that only a part of a frame is processed.
Say a feature vector for one frame has the lenght 10
-> my input feature vector would be of length 7 x 10 = 70
Now I want two convolutions to work on different parts of that vector
-> conv1 should treat the features 1:5 
-> conv2 should treat 6:10
-> stride for both would be 10 -> so the convolution filters apply to the same features only in different frames

Basically I would need to specify an offset for the second conv filter. Is that possible?
On the Caffe website they speak only about a zero padding, but for an offset I would need a negative padding.

Is something like this possible?
layer {
  name: "conv_layer"
  type: "Convolution"
  bottom: "data"
  top: "conv_layer"
  param {
    lr_mult: 1
    decay_mult: 1
  }
  param {
    lr_mult: 2
    decay_mult: 0
  }
  convolution_param {
    num_output: 90
    kernel_h: 1
    kernel_w: 5
    pad_h: 0
    pad_w: -5   
    stride: 10
    weight_filler {
      type: "gaussian"
      std: 0.01
    }
    bias_filler {
      type: "constant"
      value: 0
    }
  }
}

Reply all
Reply to author
Forward
0 new messages