net.sourceforge.jiu.color.conversion
Class PCDYCbCrConversion
java.lang.Object
net.sourceforge.jiu.color.conversion.PCDYCbCrConversion
- RGBIndex, YCbCrIndex
public class PCDYCbCrConversion
extends java.lang.Object
Convert from YCbCr color space (as used in Kodak PCD files) to
RGB. Only works for 24 bits per pixel (8 bits per channel) image
data.
private static float | c11
|
private static float | c12
|
private static float | c13
|
private static float | c21
|
private static float | c22
|
private static float | c23
|
private static float | c31
|
private static float | c32
|
private static float | c33
|
private static void | checkArray(byte[] data, int offset, int num)
|
static void | convertYccToRgb(byte[] y, byte[] cb, byte[] cr, int yccOffset, byte[] r, byte[] g, byte[] b, int rgbOffset, int num) - Converts pixels from YCbCr to RGB color space.
|
private static byte | floatToByte(float f)
|
c11
private static final float c11
c12
private static final float c12
c13
private static final float c13
c21
private static final float c21
c22
private static final float c22
c23
private static final float c23
c31
private static final float c31
c32
private static final float c32
c33
private static final float c33
PCDYCbCrConversion
private PCDYCbCrConversion()
checkArray
private static void checkArray(byte[] data,
int offset,
int num)
throws IllegalArgumentException
convertYccToRgb
public static void convertYccToRgb(byte[] y,
byte[] cb,
byte[] cr,
int yccOffset,
byte[] r,
byte[] g,
byte[] b,
int rgbOffset,
int num)
throws IllegalArgumentException
Converts pixels from YCbCr to RGB color space.
Input pixels are given as three byte arrays for luminance and the
two chroma components.
Same for output pixels, three other arrays for red, green and blue.
Offset values can be specified separately for the YCbCr and the RGB
arrays.
y
- the array of gray source samplescb
- the array of chroma blue source samplescr
- the array of chroma red source samplesyccOffset
- offset value into the arrays y, cb and cr; color
conversion will be started at the yccOffset'th value of each arrayr
- the array of red destination samplesg
- the array of green destination samplesb
- the array of blue destination samplesrgbOffset
- offset value into the arrays r, g and b; destination samples
will be written to the three arrays starting at the rgbOffset'th value of each arraynum
- the number of pixels to be converted
floatToByte
private static byte floatToByte(float f)