DICOM之DCMTK开源库类

DICOM之DCMTK开源库类继承关系(基于C++)

在刚接触DICOM时,由于是主学C++的,因此先上手的就是DCMTK的开源库,关于DCMTK中程序包的简介,这里推荐一篇文章【dcmtk程序包简介】https://blog.csdn.net/diqiucun666/article/details/2866908

相当于是dcmtk的中文说明书,其中的英文可以用翻译工具翻译

下面给出部分DCMTK中类的继承关系,都是比较常用的类(左边是基类,右边是派生类):

然后下面列出一些常用的查询数据和插入数据的函数接口:

函数名是第二列+第三列,例如findAndGet + Element 即 findAndGetElement()

根据第二列可知findAndGet是查找获取数据,putAndInsert则是插入数据,具体的函数原型包括形参意义,使用方法,可以参见

【DCMTK Class Reference】https://support.dcmtk.org/docs/classDcmItem.html#ab2f8b9d3264ff9f48651757c0d959a37

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DCMTKDICOM Toolkit)是一个用于处理DICOM(数字成像和通信医学)图像和相关数据的开源软件包。它提供了一组用于读取、写入、传输和处理DICOM数据的工具和库。 要使用DCMTK来读取DICOM数据,需要使用DCMTK的dcmdata库。以下是一个简单的示例代码,演示如何使用DCMTK读取DICOM文件中的像素数据: ```c++ #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmdata/dctk.h" #include "dcmtk/dcmimgle/dcmimage.h" int main(int argc, char *argv[]) { // 初始化 DCMTK DcmFileFormat fileformat; OFCondition status = fileformat.loadFile("example.dcm"); if (status.bad()) { std::cerr << "Error: cannot read DICOM file (" << status.text() << ")" << std::endl; return 1; } // 读取像素数据 DcmDataset *dataset = fileformat.getDataset(); DcmPixelData *pixelData = NULL; dataset->findAndGetPixelData(pixelData); if (pixelData == NULL) { std::cerr << "Error: cannot read pixel data" << std::endl; return 1; } // 将像素数据转换为图像 DicomImage *image = new DicomImage(dataset, EXS_LittleEndianExplicit); if (image == NULL || image->getStatus() != EIS_Normal) { std::cerr << "Error: cannot load DICOM image" << std::endl; return 1; } // 处理图像数据 // ... // 清理内存 delete image; return 0; } ``` 在上面的示例中,我们首先使用`DcmFileFormat`类读取DICOM文件。然后,我们使用`DcmDataset`类获取图像的像素数据,然后将其转换为图像对象,使用`DicomImage`类。最后,我们可以对图像数据进行操作,如显示、保存等。使用完毕后,我们需要清理内存并退出程序。 请注意,上面的示例仅涵盖了DCMTK的一小部分功能。DCMTK还提供了许多其他功能,如DICOM网络传输、图像处理、存档和检索等。有关更多信息,请参阅DCMTK文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值