Der Farbfilter (RGB-Modell)
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;
}
}
}
}