我有一个项目,我需要更改一个特定的C ++程序,它将bmp图像处理成一个可以读取,压缩和未压缩的DICOM图像的程序。
哪些库可用于在C ++中处理DICOM图像?
答案 0 :(得分:1)
优秀的C ++ DICOM库是GDCM。我在MacOS和iOS上使用它 - 但我认为它几乎可以编译支持cmake的任何地方。
有读取和写入图像的示例。 GDCM还有一个非常活跃的用户社区。
答案 1 :(得分:0)
答案 2 :(得分:0)
Imebra可以构建和解析DICOM文件及其嵌入的图像,并通过ACSE和DIMSE发送和接收DICOM命令。
它可以在Linux,Windows,MacOS,iOS,Android上运行,并具有Java,ObjectiveC和Python的包装器。
示例代码:
// Load DICOM dataset
std::unique_ptr<imebra::DataSet> loadedDataSet(imebra::CodecFactory::load("DicomFile.dcm"));
// Get the patient name (Unicode)
std::wstring patientName = loadedDataSet->getUnicodeString(imebra::TagId(imebra::tagId_t::PatientName_0010_0010), 0);
// Retrieve the first image (index = 0)
std::unique_ptr<imebra::Image> image(loadedDataSet->getImageApplyModalityTransform(0));
// Get the color space
std::string colorSpace = image->getColorSpace();
// Get the size in pixels
std::uint32_t width = image->getWidth();
std::uint32_t height = image->getHeight();
披露:我是Imebra的作者