ColorSpace
Function
This function will convert your image from one color space to another. After
the image is converted, you can use color correction functions that will operate
in the new color space logic for interesting effects. For example, if you place
a ColorSpace to convert from rgb to hls (hue, luminance,
saturation), and then apply a Color - Add, the Add's red
channel will shift your hue, instead of the red channel.
The optional r, g, bWeight arguments only effect rgb to hls or hls to rgb conversions.
For command line use, and compatibility with 2.1 scripts or earlier, there are still the dedicated space convesion functions CMYToRGB, HLSToRGB, HSVToRGB, RGBToCMY, RGBToHLS, RGBToHSV, RGBToYIQ, RGBToYUV, YIQToRGB, and YUVToRGB. None of these functions has arguments, except for the HLS functions which have optional r, g, and bWeight parameters.
Parameters
|
Type
|
Defaults
|
Function
|
in/outSpace |
string
|
"rgb","rgb"
|
Selects the incoming space and the output color space. For example, if you use one ColorSpace, you probably use rgb as your inSpace, and then something like hsv to convert it to hue/saturation/value space. After doing your operations, you usually apply a second ColorSpace function, with hsv as your inSpace and rgb as your outSpace. |
r/g/bWeight |
float
|
.3, .59, .11
|
The weighing of the three channels for the luminace calculation in conversions involving hsl. Luminance differs from value in that luminace calculates brightness bases on the eye's perception that green is brighter than an equal value in the blue channel. |
Synopsis
image ColorSpace( image, string inSpace, string outSpace, float rWeight, float gWeight, float bWeight );
Script
image = ColorSpace( image, "inSpace", "outSpace", rWeight, gWeight, bWeight );
Command Line
shake -colorspace "inSpace" "outSpace"
Examples
shake lisa.iff -colorspace "rgb" "hls" -add .4 0 0 -colorspace
"hls" "rgb"
shake lisa.iff -rgbtohls -add .4 0 0 -hlstorgb