Verfasst am: 11.11.2008, 09:19
Titel: Strcture Inhalte der Felder sortieren und bearbeiten
Hallo liebe Matlab-Freunde,
ich hab gerade das Forum nach einer Lösung meines Problems durchsucht. Hab aber leider nicht wirklich was gefunden.
Zu meinem Problem. Ich hab mir über die Funktion regionprops ein 30x1 struct erstellen lassen. Ich hab also 30 Felder. In jedem Feld sind die zwei Inhalte "Centroid" und "Area" zu finden. Centroid enthält nochmal 2 Koordinatenpunkte (X-Koordinate,Y-Koordinate). Ich möchte nun gern Centroid ordnen lassen.
Am Ende brauche ich z.B. alle X-Werte von 150 bis 650 und Y-Werte ebenfalls von 150 bis 650. Die restlichen Werte sollen gelöscht werden.
momentan zeichnert er mir alle werte aus dem struct in das Bild ein. Ich brauche aber nur 5 ganz bestimmte Um diese Inhalt rauszufiltern muss ich das ganze erstmal ordnen und dann unterbestimmten Bedingungen die überflüssigen Sachen rausschmeissen.
ich habs schon mit orderfiels versucht. hab dazu in diesem Artikel gelesen das man damit nur die Felder sortiert nicht die Inhalte.
mache sortiert er mir die sachen. mein problem ist nun aber das Centroid jeweils die X- und Y-Koordinate von einem Punkt enthält. Wandel ich das ganze jetzt in einen Vektor um sortiert er mir die X- und Y- Koordinaten durcheinander, also vermischt diese. Das will ich aber nicht da ich ja die Koordinaten noch brauche.
sortiert er mir zwar die Areas aber die Koordinaten fallen weg. Das liegt doch daran das ich das ganze in einen Vektor umwandle oder?
Kann man irgendwie einstellen das er z.B.nach den Areas mit X-Werten und den passenden Y-werten sortiert.
als Beispiel
Area x y
250 4 212
4 130 75
1300 84 520
soll so sortiert werden
Area x y
4 130 75
250 4 212
1300 84 520
das heißt das 30x1 struct sollte am besten erhalten bleiben aber sortiert sein.
als nächstes würd ich dann alle Areas unter 100 mit dazugehörigen x- und y-werten löschen wollen,das struct also auf 5x1 reduzieren.
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
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.