关于fo-dicom对接岛津DR设备DICOM胶片打印PresentationLUT不支持

DICOM
90
岛津DR设备
fo-dicom对接岛津
DICOM打印协议
PresentationLUT验证
DICOM胶片打印
fo-dicom
DICOM

这两天在对接一家内蒙古一家医院的岛津DR设备DICOM胶片打印问题,这家医院自助胶片打印项目落地有一段时间了,由于这家医院规模算是比较大的,初期整了很久才把当时所有的设备对接完,没想到又出问题了。

对接岛津DR打印服务报错

前些日子医院现场的同事反馈新添加一台岛津DR的设备工作站,测试打印一直失败,因为这家医院设备已经在正式运营了,怕影响其他设备已经正常运营的打印业务,所以也不太好在生产环境测试,折腾一天解决了(虽然解决的不是太完美),这里记一下

fo-dicom 服务错误日志

关于fo-dicom对接岛津DR设备DICOM胶片打印协议PresentationLUT验证不支持问题

Requested abstract syntax Presentation LUT SOP Ciass [1.2.840.10008.5.1.1.0 NLINEDI not supported

看到这个报错对于fo-dicom有一定了解的同行,其实已经知道问题在哪了,站长按经验修改了下代码,就试着更新上去了,但比较无语的是这台设备可以正常了其他设备又开始报错,吓得立马回退,最后针对这台设备单独开一个处理过的程序进行对接,算是解决了(所以说不完美,正式的医院又不太好频繁测试,也懒得改了凑合着用,经典的能跑就行)

虽然这个兼容修改很简单,但有些FO-DICOM新手可能还是不知到怎么改,这里写一下针对上面这个报错怎么修改fo-dicom项目代码代码块,万一有人用得上呢

修改代码位置参考

fo-dicom-samples项目PrintService文件

代码位置参考fo-dicom-samples项目PrintService文件

修改后成功对接的代码

public Task OnReceiveAssociationRequestAsync(DicomAssociation association)
{
	foreach (var pc in association.PresentationContexts)
    {
		if (pc.AbstractSyntax == DicomUID.Verification
            || pc.AbstractSyntax == DicomUID.BasicGrayscalePrintManagementMetaSOPClass
            || pc.AbstractSyntax == DicomUID.BasicColorPrintManagementMetaSOPClass
            || pc.AbstractSyntax == DicomUID.PrinterSOPClass
            || pc.AbstractSyntax == DicomUID.BasicFilmSessionSOPClass
            || pc.AbstractSyntax == DicomUID.BasicFilmBoxSOPClass
            || pc.AbstractSyntax == DicomUID.BasicGrayscaleImageBoxSOPClass
            || pc.AbstractSyntax == DicomUID.BasicColorImageBoxSOPClass
			|| pc.AbstractSyntax == DicomUID.PresentationLUTSOPClass //添加这一行就行了
			)
         {
             pc.AcceptTransferSyntaxes(AcceptedTransferSyntaxes);
         }
         else if (pc.AbstractSyntax == DicomUID.PrintJobSOPClass)
         {
             pc.AcceptTransferSyntaxes(AcceptedTransferSyntaxes);
         }
         else
         {
                Logger.Warn("Requested abstract syntax {abstractSyntax} from {callingAE} not supported",pc.AbstractSyntax,association.CallingAE); pc.SetResult(DicomPresentationContextResult.RejectAbstractSyntaxNotSupported);
          }
     }
	Logger.Info("Accepted association request from {callingAE}", association.CallingAE);
	return SendAssociationAcceptAsync(association);
}
fo-dicom 怎么将图片png合成打包为dcm打印文件
医疗DICOM开发中常用Tag属性信息表对照表
FO-DICOM 实现C-Find + C-Move 客户端SCU 文件传输例子
C# 使用fo-dicom 怎么实现StroreScu发送电子影像原图文件例子
Windows下nginx通过网络反向代理DICOM设备间接直连外网服务器
fo-dicom如何实现print scu 虚拟打印软件发送图像
DICOM 协议PrintSCP 对接GE设备打印无法通讯问题
fo-dicom开发C-StoreSCP报错'GB18030' is not a supported encoding name
DICOM医用电子胶片打印尺寸规格对照表信息
医疗从业者必知!DICOM 3.0 标准基础知识入门资料(虽然枯燥乏味)
fo-dicom .net core 如何获取图像bitmap
关于锐科PACS的傲娇DICOM Print协议
医疗领域DC-StoreSCP服务收图协议兼容性质测试工具
DICOM传输协议C-StoreSCU大批量转发测试工具
一款用于医疗DICOM胶片打印通信的调试测试PrintSCU工具
基于fo-dicom实现的DicomPrintScp胶片打印服务器收图源码
西门子医疗CT设备(SOMATOM go family)DICOM一致性声明电子说明文档
基于dcmtk-3.6.7的编译好的资源包含了可以直接使用的exe和dll文件
DVTK工具包-DICOM验证工具DVTk-DICOM-Network-Analyzer
dicomTool.exe用于模拟DICOM协议客户端SCU的模拟测试工具
Dicom文件查看器|Dicom图像阅读器(MicroDicom Viewer 3.4.7)软件下载
免责声明 部分转载分享内容若侵犯您的权益,还请 邮件联系 侵删