2016-09-19 3 views
1

ich ein dicom Bild haben, dass, wenn ich es in MATLAB öffnen es so ist:Wie DICOM-Bild als JPEG speichern, ohne Informationen zu verlieren

enter image description here

jedoch, wenn ich das über dicomviewer sehe es so ist :

enter image description here

Wie kann ich speichern diese dicom Bilder ohne ihre Informationen in JPEG-Format aufgrund der Kompression Prozess zu verlieren? Ich möchte das Bild speichern, damit ich die gleichen Informationen abrufen kann, die ich vom jeweiligen dicom-Bild erhalte. Ist es möglich?

+0

Möchten Sie sehen das gleiche Bild, die angezeigten Grauwerte auf die Daten zu skalieren auf MATLAB, das momentan nicht verfügbar ist (schwarzes Bild)? – Jeon

+0

Das Bild, das Sie in Matlab sehen, zeigt die gesamte Palette der Grauwerte. Wenn Sie den Kontrast anpassen (zum Beispiel mit imshow (image, [])), dann sehen Sie das selbe wie mit dem dicom viewer – Dave

Antwort

10

DICOM-Bilddaten werden in der Regel als vorzeichenlose 16-Bit-Ganzzahlen gespeichert. Daher sollten Sie vor dem Speichern sicherstellen, dass Ihr Bild in einer uint16-Matrix gespeichert ist, damit MATLAB es als solche speichert. Bei einigen Bildformaten erfordert MATLAB außerdem, dass wir explizit die Bittiefe angeben.

% Save as a 16-bit Baseline JPEG with the highest quality 
imwrite(uint16(data), 'image.jpg', 'Quality', 100, 'BitDepth', 16); 

% Save as a 16-bit Lossless JPEG 
imwrite(uint16(data), 'image.jpg', 'Mode', 'lossless', 'BitDepth', 16) 

% Save as a 16-bit JPEG 2000 Image 
imwrite(uint16(data), 'image.jp2', 'Mode', 'lossless') 

Wenn Sie keine JPEG aus einem bestimmten Grund benötigen, würde ich eine PNG (verlustfrei) empfehlen.

% Save as 16-bit PNG 
imwrite(uint16(data), 'image.png') 

Die vollständige Liste der verfügbaren 16-Bit-Formate here.

Zur Visualisierung in MATLAB, können Sie den zweiten Eingang zu imshow (oder verwenden Sie imagesc) angeben, automatisch innerhalb des Bildes

imshow(data, []) % or imagesc(data); axis image; 
+0

Können Sie genauer erklären, was Ihr 16-bit JPEG ist bitte? JPEGXR? JPEG2000? –

+1

@MarkSetchell Ich habe einen Link zur Dokumentation hinzugefügt, der ein wenig mehr Details erklärt und Befehle zum Erstellen von verlustfreien und JPEG2000-Bildern hinzugefügt hat. – Suever

Verwandte Themen