Re: Lineare Steigung eines schwarzen Balkens in einer BMP fi
19. Sep 2007, 11:35
Hallo,
lt. Deiner Aussage kannst Du ja den Anfang der Linie in jedem Fall erkennen, egal ob linear ansteigend, oder nicht.
Wenn Du nun dieser Linie folgst, bis zu dem Punkt, wo sich der Farbwert ändert,
1. prüfst Du das Pixel oberhalb auf die Ursprungsfarbe und gehst ggf. dort dann waagerecht weiter (Anstieg nach oben) - wenn diese Prüfung fehlschlägt
2. prüfst Du das Pixel unterhalb auf die Ursprungsfarbe und gehst ggf. dort dann waagerecht weiter (Anstieg nach unten).
Wenn eine dieser beiden Varianten anschlägt, erhöhst Du einen Zähler - dieser stellt dann die Anzahl der Steigungen dar. Die Höhe wäre dann am Ende = Zähler + 1.
Das Prozedere betreibst Du so lange, bis Du weder nach oben, noch nach unten Deine Ursprungsfarbe widerfindest, also sowohl 1. als auch 2. fehlschlagen. Denn dort ist dann die Linie zu ende.
Dieses Vorgehen gilt nur für einen Anstieg von einem Pixel!
Sollte der Anstieg > 1 Pixel sein, musst Du ggf. in beide Richtungen bis zum Rand Deines Canvas prüfen.
|