Why convert spectrogram to RGB for machine learning? I've seen a few publications that feed an RGB image of a spectrogram to a neural net, and someone claiming a network does better with RGB than grayscale.
A spectrogram is fundamentally a 2D representation with each point being a non-negative real value. Converting it to RGB adds no information. Worse, it introduces a dependence on choice of colormap, which is just noise. It's worse than making grayscale images RGB, as it breaks a spectrogram's spatial dependencies by splitting into channels.
Why would an RGB spectrogram ever outperform grayscale?

Example pub with good results, but there's reason to suspect incompetence per e.g. "[1356x1071] images were lossless scaled to 32x32", which is impossible. There's no comparison with grayscale approach so we can't tell if it outperformed.

There are some "trivial" explanations I'll list to avoid answers containing them:

*

*Transfer learning: using nets pretrained on RGB

*Architectures tailored specifically to maximize RGB utility

While they're valid explanations, it's no evidence that RGB is any better.

I do not have very "hard" evidence, but I have a publication under review where we have trained ResNet50 to regress some values from noisy spectrograms.

*

*Pretraining in ImageNet is better than starting from random initialization

*For pretrained networks, using color spectrograms is better than grayscale spectrograms (normalized to 0-1)

All that I have is comparative experiments in a couple of datasets, so take it or leave it :)
