Lineare Regression im 3D



  • otze schrieb:

    Wie löst du denn in LGS das nicht vollen Rang hat numerisch stabil?

    Je nach Größe und Sparseness wird das iterativ oder direkt gelöst. Einem iterativen Löser wie CG ist das egal, ob die Matrix vollen Rang hatte. Er gibt mir eine Minimum-Norm-Lösung. Und sonst kann man das System noch regularisieren.



  • krümelkacker schrieb:

    Irgendwie bin ich mit der Problembeschreibung nicht zufrieden. "eine Ebene fitten" reicht da nicht wirklich. Was willst du jetzt wirklich? Was soll die Ebene, die du haben willst, erfüllen? Es gibt da ja mehrere Varianten, wie man die "Abwehcungen" gewichtet. Und da kommt es dann drauf an, woher die ganzen Daten kommen. Wenn z.B. x und y-Koordinate der Punkte jeweils vorgegeben ist und z mit Fehlern gemessen wird, dann muss man etwas ganz anderes machen, als wenn wenn man eine Ebene finden will, die den mittleren quadratischen Abstand zu den Punkten minimiert. Ersteres führt einem zu einem einfachen, ggf. überbestimmten Gleichungssystems und letzteres wäre über eine Eigen-Zerlegung der Kovarianzmatrix der x-/y-/z-Werte der Punkte lösbar. Das geht dann in Richtung Hauptkomponentenanalyse. Der Normalvektor ist dann der Eigenvektor zum kleinsten Eigenwert. Ein Punkt der Ebene ließe sich dann einfach über eine Mittelung der Punkte ausrechnen. Und fertig ist die Ebene.

    x,y und z sind fest gegeben ohne Fehler, sprich ich habe ein überbestimmtes Gleichungssystem.

    Also ich habe zwei Objekte, die kollidieren und will die gemeinsame Kollisionsfläche bestimmen.
    Die Punkte, die diese Fläche bilden sollen, habe ich bestimmt (dunkelblaue Punkte in den Beispielbildern) und jetzt soll durch diese eine gemeinsame Ebene gelegt werden, um anschließend die Punkte auf diese zu projizieren.

    So klarer?



  • [quote="krümelkacker"]

    otze schrieb:

    Je nach Größe und Sparseness wird das iterativ oder direkt gelöst.

    Hier gings gerade um direkt gelöst. Vielleicht sollte ich in Zukunft auch immer SeppJs disclaimer dazu schreiben, damit ich, wenn auch einen monat später, interessante Antworten kriege.

    //edit ausserdem fällt CG nun wirklich nicht in die kategorie numerisch stabil. Das war ja der Ausgangspunkt der Frage.



  • icewater schrieb:

    x,y und z sind fest gegeben ohne Fehler, sprich ich habe ein überbestimmtes Gleichungssystem.

    Bei überbestimmten Gleichungen gibt es nicht unbedingt eine Lösung.

    Beispiel:
    x=2
    x=3

    Ich möchte von dir also genau wissen, was für eine Ebene du eigentlich suchst.

    icewater schrieb:

    Also ich habe zwei Objekte, die kollidieren und will die gemeinsame Kollisionsfläche bestimmen.
    Die Punkte, die diese Fläche bilden sollen, habe ich bestimmt (dunkelblaue Punkte in den Beispielbildern) und jetzt soll durch diese eine gemeinsame Ebene gelegt werden, um anschließend die Punkte auf diese zu projizieren.
    So klarer?

    Nein. Du hast nicht verraten, was das für eine Ebene sein soll. Ich weiß zwar jetzt, dass Dir klar ist, dass es bei 4 oder mehr Punkten keine Ebene geben muss, die all diese Punkte enthält, weil du in dem Zusammenhang etwas von Punkte projizieren sagtest, aber ich weiß immer noch nicht, was das jetzt für eine Ebene sein soll. Ohne Problembeschreibung keine Lösung! Was für eine Kostenfunktion soll die Ebene minimieren? Möchtest du vielleicht den mittleren quadratischen Abstand zwischen den Punkten und der Ebene minimieren? Wenn ja, dann mach dich mal bzgl. Hauptkomponentenanalyse schlau.


Anmelden zum Antworten