Would “correlation between channels” mean that each channel of size [height, width] would be correlated with its neighboring channels?
If so, you could probably slice a single channel from the input activation and use the functional API to perform the convolution (which is in fact performing a cross-correlation) with each other channel via F.conv2d.