![]() |
Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnung?)
Hallo,
irgendwie steh ich heute auf dem Schlauch. Ich habe die Farbdaten jedes Pixels von zwei verschiedenen Bildern. Diese Bilder stehen in einer zeitlichen Folge von 15min. Erstes Problem: Kennt jemand eine Möglichkeit die Zwischenbilder zu berechnen (eine Art Transition?) ? Zweites Problem: Gibt es eine Möglichkeit die Entwicklung des Bildes aus den zwei Bilder zu berechnen? Der Zeitunterschied zwischen den beiden Punkten ist bekannt. Es gibt nur 7 verschiedene Farben, welche die Intensität darstellen (0 nichts, 1 niedrige ... bis ... 6 hohe Intensität).
Delphi-Quellcode:
Ich brauche irgendeinen Anhaltspunkt auf dem ich meine weitere Suche aufbauen kann.
Zeitpunk A Zeitpunkt B Zeitpunkt C
(bekannt) (bekannt) (irgendwie berechnen) ----+-----------------------+-----------------------------+--------------------> Ich dachte ich kann das über die Wahrscheinlichkeitsrechnung lösen. Pixel für Pixel überprüfen und über den Intensitätsunterschied auf die Bewegung schlussfolgern. Aber das funktioniert bei mir nicht. Gibt es einen anderen Lösungsansatz? Für Quellen und Infos bin ich sehr dankbar. Bye Hitzi |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Was heißt "funktioniert nicht"? Was hast du denn schon für Ansätze/Code?
|
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Hallo,
mein Ansatz ging in die Richtung, dass ich jedes Pixel vergleiche und auf Grund der Intensitätsänderung den möglichen Zustand des Pixels in der Zukunft darstelle. Nur bleibt da eben die Bewegung außen vor. Was ist mit den Pixeln, die noch keine Intensität/Farbe besitzen, aber mit großer Wahrscheinlichkeit in den nächsten Minuten eine Intensität bekommen - da ist noch keine Änderung vorhanden, auf Basis derer ich die Zukunft des Pixel berechnen kann. Der erste Ansatz ist schon etwas älter und ging in die Richtung Vektorisierung. Aber hier fehlt mir leider das notwendige Wissen zur Vektorisierung. Ich wollte einfache Kreise um Pixelanhäufungen machen und nun Bild1 mit Bild2 vergleichen und so die Bewegung des Vektors errechnen. Eventuell muss ich beide Ansätze implementieren. Mit einem Vektor die Bewegung ermitteln und über die Intensitätsänderung die zukünftige Intensität errechnen. BYe Thomas PS: Wenn ich von Bewegungen spreche, dann meine ich lineare Bewegungen. |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Nochwas ....
Code ist erstmal zweitrangig. Mir geht es nur um Lösungansätze. Die Umsetzung mach ich schon selber :) MfG Hitzi |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
hast du schon mal an
![]() 2. Zwischenbilder ? du kannst die ineinander reinblenden oder morphen. Dazu bräuchtest du jedoch die Bewegung die du wohl rausfinden willst. |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Floodfill ist z.B. region growing. mit einem eigenen Verfahren kann man auch toleranzbereiche einbauen
|
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Hallo,
die Floodfill/Region Growing Variante bringt mir leider nichts. Nochmal zur Verdeutlichung: (vereinfacht ----- 0 = nichts; 1 = Farbe/Intensität)
Delphi-Quellcode:
Daraus kann man mit bloßen Augen eine leichte Bewegung nach rechts, evt auch rechts/unten erkennen. Um eben dieses Erkennen geht es mir. Ich möchte die Richtung und die Distanz errechnen. Es muss nicht unbedingt pixelgenau sein, wäre aber schön :)
Bild 1:
0|0|1|0|0 -|-|-|-|- 0|1|1|0|0 -|-|-|-|- 0|0|1|1|0 -|-|-|-|- Bild 2: 0|0|0|0|0 -|-|-|-|- 0|0|1|1|1 -|-|-|-|- 0|0|0|1|1 -|-|-|-|- MfG Hitzi |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
jaja schon klar aber mit region growing kannst du gleiche objekte auf den bildern ermitteln und aus deren positionen die Bewegung ableiten
|
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Delphi-Quellcode:
Edit:Bild1 Bild2 00000000000000 00000000000000 00000000000000 00000000000000 00000##0000000 00000000000000 00000###000000 0000000##00000 00000####00000 0000000###0000 00000000000000 0000000####000 00000000000000 00000000000000 00000000000000 00000000000000 Regionen growen, rechte, linke, obere und untere Maxima festhalten Bild1 Bild2 00000000000000 00000000000000 0000------0000 00000000000000 0000|..00|0000 000000------00 0000|.M10|0000 000000|..00|00 0000|....|0000 000000|.M20|00 0000------0000 000000|....|00 00000000000000 000000------00 00000000000000 00000000000000 M1 und M2 sind die mittelpunkte der Rechtecke Der Verschiebungsvektor ist nun [(M2.X-M1.X) (M2.Y-M1.Y)] Anmerkung: ich glaube pixelweise kann man eine Bewegung nicht feststellen. man könnte die Bilder jedoch von einander subtrahieren. dann entsteht vor und hinter dem bewegten Bildausschnitt eine differenz, im umliegenden bereich nicht. der Winkel der bewegung lässt sich aus der Lage der beiden Differenzbereiche ermitteln |
Re: Grafikroutine gesucht(evt. mit Wahrscheinlichkeitsrechnu
Haloo hboy,
den von dir angesprochen Algorithmus könnte ich als eine Art Vektorisierung mißbrauchen :) Nur braucht man dazu einen Ausgangspunk (Saatpunkt), da muss ich mich noch schlau machen wie ich den ermittel. Meiner Meinung nach ein gutes Dokument zum Einstieg in diese Materie: ![]() Ich laß meine Frage mal noch als offene Frage markiert, da ich jetzt noch nicht abschätzen kann, ob es mir wirklich weiterhilft. Weitere Vorschläge zur Problemlösung sind gern von mir gesehen :-D Bis dahin Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz