dcmtk生成RDSR中由于添加数据先后导致数据丢失错误的修复

2 篇文章 0 订阅

1. 缘起

在尝试生成辐射剂量的结构化报告(RDSR)时,执行完相应的代码,小伙伴提醒我导出的数据中缺少了PID信息。

2. 分析和测试

首先分析之前文件的生成流程,如下所示:
原始导入逻辑

对于设备信息和常规DCM信息的处理与对普通图像的处理是完全相同的。
但是在生成计量报告时候为了方便使用了DCMTK的DSRDocument类,调用的代码大致如下:

// DcmItem *dcmItem -- 是已经保存了各种信息的dcm数据对象的指针
DSRDocument* rdsrDocument = new DSRDocument(DSRTypes::DT_XRayRadiationDoseSR);
// 添加结构化报告内容
rdsrDocument->write(*(dcmItem));
delete  rdsrDocument;
rdsrDocument = nullptr;

考虑到可能是在使用这个DSRDocument类的时候将这部分数据弄没得,将经过上述代码的数据分别输出到文件方便对比。
分析后,果然是这个原因,那么修改数据的写入顺序尝试。

3. 修改

修改为先写报告的核心内容,然后再添加其他内容。
测试得到结果,果然能够得到正确的数据。
流程如下所示:
修改后的结构化报告文件信息添加顺序

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值