Technically yes -- colormaps are 1-dimensional non-self intersecting curves in RGBA space. You just grab them by the... I mean just straighten them.
I don't know if an explicit formula for the colormap is given, but you can always do "xs = np.linspace(0,1,100); ys = { cm.hot(x):x for x in xs}" and recover an approximate inverse. Then apply this function to each pixel of the image.