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

150 0-1-Bilder: "imread" funktioniert nicht

 

C_h_r_i_s
Forum-Anfänger

Forum-Anfänger


Beiträge: 30
Anmeldedatum: 11.05.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.05.2010, 18:36     Titel: 150 0-1-Bilder: "imread" funktioniert nicht
  Antworten mit Zitat      
Hallo,

ich habe eine Datei bestehend aus 150 0-1-Bildern, die ich mir mit imshow zwar jeweils anzeigen lassen kann, aber ich benötige auch eine Anzeige des zugehörigen 0-1-Arrays.

Code:

[FileName, PathName] = uigetfile('*.mat','Daten auswählen');

A = importdata(FileName);

imshow(A(:,:,50),[0 1])

 


imread(A(:,:,50),[0 1]) funktioniert leider nicht! Warum? Gibt es Alternativen.

Danke.
Christian
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 14.05.2010, 19:03     Titel:
  Antworten mit Zitat      
Hallo,

Du muss doch dem IMREAD TIF/JPG/BMP-File übergeben, keine Matrix.

MAT-File kann man auch mit LOAD einlesen.
Private Nachricht senden Benutzer-Profile anzeigen
 
C_h_r_i_s
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 30
Anmeldedatum: 11.05.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.05.2010, 17:12     Titel: funzt net
  Antworten mit Zitat      
Hi, ok "imread" geht wohl wirklich nicht, da mat-file.

Aber mit Load(FileName) erhalte ich lediglich:

B =

Avizo_trialrotshort_mat: [105x177x217 uint8]

Ich benötige aber das zum Bild zugehörige 01-Array...

Bilder einzeln einlesen geht nicht, da mat-file aus 150 Bildern besteht...

Weiß jemand Rat?

Danke.

Christian
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 15.05.2010, 19:16     Titel:
  Antworten mit Zitat      
Hallo,

kannst du das etwas genauer erklären: was du hast? und was du machst? und wie willst du auf deine Bilder zugreifen?

Zitat:
Aber mit Load(FileName) erhalte ich lediglich:

B =

Avizo_trialrotshort_mat: [105x177x217 uint8]

Was heißt lediglich?
LOAD liefert nur deine Variablen aus MAT-File zurück.
Und da dein MAT-File eine Matrix [105x177x217 uint8] hat, vermute
ich, dass in Dimensionen deine Bilder abgelegt worden sind
Und es sind 217 Bilder und nicht 150?

Wenn du nur bestimmte Bilder haben möchtest, dann musst du wahrscheinlich sogar eigene Funktion fürs Laden schreiben
z.B. so kannst du auf deine Bilder zugreifen
Code:

A=round(rand(10,10,5));
B=A(:,:,4)
 


Auf deinem Matrix sieht es dann so aus
Code:

B.Avizo_trialrotshort_mat(:,:,1)
 


% so könnte man dann die Funktion schreiben
Code:

% ich gehe davon aus dass in MAT-FILE nur eine Matrix vorliegt
function A = myload(path2file,bildnumber)

X = load(path2file);
f_names = fieldnames(X);
A=X.(f_names{1})(:,:,bildnumber)
 
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.