2014-12-01 3 views
-1

이미지를 RGB 모델에서 HSV로 변환하여 표시하려고합니다. 불행히도 나는 이것을 어떻게하는지 전혀 모른다. 필자는 내장 함수를 사용하고 싶지 않지만 함수를 단독으로 쓰기를 원합니다. RGB 채널을 사용하여 비슷한 방식으로이 작업을 수행하려고합니다. 이 사이트에서 많은 예제를 읽고 확인했지만 특별한 도움이되는 자료를 찾지 못했습니다. 어떻게해야합니까?RGB 모델에서 내장형 기능없이 HSV로 이미지를 변환하고이를 Java로 표시하는 방법은 무엇입니까?

// image from RGB to grayscale 
private static BufferedImage monochromatyczny(BufferedImage obrazek) 
{ 
    for(int x = 0; x < obrazek.getWidth(); x++) 
     for(int y = 0; y < obrazek.getHeight(); y++) 
     { 
      int piksel = obrazek.getRGB(x, y); 
      // kanały r,g,b 
      int r = (piksel>>16) & 0xff; 
      int g = (piksel>>8)  & 0xff; 
      int b = (piksel)  & 0xff; 

      int gray = (r+g+b)/3; 
      piksel = (gray<<16) | (gray<<8) | gray; 

      obrazek.setRGB(x,y,piksel); 
     } 
    return obrazek; 
} 
+0

어떤 이유로 당신의 rgb_2_hsv 기능이 공식을 시도 월 http://www.rapidtables.com/convert/color/rgb-to-hsv.htm

에서 찾을 수 있어요 만들어진 함수? –

+0

저는 이미지 프로세싱과 내장 된 기능의 사용을 금지하는 프로젝트를하고 있습니다. –

+0

이상한 점은'getRGB()'와 같이 JDK에서 미리 만들어진 함수들을 어떻게 사용하고 있는지 보아라. 하지만 규칙이 아무리 이상해 보일지라도 규칙은 규칙이라고 생각합니다. 나는 색상 전문가가 아니지만 [이 변환기] (http://www.rapidtables.com/convert/color/rgb-to-hsv.htm)는 변환하는 수식을 보여줍니다. –

답변

0
컬러 RGB로 변환하는 방법

좋은 설명 -> HSV는 난 당신이 싶지 사용하는 사전을

+0

작성자/고맙습니다. 이 공식을 사용해 보겠습니다. –