Zusammenhang zwischen den Punkten in zwei verschiedenen Koordinatensystemen

Neue Frage »

Iryna Auf diesen Beitrag antworten »
Zusammenhang zwischen den Punkten in zwei verschiedenen Koordinatensystemen
Meine Frage:
Hallo!
Es ist meine erste Frage hier, deswegen hoffe ich, dass ich sie auch halbwegs korrekt stelle. Dies könnte allerdings für mich sehr schwierig sein, weil ich schon lange versuche eine Lösung für mein Problem zu finden und komme nicht mal auf die richtige "Begriffe" beim googeln.

Jetzt zu meinem Problem:
Es sind zwei "Ebenen" vorhanden. Erste Ebene (E1) ist ein Rechteck von der Grösse 250 x 400 Punkten/Pixeln.
Zweite Ebene ist ein Rechteck (E2) von der Grösse 1920 x 1080 Punkten/Pixeln.

Ich habe auf der E1 einen Viereck (ABCD) mit den Eckkoordinaten:

A: 32.5655 159.648
B: 28.0786 185.475
C: 100.551 186.142
D: 93.5959 150.35

Diese Koordinaten "entsprechen" dem Viereck (A2 B2 C2 D2) auf E2 mit den Eckkoordinaten:
A2: 100 100
B2: 100 980
C2: 1820 980
D2: 1820 100

A entspricht A2, B entspricht B2 usw.

Jetzt möchte ich eine "Formula finden", welche mir generelle Zusammenhang zwischen den Punkten in beiden Vierecken gibt. Damit ich dann jeden beliebigen Punkt von E1 auf E2 anzeigen kann.
Ah, noch was: es sind beide 2D Räume.

Meine Schwierigkeiten dabei:
- die Grössen der Ebenen (E1 und E2) sind unterschiedlich deswegen geht 1:1 Übertragung nicht
- der Viereck in der Ebene 1 ist kein Rechteck, deswegen kann ich nicht die Punkte mit einem gewissem Factor (Unterschied zu Seitenlängen in E1 und E2) einfach multiplizieren .
- die Koordinaten von Viereck A2B2C2D2 sind auch keine (0,0; 0,1; 1,1; 1,0 ) sondern wieder "schwieriegere" Zahlen, wobei das ist glaube ich sogar das kleinste Problem.

ps. hier nur kurz wofür ich das benötige:
Ich habe eine Applikation, welches das EyeTracking ermöglicht. Die Kamera filmt die Augenbewegungen (es wird auf den Monitor geschaut), speichert die Punkte wo sich die Pupille bewegt hat und dann zeigt auf dem Monitor welche Punkte angeschaut wurden. Es ist fast alles dafür fertig, nur mir fehlt ein mathematisches Wissen. Ich kann nicht den Zusammenhang zwischen den erfassten Punkten von der Kamera und Punkten vom Monitor finden. Am Anfang mache ich so eine Art "Anpassung". Man schaut auf die Punkte, Positon von welchen schon bekannt ist, damit ich eine Funktionsberechnung überhaupt erstellen kann.


Meine Ideen:
Mein Lehrer hat mir empfohlen die baryzentrische Koordinaten deswegen anzuschauen.
Dabei nimmt man nur die drei Punkten von 4 vorhandenen, und bestimmt immer den Dreieck welches für gewissen Punkt entspechend seiner Position genommen werden muss - ABC, ABD, BCD ..

Ich würde mich riesig freuen, wenn ich irgendwo eine Vorgehensweise für solche Probleme nachlesen könnte. Die Schrittweise (wobei ich mir da nicht sicher bin) ist vielleicht so in der Richtung:
1) für den beliebigen Punkt P im ABCD bestimme in welchem Dreieck (ABC, ABD .. ) er lieght anhand seiner Koordinaten ( if P.x kleiner als .. und P.y kleiner als.. dann liegt P im Dreieck ABD, mit Eckkoordinaten .. )
2) berechne die Baryzentrische Koordinaten für diesen Dreieck.
Wie genau ? Ich kann sie wie hier http://numod.ins.uni-bonn.de/teaching/ss12/ingmath2/u2ss12a02L.pdf ausrechnen.. , nur weiss ich dann nicht welche Punkte ich als a0,a1 .. nehme.. welche als pi . Ansonst suche ich etwas wie diese Lösung smile ) quasi einen fertigen Beispiel, welches meinem Problem zumindestens teilweise nähert..
3) Multipliziere/addiere .. (?) die erfasste baryzentrische Koordinaten vom Punkt in der E1 mit Seitenlängen (?) A2B2, C2D2 - > das sind neue Koordinaten von Punkt in der E2 .

Vielleicht kennst sich wer damit aus und weisst ob diese Schritte überhaupt richtig sind und wie genau man das berechnet (also welche Punkte wo eingesetzt wurden ).
Das Problem dürfte nicht neu sein (könnte z.B. in der Graphic Applications angewendet zu sein ), deswegen ärgert mich dass ich auf die Lösung nicht kommen kann.

Danke sehr zumindestens dafür, dass ihr das gelesen habt! Es fehlt mir schwer zu beschreiben und ich wollte so konkret wie möglich sein, deswegen ist es so ein langes Beitrag geworden.
Hoffe, dass es jemandem gibt wem das Thema interessiert und er/sie die Zeit hat mir anzuantworten.

Liebe Grüsse,
Iryna
Gualtiero Auf diesen Beitrag antworten »

Es gibt einen Thread mit ähnlicher Fragestellung, diesen hier meine ich.

Da habe ich was zu geschrieben, und der Fragesteller hat selbst einen Link angeführt, wo das Problem behandelt wird. Vielleicht hilft Dir das weiter.
Iryna Auf diesen Beitrag antworten »

@Gualtiero: WOW ! Danke für so eine schnelle Antwort! Das Link im Link scheint wirklich die Diskussion um ein sehr ähnliches Problem zu sein. Ich werde es noch genauer anschauen (es gibt auch andere Verweise da! ). Wollte mich nur schnell bei dir bedanken!
Gute Nacht ! Und danke smile
Iryna
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »