2012-12-04 6 views
1

이미지 압축 프로그램을 만들고 RBG에서 YCbCr로 색상을 변환하려고합니다. 이미지를 픽셀로 추출하지 않고 각 픽셀에서 RBG 정보를 가져 오는 데 문제가 없습니다. 새 이미지를 생성하기 위해 새로운 YCbCr 정보와 함께 픽셀을 묶는 방법. RGB에서 YCbCr로 색상 변환 이미지

은 내가 RGB 정보를 조작하고 다시 함께 넣어 코드를 작성하고 그것은 다음과 같습니다

private static int packPixel(int red, int green, int blue) { 
    return (red << 16) | (green << 8) | blue; 
} 

public BufferedImage makeNewBufferedImage(short[][] ImageDataRed, short[][] ImageDataGreen, short[][] ImageDataBlue) { 
    int[] newBufferedImageData = new int[rows * cols]; 
    int index; 
    for (int row = 0; row < rows; row++) { 
     for (int col = 0; col < cols; col++) { 
      index = (row * cols) + col; 
      newBufferedImageData[index] = packPixel(ImageDataRed[row][col], ImageDataGreen[row][col], ImageDataBlue[row][col]); 
     } 
    } 

내가 된 YCbCr 더 많은 정보를 보유하고 있음을 알고 있지만 내가 생각에서 나는 어떻게 어쩌면, 함께 팩을 누구든지 나를 도울 수 있니?

+0

본 적이 있습니까? http://stackoverflow.com/questions/6311460/rgb-to-ycbcr-conversion-in-matlab 또는 http://en.wikipedia.org/wiki/YCbCr 아직도 하나 더 :) http : //www.equasys. de/colorconversion.html –

답변

관련 문제