Wenn wir annehmen, dass unsere Datenpunkte von der Oberfläche einer Kugel abgetastet wurden (mit einer gewissen Störung), wie können wir dann den Mittelpunkt dieser Kugel wiederherstellen?
Bei meiner Suche fand ich Artikel über etwas, das als "sphärische Regression" bezeichnet wurde, aber es schien nicht ganz so, als würde das das Gleiche tun. Vielleicht habe ich es einfach nicht verstanden.
Gibt es eine einfache Formel, ähnlich der linearen Regression, die einen Kugelmittelpunkt und einen Radius findet, die den quadratischen Abstand eines Satzes von Datenpunkten von der Oberfläche der Kugel minimieren?
Bearbeiten 1:
Wir können davon ausgehen, dass das Rauschen 2 oder 3 Größenordnungen kleiner als der Radius der Kugel und gleichmäßig sphärisch Gaußsch ist. Die Proben selbst werden jedoch definitiv nicht gleichmäßig von der Kugeloberfläche gezogen, sondern werden wahrscheinlich in einigen Flecken auf der Oberfläche gebündelt, wahrscheinlich alle innerhalb einer Halbkugel. Eine Lösung, die für Daten in funktioniert, ist in Ordnung, aber eine allgemeine Lösung für beliebige Dimensionalität ist auch großartig.
Bearbeiten 2:
Wie hoch sind die Chancen, dass ich eine vernünftige Antwort bekomme, wenn ich die lineare Regression im 7-dimensionalen Raum verwende und so tue, als wären die quadratischen Komponenten unabhängig von den anderen Parametern:
Bestenfalls nehme ich an, dass meine Fehlermetrik etwas verrückt sein wird. Im schlimmsten Fall wird die Lösung nicht annähernd konsistent sein.
... oder das ist albern, weil wir mit vier identischen Spalten eine singuläre Matrix erhalten, wenn wir versuchen, eine Regression durchzuführen.
Edit 3:
Es sieht also so aus, als wären dies meine Optionen:
- Nichtlineare numerische Optimierung unter Verwendung einer Kostenfunktion:
- Hough-Transformation: Diskretisieren Sie den plausiblen Raum oder mögliche Zentren und Radien um die Datenpunkte. Jeder Punkt gibt eine Stimme für die potenziellen Zentren ab, zu denen er bei jeder spezifischen Radiusdiskretisierung gehören könnte. Die meisten Stimmen gewinnen. Dies mag in Ordnung sein, wenn es möglicherweise eine unbekannte Anzahl von Kugeln gibt, aber mit nur einer ist es eine unordentliche Lösung.
- Wählen Sie zufällig (oder systematisch) Gruppen mit 4 Punkten aus und berechnen Sie das Zentrum analytisch . Lehnen Sie die Probenahme ab, wenn Sie schlecht konditioniert sind (Punkte sind nahezu koplanar). Ausreißer ablehnen und das mittlere Zentrum finden. Daraus können wir den mittleren Radius ermitteln.
Hat jemand eine bessere Methode?
quelle
Antworten:
Hier ist ein
R
Code, der einen Ansatz mit den kleinsten Quadraten zeigt:Wenn Sie nicht verwenden
R
, sollten Sie dennoch in der Lage sein, der Logik zu folgen und sie in eine andere Sprache zu übersetzen.Technisch gesehen sollte der Radiusparameter durch 0 begrenzt sein. Wenn die Variabilität jedoch im Verhältnis zum tatsächlichen Radius gering ist, sollte die unbegrenzte Methode einwandfrei funktionieren, oder optim verfügt über Optionen zum Durchführen der begrenzten Optimierung (oder Sie können einfach den absoluten Wert von ausführen Radius in der Funktion zu minimieren).
quelle