Links und Funktionen
Sprachumschaltung

Navigationspfad


Inhaltsbereich

Der Farbfilter (RGB-Modell)

Unser Farbfilter, der zugleich die gewonnenen Werte in ein Histogramm zeichnet.

private void getRgbFarbe(BufferedImage bild){
        int rot=0,gruen=0,blau=0,rotanteil,gruenanteil,blauanteil;
        for(int x=0;x<bild.getWidth();x++){
            for(int y=0;y<bild.getHeight();y++){
                Color farbe=new Color(bild.getRGB(x, y));
                rot=farbe.getRed();
                gruen=farbe.getGreen();
                blau=farbe.getBlue();
           
       
        rotanteil=rot/51;
        gruenanteil=gruen/51;
        blauanteil=blau/51;
       
        switch(rotanteil){
        case 0: histogramm[0]+=(float) 1/(3*anzahlPixel);break;
        case 1: histogramm[1]+=(float) 1/(3*anzahlPixel);break;
        case 2: histogramm[2]+=(float) 1/(3*anzahlPixel);break;
        case 3: histogramm[3]+=(float) 1/(3*anzahlPixel);break;
        case 5:
        case 4: histogramm[4]+=(float) 1/(3*anzahlPixel);break;
        }
       
        switch(gruenanteil){
        case 0: histogramm[5]+=(float) 1/(3*anzahlPixel);break;
        case 1: histogramm[6]+=(float) 1/(3*anzahlPixel);break;
        case 2: histogramm[7]+=(float) 1/(3*anzahlPixel);break;
        case 3: histogramm[8]+=(float) 1/(3*anzahlPixel);break;
        case 5:
        case 4: histogramm[9]+=(float) 1/(3*anzahlPixel);break;
        }
       
        switch(blauanteil){
        case 0: histogramm[10]+=(float) 1/(3*anzahlPixel);break;
        case 1: histogramm[11]+=(float) 1/(3*anzahlPixel);break;
        case 2: histogramm[12]+=(float) 1/(3*anzahlPixel);break;
        case 3: histogramm[13]+=(float) 1/(3*anzahlPixel);break;
        case 5:
        case 4: histogramm[14]+=(float) 1/(3*anzahlPixel);break;
        }
        }
        }
       
    }


Funktionsleiste