Exportieren von Matlab zu Excel funktioniert nicht
palitsch
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 16.09.2015, 10:56
Titel: Exportieren von Matlab zu Excel funktioniert nicht
Hi gomatlab,
ich habe Probleme bei der Übertragung eines cell-arrays der mit structs befüllt ist auf Excel.
Hier ist der Code. Dabei geht es halt eher um die letzten 2 Abschnitte.
Code:
% alle Bilder (tif-Format) im Ordner bestimmen [stat,tifpics]=fileattrib('*.tif');
% Anzahl Bilder
picnr = length(tifpics);
for k=1:picnr
% Bild einlesen
bild{k} = imread(tifpics(k).Name);
% Bild in Graustufenwerte umwandeln
bild_grau{k}= rgb2gray(bild{k});
end
% Subtraktion von aufeinanderfolgenden Graustufenbildern
cell_array_bild=cell(1,picnr);
for j=1:picnr
cell_array_bild(1,j)={bild_grau{j}};
end
cell_array_pdiff=cell(1,picnr-1);
% Trigger setzen (hier: gezählt werden alle Pixel mit Wert >9)
for i=1:picnr-1
cell_array_pdiff{1,i}=cell_array_bild{i}-cell_array_bild{i+1};
cell_array_pdiff_trigger{1,i}=cell_array_pdiff{1,i}>9;
end
% Benachbarte Pixel werden gezählt und Pixelfläche wird berechnet
for h=1:picnr-1
CC=bwconncomp(cell_array_pdiff_trigger{1,h});
STATS{h}=regionprops(CC,'Area');
Wenn ich direkt xlswrite mit STATS eingebe, sind die Zellen der Excel-Datei leer. Der Code wie er jetzt steht mit dem cell2mat ist mehr oder weniger ein Verzweiflungsakt. Denn es funktioniert immer noch auf keinen Fall.
Was ich will ist das dass, was in STATS ist auf eine Excel-Datei dann kästchenorganisiert steht.
Kann mir jemand dabei helfen?
Input matrix, specified as a two-dimensional numeric or character array, or, if each cell contains a single element, a cell array.
If A is a cell array containing something other than a scalar numeric or a string, then xlswrite silently leaves the corresponding cell in the spreadsheet empty.
ich denke da liegt der hund begraben.
_________________
Das klappt. Aber das wurde "per Hand" gemacht. Weist du wie das in eine Schleife aussehen würde? So dass mit jedem Datensatz in STATS{} eine Zeile in Excel geschrieben wird?
Was ich bis jetzt hab ist das...
Code:
for p=1:picnr-1
a=STATS{1,p};
S=[a.Area];
xlswrite('Blanalys.xlsx', S);
end
...aber das läuft natürlich nicht.
hättest du da noch eine Idee?? Danke nochmal!!
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
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.