Designing CNN that does one column convolution across the x-axis
So the cnn somehow has to use a kernel that has to be 276 rows and 1 column wide, but is it possible in keras to make a 2d kernel and perform 1d convolution.
I'm not sure I understand your question correctly, but if you have input images that are 276 high, X=500 wide and have 3 color channels, then the following performs column-wise convolutions across the X-axis:
rows, cols, chans = 276, 500, 3
model.add(Convolution2D(64, rows, 1, input_shape=(rows, cols, chans)))
The output shape of this layer will be (1, 500, 64).
I inserted "64" as the number of filters.. you can set that to whatever you need / whatever works best.
Note: shapes are specified in tensorflow mode (i.e. the order is (rows, cols, channels)). Depending on your configuration you might have to change those shapes to theano mode: (channels, rows, cols).
So the cnn somehow has to use a kernel that has to be 276 rows and 1 column wide,
It actually has to use a kernel that is 276 rows, 1 column and 3 channels wide since your input images have 3 channels.. it would be 276 rows and 1 column wide if you used grayscale images.. but that shouldn't matter.