[Dicom]DcmTk库从下载安装到使用

参考文献:

  1. dicom协议开源库DCMTK安装和使用 https://blog.csdn.net/wanhongluli/article/details/77745719
  2. 用VC++和DCMTK显示DICOM医学图像 https://blog.csdn.net/zdh19821025/article/details/2760545
  3. 【CMake】CMake GUI构建VS等项目 https://www.cnblogs.com/esCharacter/p/7084943.html
  4. 【学习DCMTK】VC读取dicom图像 https://blog.csdn.net/Kelvin_Yan/article/details/39028291
  5. 柯颖波, 黄展鹏. 基于VisualC++和DCMTK的医学DICOM图像显示与调窗[J]. 现代计算机(专业版), 2011(30):56-59.http://www.doc88.com/p-1788770726982.html
  6. 【CMake】CMake GUI构建VS等项目 https://www.cnblogs.com/esCharacter/p/7084943.html

 

资源清单:

 

步骤:

  • 下载安装Cmake
  • 下载Dcmtk
  • CMake-gui生成Dcmtk 的VS项目
  • 编译Dcmtk
  • 安装Dcmtk
  • 在VS工程中包含编译好的lib\头文件以及依赖库[参见 参考文献4]

 

遇到问题:

 

关联概念:

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用DCMTK和Qt来将DICOM多帧图像转换为QImage。 首先,您需要使用DCMTK来读取DICOM文件。您可以使用`DcmFileFormat`类来打开DICOM文件,并使用`getDataset`函数获取数据集。 然后,您可以使用DCMTK的`DcmElement`类来获取图像的像素数据。使用`getPixelData`函数可以获取像素数据的字节数组。 接下来,您可以使用Qt的`QImage`类来创建一个QImage对象,并使用`QImage::fromData`函数将字节数组转换为QImage。 以下是一个示例代码,展示了如何将DICOM多帧图像转换为QImage: ```cpp #include <dcmtk/dcmdata/dctk.h> #include <QImage> QImage convertDicomToQImage(const char* dicomFilePath) { // 使用DCMTK打开DICOM文件 DcmFileFormat fileFormat; fileFormat.loadFile(dicomFilePath); // 获取数据集 DcmDataset* dataset = fileFormat.getDataset(); // 获取像素数据元素 DcmElement* pixelDataElement = nullptr; if (dataset->findAndGetElement(DCM_PixelData, pixelDataElement).good()) { // 获取像素数据字节数组 Uint8* pixelData; pixelDataElement->getUint8Array(pixelData); // 获取图像宽度、高度和像素位数 Uint16 rows, columns, bitsAllocated; dataset->findAndGetUint16(DCM_Rows, rows); dataset->findAndGetUint16(DCM_Columns, columns); dataset->findAndGetUint16(DCM_BitsAllocated, bitsAllocated); // 创建QImage对象 QImage image(pixelData, columns, rows, columns * (bitsAllocated / 8), QImage::Format_Grayscale8); return image; } // 如果无法获取像素数据,返回一个空的QImage对象 return QImage(); } ``` 您可以调用`convertDicomToQImage`函数,将DICOM文件路径作为参数传递给它,然后它将返回一个QImage对象。请注意,此示例代码假定DICOM文件是灰度图像。 希望这可以帮助您将DICOM多帧图像转换为QImage。如果您有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值