|
|
Punktoperationen Pseudocode |
|
andi_1 |

Forum-Fortgeschrittener
|
 |
Beiträge: 86
|
 |
|
 |
Anmeldedatum: 15.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 13:41
Titel: Punktoperationen Pseudocode
|
 |
|
 |
|
Hallo Leute,
folgendes:
- ich habe ein line array: C<1x:>
- in jeder spalte ist eine Tabelle gespeichert mit x,y,z (koordinaten)
- die Tabellen haben jeweils eine unterschiedliche Zeilenanzahl
nun versuche ich euch in einem pseudocode zu schildern was ich machen will:
- diese operation soll für jede tabelle im line array C durchgeführt werden
--------------------------------------------------------------
wenn
höchstens drei koordinaten in der tabelle, deren z-werte minimal sind, lagetechnisch (x,y) jeweils voneinander weniger als einen Meter entfernt sind, und höhentechnisch jeweils weniger als einen Meter voneinander differieren,
dann
berechne das mittel in der lage der 1-3 minima und seine mittlere Höhe (Mittel = M)
und
wenn
in einem Radius von 0,5 Metern um M sich mindestens 2 Punkte befinden, deren z-wert >= 2m als der z-wert von M sind
dann
plotte M
----------------------------------------------------
ich hoffe das ist verständlich...
Vielen dank im Voraus und Gruß
|
|
|
|
|
josekamara |

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 14:40
Titel:
|
 |
Ich würde so vorgehen. Zuerst nach (x,y) Entfernung sortieren und dann erst die Höhenunterschiede Bedingung. Anschließend die 3 z-Minimas aussuchen.
Eine FOR-Schleife über die Tabelle wo jeden Vektor auf Entfernung mit allen anderen Vektor verglichen wird. Es ist nicht ganz einfach. Wenn man mit den minima anfängt, dann kann sein dass die Entfernung bedingung nicht erfüllt ist, dann musst du wieder nach weiter 3.
_________________
Simulation
|
|
|
andi_1 |
Themenstarter

Forum-Fortgeschrittener
|
 |
Beiträge: 86
|
 |
|
 |
Anmeldedatum: 15.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 14:46
Titel:
|
 |
hallo josekamara,
bei mir mangelts eher an der umsetzung. ich bin der matlabcodesprache leider NOCH nicht mächtig. ich bräuchte hilfe beim code.
gruss
|
|
|
josekamara |

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 14:51
Titel:
|
 |
Kannst du mal kurz posten wie die Tabelle genauer aufgebaut sind. Sind die Zelle? Welche Formats haben die Varibalen.
Die Umsetzung wird dann leichter.
_________________
Simulation
|
|
|
andi_1 |
Themenstarter

Forum-Fortgeschrittener
|
 |
Beiträge: 86
|
 |
|
 |
Anmeldedatum: 15.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 15:05
Titel:
|
 |
Hallo,
{}C ist das Ergebnis einer Klassifizierung einer Punktwolke in Cluster. Jede Tabelle in C entspricht einem Cluster
in {}C befinden sich in Zeile1 Werte. Die Spaltenanzahl ist variabel, je nach Klassifizierung.
Beim Doppelklick auf die Werte in Zeile1, öffnen sich die jeweiligen Tabellen (3xn).
in spalte1 steht hier der x-wert, in spalte2 der y-wert, und in spalte3 der z-wert (höhe).
Jede Tabelle in C hat eine unterschiedliche Zeilenanzahl.
Die Variablen haben das format "double"
Gruß
|
|
|
josekamara |

Forum-Meister
|
 |
Beiträge: 529
|
 |
|
 |
Anmeldedatum: 26.04.08
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 15:55
Titel:
|
 |
Hallo Andi,
trotzdem ist nicht klar wie die Struktur ist. Kannst Du von Workspace aus den Inhalt von C zu öffnen. Oder Du speicherst C in einem mat-file.
So können wir genau wissen, wie C ausschaut.
zur Info. Aus meiner Erfahrung hier im Forum, viele Fragen werden nicht beantwortet weil sie nicht genau erklärt und geschildert werden.
_________________
Simulation
|
|
|
andi_1 |
Themenstarter

Forum-Fortgeschrittener
|
 |
Beiträge: 86
|
 |
|
 |
Anmeldedatum: 15.07.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.07.2010, 16:24
Titel:
|
 |
Hallo Jose,
hier entsteht mein C:
---------------------------------------------------------
data = [NM2,T];
figure
hold all
C = cell(1,4);
for k = 1:50
idx = data(:,4) == k;
C{k} = data(idx,1:3);
plot(data(idx,1),data(idx,2))
end
---------------------------------------------------------------
k ist hier die anzahl der Klassen/Cluster (tabellen)
NM1 enthält die Punktwolke
T enthält die klassen denen die Punkte in der Punktwolke zugeordnet sind
C öffne ich durch doppelklick im workspace und die einzelnen tabellen dann durch doppelklick auf die Zelle im editor.
Gruß
|
|
|
Andy386 |

Forum-Guru
|
 |
Beiträge: 485
|
 |
|
 |
Anmeldedatum: 24.06.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.1/8
|
 |
|
|
 |
|
Verfasst am: 02.08.2010, 01:10
Titel:
|
 |
also klappt alles?
_________________
Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
|
|
|
|
|
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 - 2025
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.
|
|