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

imagesc Bild als imshow ausgeben

 

shnegg
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 15.02.11
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 09.04.2011, 16:49     Titel: imagesc Bild als imshow ausgeben
  Antworten mit Zitat      
Hi,
ich hab hier ein Bild, welches mit imagesc angezeigt werden kann.
Meine Frage ist jetzt, wie muss ich das Bild "umwandeln" um es als imshow ausgeben zu können?

Grüßerle
Shnegg
Private Nachricht senden Benutzer-Profile anzeigen


Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 09.04.2011, 22:19     Titel:
  Antworten mit Zitat      
Hallo,

Bin mir nicht ganz sicher was du möchtest, aber vielleicht hilft dir folgendes Beispiel weiter:
Code:

load clown % X = image, map = colormap
figure, imagesc(X); title('imagesc') % imagesc scales image automatically
figure, imshow(X); title('imshow unscaled');
figure, imshow(X,[min(X(:)),max(X(:))]); title('imshow scaled');
figure, imshow(X,map); title('imshow with corresponding colormap');
 


MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
shnegg
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 15.02.11
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 10.04.2011, 08:09     Titel:
  Antworten mit Zitat      
Einen wunderschönen guten Morgen,
das Beispiel hilft mir leider nicht weiter.

Im Anhang ist ein Bild, welches ich mir mit:

Code:

image = dicomread ('MR_4d5a3ea9affd731d.dcm');
imagesc(image);     %Damit kann ich mir mein Bild augeben lassen
 


ausgebe.
Ich will mir das Bild aber jetzt in einer Variable speichern, um es später mit imshow auszugeben.

Grüßerle
Shnegg
Private Nachricht senden Benutzer-Profile anzeigen
 
eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 10.04.2011, 11:17     Titel:
  Antworten mit Zitat      
Du speicherst es doch in der Variablen "image" (übrigens ungünstiger Name, da so eine MATLAB Funktion heißt). Den Rest hatte Sco genannt...
Private Nachricht senden Benutzer-Profile anzeigen
 
shnegg
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 15.02.11
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 10.04.2011, 12:41     Titel:
  Antworten mit Zitat      
Ich brauche aber eine Funktion, damit ich mir das Bild mit imshow anzeigen lassen kann.

Code:

img = dicomread ('MR_4d5a3ea9affd731d.dcm');
imagesc(img);     % Das zeigt mir das Bild
imshow(img);      % Das zeigt mir nich das gleiche Bild an
 


es muss irgendwie am Format liegen. Aber ich weiß nicht was ich ändern muss, damit ich mir das Bild mit imshow anzeigen lassen kann.

MR_4d5a3ea9affd731d.dcm.zip
 Beschreibung:

Download
 Dateiname:  MR_4d5a3ea9affd731d.dcm.zip
 Dateigröße:  67.64 KB
 Heruntergeladen:  576 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 10.04.2011, 12:53     Titel:
  Antworten mit Zitat      
Hallo,

Hasst du dir denn überhaupt einmal meine Beispiele angeschaut und versucht zu verstehen was dort gemacht wird? Ich werde es nicht nochmal wiederholen! Schau dir den Code in meinem Beispiel für "imshow scaled" an, und lies dir die Hilfe von imshow (doc imshow) parallel durch, dann sollte alles klar sein. Und nein, es liegt nicht am DICOM Format, du musst nix ändern.

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
shnegg
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 15.02.11
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 10.04.2011, 14:36     Titel:
  Antworten mit Zitat      

imagesc Bild als imshow ausgeben
Klicke hier, um den Artikel bei Amazon.de anzuschauen.

Da hab ich wohl nicht alles gelesen, SORRY!!! Rolling Eyes
Das scal hat mir weiter geholfen. Meine Lösung sieht jetzt wie folgt aus:

Code:

%% Helperfunktion
function imgsh = imagesc2imshow(imgsc)
  minval = double(min(imgsc(:)));
  maxval = double(max(imgsc(:)));
  imgsh = minval + (double(imgsc)/maxval);  
end

%% Hauptprogramm
imgsc = dicomread ('MR_4d5a3ea9affd731d.dcm');
img_scal = imagesc2imshow(imgsc);
figure
imshow(img_scal); title('img scaled');

 


Grüßerle
Shnegg
Private Nachricht senden Benutzer-Profile anzeigen
 
eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 10.04.2011, 18:03     Titel:
  Antworten mit Zitat      
Warum machst du nicht einfach

Code:
imgsc = dicomread('MR_4d5a3ea9affd731d.dcm');
imshow(imgsc, [min(imgsc(:)), max(imgsc(:))]);
% oder unskaliert:
imshow(imgsc, []);


??

Dann sparst du dir die Funktion und du veränderst nicht dein Bild.
Private Nachricht senden Benutzer-Profile anzeigen
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 16.04.2011, 03:34     Titel:
  Antworten mit Zitat      
Hallo Shnegg,

ich wusste gar nicht das in Berlin ein 7T Human Scanner steht, nicht schlecht, da würde ich gern mal ein paar Bilder sehen.

Was ich aber eigentlich damit andeuten möchte ist, dass du SEHR VORSICHTIG damit sein solltest nicht anonymisierte Dicom Files ins Internet zu stellen!!! Anhand der Tags im Dicom header lassen sich sehr viele geheime bzw. patientenspezifische Informationen extrahieren (Geschlecht, Alter, Gewicht, Patient ID, wo und wann er gescannt wurde...). Dir sollte klar sein, dass mit diesen Informationen sich auch relativ leicht Namen erfragen lassen. Ich denke du wärst auch nicht gerade begeistert wenn ich beispielsweise deinen Hirntumor (was wir natürlich nicht hoffen wolten!!!) auf einen Dicom-Bild im Internet sehen würde und wüsste das du es bist! Ich weiss nicht was deine Aufgabe in dem Institut ist, aber bei mir wäre dies ein Kündigungsgrund!

An deiner Stelle würde ich den Admin dieses Forums (Martin) bitten diesen Dicom-File zu entfernen, nur um oben beschrieben Problemen aus dem Weg zu gehen!

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
shnegg
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 15.02.11
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 16.04.2011, 12:22     Titel:
  Antworten mit Zitat      
@ eupho: weil ich die Bilder verändern und speichern muss. Mit dem anzeigen ist mir klar.

@ Sco: Es handelt sich dabei um Testdaten, da ist kein klinischer Hintergrund Wink

Grüßerle
und ein schönes Wochenende
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.