Output multiple images with variable materials I have been asked to provide product images for a selection of display cabinets - these are basically like deep picture frames with different coloured interiors. They also come in different sizes too. 

in total I have 16 different sized cabinets in a 32 different interior colours. This means 512 different images. There is also talk of 3 different views, so we're looking at 1536 individual images.

I have my models, cameras and materials set up and ready to go. I'm wondering if there is a sensible way to render each image without manually changing the material assigned to the coloured part of my mesh?

I know i could do it quite easily in photoshop, but always seeking a way to be more efficient!

TIA
Have you looked into using Blender's compositor features? You could set up a matte (check out the new Cryptomatte feature in 2.8) for each material and then render the "beauty pass" once with several passes (for diffuse color, specular reflections, etc). In the compositor, you could do color balance and hue-shift and work on each channel one by one.

You can even render a UV pass and swap out the texture in composite, but be aware that this won't affect the color of light bounces.

However, your best option is probably to automate the material changes by using Python. It's a little tough to learn it with a deadline looming, but if you've got experience with coding then Python is your best bet.