Datenpunkte aus einer Bitmap generieren

RayCoder

Grünschnabel
Hallo,

hab da mal ne Frage:
Man kann ja aus mehreren Datenpunkten, die sich z. B. in einem x,y-Koordinatensystem befinden, Kurven und Geraden usw. zeichnen.
Mit welchen Funktionen/Algorithmus kann ich nun umgekehrt aus einer Bitmap (z. B. aus einem eingescannten Aktienindex) Datenpunkte auslesen/generieren?

Einen Ansatz hätte ich vielleicht. Man stelle sich grob eine Bitmap vor, die nur aus einer schwarzen Linie auf weissem Hintergrund besteht.
Eine Schleife soll nun jeden Pixel von links-oben bis rechts-unten im DC auswerten
(unterscheiden zwischen schwarzem Pixel und weissem).

Ist das zu umständlich? Gibt es einfachere Wege?
 
Naja, is schon richtig, musst erstmal die Bitmap parsen. Ich würde mir dann mit den Werten ein 2D-Vektor-Array füllen. Dann hast du verschiedene Möglichkeiten das zu bearbeiten...
 
hi RayCoder,

Das ist ein Gebiet wo du dir noch deine Sporen verdienen kannst.
Wenn ich dich recht verstehe, willst du ein Rasterbild in ein Vektorbild wandeln. Das geht weit in das Gebiet der Bildbearbeitung und Bilderkennen hinein.

Mein Vorschlag währe :

1- Bild Pixel für Pixel scannen bis du 1 schwarzes Pixel gefunden hast .
2- Umgebung des gefundenen Pixel betrachten und wenn geradlinig weiter verfolgen
und altes Pixel Weis machen(oder loeschen oder was auch immer).
4- Wenn Ende der Linie gefunden (oder Richtungswechsel)-> Punktkoordinaten merken.
5- Weiter mit Punkt 1.

Is aber nur ein Vorschlag.

Mfg Col.Blake
 
Hallo colblake,

genau das was Du geschrieben hast hab ich gemacht, und es funktioniert sogar. Ein C++-Anfänger wie ich, freut sich über jedes kleines Erfolgserlebnis wie Tier :)

Das Schwierige wird jetzt das mathematische sein.
Übrigens, wenn Dich / Euch das interessiert, dasselbe Thema diskutiere ich im moment im Resourcecode-Forum.

http://www.resourcecode.de/showtopic.php?threadid=2085

greetings
 
Was willst du denn jetzt mathematisch machen? Einen Funktionsgraph? Dann musst du noch folgendes machen: Die aktuellen Koordinaten von ihrer absoluten Form in eine relative Form bzgl. des Koordinatensystems bringen (soll heißen den Ursprung rausbekommen und jeden Punkt minus die absoluten Ursprungskoordinaten). Dann kannst du mit den Gausschen Regressionsalgorithmus anwenden und dir einen Funktionsgraph basteln.
 

Neue Beiträge

Zurück