In C++ möchte ich einzelne Pixelwerte aus DICOM-Bildern lesen.Mit welcher C++ Bibliothek kann ich Pixel aus DICOM-Bildern lesen?
Antwort
Es in der Tat quite a few freie Bibliotheken sind. Wenn Sie einen höheren COM-Umschlag bevorzugen und bereit sind, ihn zu kaufen, gibt es ein paar andere - ich bin vertraut mit RZDCX und DicomObjects, und googlen herum wird Sie einige andere bekommen.
Es ist ziemlich einfach, auf Pixelwerte unter dem freien DCMTK zuzugreifen. Wenn Sie möchten, dass die rohen Hounsfield-Daten here aussehen und wenn Sie die Post-LUT-Werte (z. B. Windowing) benötigen, können Sie DicomImage::getOutputData verwenden.
Wenn Sie x86 oder x86_64 verwenden, funktioniert die Bibliothek von imebra gut. Wenn Sie auf x86_64 sind, müssen Sie das Argument -m32 mit g ++ verwenden, damit es als 32-Bit kompiliert wird. Sie können dies jedoch nicht auf IA-64 kompilieren, da das Argument -m32 nicht unterstützt wird.
Die Bibliothek verfügt über ein dicom2jpeg Programm, das als Beispiel nützlich ist (aber nicht Sie zeigen, wie Pixelwerte lesen).
Wenn Sie einzelne Pixel lesen möchten, dann lesen Sie diese Seite aus dem Handbuch: http://imebra.com/documentation/html/quick_tour.html
Die neuesten Versionen von Imebra werden auch auf 64-Bit-Systemen kompiliert –
Es dieser Bibliothek: http://dicom.offis.de/dcmtk
Sie sollten GDCM verwenden.
Grassroots DiCoM ist eine C++ - Bibliothek für medizinische DICOM-Dateien. Es wird automatisch mit Python/C#/Java (mit swig) umschlossen. Es unterstützt RAW, JPEG (verlustbehaftet/verlustfrei), J2K, JPEG-LS, RLE und deflationiert.
Es ist portabel und ist bekannt, auf den meisten Systemen (Win32, Linux, MacOSX) zu laufen.
Gute Frage. Ich arbeite in einem Unternehmen, das digitale Gewebediappenscanner herstellt, und wir haben kürzlich eine DICOM-Schnittstelle entwickelt. –