Summen addieren und Durchschnitt bilden

gandalf001

Mitglied
Ich habe eine Image Datei mit Pixel Daten.
Ich lese von der Datei nur 4 Zeilen aus und möchte die Werte der jeweiligen Koordinaten zusammenaddieren.

Zum Beispiel habe ich



Das ist die Pixelanzahl. Hier habe ich 7500 Pixeln. Also die Zeilen gehen bis zu 7500 Zeilen. Ich habe es nur hier kurzgefasst und liste nur 10 Zeilen.
|
| Diese ist die Zeilennummer. Ich lese hier bis zu 4 Zeilen.
| |
| |
| | Diese ist der "RED" Koordinatenwert von der RGB Zeile
| | |
| | |
| | | Diese ist der "GREEN" Koordinatenwert. Hier ist der Null, da ich nur Rot auslese.
| | | |
| | | | Dieser ist der "BLUE" Koordinatenwert. Hier ist der auch Null, da ich nur Rot auslese.
| | | | |
0 0 0 0 0
1 0 0 0 0
2 0 170 0 0
3 0 255 0 0
4 0 254 0 0
5 0 254 0 0
6 0 254 0 0
7 0 254 0 0
8 0 254 0 0
9 0 254 0 0


So geht das weiter mit der Zeilennummer bis 4.



0 1 0 0 0
1 1 170 0 0
2 1 255 0 0
3 1 254 0 0
4 1 254 0 0
5 1 254 0 0
6 1 254 0 0
7 1 254 0 0
8 1 254 0 0
9 1 254 0 0



0 2 0 0 0
1 2 170 0 0
2 2 255 0 0
3 2 254 0 0
4 2 254 0 0
5 2 254 0 0
6 2 254 0 0
7 2 254 0 0
8 2 254 0 0
9 2 254 0 0




0 3 0 0 0
1 3 170 0 0
2 3 255 0 0
3 3 254 0 0
4 3 254 0 0
5 3 254 0 0
6 3 254 0 0
7 3 254 0 0
8 3 254 0 0
9 3 254 0 0




0 4 0 0 0
1 4 170 0 0
2 4 255 0 0
3 4 254 0 0
4 4 254 0 0
5 4 254 0 0
6 4 254 0 0
7 4 254 0 0
8 4 254 0 0
9 4 254 0 0






Zu meinem Problem jetzt. Ich möchte in jeder Zeile alle 4 ROT Werte zusammenaddieren und daraus den Durchschnitt ausrechnen. Also
die Zeile 0 ist ja alles 0. Die Zeile 1 so das Addieren 0+170+170+170+170 = Ergebnis / 4.

Wie kann ich das Java-Technisch realisieren?

Meine Variablen hier.

int pictureWidth = 7500;
int pictureHeight = 4;
int averageR = 0;
int SumR = 0;
 
Ich bin mir nicht ganz sicher, wo das Problem liegen soll. Im verarbeiten der Datei-Eingabe?
Wenn alle spalten durch Leerzeichen getrennt sind, könnte man beispielsweise mit einem Scanner oder Bufferedreader jede Zeile auslesen, über die Stringmethode split(" ") in ein Array aufteile und mit Integer.parseInt(<String-Wert>) in int - Werte umwandeln. Dann nur noch die richtigen Indizes nehmen, zusammen addieren udn durch die Anzahl teilen.
Oder hängt es woanders?
 

Neue Themen


Zurück
Oben