You can do it with a combination of the colorsys module and PIL, but it's kind of slow. colorsys allows you to change the color space to HSV where it's trivial to do hue and saturation modifications. I take the saturation to the power of 0.65 to approximate your example, it retains the range of 0.0-1.0 needed by colorsys while increasing the middle values.
import colorsys
from PIL import Image
im = Image.open(filename)
ld = im.load()
width, height = im.size
for y in range(height):
for x in range(width):
r,g,b = ld[x,y]
h,s,v = colorsys.rgb_to_hsv(r/255., g/255., b/255.)
h = (h + -90.0/360.0) % 1.0
s = s**0.65
r,g,b = colorsys.hsv_to_rgb(h, s, v)
ld[x,y] = (int(r * 255.9999), int(g * 255.9999), int(b * 255.9999))
