ConvNet with concatenated data
It behaves like a fully connected network regarding the channels dimension. For each pixel location, the CNN takes the weighted sum of all pixels in that location on the channels dimension. The weights are of course trainable.

This is only for the first layer, though, because afterwards layers have an arbitrary number of channels that has nothing to do with the colors in the original image.

You could also read this answer where I explain how the operation works in a bit more detail.