java中的函数RGBtoHSV(图像处理)

时间:2014-02-02 16:06:17

标签: java image-processing rgb

我在java中使用函数“RGBtoHSV”并构建V值数组(在数组ModeValue []中),然后打印不同的Modevalue []。但有些奇怪,我发现显示的V值大于1.尽管值的范围应该在[0 ... 1]。这是我的代码的一部分。

public static float[] ModeValue = new float[17415];  

public static void ValueArray (Bitmap myBitmap,int minw, int maxw,int minh, int maxh) {
Rred = 0;
Ggreen = 0;
Bblue = 0;
int count = 0;

for (int i=minw;i<maxw;i++){
    for (int j=minh;j<maxh;j++){
        int pixel = myBitmap.getPixel(i,j);

        Rred += pixel >> 16 & 0xFF;
        Ggreen += pixel >> 8 & 0xFF;            
        Bblue += pixel & 0xFF;          
        Color.RGBToHSV(Rred,Ggreen,Bblue,hsvMode);
        //create V array
        ModeValue[count] = hsvMode[2];
        HueValueMode[count] =  hsvMode[0];
        //can create h at this
        count++;
    }
}

}

请提供一些信息,我不知道如何修复它。 非常感谢你: - )

0 个答案:

没有答案