Hay muchas formas de hacerlo, desde tener todos los resultados posibles en archivos independientes y llamar al adecuado en función de la selección del usuario, a llamar un archivo parametrizable que muestre el resultado... todo depende de lo que estes dispuesta a usar o domines.
Un formulario con selects o radiobutoms para elegir forma y color y en el action llamar una función que elija el archivo adequado, se podria hacer con HTML simple y una funcion javascript .... Si obtas por el archivo parametrizable, php por ejemplo, debes pasarle la forma y el color elegidos y que el archivo php muestre el resultado... en los dos casos podrias cargar el resultado con ajax...
La imagen en si tambien pudes tenerla previamente creada o generarla al vuelo dependiendo otra vez de tus conocimientos o de la tecnica que quieras usar.... si obtas por tener las imagenes previamente creadas, incluso las podrias pre cargar (
preload images hay infinidad de scripts para hacerlo) con javascript y mostrar la decuada...
Estamos hablando de 4x5=20 combinaciones quizas la ultima solucion que te propongo es la mejor... creas la 20 imagenes posibles las pre cargas y el formulario llama la elegida... sin comunicacion con el servidor, no es la mas sofisticada de las soluciones pero generalmente no hacen falta "cañones para matar moscas"...