2013-10-27 8 views
1

가 나는 Y, CR을 계산이자바 RGB 색 공간이

색 공간의 변화에 ​​관한 도움이 필요하세요, 인증 기관은 새로운 이미지를 저장

  int Y = (int)(0.299*r+0.587*g+0.114*b); 
      int Cb=(int)(128-0.169*r-0.331*g+0.500*b); 
      int Cr =(int)(128+0.500*r-0.419*g-0.081*b); 

변환

을 지금은 한 사용하여 값 새로운 색상 공간 예 : YCrCb RGB가 아니야.

+1

어떤 형식으로 저장 하시겠습니까? –

+0

이미지가 JPG 형식이어야합니다. –

답변

1

Java의 bufferedImage 클래스를 사용하여 YCbCr 공간에 이미지를 표시 할 수 있습니다. 이를 위해 RGB 이미지와 같은 크기의 빈 버퍼 이미지를 만들고 아래와 같이 setRGB 메서드를 사용하여 모든 픽셀 값을 설정합니다.

BufferedImage ycb = new BufferedImage(w,h,BufferedImage.TYPE_INT_RGB); 

int val = (y<<16) | (cb<<8) | cr; 
    ycb.setRGB(i,j,val); 

ImageIO.write(ycb,"png", new File("E:\\Rose\\ycbcr\\ycbcr.png"));