• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Links oder Code? Autokorrelation u.a. mit Java

mada

Hacker
Hallo zusammen,

ich habe folgendes Problem: aus einem Speicheroszilloskop bekomme ich Datenreihen zurück in 2 Spalten. Damit möchte ich folgendes anstellen:
* Autokorrelation
* Umrechnung von Signalpeaks in Graustufen entsprechend der Signalhöhe

Das ganze würde ich gern mit Java machen, weil ich dann Code aus unserem Eclipseprojekt für Aufgaben davor und danach wiederverwenden könnte. Alternativ ginge noch C++, aber Java wäre einfach die Wunschsprache.

Ich muss dazu sagen, dass ich leider totaler Anfänger bin und sehr wenig Ahnung von Programmierung i.A. habe. Für Links auf Projekte wäre ich sehr dankbar, damit ich nicht bei Null anfangen muss!

Schon mal Danke, Daniel
 

TeXpert

Guru
1. Statistikbuch aus der Bibliothek holen, Autokorrelation verstehen und in einen Algorithmus gießen (der kann gerne erst mal Pseudo-Code sein)

2. Abbildung der Farbkodierung definieren

3. googlen und Sun-Beispiele zu Bildgenereierung ansehen

4. denken.

5. alles zusammenführen
 
OP
mada

mada

Hacker
Soderle, ich wollte dem Thread mal nen Abschluss oder sowas geben. Der nette Michael Flanagan hat eine tolle, umfassende Java Bibliothek erstellt, die für den nichtkommerziellen Gebrauch frei verfügbar ist. Leider steht es nicht unter einer echten OSS-Lizenz, aber erstmal egal. Der Code ist, finde ich, sehr sauber geschrieben und man kann auch was lernen:

http://www.ee.ucl.ac.uk/~mflanaga/java/

Ein paar Fehlerchen sind natürlich drin, aber wie ich selbst erfahren durfte ist der Mann sehr dankbar für Korrekturen! Kann es jedem nur empfehlen, der mal mit FFT o.ä. rummachen will/muss.

Zusammen mit Eclipse einfach großartig :)
 

Gamic

Member
Guck dir mal octave an. Octave ist ein freier Matlab-Clone und kann sehr einfach in eigenen Scripts verwendet werden. Der Code ist sehr robust und bewährt, was mit selber schreiben nicht so einfach (oder schnell) geht.

Du suchst wahrscheinlich
http://www.octave.org/doc/Signal-Processing.html#Signal-Processing

und die Funktion ist ifft() bzw. fft()
 
OP
mada

mada

Hacker
Servus, das hab ich doch natürlich schon ausprobiert, hauptsächlich, um es mal mit Matlab zu vergleichen. Was mir gut gefallen hat, war, dass es auf total vertraute Shellkommandos und Tools zurückgreift (less, dir, gnuplot usw.) und nicht für jeden Scheiss das Rad neu erfindet.

Allerdings haben wir uns dann für eine "echte" Programmiersprache entschieden, und nachdem totale Geschwindigkeit nicht allesentscheidend war, ist die Wahl auf Java gefallen...

Das Projekt wird in absehbarer Zeit auch als OpenSource-Projekt veröffentlicht werden, sind schon einige Sachen drin, die für viele Laboraufgaben interessant sein könnten, und durch die Verwendung von Java ist es auch relativ plattformunabhängig, sofern für die integrierte Hardware (µLinearachsen, Firewirekameras usw) Treiber existieren bzw. geschrieben werden.

Trotzdem Danke! octave gefällt mir jedenfalls viel besser als scilab und wird wohl mein Matlab werden, wenn ich nicht mehr in der Uni bin und auf den Lizenzserver zugreifen kann :)
 

sme

Member
Mal einen eingestaubten Tread aufwühlen ...

Servus mada/Daniel,

wie schaut es nun mit eurem OpenSource-Projekt aus? Kann man sich das Resultat mitlerweile irgendwo ansehen?

Grüße, Sebastian
 
Oben