|
|
Algorithmus, um aus 3D-Punktwolke Steigung zu berechnen |
|
Nummi |
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 01.12.21
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.12.2021, 13:51
Titel: Algorithmus, um aus 3D-Punktwolke Steigung zu berechnen
|
|
Hallo zusammen
Ich arbeite zur Zeit an folgendem Problem:
Ich habe durch einen LiDAR-Sensor Daten generiert, die nun eine 3D-Punktwolke bilden. Die Form ist ähnlich wie ein Trichter (siehe Abb)
Nun will ich anhand dieser Punktwolke die Steigung innerhalb des Trichters mit Hilfe eines Algorithmus berechnen. Das Ziel ist, dass man eine neue Punktwolke einlesen kann und der Algorithmus auch an dieser die Steigung bestimmen kann.
Ich habe leider relativ wenig Erfahrung in diesem Gebiet und um jeden Hinweis sehr dankbar.
Freundliche Grüsse
IG
Beschreibung: |
So sehen die Daten etwa aus. Gesucht ist die Steigung des Trichters in der Mitte |
|
Download |
Dateiname: |
Screenshot 2021-12-01 134931.png |
Dateigröße: |
119.15 KB |
Heruntergeladen: |
191 mal |
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.12.2021, 15:35
Titel:
|
|
Hallo,
ich hätte erst mal ein paar Fragen:
wie liegen die Daten denn vor? Als Matrix mit 3 Spalten oder irgendwie anders?
Sind die Daten auf einem regelmäßigen Gitter von x- und y-Werten aufgezeichnet?
Wenn du einen Beispieldatensatz zur Verfügung stellen kannst, wäre das hilfreich.
Die Steigung muss ja je nach Richtung nicht gleich sein, oder gehst du davon aus, dass sie das ist? Willst du dann eine bestimmte Richtung herausgreifen, z.B. y = Zentrum das Trichters festhalten und dann die x-z - Kurve als Querschnitt betrachten? Geht natürlich auch mit x und y vertauscht, oder (etwas komplizierter) in jeder anderen Richtung.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Nummi |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 01.12.21
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.12.2021, 15:49
Titel:
|
|
Hallo Harald
Die Daten liegen als txt-File vor mit drei Spalten (x-, y-, z-Werte). Diese habe ich in Matlab eingelesen und mittels "ptCloud" eine Punktwolke generiert. Die txt-Datei habe ich dir beigelegt.
Die Steigung ist in der Tat nicht in alle Richtungen gleich. Ich sollte aber die Steigungen in sämtliche Richtungen auslesen können. (Richtungen können auch grob unterteilt werden, z.B. mit Winkelangaben)
Grüsse
IG
PS: so habe ich die Punktwolke aus den vorhandenen Daten generiert:
Beschreibung: |
|
Download |
Dateiname: |
Messung_4_Rotation.txt |
Dateigröße: |
216.56 KB |
Heruntergeladen: |
199 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.12.2021, 16:41
Titel:
|
|
|
|
|
Hallo,
die Unterteilung nach Winkeln ist recht gut möglich, da die Daten sehr schön im Abstand von 5 Grad aufgezeichnet sind, wie man an uWinkel sieht.
Ich habe mal einen Querschnitt herausgezogen.
Wenn du reinzoomst, siehst du, dass es aus dem Trichter hinauslaufend je zwei Messungen gibt.
Zudem gibt es für den Mittelpunkt insgesamt 37 Messungen:
die zwischen -2188 und -2196 liegen.
Bei Winkel 90 und -90 besteht zwar kein Problem mit doppelten Messungen. Da sieht es aber so aus, als ob der Trichtertiefpunkt gar nicht im Zentrum liegt. Zudem erscheint mir der Trichter da fast schon parabelförmig, also Steigung 0 im Tiefpunkt. Ist es da sinnvoll, eine Steigung zu berechnen?
Wenn man sich mal auf Punkte festgelegt hat, mit denen man die Steigung berechnen möchte, würde ich dz/dr als Näherung berechnen.
Eine Iteration in 5-Grad-Schritten sollte dann auch machbar sein.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Nummi |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 01.12.21
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.12.2021, 11:09
Titel:
|
|
Das mit den zwei Messungen bei 0°, bzw. 180° ist ein Fehler meinerseits, es sollte nur eine Messung sein.
Es kann durchaus sein, dass eine Parabel entsteht. Die Steigung, die mich interessiert ist jene, die von der oberen Kante beginnt (siehe Abb). Mein Gedanke ist, dass ich von der Kante nach unten eine gewisse Anzahl an Messpunkte nehme und mit diesen die Steigung berechne. Die Frage ist aber noch, wie es diese Kante von selbst erkennen soll. Schlussendlich sollte ich eine Punktwolke einlesen können, den Algorithmus laufen lassen und so an die gewünschte Steigung kommen.
Gruss IG
Beschreibung: |
|
Download |
Dateiname: |
Screenshot 2021-12-02 110407.png |
Dateigröße: |
23.94 KB |
Heruntergeladen: |
188 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 04.12.2021, 15:20
Titel:
|
|
Hallo,
Zitat: |
jene, die von der oberen Kante beginnt (siehe Abb) |
Das ist für mich noch nicht recht eindeutig. Über dieser Kante gibt es ja noch eine, warum nicht diese? Was, wenn es gar keine solche Kante gibt?
Zitat: |
Die Frage ist aber noch, wie es diese Kante von selbst erkennen soll. |
Allerdings, zumal diese Kante für mich nicht mal eindeutig ist.
Zitat: |
Das mit den zwei Messungen bei 0°, bzw. 180° ist ein Fehler meinerseits, es sollte nur eine Messung sein. |
Bei weiteren Fragen dann bitte auch den korrigierten Datensatz zur Verfügung stellen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|