WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Dynamischer Cell-Array

 

Dun3Hawk
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 15.05.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2012, 17:06     Titel: Dynamischer Cell-Array
  Antworten mit Zitat      
Hallo zusammen,

ich habe zur Auswertung aufgenommener Bildserien ein Matlab-Programm geschrieben.
Ziel des Programms ist es, Tropfen auf diesen Bildern zu detektieren, die Tropfeneigenschaften zu bestimmen und diese abzuspeichern.

Das Abspeichern der Tropfeneigenschaften wollte ich in einem
(x, y, z)-Cell-Array vornehmen.
x steht hierbei für die Anzahl der Tropfeneigenschaften, y für die Tropfenanzahl und z für die Anzahl der Bilder.
Mittels einer For-Schleife lasse ich nun alle Bilder nacheinander analysieren. Das Problem ist nun, dass die Anzahl der Tropfen pro Bild variiert. Das bedeutet, dass die Dimension von y immer der Tropfenanzahl des letzten Bildes entspricht. Somit würden theoretisch Werte für Bilder mit größeren Tropfenanzahlen verloren gehen.

Mein Ansatz wäre jetzt gewesen, dem y-Wert einfach einen Maximalwert zuzweisen, der größer ist als jegliche Tropfenanzahl.
Lässt sich das eventuell eleganter lösen?
Private Nachricht senden Benutzer-Profile anzeigen


Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2012, 18:54     Titel:
  Antworten mit Zitat      
Hallo Dun,
mir ist aus Deiner Beschreibung noch nicht klar geworden, wie x,y und z generiert werden.
Du sprichst von Anzahl und später von einem Vektor. Was sind die Elemente des Vektors?
Kannst Du einen kurzen Beispiel-Code zusammenstellen, was in Deiner For-Schleife passiert?

Grüße
Sirius
Private Nachricht senden Benutzer-Profile anzeigen
 
Dun3Hawk
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 15.05.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.08.2012, 13:31     Titel:
  Antworten mit Zitat      
Hallo Sirius,

mittlerweile habe ich das Problem selbst lösen können.

Allerdings läuft das Programm immer noch nicht rund. Ich versuche dir 'mal ausführlich zu beschreiben, wie das Programm funktionieren soll:

Ich habe einen Ordner mit ca. 100 Bildern, auf denen Tropfenbilder zu sehen sind. Mein Programm zählt die Tropfen pro Bild, berechnet deren Durchmesser, den Abstand zur Fokusebene, die Sphärizität, usw.

All diese ermittelten Eigenschaften lasse ich in einem Cell-Array wie folgt abspeichern:

Code:
%

for i=1:Tropfenanzahl  
   
    Zelle_Tropfen{7, i} = area_originalbild(i);
    Zelle_Tropfen{10, i} = Kreis_Entartung(i);
       
end

 



Mit einem einzelnen Bild klappt das auch wunderbar. Mein Vorhaben ist es nun, dass mit den erwähnten 100 Bildern nacheinander durchzuführen. Demnach habe ich das Programm für mehrere Datensätze angepasst und For-Schleife um das Programm herum gelegt:

Code:
%


for k=1:Bilderanzahl

for i=1:Tropfenanzahl
   
    Zelle_Tropfen{7, i, k} = area_originalbild(i);
    Zelle_Tropfen{10, i, k} = Kreis_Entartung(i);
       
end

end


 



Das scheint ebenfalls zu funktionieren. Komischerweise werden jetzt nur die Daten vom letzten Bild in dem Cell-Array gespeichert. Der restliche Cell-Array ist komplett leer. Die Daten der vorherigen Bilder werden also irgendwie verworfen.

Hättest du oder einer von euch eine Idee, an welcher Stelle ich vielleicht etwas übersehen habe?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2012, 17:38     Titel:
  Antworten mit Zitat      
Hallo,

ich kann Deinen Fehler nicht nachvollziehen.
Woher weiß area_originalbild(i) und Kreis_Entartung(i) welches Bild k gemeint ist?

Grüße
Sirius
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.